summaryrefslogtreecommitdiffstats
path: root/src/com/android/camera/FocusOverlayManager.java
diff options
context:
space:
mode:
authorjt1134 <jt1134@gmail.com>2013-01-12 00:35:45 -0600
committerMichael Bestas <mikeioannina@gmail.com>2017-01-04 21:57:39 +0200
commit73f2937a9198d233e3c2f248a0886394e9dcf27e (patch)
treeb5d87a5a7ad7da6718230961515913e6e46e9f3a /src/com/android/camera/FocusOverlayManager.java
parent165aec53883a535e0186c9ee5019f3b42bb7542b (diff)
downloadandroid_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.java17
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);
+ }
}
}