summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Evan Rosky <erosky@google.com> 2021-12-10 17:34:41 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2021-12-10 17:34:41 +0000
commitb9b095a6cc9499be51e32965f2711f893debd7e9 (patch)
treefda94e47aa289fc3be750d6e2c0a7de7de6e501b
parent0c379593e58b6c0911e6d0deadb260034a0935fb (diff)
parent2dd6381527758345693b52107d05eb629291ea8e (diff)
Merge "Reset inherit-parent bounds in finishTransaction"
-rw-r--r--services/core/java/com/android/server/wm/Transition.java7
1 files changed, 7 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/wm/Transition.java b/services/core/java/com/android/server/wm/Transition.java
index 39747472b2da..dae004dd5f6f 100644
--- a/services/core/java/com/android/server/wm/Transition.java
+++ b/services/core/java/com/android/server/wm/Transition.java
@@ -365,6 +365,13 @@ class Transition extends Binder implements BLASTSyncEngine.TransactionReadyListe
t.setPosition(targetLeash, tmpPos.x, tmpPos.y);
t.setCornerRadius(targetLeash, 0);
t.setShadowRadius(targetLeash, 0);
+ // The bounds sent to the transition is always a real bounds. This means we lose
+ // information about "null" bounds (inheriting from parent). Core will fix-up
+ // non-organized window surface bounds; however, since Core can't touch organized
+ // surfaces, add the "inherit from parent" restoration here.
+ if (target.isOrganized() && target.matchParentBounds()) {
+ t.setWindowCrop(targetLeash, -1, -1);
+ }
displays.add(target.getDisplayContent());
}
}