diff options
author | codeworkx <codeworkx@cyanogenmod.org> | 2016-01-10 15:36:41 +0100 |
---|---|---|
committer | Michael Bestas <mikeioannina@gmail.com> | 2017-01-04 21:57:43 +0200 |
commit | b75ef4d4d0ea0015944d8a725fe018b3092b8514 (patch) | |
tree | 26ff6710149cb0267def26c54a89aa2ccd1ed244 | |
parent | 32be5f674181025236fc284736c0cbceaf8742b6 (diff) | |
download | android_packages_apps_Snap-b75ef4d4d0ea0015944d8a725fe018b3092b8514.tar.gz android_packages_apps_Snap-b75ef4d4d0ea0015944d8a725fe018b3092b8514.tar.bz2 android_packages_apps_Snap-b75ef4d4d0ea0015944d8a725fe018b3092b8514.zip |
Snap: support setting default preview resolution via overlay
Change-Id: I14c17aec6e5d582cc1f884eba40868a58cab1d03
-rw-r--r-- | res/values/config.xml | 6 | ||||
-rwxr-xr-x | src/com/android/camera/PhotoModule.java | 56 |
2 files changed, 18 insertions, 44 deletions
diff --git a/res/values/config.xml b/res/values/config.xml index 80b0d9215..a703bffaf 100644 --- a/res/values/config.xml +++ b/res/values/config.xml @@ -38,7 +38,11 @@ <!-- Restart preview for front camera onPictureTaken --> <bool name="front_camera_restart_preview_onPictureTaken">false</bool> - <!-- Set's manufacturer specific parameters on startup. + <!-- Force use a specific preview-size + Example: 1920x1080 --> + <string name="preview_size_for_photo"></string> + + <!-- Set's manufacturer specific parameters on startup. Example: lge-camera=1;cam-mode=0 --> <string name="manufacturer_key_values"></string> diff --git a/src/com/android/camera/PhotoModule.java b/src/com/android/camera/PhotoModule.java index d03437df5..d43d8d31f 100755 --- a/src/com/android/camera/PhotoModule.java +++ b/src/com/android/camera/PhotoModule.java @@ -3845,49 +3845,19 @@ public class PhotoModule Size optimalSize = CameraUtil.getOptimalPreviewSize(mActivity, sizes, (double) size.width / size.height); - //Read Preview Resolution from adb command - //value: 0(default) - Default value as per snapshot aspect ratio - //value: 1 - 640x480 - //value: 2 - 720x480 - //value: 3 - 1280x720 - //value: 4 - 1920x1080 - //value: 5 - 2560x1440 - int preview_resolution = SystemProperties.getInt("persist.camera.preview.size", 0); - switch (preview_resolution) { - case 1: { - optimalSize.width = 640; - optimalSize.height = 480; - Log.v(TAG, "Preview resolution hardcoded to 640x480"); - break; - } - case 2: { - optimalSize.width = 720; - optimalSize.height = 480; - Log.v(TAG, "Preview resolution hardcoded to 720x480"); - break; - } - case 3: { - optimalSize.width = 1280; - optimalSize.height = 720; - Log.v(TAG, "Preview resolution hardcoded to 1280x720"); - break; - } - case 4: { - optimalSize.width = 1920; - optimalSize.height = 1080; - Log.v(TAG, "Preview resolution hardcoded to 1920x1080"); - break; - } - case 5: { - optimalSize.width = 2560; - optimalSize.height = 1440; - Log.v(TAG, "Preview resolution hardcoded to 2560x1440"); - break; - } - default: { - Log.v(TAG, "Preview resolution as per Snapshot aspect ratio"); - break; - } + // Get default preview resolution from overlay + String previewSizeForPhoto = + mApplicationContext.getResources().getString(R.string.preview_size_for_photo); + try { + android.util.Size previewSize = android.util.Size.parseSize(previewSizeForPhoto); + + optimalSize.width = previewSize.getWidth(); + optimalSize.height = previewSize.getHeight(); + Log.v(TAG, "Preview resolution hardcoded to " + optimalSize.width + "x" + optimalSize.height); + } catch (NumberFormatException e) { + Log.e(TAG, "Invalid preview resolution: " + previewSizeForPhoto); + } catch (NullPointerException e) { + Log.v(TAG, "No default preview resolution given"); } Size original = mParameters.getPreviewSize(); |