summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Yunfan Chen <yunfanc@google.com> 2023-11-15 03:06:13 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2023-11-15 03:06:13 +0000
commit1d806343600dc52c108d22664c5719a2f467541b (patch)
tree789c44b2bc866d597d0c7526d713a09373156eca
parent6c0f69e82549371ed19cc3512e2b880afb67d384 (diff)
parent4a914a408c1021b8d8251c9035bb40bcee6a7f4b (diff)
Merge "No hard-coded insets type in config calculation" into main
-rw-r--r--services/core/java/com/android/server/wm/DisplayPolicy.java13
-rw-r--r--services/core/java/com/android/server/wm/WindowManagerService.java3
2 files changed, 7 insertions, 9 deletions
diff --git a/services/core/java/com/android/server/wm/DisplayPolicy.java b/services/core/java/com/android/server/wm/DisplayPolicy.java
index 8a7cc67c3660..b34f912e1c78 100644
--- a/services/core/java/com/android/server/wm/DisplayPolicy.java
+++ b/services/core/java/com/android/server/wm/DisplayPolicy.java
@@ -1877,15 +1877,12 @@ public class DisplayPolicy {
final InsetsState insetsState = df.mInsetsState;
final Rect displayFrame = insetsState.getDisplayFrame();
final Insets decor = insetsState.calculateInsets(displayFrame,
- dc.mWmService.mDecorTypes,
- true /* ignoreVisibility */);
- final Insets statusBar = insetsState.calculateInsets(displayFrame,
- Type.statusBars(), true /* ignoreVisibility */);
+ dc.mWmService.mDecorTypes, true /* ignoreVisibility */);
+ final Insets configInsets = insetsState.calculateInsets(displayFrame,
+ dc.mWmService.mConfigTypes, true /* ignoreVisibility */);
mNonDecorInsets.set(decor.left, decor.top, decor.right, decor.bottom);
- mConfigInsets.set(Math.max(statusBar.left, decor.left),
- Math.max(statusBar.top, decor.top),
- Math.max(statusBar.right, decor.right),
- Math.max(statusBar.bottom, decor.bottom));
+ mConfigInsets.set(configInsets.left, configInsets.top, configInsets.right,
+ configInsets.bottom);
mNonDecorFrame.set(displayFrame);
mNonDecorFrame.inset(mNonDecorInsets);
mConfigFrame.set(displayFrame);
diff --git a/services/core/java/com/android/server/wm/WindowManagerService.java b/services/core/java/com/android/server/wm/WindowManagerService.java
index 2bb3046187d2..757d6d68c3b3 100644
--- a/services/core/java/com/android/server/wm/WindowManagerService.java
+++ b/services/core/java/com/android/server/wm/WindowManagerService.java
@@ -1191,7 +1191,8 @@ public class WindowManagerService extends IWindowManager.Stub
&& mFlags.mAllowsScreenSizeDecoupledFromStatusBarAndCutout;
if (!isScreenSizeDecoupledFromStatusBarAndCutout) {
mDecorTypes = WindowInsets.Type.displayCutout() | WindowInsets.Type.navigationBars();
- mConfigTypes = WindowInsets.Type.statusBars() | WindowInsets.Type.navigationBars();
+ mConfigTypes = WindowInsets.Type.displayCutout() | WindowInsets.Type.statusBars()
+ | WindowInsets.Type.navigationBars();
} else {
mDecorTypes = WindowInsets.Type.navigationBars();
mConfigTypes = WindowInsets.Type.navigationBars();