From e3de7223ee3fe56e097d68f50c5a59ae61370d65 Mon Sep 17 00:00:00 2001 From: Michael Kolb Date: Mon, 18 Feb 2013 15:16:44 -0800 Subject: Fix AF animation Bug: 8219462 Change-Id: I9c39c70aad8f1ca6763acfc2d2a5ff5c918c71a5 --- src/com/android/camera/FocusOverlayManager.java | 7 +++++-- src/com/android/camera/ui/PieRenderer.java | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) (limited to 'src/com') diff --git a/src/com/android/camera/FocusOverlayManager.java b/src/com/android/camera/FocusOverlayManager.java index 9acf85de9..c78eb7152 100644 --- a/src/com/android/camera/FocusOverlayManager.java +++ b/src/com/android/camera/FocusOverlayManager.java @@ -94,6 +94,7 @@ public class FocusOverlayManager { private ComboPreferences mPreferences; private Handler mHandler; Listener mListener; + private boolean mPreviousMoving; public interface Listener { public void autoFocus(); @@ -302,11 +303,13 @@ public class FocusOverlayManager { // continuous autofocus. if (mState != STATE_IDLE) return; - if (moving) { + // animate on false->true trasition only b/8219520 + if (moving && !mPreviousMoving) { mPieRenderer.showStart(); - } else { + } else if (!moving) { mPieRenderer.showSuccess(true); } + mPreviousMoving = moving; } @TargetApi(ApiHelper.VERSION_CODES.ICE_CREAM_SANDWICH) diff --git a/src/com/android/camera/ui/PieRenderer.java b/src/com/android/camera/ui/PieRenderer.java index 8afd4816a..95597b2a1 100644 --- a/src/com/android/camera/ui/PieRenderer.java +++ b/src/com/android/camera/ui/PieRenderer.java @@ -717,7 +717,7 @@ public class PieRenderer extends OverlayRenderer private void cancelFocus() { mFocusCancelled = true; mOverlay.removeCallbacks(mDisappear); - if (mAnimation != null) { + if (mAnimation != null && !mAnimation.hasEnded()) { mAnimation.cancel(); } mFocusCancelled = false; -- cgit v1.2.3