Merge "Clear cached override frame when window removed" into tm-qpr-dev am: f58e5c1683 am: 55d205a717

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/20187123

Change-Id: I1661e17cea93889eff2a9e2212323efe662e1136
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Yunfan Chen
2022-10-25 04:41:06 +00:00
committed by Automerger Merge Worker

View File

@@ -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;