forked from hardcoresushi/DroidFS
Update dependencies
This commit is contained in:
parent
87ffbc3cc1
commit
ad19b9e645
2
TODO.md
2
TODO.md
@ -14,7 +14,7 @@ Here's a list of features that it would be nice to have in DroidFS. As this is a
|
|||||||
|
|
||||||
## Encryption software support
|
## Encryption software support
|
||||||
- [Shufflecake](https://shufflecake.net): plausible deniability for multiple hidden filesystems on Linux (would be absolutely awesome to have but quite difficult)
|
- [Shufflecake](https://shufflecake.net): plausible deniability for multiple hidden filesystems on Linux (would be absolutely awesome to have but quite difficult)
|
||||||
- [eCryptfs](https://www.kernel.org/doc/html/latest/filesystems/ecryptfs.html): filesystem encryption at the kernel level
|
- [fscrypt](https://www.kernel.org/doc/html/latest/filesystems/fscrypt.html): filesystem encryption at the kernel level
|
||||||
|
|
||||||
## Health
|
## Health
|
||||||
- F-Droid ABI split
|
- F-Droid ABI split
|
||||||
|
@ -109,7 +109,7 @@ dependencies {
|
|||||||
implementation "androidx.sqlite:sqlite-ktx:2.3.1"
|
implementation "androidx.sqlite:sqlite-ktx:2.3.1"
|
||||||
implementation "androidx.preference:preference-ktx:1.2.0"
|
implementation "androidx.preference:preference-ktx:1.2.0"
|
||||||
implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.1.0"
|
implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.1.0"
|
||||||
implementation 'com.google.android.material:material:1.8.0'
|
implementation 'com.google.android.material:material:1.9.0'
|
||||||
implementation 'com.github.bumptech.glide:glide:4.15.1'
|
implementation 'com.github.bumptech.glide:glide:4.15.1'
|
||||||
implementation "androidx.biometric:biometric-ktx:1.2.0-alpha05"
|
implementation "androidx.biometric:biometric-ktx:1.2.0-alpha05"
|
||||||
|
|
||||||
|
@ -1 +1 @@
|
|||||||
Subproject commit 6308adf8e57379e1136f4f55ff0d7737c0d0a33b
|
Subproject commit ab3e7886767d31f32baebcd72ebe5f098a70d65b
|
@ -2,10 +2,7 @@ package sushi.hardcore.droidfs
|
|||||||
|
|
||||||
import android.Manifest
|
import android.Manifest
|
||||||
import android.annotation.SuppressLint
|
import android.annotation.SuppressLint
|
||||||
import android.content.Context
|
|
||||||
import android.content.pm.PackageManager
|
import android.content.pm.PackageManager
|
||||||
import android.hardware.camera2.CameraCharacteristics
|
|
||||||
import android.hardware.camera2.CameraManager
|
|
||||||
import android.os.Build
|
import android.os.Build
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.text.InputType
|
import android.text.InputType
|
||||||
@ -14,12 +11,10 @@ import android.view.*
|
|||||||
import android.view.animation.Animation
|
import android.view.animation.Animation
|
||||||
import android.view.animation.LinearInterpolator
|
import android.view.animation.LinearInterpolator
|
||||||
import android.view.animation.RotateAnimation
|
import android.view.animation.RotateAnimation
|
||||||
import android.widget.ImageButton
|
|
||||||
import android.widget.ImageView
|
import android.widget.ImageView
|
||||||
import android.widget.RelativeLayout
|
import android.widget.RelativeLayout
|
||||||
import android.widget.Toast
|
import android.widget.Toast
|
||||||
import androidx.annotation.RequiresApi
|
import androidx.annotation.RequiresApi
|
||||||
import androidx.camera.camera2.interop.Camera2CameraInfo
|
|
||||||
import androidx.camera.core.AspectRatio
|
import androidx.camera.core.AspectRatio
|
||||||
import androidx.camera.core.Camera
|
import androidx.camera.core.Camera
|
||||||
import androidx.camera.core.CameraSelector
|
import androidx.camera.core.CameraSelector
|
||||||
@ -28,6 +23,7 @@ import androidx.camera.core.ImageCapture
|
|||||||
import androidx.camera.core.ImageCaptureException
|
import androidx.camera.core.ImageCaptureException
|
||||||
import androidx.camera.core.Preview
|
import androidx.camera.core.Preview
|
||||||
import androidx.camera.core.UseCase
|
import androidx.camera.core.UseCase
|
||||||
|
import androidx.camera.core.resolutionselector.ResolutionSelector
|
||||||
import androidx.camera.extensions.ExtensionMode
|
import androidx.camera.extensions.ExtensionMode
|
||||||
import androidx.camera.extensions.ExtensionsManager
|
import androidx.camera.extensions.ExtensionsManager
|
||||||
import androidx.camera.lifecycle.ProcessCameraProvider
|
import androidx.camera.lifecycle.ProcessCameraProvider
|
||||||
@ -57,6 +53,8 @@ import java.io.ByteArrayOutputStream
|
|||||||
import java.text.SimpleDateFormat
|
import java.text.SimpleDateFormat
|
||||||
import java.util.*
|
import java.util.*
|
||||||
import java.util.concurrent.Executor
|
import java.util.concurrent.Executor
|
||||||
|
import kotlin.math.pow
|
||||||
|
import kotlin.math.sqrt
|
||||||
|
|
||||||
@SuppressLint("RestrictedApi")
|
@SuppressLint("RestrictedApi")
|
||||||
class CameraActivity : BaseActivity(), SensorOrientationListener.Listener {
|
class CameraActivity : BaseActivity(), SensorOrientationListener.Listener {
|
||||||
@ -381,11 +379,17 @@ class CameraActivity : BaseActivity(), SensorOrientationListener.Listener {
|
|||||||
imageCapture = ImageCapture.Builder()
|
imageCapture = ImageCapture.Builder()
|
||||||
.setCaptureMode(captureMode)
|
.setCaptureMode(captureMode)
|
||||||
.setFlashMode(imageCapture?.flashMode ?: ImageCapture.FLASH_MODE_AUTO)
|
.setFlashMode(imageCapture?.flashMode ?: ImageCapture.FLASH_MODE_AUTO)
|
||||||
.apply {
|
.setResolutionSelector(ResolutionSelector.Builder().setResolutionFilter { supportedSizes, _ ->
|
||||||
currentResolution?.let {
|
resolutions = supportedSizes.sortedBy {
|
||||||
setTargetResolution(it)
|
-it.width*it.height
|
||||||
}
|
}
|
||||||
}
|
currentResolution?.let { targetResolution ->
|
||||||
|
return@setResolutionFilter supportedSizes.sortedBy {
|
||||||
|
sqrt((it.width - targetResolution.width).toDouble().pow(2) + (it.height - targetResolution.height).toDouble().pow(2))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
supportedSizes
|
||||||
|
}.build())
|
||||||
.build()
|
.build()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -412,14 +416,6 @@ class CameraActivity : BaseActivity(), SensorOrientationListener.Listener {
|
|||||||
} else {
|
} else {
|
||||||
refreshImageCapture()
|
refreshImageCapture()
|
||||||
camera = cameraProvider.bindToLifecycle(this, cameraSelector, cameraPreview, imageCapture)
|
camera = cameraProvider.bindToLifecycle(this, cameraSelector, cameraPreview, imageCapture)
|
||||||
if (resolutions == null) {
|
|
||||||
val info = Camera2CameraInfo.from(camera!!.cameraInfo)
|
|
||||||
val cameraManager = getSystemService(Context.CAMERA_SERVICE) as CameraManager
|
|
||||||
val characteristics = cameraManager.getCameraCharacteristics(info.cameraId)
|
|
||||||
characteristics.get(CameraCharacteristics.SCALER_STREAM_CONFIGURATION_MAP)?.let { streamConfigurationMap ->
|
|
||||||
resolutions = streamConfigurationMap.getOutputSizes(imageCapture!!.imageFormat).map { it.swap() }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
imageCapture
|
imageCapture
|
||||||
})!!
|
})!!
|
||||||
adaptPreviewSize(currentUseCase.attachedSurfaceResolution!!.swap())
|
adaptPreviewSize(currentUseCase.attachedSurfaceResolution!!.swap())
|
||||||
|
Loading…
Reference in New Issue
Block a user