summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Mateusz Cicheński <mateuszc@google.com> 2022-09-16 13:40:55 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2022-09-16 13:40:55 +0000
commit88f8b673d3d58d1ce1da08a1aae4ae37414ae3e0 (patch)
tree3735e9e55ccab5174ba11cf4f066e8d939b71ed2
parent88deb417100bb49a325bb9078c3d3b72f16b4b7b (diff)
parent97914b05f1365607cbe4be52a6efe1c45e126d72 (diff)
Merge "Mark touchable region of IME windows as unrestricted keep clear areas" into tm-qpr-dev
-rw-r--r--services/core/java/com/android/server/wm/DisplayContent.java7
1 files changed, 7 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/wm/DisplayContent.java b/services/core/java/com/android/server/wm/DisplayContent.java
index b093d2566710..95d71a36313f 100644
--- a/services/core/java/com/android/server/wm/DisplayContent.java
+++ b/services/core/java/com/android/server/wm/DisplayContent.java
@@ -245,6 +245,7 @@ import com.android.internal.util.function.pooled.PooledLambda;
import com.android.internal.util.function.pooled.PooledPredicate;
import com.android.server.inputmethod.InputMethodManagerInternal;
import com.android.server.policy.WindowManagerPolicy;
+import com.android.server.wm.utils.RegionUtils;
import com.android.server.wm.utils.RotationCache;
import com.android.server.wm.utils.WmDisplayCutout;
@@ -5780,6 +5781,12 @@ class DisplayContent extends RootDisplayArea implements WindowManagerPolicy.Disp
if (w.isVisible() && !w.inPinnedWindowingMode()) {
w.getKeepClearAreas(outRestricted, outUnrestricted, tmpMatrix, tmpFloat9);
+
+ if (w.mIsImWindow) {
+ Region touchableRegion = Region.obtain();
+ w.getEffectiveTouchableRegion(touchableRegion);
+ RegionUtils.forEachRect(touchableRegion, rect -> outUnrestricted.add(rect));
+ }
}
// We stop traversing when we reach the base of a fullscreen app.