diff options
| -rw-r--r-- | core/java/android/view/ViewRootImpl.java | 7 | ||||
| -rw-r--r-- | services/core/java/com/android/server/wm/LetterboxUiController.java | 2 |
2 files changed, 8 insertions, 1 deletions
diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java index 56727a3dbb5f..91f36bf2c44e 100644 --- a/core/java/android/view/ViewRootImpl.java +++ b/core/java/android/view/ViewRootImpl.java @@ -8158,6 +8158,7 @@ public final class ViewRootImpl implements ViewParent, mLastSyncSeqId, mTmpFrames, mPendingMergedConfiguration, mSurfaceControl, mTempInsets, mTempControls, mRelayoutBundle); mRelayoutRequested = true; + final int maybeSyncSeqId = mRelayoutBundle.getInt("seqid"); if (maybeSyncSeqId > 0) { mSyncSeqId = maybeSyncSeqId; @@ -8197,6 +8198,12 @@ public final class ViewRootImpl implements ViewParent, } } + if (mSurfaceControl.isValid() && !HardwareRenderer.isDrawingEnabled()) { + // When drawing is disabled the window layer won't have a valid buffer. + // Set a window crop so input can get delivered to the window. + mTransaction.setWindowCrop(mSurfaceControl, mSurfaceSize.x, mSurfaceSize.y).apply(); + } + mLastTransformHint = transformHint; mSurfaceControl.setTransformHint(transformHint); diff --git a/services/core/java/com/android/server/wm/LetterboxUiController.java b/services/core/java/com/android/server/wm/LetterboxUiController.java index 317c93e63459..ea82417a2389 100644 --- a/services/core/java/com/android/server/wm/LetterboxUiController.java +++ b/services/core/java/com/android/server/wm/LetterboxUiController.java @@ -481,7 +481,7 @@ final class LetterboxUiController { } private void updateRoundedCorners(WindowState mainWindow) { - final SurfaceControl windowSurface = mainWindow.getClientViewRootSurface(); + final SurfaceControl windowSurface = mainWindow.getSurfaceControl(); if (windowSurface != null && windowSurface.isValid()) { final Transaction transaction = mActivityRecord.getSyncTransaction(); |