diff options
author | Hyunyoung Song <hyunyoungs@google.com> | 2016-07-29 21:32:48 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2016-07-29 21:32:48 +0000 |
commit | 72dc60c5760166699effee7be17528de7f29fa67 (patch) | |
tree | 41dc8000bf3f7e24e03bc5dfbecac42f3dfead91 /src | |
parent | c42087e5c011dbf912c0f8b8d27d15ec5a97dca1 (diff) | |
parent | 06ca7568c63a972832db43563020f5b4a1ae1112 (diff) | |
download | android_packages_apps_Trebuchet-72dc60c5760166699effee7be17528de7f29fa67.tar.gz android_packages_apps_Trebuchet-72dc60c5760166699effee7be17528de7f29fa67.tar.bz2 android_packages_apps_Trebuchet-72dc60c5760166699effee7be17528de7f29fa67.zip |
Merge "Cancel exit spring loaded runnable when launcher state is set to APPS or WIDGETS b/29645452" into ub-launcher3-calgary
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/launcher3/Launcher.java | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java index 5f5ac2e3c..1de8a684b 100644 --- a/src/com/android/launcher3/Launcher.java +++ b/src/com/android/launcher3/Launcher.java @@ -348,6 +348,11 @@ public class Launcher extends Activity } } + // Exiting spring loaded mode happens with a delay. This runnable object triggers the + // state transition. If another state transition happened during this delay, + // simply unregister this runnable. + private Runnable mExitSpringLoadedModeRunnable; + @Thunk Runnable mBuildLayersRunnable = new Runnable() { public void run() { if (mWorkspace != null) { @@ -3416,6 +3421,12 @@ public class Launcher extends Activity return false; } + // This is a safe and supported transition to bypass spring_loaded mode. + if (mExitSpringLoadedModeRunnable != null) { + mHandler.removeCallbacks(mExitSpringLoadedModeRunnable); + mExitSpringLoadedModeRunnable = null; + } + if (toState == State.APPS) { mStateTransitionAnimation.startAnimationToAllApps(mWorkspace.getState(), animated, focusSearchBar); @@ -3475,7 +3486,10 @@ public class Launcher extends Activity final Runnable onCompleteRunnable) { if (!isStateSpringLoaded()) return; - mHandler.postDelayed(new Runnable() { + if (mExitSpringLoadedModeRunnable != null) { + mHandler.removeCallbacks(mExitSpringLoadedModeRunnable); + } + mExitSpringLoadedModeRunnable = new Runnable() { @Override public void run() { if (successfulDrop) { @@ -3489,8 +3503,10 @@ public class Launcher extends Activity } else { exitSpringLoadedDragMode(); } + mExitSpringLoadedModeRunnable = null; } - }, delay); + }; + mHandler.postDelayed(mExitSpringLoadedModeRunnable, delay); } boolean isStateSpringLoaded() { |