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

Commit 4a44eb70 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Ignore ui mode change caused by Morris overlay in PiP" into sc-v2-dev...

Merge "Ignore ui mode change caused by Morris overlay in PiP" into sc-v2-dev am: e5843059 am: 692ebb41

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/16287549

Change-Id: Idee230f437b2791979185250a599ad0cfd17c872
parents 6fd6d896 692ebb41
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -93,6 +93,19 @@ public class DisplayLayout {
    private boolean mReverseDefaultRotation = false;
    private InsetsState mInsetsState = new InsetsState();

    /**
     * Different from {@link #equals(Object)}, this method compares the basic geometry properties
     * of two {@link DisplayLayout} objects including width, height, rotation, density and cutout.
     * @return {@code true} if the given {@link DisplayLayout} is identical geometry wise.
     */
    public boolean isSameGeometry(@NonNull DisplayLayout other) {
        return mWidth == other.mWidth
                && mHeight == other.mHeight
                && mRotation == other.mRotation
                && mDensityDpi == other.mDensityDpi
                && Objects.equals(mCutout, other.mCutout);
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
+1 −2
Original line number Diff line number Diff line
@@ -88,7 +88,6 @@ import com.android.wm.shell.pip.PipUtils;
import com.android.wm.shell.transition.Transitions;

import java.io.PrintWriter;
import java.util.Objects;
import java.util.Optional;
import java.util.function.Consumer;

@@ -469,7 +468,7 @@ public class PipController implements PipTransitionController.PipTransitionCallb
    }

    private void onDisplayChanged(DisplayLayout layout, boolean saveRestoreSnapFraction) {
        if (Objects.equals(layout, mPipBoundsState.getDisplayLayout())) {
        if (mPipBoundsState.getDisplayLayout().isSameGeometry(layout)) {
            return;
        }
        Runnable updateDisplayLayout = () -> {