diff options
author | kaiyiz <kaiyiz@codeaurora.org> | 2015-01-10 11:28:12 +0800 |
---|---|---|
committer | kaiyiz <kaiyiz@codeaurora.org> | 2015-01-10 11:28:12 +0800 |
commit | a7ab865b2737931ca5fb1d84bbbf361dfaeb15b4 (patch) | |
tree | 8682afe9eb319ccffeb8fea34cf4a489d5865097 /src | |
parent | 11371c1229902496b7d35715a95983d7ee4dca0d (diff) | |
download | android_packages_apps_Snap-a7ab865b2737931ca5fb1d84bbbf361dfaeb15b4.tar.gz android_packages_apps_Snap-a7ab865b2737931ca5fb1d84bbbf361dfaeb15b4.tar.bz2 android_packages_apps_Snap-a7ab865b2737931ca5fb1d84bbbf361dfaeb15b4.zip |
SnapdragonCamera: fix settings list can't disappear after resume camera
Normal the animateFadeOut will be called when activity paused, but if
click sub menu just before pause activity, the animateFadeOut will be
blocked by flag POPUP_IN_ANIMATION.
Make animateFadeOut and animateSlideOut use different flags for judge
whether need to start animation or not.
Change-Id: I49a0cb8f70771ccdd292b589a266a5417f78c6ef
CRs-Fixed: 778167
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/camera/PhotoMenu.java | 17 | ||||
-rw-r--r-- | src/com/android/camera/VideoMenu.java | 17 |
2 files changed, 20 insertions, 14 deletions
diff --git a/src/com/android/camera/PhotoMenu.java b/src/com/android/camera/PhotoMenu.java index 1568c32c0..1aea279a3 100644 --- a/src/com/android/camera/PhotoMenu.java +++ b/src/com/android/camera/PhotoMenu.java @@ -69,7 +69,8 @@ public class PhotoMenu extends MenuController private static final int POPUP_NONE = 0; private static final int POPUP_FIRST_LEVEL = 1; private static final int POPUP_SECOND_LEVEL = 2; - private static final int POPUP_IN_ANIMATION = 3; + private static final int POPUP_IN_ANIMATION_SLIDE = 3; + private static final int POPUP_IN_ANIMATION_FADE = 4; private static final int PREVIEW_MENU_NONE = 0; private static final int PREVIEW_MENU_IN_ANIMATION = 1; private static final int PREVIEW_MENU_ON = 2; @@ -225,9 +226,9 @@ public class PhotoMenu extends MenuController } private void animateFadeOut(final ListView v, final int level) { - if (v == null || mPopupStatus == POPUP_IN_ANIMATION) + if (v == null || mPopupStatus == POPUP_IN_ANIMATION_FADE) return; - mPopupStatus = POPUP_IN_ANIMATION; + mPopupStatus = POPUP_IN_ANIMATION_FADE; ViewPropertyAnimator vp = v.animate(); vp.alpha(0f).setDuration(ANIMATION_DURATION); @@ -274,9 +275,9 @@ public class PhotoMenu extends MenuController } private void animateSlideOut(final ListView v, final int level) { - if (v == null || mPopupStatus == POPUP_IN_ANIMATION) + if (v == null || mPopupStatus == POPUP_IN_ANIMATION_SLIDE) return; - mPopupStatus = POPUP_IN_ANIMATION; + mPopupStatus = POPUP_IN_ANIMATION_SLIDE; ViewPropertyAnimator vp = v.animate(); vp.translationX(v.getX() - v.getWidth()).setDuration(ANIMATION_DURATION); @@ -413,7 +414,9 @@ public class PhotoMenu extends MenuController } public boolean isOverMenu(MotionEvent ev) { - if (mPopupStatus == POPUP_NONE || mPopupStatus == POPUP_IN_ANIMATION) + if (mPopupStatus == POPUP_NONE + || mPopupStatus == POPUP_IN_ANIMATION_SLIDE + || mPopupStatus == POPUP_IN_ANIMATION_FADE) return false; if (mUI.getMenuLayout() == null) return false; @@ -439,7 +442,7 @@ public class PhotoMenu extends MenuController } public boolean isMenuBeingAnimated() { - return mPopupStatus == POPUP_IN_ANIMATION; + return mPopupStatus == POPUP_IN_ANIMATION_SLIDE || mPopupStatus == POPUP_IN_ANIMATION_FADE; } public boolean isPreviewMenuBeingShown() { diff --git a/src/com/android/camera/VideoMenu.java b/src/com/android/camera/VideoMenu.java index 3f9cde7f0..1f9c6d1a0 100644 --- a/src/com/android/camera/VideoMenu.java +++ b/src/com/android/camera/VideoMenu.java @@ -66,7 +66,8 @@ public class VideoMenu extends MenuController private static final int POPUP_NONE = 0; private static final int POPUP_FIRST_LEVEL = 1; private static final int POPUP_SECOND_LEVEL = 2; - private static final int POPUP_IN_ANIMATION = 3; + private static final int POPUP_IN_ANIMATION_SLIDE = 3; + private static final int POPUP_IN_ANIMATION_FADE = 4; private static final int PREVIEW_MENU_NONE = 0; private static final int PREVIEW_MENU_IN_ANIMATION = 1; private static final int PREVIEW_MENU_ON = 2; @@ -164,9 +165,9 @@ public class VideoMenu extends MenuController } private void animateFadeOut(final ListView v, final int level) { - if (v == null || mPopupStatus == POPUP_IN_ANIMATION) + if (v == null || mPopupStatus == POPUP_IN_ANIMATION_FADE) return; - mPopupStatus = POPUP_IN_ANIMATION; + mPopupStatus = POPUP_IN_ANIMATION_FADE; ViewPropertyAnimator vp = v.animate(); vp.alpha(0f).setDuration(ANIMATION_DURATION); @@ -213,9 +214,9 @@ public class VideoMenu extends MenuController } private void animateSlideOut(final ListView v, final int level) { - if (v == null || mPopupStatus == POPUP_IN_ANIMATION) + if (v == null || mPopupStatus == POPUP_IN_ANIMATION_SLIDE) return; - mPopupStatus = POPUP_IN_ANIMATION; + mPopupStatus = POPUP_IN_ANIMATION_SLIDE; ViewPropertyAnimator vp = v.animate(); vp.translationX(v.getX() - v.getWidth()).setDuration(ANIMATION_DURATION); @@ -340,7 +341,9 @@ public class VideoMenu extends MenuController } public boolean isOverMenu(MotionEvent ev) { - if (mPopupStatus == POPUP_NONE || mPopupStatus == POPUP_IN_ANIMATION) + if (mPopupStatus == POPUP_NONE + || mPopupStatus == POPUP_IN_ANIMATION_SLIDE + || mPopupStatus == POPUP_IN_ANIMATION_FADE) return false; if (mUI.getMenuLayout() == null) return false; @@ -366,7 +369,7 @@ public class VideoMenu extends MenuController } public boolean isMenuBeingAnimated() { - return mPopupStatus == POPUP_IN_ANIMATION; + return mPopupStatus == POPUP_IN_ANIMATION_SLIDE || mPopupStatus == POPUP_IN_ANIMATION_FADE; } public boolean isPreviewMenuBeingShown() { |