mirror of
https://github.com/rhunk/SnapEnhance.git
synced 2025-04-30 14:44:35 +02:00
feat(core): startup default camera
Signed-off-by: rhunk <101876869+rhunk@users.noreply.github.com>
This commit is contained in:
parent
b6aa4857d2
commit
3394bfce47
@ -931,6 +931,10 @@
|
|||||||
"name": "Force Camera Source Encoding",
|
"name": "Force Camera Source Encoding",
|
||||||
"description": "Forces the camera source encoding"
|
"description": "Forces the camera source encoding"
|
||||||
},
|
},
|
||||||
|
"startup_default_camera": {
|
||||||
|
"name": "Startup Default Camera",
|
||||||
|
"description": "Sets the default camera when opening Snapchat"
|
||||||
|
},
|
||||||
"hevc_recording": {
|
"hevc_recording": {
|
||||||
"name": "HEVC Recording",
|
"name": "HEVC Recording",
|
||||||
"description": "Uses HEVC (H.265) codec for video recording"
|
"description": "Uses HEVC (H.265) codec for video recording"
|
||||||
@ -1403,6 +1407,10 @@
|
|||||||
"delete_message": "Delete Message",
|
"delete_message": "Delete Message",
|
||||||
"mark_as_read": "Mark as Read",
|
"mark_as_read": "Mark as Read",
|
||||||
"custom_emoji_reaction": "Custom Emoji Reaction"
|
"custom_emoji_reaction": "Custom Emoji Reaction"
|
||||||
|
},
|
||||||
|
"startup_default_camera": {
|
||||||
|
"front": "Front Camera",
|
||||||
|
"back": "Back Camera"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -54,6 +54,7 @@ class Camera : ConfigContainer() {
|
|||||||
val backCustomFrameRate = unique("back_custom_frame_rate", *customFrameRates) { requireRestart(); addFlags(ConfigFlag.NO_TRANSLATE) }
|
val backCustomFrameRate = unique("back_custom_frame_rate", *customFrameRates) { requireRestart(); addFlags(ConfigFlag.NO_TRANSLATE) }
|
||||||
val hevcRecording = boolean("hevc_recording") { requireRestart() }
|
val hevcRecording = boolean("hevc_recording") { requireRestart() }
|
||||||
val forceCameraSourceEncoding = boolean("force_camera_source_encoding")
|
val forceCameraSourceEncoding = boolean("force_camera_source_encoding")
|
||||||
|
val startupDefaultCamera = unique("startup_default_camera", "front", "back") { requireRestart() }
|
||||||
val overrideFrontResolution get() = _overrideFrontResolution
|
val overrideFrontResolution get() = _overrideFrontResolution
|
||||||
val overrideBackResolution get() = _overrideBackResolution
|
val overrideBackResolution get() = _overrideBackResolution
|
||||||
|
|
||||||
|
@ -25,6 +25,7 @@ enum class DatabaseType(
|
|||||||
val fileName: String
|
val fileName: String
|
||||||
) {
|
) {
|
||||||
MAIN("main.db"),
|
MAIN("main.db"),
|
||||||
|
CORE("core.db"),
|
||||||
ARROYO("arroyo.db"),
|
ARROYO("arroyo.db"),
|
||||||
SIMPLE_DB_HELPER("simple_db_helper.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() {
|
override fun init() {
|
||||||
val config = context.config.camera
|
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 {
|
val frontCameraId by lazy {
|
||||||
runCatching { context.androidContext.getSystemService(CameraManager::class.java).run {
|
runCatching { context.androidContext.getSystemService(CameraManager::class.java).run {
|
||||||
cameraIdList.firstOrNull { getCameraCharacteristics(it).get(CameraCharacteristics.LENS_FACING) == CameraCharacteristics.LENS_FACING_FRONT }
|
cameraIdList.firstOrNull { getCameraCharacteristics(it).get(CameraCharacteristics.LENS_FACING) == CameraCharacteristics.LENS_FACING_FRONT }
|
||||||
|
Loading…
x
Reference in New Issue
Block a user