Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c6499fb8 authored by Jerry Chang's avatar Jerry Chang
Browse files

Fix not showing divider when re-entering split with rotation

I134c8c4e keeps a split pair in the background, the split layout might
not be updated properly if the next entering split comes with rotation.
This makes sure to update the split layout to show the divider with the
correct orientation.

Fix: 280876344
Test: atest WMShellFlickerTests:DismissSplitScreenByGoHomeBenchmark
Change-Id: I47659b791cc479b92aa1d1851663d65e8a93aeab
parent 9e6c6ca8
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -412,7 +412,10 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange

    /** Releases and re-inflates {@link DividerView} on the root surface. */
    public void update(SurfaceControl.Transaction t) {
        if (!mInitialized) return;
        if (!mInitialized) {
            init();
            return;
        }
        mSplitWindowManager.release(t);
        mImePositionProcessor.reset();
        mSplitWindowManager.init(this, mInsetsState);
+1 −1
Original line number Diff line number Diff line
@@ -1538,7 +1538,7 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler,
    }

    void finishEnterSplitScreen(SurfaceControl.Transaction t) {
        mSplitLayout.init();
        mSplitLayout.update(t);
        setDividerVisibility(true, t);
        // Ensure divider surface are re-parented back into the hierarchy at the end of the
        // transition. See Transition#buildFinishTransaction for more detail.