summaryrefslogtreecommitdiffstats
path: root/src/com/android/camera/CameraSettings.java
diff options
context:
space:
mode:
authorAjit Singh Solanki <ajits@codeaurora.org>2013-11-07 01:56:47 -0800
committerSunid Wilson <sunidw@codeaurora.org>2013-12-13 10:59:43 -0800
commit2e1e3f96100551feed54b507e7ad1dad52b637f1 (patch)
treea97263b237f0f41abf15ec78d65059b801eb33a4 /src/com/android/camera/CameraSettings.java
parent1c7734057201ffd1b6d165d9e24793ef3d213043 (diff)
downloadandroid_packages_apps_Snap-2e1e3f96100551feed54b507e7ad1dad52b637f1.tar.gz
android_packages_apps_Snap-2e1e3f96100551feed54b507e7ad1dad52b637f1.tar.bz2
android_packages_apps_Snap-2e1e3f96100551feed54b507e7ad1dad52b637f1.zip
Camera: Add support for UbiFocus, ChromaFlash and OptiZoom.
- Add UI option in App to enable/disable UbiFocus, ChromaFlash and OptiZoom - App shows UI options for these features only when supported in HAL Change-Id: I924f97b2b510b351d9a8cb48a0aac6a4dc24ca10
Diffstat (limited to 'src/com/android/camera/CameraSettings.java')
-rw-r--r--src/com/android/camera/CameraSettings.java45
1 files changed, 44 insertions, 1 deletions
diff --git a/src/com/android/camera/CameraSettings.java b/src/com/android/camera/CameraSettings.java
index 243f1e35d..4a2bed5c0 100644
--- a/src/com/android/camera/CameraSettings.java
+++ b/src/com/android/camera/CameraSettings.java
@@ -93,6 +93,7 @@ public class CameraSettings {
public static final String KEY_DENOISE = "pref_camera_denoise_key";
public static final String KEY_REDEYE_REDUCTION = "pref_camera_redeyereduction_key";
public static final String KEY_AE_BRACKET_HDR = "pref_camera_ae_bracket_hdr_key";
+ public static final String KEY_ADVANCED_FEATURES = "pref_camera_advanced_features_key";
public static final String KEY_VIDEO_SNAPSHOT_SIZE = "pref_camera_videosnapsize_key";
public static final String KEY_VIDEO_HIGH_FRAME_RATE = "pref_camera_hfr_key";
@@ -105,9 +106,15 @@ public class CameraSettings {
public static final String KEY_DIS = "pref_camera_dis_key";
private static final String KEY_QC_SUPPORTED_AE_BRACKETING_MODES = "ae-bracket-hdr-values";
+ private static final String KEY_QC_SUPPORTED_AF_BRACKETING_MODES = "af-bracket-values";
+ private static final String KEY_QC_SUPPORTED_CF_MODES = "chroma-flash-values";
+ private static final String KEY_QC_SUPPORTED_OZ_MODES = "opti-zoom-values";
private static final String KEY_QC_SUPPORTED_FACE_RECOGNITION_MODES = "face-recognition-values";
private static final String KEY_QC_SUPPORTED_DIS_MODES = "dis-values";
public static final String KEY_QC_AE_BRACKETING = "ae-bracket-hdr";
+ public static final String KEY_QC_AF_BRACKETING = "af-bracket";
+ public static final String KEY_QC_CHROMA_FLASH = "chroma-flash";
+ public static final String KEY_QC_OPTI_ZOOM = "opti-zoom";
public static final String KEY_QC_FACE_RECOGNITION = "face-recognition";
public static final String KEY_QC_DIS_MODE = "dis";
@@ -246,6 +253,38 @@ public class CameraSettings {
return split(str);
}
+ public static List<String> getSupportedAdvancedFeatures(Parameters params) {
+ String str = params.get(KEY_QC_SUPPORTED_AF_BRACKETING_MODES);
+ str += ',' + params.get(KEY_QC_SUPPORTED_CF_MODES);
+ str += ',' + params.get(KEY_QC_SUPPORTED_OZ_MODES);
+ return split(str);
+ }
+
+ public static List<String> getSupportedAFBracketingModes(Parameters params) {
+ String str = params.get(KEY_QC_SUPPORTED_AF_BRACKETING_MODES);
+ if (str == null) {
+ return null;
+ }
+ return split(str);
+ }
+
+ public static List<String> getSupportedChromaFlashModes(Parameters params) {
+ String str = params.get(KEY_QC_SUPPORTED_CF_MODES);
+ if (str == null) {
+ return null;
+ }
+ return split(str);
+ }
+
+ public static List<String> getSupportedOptiZoomModes(Parameters params) {
+ String str = params.get(KEY_QC_SUPPORTED_OZ_MODES);
+ if (str == null) {
+ return null;
+ }
+ return split(str);
+ }
+
+
// Splits a comma delimited string to an ArrayList of String.
// Return null if the passing string is null or the size is 0.
private static ArrayList<String> split(String str) {
@@ -294,6 +333,7 @@ public class CameraSettings {
ListPreference denoise = group.findPreference(KEY_DENOISE);
ListPreference redeyeReduction = group.findPreference(KEY_REDEYE_REDUCTION);
ListPreference aeBracketing = group.findPreference(KEY_AE_BRACKET_HDR);
+ ListPreference advancedFeatures = group.findPreference(KEY_ADVANCED_FEATURES);
ListPreference faceRC = group.findPreference(KEY_FACE_RECOGNITION);
ListPreference jpegQuality = group.findPreference(KEY_JPEG_QUALITY);
ListPreference videoSnapSize = group.findPreference(KEY_VIDEO_SNAPSHOT_SIZE);
@@ -376,7 +416,10 @@ public class CameraSettings {
filterUnsupportedOptions(group,
pictureFormat, getSupportedPictureFormatLists());
}
-
+ if(advancedFeatures != null) {
+ filterUnsupportedOptions(group,
+ advancedFeatures, getSupportedAdvancedFeatures(mParameters));
+ }
}
private void initPreference(PreferenceGroup group) {
ListPreference videoQuality = group.findPreference(KEY_VIDEO_QUALITY);