diff options
author | Sunny Goyal <sunnygoyal@google.com> | 2018-02-05 16:34:57 -0800 |
---|---|---|
committer | Sunny Goyal <sunnygoyal@google.com> | 2018-02-06 10:06:53 -0800 |
commit | af161fd20c0ae75f8aa6d609159248612c191e38 (patch) | |
tree | f2113e697b35e2ae84b389d9d7ee6559aa4911ba /src | |
parent | a5e70402191bcf497b946033a9b258ec1f563893 (diff) | |
download | android_packages_apps_Trebuchet-af161fd20c0ae75f8aa6d609159248612c191e38.tar.gz android_packages_apps_Trebuchet-af161fd20c0ae75f8aa6d609159248612c191e38.tar.bz2 android_packages_apps_Trebuchet-af161fd20c0ae75f8aa6d609159248612c191e38.zip |
Preserving the last state when going to overview.
> Resetting the state to NORMAL on every onStop so that the user
never starts on the overview screen
Change-Id: If3c17693b7125a3969809e60891a2ab978fe83bc
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/launcher3/Launcher.java | 1 | ||||
-rw-r--r-- | src/com/android/launcher3/LauncherStateManager.java | 22 |
2 files changed, 23 insertions, 0 deletions
diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java index b01b86c7c..5da4944d4 100644 --- a/src/com/android/launcher3/Launcher.java +++ b/src/com/android/launcher3/Launcher.java @@ -788,6 +788,7 @@ public class Launcher extends BaseActivity mStateManager.getState().containerType); } NotificationListener.removeNotificationsChangedListener(); + getStateManager().moveToRestState(); } @Override diff --git a/src/com/android/launcher3/LauncherStateManager.java b/src/com/android/launcher3/LauncherStateManager.java index 6eafc895d..4aed52099 100644 --- a/src/com/android/launcher3/LauncherStateManager.java +++ b/src/com/android/launcher3/LauncherStateManager.java @@ -85,6 +85,8 @@ public class LauncherStateManager { private LauncherState mLastStableState = NORMAL; private LauncherState mCurrentStableState = NORMAL; + private LauncherState mRestState; + private StateListener mStateListener; public LauncherStateManager(Launcher l) { @@ -289,12 +291,32 @@ public class LauncherStateManager { mLauncher.getWorkspace().setClipChildren(!state.disablePageClipping); mLauncher.getUserEventDispatcher().resetElapsedContainerMillis(); mLauncher.finishAutoCancelActionMode(); + + if (state == NORMAL) { + setRestState(null); + } } public LauncherState getLastState() { return mLastStableState; } + public void moveToRestState() { + if (mState.disableRestore) { + goToState(getRestState()); + // Reset history + mLastStableState = NORMAL; + } + } + + public LauncherState getRestState() { + return mRestState == null ? NORMAL : mRestState; + } + + public void setRestState(LauncherState restState) { + mRestState = restState; + } + /** * Cancels the current animation. */ |