diff options
| author | 2022-10-25 03:37:49 +0000 | |
|---|---|---|
| committer | 2022-10-25 03:37:49 +0000 | |
| commit | f58e5c1683417cc1460c9c70c95a58d12c1ab8e2 (patch) | |
| tree | 0c5e583ca540b3a436324192d09275081c8fc6d5 | |
| parent | 90e8476e3c4a52899ed9adf4948ba019ebfededf (diff) | |
| parent | 463bf0cd08d41bc2c1ded110d831f56daab887fe (diff) | |
Merge "Clear cached override frame when window removed" into tm-qpr-dev
| -rw-r--r-- | services/core/java/com/android/server/wm/InsetsSourceProvider.java | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/wm/InsetsSourceProvider.java b/services/core/java/com/android/server/wm/InsetsSourceProvider.java index bf4b65da8b43..3a8fbbbaa77d 100644 --- a/services/core/java/com/android/server/wm/InsetsSourceProvider.java +++ b/services/core/java/com/android/server/wm/InsetsSourceProvider.java @@ -173,6 +173,7 @@ abstract class InsetsSourceProvider { mWindowContainer = windowContainer; // TODO: remove the frame provider for non-WindowState container. mFrameProvider = frameProvider; + mOverrideFrames.clear(); mOverrideFrameProviders = overrideFrameProviders; if (windowContainer == null) { setServerVisible(false); @@ -234,6 +235,8 @@ abstract class InsetsSourceProvider { updateSourceFrameForServerVisibility(); if (mOverrideFrameProviders != null) { + // Not necessary to clear the mOverrideFrames here. It will be cleared every time the + // override frame provider updates. for (int i = mOverrideFrameProviders.size() - 1; i >= 0; i--) { final int windowType = mOverrideFrameProviders.keyAt(i); final Rect overrideFrame; |