diff options
author | jt1134 <jt1134@gmail.com> | 2013-01-12 00:35:45 -0600 |
---|---|---|
committer | Michael Bestas <mikeioannina@gmail.com> | 2017-01-04 21:57:39 +0200 |
commit | 73f2937a9198d233e3c2f248a0886394e9dcf27e (patch) | |
tree | b5d87a5a7ad7da6718230961515913e6e46e9f3a /src/com/android/camera/FocusOverlayManager.java | |
parent | 165aec53883a535e0186c9ee5019f3b42bb7542b (diff) | |
download | android_packages_apps_Snap-73f2937a9198d233e3c2f248a0886394e9dcf27e.tar.gz android_packages_apps_Snap-73f2937a9198d233e3c2f248a0886394e9dcf27e.tar.bz2 android_packages_apps_Snap-73f2937a9198d233e3c2f248a0886394e9dcf27e.zip |
Snap: Add touch-to-focus timeout duration settings
Signed-off-by: Michael Bestas <mikeioannina@gmail.com>
Change-Id: Ib2c2c152a52b2616dd0da6f071f572d34fe64065
Diffstat (limited to 'src/com/android/camera/FocusOverlayManager.java')
-rw-r--r-- | src/com/android/camera/FocusOverlayManager.java | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/src/com/android/camera/FocusOverlayManager.java b/src/com/android/camera/FocusOverlayManager.java index 23b31b14d..811b0decf 100644 --- a/src/com/android/camera/FocusOverlayManager.java +++ b/src/com/android/camera/FocusOverlayManager.java @@ -60,7 +60,6 @@ public class FocusOverlayManager { private static final String TAG = "CAM_FocusManager"; private static final int RESET_TOUCH_FOCUS = 0; - private static final int RESET_TOUCH_FOCUS_DELAY = 3000; private int mState = STATE_IDLE; public static final int STATE_IDLE = 0; // Focus is not active. @@ -107,6 +106,8 @@ public class FocusOverlayManager { public void resumeFaceDetection(); } + private int mFocusTime; // time after touch-to-focus + public interface Listener { public void autoFocus(); public void cancelAutoFocus(); @@ -272,6 +273,11 @@ public class FocusOverlayManager { } } + // set touch-to-focus duration + public void setFocusTime(int time) { + mFocusTime = time; + } + public void onAutoFocus(boolean focused, boolean shutterButtonPressed) { if (mState == STATE_FOCUSING_SNAP_ON_FINISH) { // Take the picture no matter focus succeeds or fails. No need @@ -296,8 +302,8 @@ public class FocusOverlayManager { updateFocusUI(); // If this is triggered by touch focus, cancel focus after a // while. - if (mFocusArea != null) { - mHandler.sendEmptyMessageDelayed(RESET_TOUCH_FOCUS, RESET_TOUCH_FOCUS_DELAY); + if ((mFocusArea != null) && (mFocusTime != 0)) { + mHandler.sendEmptyMessageDelayed(RESET_TOUCH_FOCUS, mFocusTime); } if (shutterButtonPressed) { // Lock AE & AWB so users can half-press shutter and recompose. @@ -404,9 +410,10 @@ public class FocusOverlayManager { autoFocus(); } else { // Just show the indicator in all other cases. updateFocusUI(); - // Reset the metering area in 3 seconds. mHandler.removeMessages(RESET_TOUCH_FOCUS); - mHandler.sendEmptyMessageDelayed(RESET_TOUCH_FOCUS, RESET_TOUCH_FOCUS_DELAY); + if (mFocusTime != 0) { + mHandler.sendEmptyMessageDelayed(RESET_TOUCH_FOCUS, mFocusTime); + } } } |