diff options
| author | Timi <timi.rautamaki@gmail.com> | 2021-05-09 11:56:57 +0200 |
|---|---|---|
| committer | Timi <timi.rautamaki@gmail.com> | 2021-05-10 14:03:33 +0200 |
| commit | 8cd66afd16158a6ff1f822a0e3d58d5084516f83 (patch) | |
| tree | 4b99c3d88b00f3debdfa577071b2378c52e4424c | |
| parent | 029c55fea24d97af189e4211f3e7d833e8089f4e (diff) | |
Snap: api2: add QR scanner mode
Change-Id: I99a11907ab5bdd04e6c3f9780f8df18265e7d4bf
| -rw-r--r-- | res/values/arrays.xml | 1 | ||||
| -rwxr-xr-x | src/com/android/camera/CaptureModule.java | 22 |
2 files changed, 19 insertions, 4 deletions
diff --git a/res/values/arrays.xml b/res/values/arrays.xml index 034d707a7..6df58e8c6 100644 --- a/res/values/arrays.xml +++ b/res/values/arrays.xml @@ -704,6 +704,7 @@ <item>@drawable/ic_switch_bokeh</item>ยด <item>@drawable/ic_switch_sat</item> <item>@drawable/ic_switch_promode</item> + <item>@drawable/ic_cam_switcher_qr</item> </array> <array name="camera_modes_front"> diff --git a/src/com/android/camera/CaptureModule.java b/src/com/android/camera/CaptureModule.java index f93494599..b7773c873 100755 --- a/src/com/android/camera/CaptureModule.java +++ b/src/com/android/camera/CaptureModule.java @@ -134,6 +134,8 @@ import com.android.camera.util.VendorTagUtil; import org.codeaurora.snapcam.R; import org.codeaurora.snapcam.filter.ClearSightImageProcessor; +import org.lineageos.quickreader.ScannerActivity; + import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; @@ -558,7 +560,7 @@ public class CaptureModule implements CameraModule, PhotoController, private boolean[] mCameraOpened = new boolean[MAX_NUM_CAM]; private CameraDevice[] mCameraDevice = new CameraDevice[MAX_NUM_CAM]; private String[] mCameraId = new String[MAX_NUM_CAM]; - private String[] mSelectableModes = {"Video", "HFR", "Photo", "Bokeh", "SAT", "ProMode"}; + private String[] mSelectableModes = {"Video", "HFR", "Photo", "Bokeh", "SAT", "ProMode", "QR"}; private ArrayList<SceneModule> mSceneCameraIds = new ArrayList<>(); private SceneModule mCurrentSceneMode; private int mNextModeIndex = 1; @@ -571,7 +573,8 @@ public class CaptureModule implements CameraModule, PhotoController, DEFAULT, RTB, SAT, - PRO_MODE + PRO_MODE, + QR, } public enum MFNRSupportValues { @@ -2445,6 +2448,7 @@ public class CaptureModule implements CameraModule, PhotoController, removeList[CameraMode.DEFAULT.ordinal()] = false; removeList[CameraMode.VIDEO.ordinal()] = false; removeList[CameraMode.PRO_MODE.ordinal()] = false; + removeList[CameraMode.QR.ordinal()] = false; if (facing == CameraCharacteristics.LENS_FACING_FRONT) { CaptureModule.FRONT_ID = cameraId; mSceneCameraIds.get(CameraMode.DEFAULT.ordinal()).frontCameraId = cameraId; @@ -2460,6 +2464,7 @@ public class CaptureModule implements CameraModule, PhotoController, mSceneCameraIds.get(CameraMode.DEFAULT.ordinal()).rearCameraId = cameraId; mSceneCameraIds.get(CameraMode.VIDEO.ordinal()).rearCameraId = cameraId; mSceneCameraIds.get(CameraMode.PRO_MODE.ordinal()).rearCameraId = cameraId; + mSceneCameraIds.get(CameraMode.QR.ordinal()).rearCameraId = cameraId; if (mSettingsManager.isHFRSupported()) { // filter HFR mode removeList[CameraMode.HFR.ordinal()] = false; mSceneCameraIds.get(CameraMode.HFR.ordinal()).rearCameraId = cameraId; @@ -8988,6 +8993,13 @@ public class CaptureModule implements CameraModule, PhotoController, if (mCurrentSceneMode.mode == mSceneCameraIds.get(mode).mode) { return -1; } + if (mSceneCameraIds.get(mode).mode == CameraMode.QR) { + mUI.closeModeSwitcher(true); + Intent intent = new Intent(mActivity, ScannerActivity.class); + mActivity.startActivity(intent); + // Don't change the selected item in modeswitcher + return -1; + } setCameraModeSwitcherAllowed(false); setNextSceneMode(mode); SceneModule nextSceneMode = mSceneCameraIds.get(mode); @@ -9064,7 +9076,8 @@ public class CaptureModule implements CameraModule, PhotoController, int cameraId = isBackCamera() ? rearCameraId : frontCameraId; cameraId = isForceAUXOn(this.mode) ? auxCameraId : cameraId; if ((this.mode == CameraMode.DEFAULT || this.mode == CameraMode.VIDEO || - this.mode == CameraMode.HFR || this.mode == CameraMode.PRO_MODE) + this.mode == CameraMode.HFR || this.mode == CameraMode.PRO_MODE || + this.mode == CameraMode.QR) && (mSettingsManager.isDeveloperEnabled() || swithCameraId != -1)) { String value = mSettingsManager.getValue(SettingsManager.KEY_SWITCH_CAMERA); if (value != null && !value.equals("-1")) { @@ -9081,7 +9094,8 @@ public class CaptureModule implements CameraModule, PhotoController, int cameraId = isBackCamera() ? rearCameraId : frontCameraId; cameraId = isForceAUXOn(this.mode) ? auxCameraId : cameraId; if ((this.mode == CameraMode.DEFAULT || this.mode == CameraMode.VIDEO || - this.mode == CameraMode.HFR || this.mode == CameraMode.PRO_MODE) + this.mode == CameraMode.HFR || this.mode == CameraMode.PRO_MODE || + this.mode == CameraMode.QR) && (mSettingsManager.isDeveloperEnabled() || swithCameraId != -1)) { final SharedPreferences pref = mActivity.getSharedPreferences( ComboPreferences.getLocalSharedPreferencesName(mActivity, |
