diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/camera/CameraSettings.java | 11 | ||||
-rw-r--r-- | src/com/android/camera/PhotoMenu.java | 5 | ||||
-rw-r--r-- | src/com/android/camera/PhotoModule.java | 47 |
3 files changed, 52 insertions, 11 deletions
diff --git a/src/com/android/camera/CameraSettings.java b/src/com/android/camera/CameraSettings.java index ad0bbc544..3a63d0bfe 100644 --- a/src/com/android/camera/CameraSettings.java +++ b/src/com/android/camera/CameraSettings.java @@ -123,6 +123,7 @@ public class CameraSettings { private static final String KEY_QC_SUPPORTED_OZ_MODES = "opti-zoom-values"; private static final String KEY_QC_SUPPORTED_FSSR_MODES = "FSSR-values"; private static final String KEY_QC_SUPPORTED_TP_MODES = "true-portrait-values"; + private static final String KEY_QC_SUPPORTED_MTF_MODES = "multi-touch-focus-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"; private static final String KEY_QC_SUPPORTED_SEE_MORE_MODES = "see-more-values"; @@ -141,6 +142,7 @@ public class CameraSettings { public static final String KEY_QC_OPTI_ZOOM = "opti-zoom"; public static final String KEY_QC_FSSR = "FSSR"; public static final String KEY_QC_TP = "true-portrait"; + public static final String KEY_QC_MULTI_TOUCH_FOCUS = "multi-touch-focus"; public static final String KEY_QC_FACE_RECOGNITION = "face-recognition"; public static final String KEY_QC_DIS_MODE = "dis"; public static final String KEY_QC_CDS_MODE = "cds-mode"; @@ -358,6 +360,7 @@ public class CameraSettings { str += ',' + params.get(KEY_QC_SUPPORTED_OZ_MODES); str += ',' + params.get(KEY_QC_SUPPORTED_FSSR_MODES); str += ',' + params.get(KEY_QC_SUPPORTED_TP_MODES); + str += ',' + params.get(KEY_QC_SUPPORTED_MTF_MODES); str += ',' + mContext.getString(R.string.pref_camera_advanced_feature_default); str += ',' + params.get(KEY_QC_SUPPORTED_RE_FOCUS_MODES); return split(str); @@ -411,6 +414,14 @@ public class CameraSettings { return split(str); } + public static List<String> getSupportedMultiTouchFocusModes(Parameters params) { + String str = params.get(KEY_QC_SUPPORTED_MTF_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) { diff --git a/src/com/android/camera/PhotoMenu.java b/src/com/android/camera/PhotoMenu.java index deeea89ee..2118af801 100644 --- a/src/com/android/camera/PhotoMenu.java +++ b/src/com/android/camera/PhotoMenu.java @@ -334,6 +334,8 @@ public class PhotoMenu extends PieController pref_camera_advanced_feature_value_FSSR_on); String truePortraitOn = mActivity.getString(R.string. pref_camera_advanced_feature_value_trueportrait_on); + String multiTouchFocusOn = mActivity.getString(R.string. + pref_camera_advanced_feature_value_multi_touch_focus_on); if ((zsl != null) && Parameters.ZSL_OFF.equals(zsl)) { popup3.overrideSettings(CameraSettings.KEY_ADVANCED_FEATURES, @@ -352,7 +354,8 @@ public class PhotoMenu extends PieController advancedFeatures.equals(reFocusOn) || advancedFeatures.equals(optiZoomOn) || advancedFeatures.equals(fssrOn) || - advancedFeatures.equals(truePortraitOn))) { + advancedFeatures.equals(truePortraitOn) || + advancedFeatures.equals(multiTouchFocusOn))) { popup3.setPreferenceEnabled(CameraSettings.KEY_FOCUS_MODE,false); popup3.setPreferenceEnabled(CameraSettings.KEY_FLASH_MODE,false); popup3.setPreferenceEnabled(CameraSettings.KEY_AE_BRACKET_HDR,false); diff --git a/src/com/android/camera/PhotoModule.java b/src/com/android/camera/PhotoModule.java index f701fb407..8b0f939f6 100644 --- a/src/com/android/camera/PhotoModule.java +++ b/src/com/android/camera/PhotoModule.java @@ -1580,6 +1580,8 @@ public class PhotoModule pref_camera_advanced_feature_value_FSSR_on); String truPortraitOn = mActivity.getString(R.string. pref_camera_advanced_feature_value_trueportrait_on); + String multiTouchFocusOn = mActivity.getString(R.string. + pref_camera_advanced_feature_value_multi_touch_focus_on); String optiZoom = mParameters.get(CameraSettings.KEY_QC_OPTI_ZOOM); String chromaFlash = @@ -1588,11 +1590,12 @@ public class PhotoModule mParameters.get(CameraSettings.KEY_QC_AF_BRACKETING); String fssr = mParameters.get(CameraSettings.KEY_QC_FSSR); - String continuousShot = - mParameters.get("long-shot"); String truePortrait = mParameters.get(CameraSettings.KEY_QC_TP); - + String multiTouchFocus = + mParameters.get(CameraSettings.KEY_QC_MULTI_TOUCH_FOCUS); + String continuousShot = + mParameters.get("long-shot"); if ((continuousShot != null) && continuousShot.equals(continuousShotOn)) { String pictureFormat = mActivity.getString(R.string. pref_camera_picture_format_value_jpeg); @@ -1611,6 +1614,7 @@ public class PhotoModule mUI.overrideSettings(CameraSettings.KEY_PICTURE_FORMAT, null); } if ((ubiFocus != null && ubiFocus.equals(ubiFocusOn)) || + (multiTouchFocus != null && multiTouchFocus.equals(multiTouchFocusOn)) || (reFocus != null && reFocus.equals(reFocusOn)) || (chromaFlash != null && chromaFlash.equals(chromaFlashOn)) || (optiZoom != null && optiZoom.equals(optiZoomOn)) || @@ -2557,7 +2561,8 @@ public class PhotoModule String reFocus, String optiZoom, String fssr, - String truePortrait) { + String truePortrait, + String multiTouchFocus) { if (CameraUtil.isSupported(ubiFocus, CameraSettings.getSupportedAFBracketingModes(mParameters))) { mParameters.set(CameraSettings.KEY_QC_AF_BRACKETING, ubiFocus); @@ -2582,6 +2587,10 @@ public class PhotoModule CameraSettings.getSupportedTruePortraitModes(mParameters))) { mParameters.set(CameraSettings.KEY_QC_TP, truePortrait); } + if(CameraUtil.isSupported(multiTouchFocus, + CameraSettings.getSupportedMultiTouchFocusModes(mParameters))) { + mParameters.set(CameraSettings.KEY_QC_MULTI_TOUCH_FOCUS, multiTouchFocus); + } } /** This can run on a background thread, so don't do UI updates here.*/ @@ -2815,6 +2824,8 @@ public class PhotoModule pref_camera_advanced_feature_value_FSSR_off); String truePortraitOff = mActivity.getString(R.string. pref_camera_advanced_feature_value_trueportrait_off); + String multiTouchFocusOff = mActivity.getString(R.string. + pref_camera_advanced_feature_value_multi_touch_focus_off); if (advancedFeature.equals(mActivity.getString(R.string. pref_camera_advanced_feature_value_ubifocus_on))) { @@ -2823,7 +2834,8 @@ public class PhotoModule reFocusOff, optiZoomOff, fssrOff, - truePortraitOff); + truePortraitOff, + multiTouchFocusOff); } else if (advancedFeature.equals(mActivity.getString(R.string. pref_camera_advanced_feature_value_chromaflash_on))) { qcomUpdateAdvancedFeatures(ubiFocusOff, @@ -2831,7 +2843,8 @@ public class PhotoModule reFocusOff, optiZoomOff, fssrOff, - truePortraitOff); + truePortraitOff, + multiTouchFocusOff); } else if (advancedFeature.equals(mActivity.getString(R.string. pref_camera_advanced_feature_value_refocus_on))) { qcomUpdateAdvancedFeatures(ubiFocusOff, @@ -2839,7 +2852,8 @@ public class PhotoModule advancedFeature, optiZoomOff, fssrOff, - truePortraitOff); + truePortraitOff, + multiTouchFocusOff); mRefocus = true; } else if (advancedFeature.equals(mActivity.getString(R.string. pref_camera_advanced_feature_value_optizoom_on))) { @@ -2848,7 +2862,8 @@ public class PhotoModule reFocusOff, advancedFeature, fssrOff, - truePortraitOff); + truePortraitOff, + multiTouchFocusOff); } else if (advancedFeature.equals(mActivity.getString(R.string. pref_camera_advanced_feature_value_FSSR_on))) { qcomUpdateAdvancedFeatures(ubiFocusOff, @@ -2856,7 +2871,8 @@ public class PhotoModule reFocusOff, optiZoomOff, advancedFeature, - truePortraitOff); + truePortraitOff, + multiTouchFocusOff); } else if (advancedFeature.equals(mActivity.getString(R.string. pref_camera_advanced_feature_value_trueportrait_on))) { qcomUpdateAdvancedFeatures(ubiFocusOff, @@ -2864,6 +2880,16 @@ public class PhotoModule reFocusOff, optiZoomOff, fssrOff, + advancedFeature, + multiTouchFocusOff); + } else if (advancedFeature.equals(mActivity.getString(R.string. + pref_camera_advanced_feature_value_multi_touch_focus_on))) { + qcomUpdateAdvancedFeatures(ubiFocusOff, + chromaFlashOff, + reFocusOff, + optiZoomOff, + fssrOff, + truePortraitOff, advancedFeature); } else { qcomUpdateAdvancedFeatures(ubiFocusOff, @@ -2871,7 +2897,8 @@ public class PhotoModule reFocusOff, optiZoomOff, fssrOff, - truePortraitOff); + truePortraitOff, + multiTouchFocusOff); } } // Set auto exposure parameter. |