From 4536c2fc303847fdc29a39837e069f0d01a26afa Mon Sep 17 00:00:00 2001 From: Alex Chau Date: Wed, 1 Dec 2021 17:23:46 +0000 Subject: [PATCH] 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 --- .../uioverrides/RecentsViewStateController.java | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/quickstep/src/com/android/launcher3/uioverrides/RecentsViewStateController.java b/quickstep/src/com/android/launcher3/uioverrides/RecentsViewStateController.java index 771657b11d..19897a1bf8 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/RecentsViewStateController.java +++ b/quickstep/src/com/android/launcher3/uioverrides/RecentsViewStateController.java @@ -66,6 +66,12 @@ public final class RecentsViewStateController extends // 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 @@ public final class RecentsViewStateController extends 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(); }