diff --git a/services/core/java/com/android/server/wm/WindowState.java b/services/core/java/com/android/server/wm/WindowState.java index c1f4021caf4f7..6c55c22a1aaaf 100644 --- a/services/core/java/com/android/server/wm/WindowState.java +++ b/services/core/java/com/android/server/wm/WindowState.java @@ -2546,6 +2546,14 @@ final class WindowState implements WindowManagerPolicy.WindowState { if (fitToDisplay) { Gravity.applyDisplay(mAttrs.gravity, mDisplayFrame, mFrame); } + + // We need to make sure we update the CompatFrame as it is used for + // cropping decisions, etc, on systems where we lack a decor layer. + mCompatFrame.set(mFrame); + if (mEnforceSizeCompat) { + // See comparable block in computeFrameLw. + mCompatFrame.scale(mInvGlobalScale); + } } boolean isChildWindow() {