Merge "Mark touchable region of IME windows as unrestricted keep clear areas" into tm-qpr-dev

This commit is contained in:
Mateusz Cicheński
2022-09-16 13:40:55 +00:00
committed by Android (Google) Code Review

View File

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