summaryrefslogtreecommitdiffstats
path: root/src/com/android/camera/CameraSettings.java
diff options
context:
space:
mode:
authorJay Wang <jaywang@codeaurora.org>2017-02-02 17:22:10 -0800
committerGerrit - the friendly Code Review server <code-review@localhost>2017-02-19 23:02:58 -0800
commitf9b1301938574ac8236cff60d668dff28ac3f01e (patch)
tree5f8d16bcf152fb725abab3cbedb143e361d28c43 /src/com/android/camera/CameraSettings.java
parent3196565b3091f36a00428c0509c2bfd959c84b85 (diff)
downloadandroid_packages_apps_Snap-f9b1301938574ac8236cff60d668dff28ac3f01e.tar.gz
android_packages_apps_Snap-f9b1301938574ac8236cff60d668dff28ac3f01e.tar.bz2
android_packages_apps_Snap-f9b1301938574ac8236cff60d668dff28ac3f01e.zip
SnapdragonCamera: Add zoom option to developer option
For automation testing, we need a way to adjust the zoom without using the pinch gesture. Therefore, adding zoom option preference to the developer option. Change-Id: I37f8c1b4f51682cb398d0a5f779f45128bdc19ec
Diffstat (limited to 'src/com/android/camera/CameraSettings.java')
-rwxr-xr-xsrc/com/android/camera/CameraSettings.java20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/com/android/camera/CameraSettings.java b/src/com/android/camera/CameraSettings.java
index 4bd88f755..2a8122872 100755
--- a/src/com/android/camera/CameraSettings.java
+++ b/src/com/android/camera/CameraSettings.java
@@ -127,6 +127,7 @@ public class CameraSettings {
public static final String KEY_LONGSHOT = "pref_camera_longshot_key";
public static final String KEY_INSTANT_CAPTURE = "pref_camera_instant_capture_key";
+ public static final String KEY_ZOOM = "pref_camera_zoom_key";
public static final String KEY_BOKEH_MODE = "pref_camera_bokeh_mode_key";
public static final String KEY_BOKEH_MPO = "pref_camera_bokeh_mpo_key";
@@ -662,6 +663,18 @@ public class CameraSettings {
}
+ private static List<String> getSupportedZoomLevel(Parameters params) {
+ ArrayList<String> supported = new ArrayList<String>();
+ int zoomMaxIdx = params.getMaxZoom();
+ List <Integer> zoomRatios = params.getZoomRatios();
+ int zoomMax = zoomRatios.get(zoomMaxIdx)/100;
+
+ for (int zoomLevel = 0; zoomLevel <= zoomMax; zoomLevel++) {
+ supported.add(String.valueOf(zoomLevel));
+ }
+ return supported;
+ }
+
private void qcomInitPreferences(PreferenceGroup group){
//Qcom Preference add here
ListPreference powerMode = group.findPreference(KEY_POWER_MODE);
@@ -702,6 +715,8 @@ public class CameraSettings {
ListPreference bokehMode = group.findPreference(KEY_BOKEH_MODE);
ListPreference bokehMpo = group.findPreference(KEY_BOKEH_MPO);
ListPreference bokehBlurDegree = group.findPreference(KEY_BOKEH_BLUR_VALUE);
+ ListPreference zoomLevel = group.findPreference(KEY_ZOOM);
+
if (instantCapture != null) {
if (!isInstantCaptureSupported(mParameters)) {
@@ -855,6 +870,11 @@ public class CameraSettings {
filterUnsupportedOptions(group,
manualExposure, getSupportedManualExposureModes(mParameters));
}
+
+ if (zoomLevel != null) {
+ filterUnsupportedOptions(group,
+ zoomLevel, getSupportedZoomLevel(mParameters));
+ }
}
private void initPreference(PreferenceGroup group) {