diff --git a/core/java/android/view/WindowManager.java b/core/java/android/view/WindowManager.java
index dd990e75e3cc2..63d42c0ca9153 100644
--- a/core/java/android/view/WindowManager.java
+++ b/core/java/android/view/WindowManager.java
@@ -2366,6 +2366,14 @@ public interface WindowManager extends ViewManager {
@RequiresPermission(permission.INTERNAL_SYSTEM_WINDOW)
public static final int SYSTEM_FLAG_SHOW_FOR_ALL_USERS = 0x00000010;
+ /**
+ * Flag to allow this window to have unrestricted gesture exclusion.
+ *
+ * @see View#setSystemGestureExclusionRects(List)
+ * @hide
+ */
+ public static final int PRIVATE_FLAG_UNRESTRICTED_GESTURE_EXCLUSION = 0x00000020;
+
/**
* Never animate position changes of the window.
*
@@ -2586,6 +2594,7 @@ public interface WindowManager extends ViewManager {
PRIVATE_FLAG_FORCE_HARDWARE_ACCELERATED,
PRIVATE_FLAG_WANTS_OFFSET_NOTIFICATIONS,
SYSTEM_FLAG_SHOW_FOR_ALL_USERS,
+ PRIVATE_FLAG_UNRESTRICTED_GESTURE_EXCLUSION,
PRIVATE_FLAG_NO_MOVE_ANIMATION,
PRIVATE_FLAG_COMPATIBLE_WINDOW,
PRIVATE_FLAG_SYSTEM_ERROR,
@@ -2632,6 +2641,10 @@ public interface WindowManager extends ViewManager {
mask = SYSTEM_FLAG_SHOW_FOR_ALL_USERS,
equals = SYSTEM_FLAG_SHOW_FOR_ALL_USERS,
name = "SHOW_FOR_ALL_USERS"),
+ @ViewDebug.FlagToString(
+ mask = PRIVATE_FLAG_UNRESTRICTED_GESTURE_EXCLUSION,
+ equals = PRIVATE_FLAG_UNRESTRICTED_GESTURE_EXCLUSION,
+ name = "UNRESTRICTED_GESTURE_EXCLUSION"),
@ViewDebug.FlagToString(
mask = PRIVATE_FLAG_NO_MOVE_ANIMATION,
equals = PRIVATE_FLAG_NO_MOVE_ANIMATION,
diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml
index 7439b2f0921ff..5e99d6c41029e 100644
--- a/core/res/AndroidManifest.xml
+++ b/core/res/AndroidManifest.xml
@@ -6498,6 +6498,13 @@
+
+
+