From f4beeb36db55332ffa6ff12646959928627b5969 Mon Sep 17 00:00:00 2001 From: Jan Eike Suchard <60288203+dr4hcu5-jan@users.noreply.github.com> Date: Thu, 4 Sep 2025 17:58:39 +0200 Subject: [PATCH 1/2] chore: allowing to set the front camera as preferred camera --- .../libpretixui/android/scanning/ScannerView.kt | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/libpretixui-android/src/main/java/eu/pretix/libpretixui/android/scanning/ScannerView.kt b/libpretixui-android/src/main/java/eu/pretix/libpretixui/android/scanning/ScannerView.kt index 83757bc..918f3fb 100644 --- a/libpretixui-android/src/main/java/eu/pretix/libpretixui/android/scanning/ScannerView.kt +++ b/libpretixui-android/src/main/java/eu/pretix/libpretixui/android/scanning/ScannerView.kt @@ -6,6 +6,7 @@ import android.graphics.ImageFormat import android.hardware.camera2.CameraCharacteristics import android.hardware.camera2.CameraMetadata import android.hardware.camera2.CaptureRequest +import android.preference.PreferenceManager import android.util.AttributeSet import android.util.Size import android.view.OrientationEventListener @@ -59,11 +60,17 @@ class ScannerView : FrameLayout { private var autofocusTarget: Boolean = true private var orientationEventListener: OrientationEventListener? = null private var camera: Camera? = null + private var preferFrontCameraTarget: Boolean = false constructor(context: Context) : super(context) {} constructor(context: Context, attributeSet: AttributeSet) : super(context, attributeSet) {} + var preferFrontCamera: Boolean + get() = preferFrontCameraTarget + set(value) { + preferFrontCameraTarget = value + } var torch: Boolean get() = torchTarget set(value) { @@ -157,6 +164,10 @@ class ScannerView : FrameLayout { cameraSelector = CameraSelector.DEFAULT_BACK_CAMERA } + if (preferFrontCamera && cameraProvider.hasCamera(CameraSelector.DEFAULT_FRONT_CAMERA)) { + cameraSelector = CameraSelector.DEFAULT_FRONT_CAMERA + } + val imageAnalysis = ImageAnalysis.Builder() .setTargetResolution(Size(this.width, this.height)) /*.setResolutionSelector( From baaaf964b9f6c00c4ddf20f5e2b56e886335727d Mon Sep 17 00:00:00 2001 From: Jan Eike Suchard <60288203+dr4hcu5-jan@users.noreply.github.com> Date: Thu, 4 Sep 2025 18:01:22 +0200 Subject: [PATCH 2/2] chore: removing unused import of the preference manager --- .../java/eu/pretix/libpretixui/android/scanning/ScannerView.kt | 1 - 1 file changed, 1 deletion(-) diff --git a/libpretixui-android/src/main/java/eu/pretix/libpretixui/android/scanning/ScannerView.kt b/libpretixui-android/src/main/java/eu/pretix/libpretixui/android/scanning/ScannerView.kt index 918f3fb..4772ec5 100644 --- a/libpretixui-android/src/main/java/eu/pretix/libpretixui/android/scanning/ScannerView.kt +++ b/libpretixui-android/src/main/java/eu/pretix/libpretixui/android/scanning/ScannerView.kt @@ -6,7 +6,6 @@ import android.graphics.ImageFormat import android.hardware.camera2.CameraCharacteristics import android.hardware.camera2.CameraMetadata import android.hardware.camera2.CaptureRequest -import android.preference.PreferenceManager import android.util.AttributeSet import android.util.Size import android.view.OrientationEventListener