[automerger] Do not change state in the middle of quickstep gesture am: d936f6a5e9
Change-Id: I6297797bb034ad8bd2600c8abb5a959ee0e6aa32
diff --git a/quickstep/src/com/android/quickstep/ActivityControlHelper.java b/quickstep/src/com/android/quickstep/ActivityControlHelper.java
index 52a6dd5..202d8fc 100644
--- a/quickstep/src/com/android/quickstep/ActivityControlHelper.java
+++ b/quickstep/src/com/android/quickstep/ActivityControlHelper.java
@@ -243,9 +243,8 @@
if (wasVisible) {
DeviceProfile dp = activity.getDeviceProfile();
long accuracy = 2 * Math.max(dp.widthPx, dp.heightPx);
- activity.getStateManager().goToState(startState, false);
callback.accept(activity.getStateManager()
- .createAnimationToNewWorkspace(endState, accuracy));
+ .createAnimationToNewWorkspace(startState, endState, accuracy));
return;
}
diff --git a/src/com/android/launcher3/LauncherStateManager.java b/src/com/android/launcher3/LauncherStateManager.java
index 05c515b..7b32913 100644
--- a/src/com/android/launcher3/LauncherStateManager.java
+++ b/src/com/android/launcher3/LauncherStateManager.java
@@ -298,6 +298,24 @@
/**
* Creates a {@link AnimatorPlaybackController} that can be used for a controlled
+ * state transition. The UI is force-set to fromState before creating the controller.
+ * @param fromState the initial state for the transition.
+ * @param state the final state for the transition.
+ * @param duration intended duration for normal playback. Use higher duration for better
+ * accuracy.
+ */
+ public AnimatorPlaybackController createAnimationToNewWorkspace(
+ LauncherState fromState, LauncherState state, long duration) {
+ mConfig.reset();
+ for (StateHandler handler : getStateHandlers()) {
+ handler.setState(fromState);
+ }
+
+ return createAnimationToNewWorkspace(state, duration);
+ }
+
+ /**
+ * Creates a {@link AnimatorPlaybackController} that can be used for a controlled
* state transition.
* @param state the final state for the transition.
* @param duration intended duration for normal playback. Use higher duration for better