Mark touchable region of IME windows as unrestricted keep clear areas
Test: Manual
Bug: 227596282
Change-Id: Ic7088bbfeebc0ccee218c585f024b652f48f89a2
(cherry picked from commit 9d31ce1262)
This commit is contained in:
committed by
Mateusz Cicheński
parent
384756a667
commit
97914b05f1
@@ -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.
|
||||
|
||||
Reference in New Issue
Block a user