mirror of
https://github.com/LawnchairLauncher/lawnchair.git
synced 2026-02-19 02:38:20 +00:00
Merge "Do not animate moving to rest state on CHANGE_ACTIVE_SCREEN." into tm-qpr-dev
This commit is contained in:
@@ -937,7 +937,11 @@ public class QuickstepLauncher extends Launcher {
|
||||
// When changing screens, force moving to rest state similar to StatefulActivity.onStop, as
|
||||
// StatefulActivity isn't called consistently.
|
||||
if ((flags & CHANGE_ACTIVE_SCREEN) != 0) {
|
||||
getStateManager().moveToRestState();
|
||||
// Do not animate moving to rest state, as it can clash with Launcher#onIdpChanged
|
||||
// where reapplyUi calls StateManager's reapplyState during the state change animation,
|
||||
// and cancel the state change unexpectedly. The screen will be off during screen
|
||||
// transition, hiding the unanimated transition.
|
||||
getStateManager().moveToRestState(/* isAnimated = */false);
|
||||
}
|
||||
|
||||
if ((flags & CHANGE_NAVIGATION_MODE) != 0) {
|
||||
|
||||
@@ -342,7 +342,6 @@ public class StateManager<STATE_TYPE extends BaseState<STATE_TYPE>> {
|
||||
public void onAnimationSuccess(Animator animator) {
|
||||
onStateTransitionEnd(state);
|
||||
}
|
||||
|
||||
};
|
||||
}
|
||||
|
||||
@@ -377,12 +376,16 @@ public class StateManager<STATE_TYPE extends BaseState<STATE_TYPE>> {
|
||||
}
|
||||
|
||||
public void moveToRestState() {
|
||||
moveToRestState(shouldAnimateStateChange());
|
||||
}
|
||||
|
||||
public void moveToRestState(boolean isAnimated) {
|
||||
if (mConfig.currentAnimation != null && mConfig.userControlled) {
|
||||
// The user is doing something. Lets not mess it up
|
||||
return;
|
||||
}
|
||||
if (mState.shouldDisableRestore()) {
|
||||
goToState(getRestState());
|
||||
goToState(getRestState(), isAnimated);
|
||||
// Reset history
|
||||
mLastStableState = mBaseState;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user