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

Commit 789ae763 authored by Automerger Merge Worker's avatar Automerger Merge Worker
Browse files

Merge "Reset protection path on rotation" into qt-qpr1-dev am: cf0544b0

Change-Id: If0aba2000ab2802bf4df7341754f006485196a55
parents 606626e0 cf0544b0
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -26,7 +26,7 @@ import java.util.concurrent.Executor

import kotlin.math.roundToInt

const val TAG = "CameraOpTransitionController"
const val TAG = "CameraAvailabilityListener"

/**
 * Listens for usage of the Camera and controls the ScreenDecorations transition to show extra
+10 −3
Original line number Diff line number Diff line
@@ -724,9 +724,10 @@ public class ScreenDecorations extends SystemUI implements Tunable {
        private final List<Rect> mBounds = new ArrayList();
        private final Rect mBoundingRect = new Rect();
        private final Path mBoundingPath = new Path();
        // Don't initialize these because they are cached elsewhere and may not exist
        // Don't initialize these yet because they may never exist
        private Rect mProtectionRect;
        private Path mProtectionPath;
        private Path mProtectionPathOrig;
        private Rect mTotalBounds = new Rect();
        // Whether or not to show the cutout protection path
        private boolean mShowProtection = false;
@@ -812,7 +813,11 @@ public class ScreenDecorations extends SystemUI implements Tunable {
        }

        void setProtection(Path protectionPath, Rect pathBounds) {
            mProtectionPath = protectionPath;
            if (mProtectionPathOrig == null) {
                mProtectionPathOrig = new Path();
                mProtectionPath = new Path();
            }
            mProtectionPathOrig.set(protectionPath);
            mProtectionRect = pathBounds;
        }

@@ -889,7 +894,9 @@ public class ScreenDecorations extends SystemUI implements Tunable {
            Matrix m = new Matrix();
            transformPhysicalToLogicalCoordinates(mInfo.rotation, dw, dh, m);
            mBoundingPath.transform(m);
            if (mProtectionPath != null) {
            if (mProtectionPathOrig != null) {
                // Reset the protection path so we don't aggregate rotations
                mProtectionPath.set(mProtectionPathOrig);
                mProtectionPath.transform(m);
            }
        }