summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMichael Jurka <mikejurka@google.com>2013-04-11 11:32:45 -0700
committerArne Coucheron <arco68@gmail.com>2013-08-12 16:55:06 +0200
commitaea1117ffda7fb09020c9da4b9e012b7d2ae3c71 (patch)
treefa0ae3cfb3646767ad2882557a7fff41d4a12848 /src
parent9f882cf8fc28055e1fcf7703d68ab1613326395c (diff)
downloadandroid_packages_apps_Trebuchet-aea1117ffda7fb09020c9da4b9e012b7d2ae3c71.tar.gz
android_packages_apps_Trebuchet-aea1117ffda7fb09020c9da4b9e012b7d2ae3c71.tar.bz2
android_packages_apps_Trebuchet-aea1117ffda7fb09020c9da4b9e012b7d2ae3c71.zip
Only postpone animations if app is visible
Fixes bug where folders would remain open after returning to launcher Bug: 8681168 Change-Id: I930616f2aa006c1e23298dbdb0a80a9390ea41af
Diffstat (limited to 'src')
-rw-r--r--src/com/cyanogenmod/trebuchet/FirstFrameAnimatorHelper.java7
-rw-r--r--src/com/cyanogenmod/trebuchet/Launcher.java12
2 files changed, 19 insertions, 0 deletions
diff --git a/src/com/cyanogenmod/trebuchet/FirstFrameAnimatorHelper.java b/src/com/cyanogenmod/trebuchet/FirstFrameAnimatorHelper.java
index 1b1c355db..53d6ec59c 100644
--- a/src/com/cyanogenmod/trebuchet/FirstFrameAnimatorHelper.java
+++ b/src/com/cyanogenmod/trebuchet/FirstFrameAnimatorHelper.java
@@ -43,6 +43,7 @@ public class FirstFrameAnimatorHelper extends AnimatorListenerAdapter
private static ViewTreeObserver.OnDrawListener sGlobalDrawListener;
private static long sGlobalFrameCounter;
+ private static boolean sVisible;
public FirstFrameAnimatorHelper(ValueAnimator animator, View target) {
mTarget = target;
@@ -61,6 +62,10 @@ public class FirstFrameAnimatorHelper extends AnimatorListenerAdapter
onAnimationUpdate(va);
}
+ public static void setIsVisible(boolean visible) {
+ sVisible = visible;
+ }
+
public static void initializeDrawListener(View view) {
if (sGlobalDrawListener != null) {
view.getViewTreeObserver().removeOnDrawListener(sGlobalDrawListener);
@@ -77,6 +82,7 @@ public class FirstFrameAnimatorHelper extends AnimatorListenerAdapter
}
};
view.getViewTreeObserver().addOnDrawListener(sGlobalDrawListener);
+ sVisible = true;
}
public void onAnimationUpdate(final ValueAnimator animation) {
@@ -87,6 +93,7 @@ public class FirstFrameAnimatorHelper extends AnimatorListenerAdapter
}
if (!mHandlingOnAnimationUpdate &&
+ sVisible &&
// If the current play time exceeds the duration, the animation
// will get finished, even if we call setCurrentPlayTime -- therefore
// don't adjust the animation in that case
diff --git a/src/com/cyanogenmod/trebuchet/Launcher.java b/src/com/cyanogenmod/trebuchet/Launcher.java
index c27c0ed69..1df214e08 100644
--- a/src/com/cyanogenmod/trebuchet/Launcher.java
+++ b/src/com/cyanogenmod/trebuchet/Launcher.java
@@ -766,6 +766,18 @@ public final class Launcher extends Activity
}
@Override
+ protected void onStop() {
+ super.onStop();
+ FirstFrameAnimatorHelper.setIsVisible(false);
+ }
+
+ @Override
+ protected void onStart() {
+ super.onStart();
+ FirstFrameAnimatorHelper.setIsVisible(true);
+ }
+
+ @Override
protected void onResume() {
super.onResume();