Apply/reset split scroll offset regardless of previous state
- Also do the same in setState without animation
Fix: 208605204
Test: Exit split screen and enter overview
Change-Id: I34dd102527dffa90925b6f0fd22465f1fe6e819c
diff --git a/quickstep/src/com/android/launcher3/uioverrides/RecentsViewStateController.java b/quickstep/src/com/android/launcher3/uioverrides/RecentsViewStateController.java
index 771657b..19897a1 100644
--- a/quickstep/src/com/android/launcher3/uioverrides/RecentsViewStateController.java
+++ b/quickstep/src/com/android/launcher3/uioverrides/RecentsViewStateController.java
@@ -66,6 +66,12 @@
// In Overview, we may be layering app surfaces behind Launcher, so we need to notify
// DepthController to prevent optimizations which might occlude the layers behind
mLauncher.getDepthController().setHasContentBehindLauncher(state.overviewUi);
+
+ if (isSplitSelectionState(state)) {
+ mRecentsView.applySplitPrimaryScrollOffset();
+ } else {
+ mRecentsView.resetSplitPrimaryScrollOffset();
+ }
}
@Override
@@ -90,8 +96,10 @@
LauncherState currentState = mLauncher.getStateManager().getState();
if (isSplitSelectionState(toState) && !isSplitSelectionState(currentState)) {
builder.add(mRecentsView.createSplitSelectInitAnimation().buildAnim());
+ }
+ if (isSplitSelectionState(toState)) {
mRecentsView.applySplitPrimaryScrollOffset();
- } else if (!isSplitSelectionState(toState) && isSplitSelectionState(currentState)) {
+ } else {
mRecentsView.resetSplitPrimaryScrollOffset();
}