feat(core): startup default camera
Signed-off-by: rhunk <101876869+rhunk@users.noreply.github.com>
This commit is contained in:
@@ -25,6 +25,7 @@ enum class DatabaseType(
|
||||
val fileName: String
|
||||
) {
|
||||
MAIN("main.db"),
|
||||
CORE("core.db"),
|
||||
ARROYO("arroyo.db"),
|
||||
SIMPLE_DB_HELPER("simple_db_helper.db")
|
||||
}
|
||||
@@ -508,4 +509,29 @@ class DatabaseAccess(
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
fun setCameraType(cameraType: String) {
|
||||
useDatabase(DatabaseType.CORE, writeMode = true)?.use { database ->
|
||||
database.performOperation {
|
||||
if (rawQuery("SELECT * FROM Preferences WHERE 'key' = 'CAMERA~CAMERA_TYPE'", null).use { !it.moveToFirst() }) {
|
||||
insert(
|
||||
"Preferences",
|
||||
null,
|
||||
ContentValues().apply {
|
||||
put("key", "CAMERA~CAMERA_TYPE")
|
||||
put("type", 0)
|
||||
put("stringValue", cameraType)
|
||||
}
|
||||
)
|
||||
} else update(
|
||||
"Preferences",
|
||||
ContentValues().apply {
|
||||
put("stringValue", cameraType)
|
||||
},
|
||||
"key = ?",
|
||||
arrayOf("CAMERA~CAMERA_TYPE")
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -27,6 +27,10 @@ class CameraTweaks : Feature("Camera Tweaks") {
|
||||
override fun init() {
|
||||
val config = context.config.camera
|
||||
|
||||
config.startupDefaultCamera.getNullable()?.let { defaultCamera ->
|
||||
context.database.setCameraType(if (defaultCamera == "back") "BACK_FACING" else "FRONT_FACING")
|
||||
}
|
||||
|
||||
val frontCameraId by lazy {
|
||||
runCatching { context.androidContext.getSystemService(CameraManager::class.java).run {
|
||||
cameraIdList.firstOrNull { getCameraCharacteristics(it).get(CameraCharacteristics.LENS_FACING) == CameraCharacteristics.LENS_FACING_FRONT }
|
||||
|
||||
Reference in New Issue
Block a user