summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/api/current.txt1
-rw-r--r--core/java/android/view/WindowManager.java24
-rw-r--r--core/java/android/window/flags/windowing_frontend.aconfig8
3 files changed, 33 insertions, 0 deletions
diff --git a/core/api/current.txt b/core/api/current.txt
index 9046c316d566..88eea9504607 100644
--- a/core/api/current.txt
+++ b/core/api/current.txt
@@ -53977,6 +53977,7 @@ package android.view {
field public static final String PROPERTY_COMPAT_ALLOW_SANDBOXING_VIEW_BOUNDS_APIS = "android.window.PROPERTY_COMPAT_ALLOW_SANDBOXING_VIEW_BOUNDS_APIS";
field public static final String PROPERTY_COMPAT_ENABLE_FAKE_FOCUS = "android.window.PROPERTY_COMPAT_ENABLE_FAKE_FOCUS";
field public static final String PROPERTY_COMPAT_IGNORE_REQUESTED_ORIENTATION = "android.window.PROPERTY_COMPAT_IGNORE_REQUESTED_ORIENTATION";
+ field @FlaggedApi("com.android.window.flags.supports_multi_instance_system_ui") public static final String PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI = "android.window.PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI";
}
public static class WindowManager.BadTokenException extends java.lang.RuntimeException {
diff --git a/core/java/android/view/WindowManager.java b/core/java/android/view/WindowManager.java
index f61ed515b70e..b4ac9a22aad3 100644
--- a/core/java/android/view/WindowManager.java
+++ b/core/java/android/view/WindowManager.java
@@ -1494,6 +1494,30 @@ public interface WindowManager extends ViewManager {
"android.window.PROPERTY_ACTIVITY_EMBEDDING_SPLITS_ENABLED";
/**
+ * Activity or Application level {@link android.content.pm.PackageManager.Property
+ * PackageManager.Property} for an app to declare that System UI should be shown for this
+ * app/component to allow it to be launched as multiple instances. This property only affects
+ * SystemUI behavior and does _not_ affect whether a component can actually be launched into
+ * multiple instances, which is determined by the Activity's {@code launchMode} or the launching
+ * Intent's flags. If the property is set on the Application, then all components within that
+ * application will use that value unless specified per component.
+ *
+ * The value must be a boolean string.
+ *
+ * <p><b>Syntax:</b>
+ * <pre>
+ * &lt;activity&gt;
+ * &lt;property
+ * android:name="android.window.PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI"
+ * android:value="true|false"/&gt;
+ * &lt;/activity&gt;
+ * </pre>
+ */
+ @FlaggedApi(Flags.FLAG_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI)
+ public static final String PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI =
+ "android.window.PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI";
+
+ /**
* Request for app's keyboard shortcuts to be retrieved asynchronously.
*
* @param receiver The callback to be triggered when the result is ready.
diff --git a/core/java/android/window/flags/windowing_frontend.aconfig b/core/java/android/window/flags/windowing_frontend.aconfig
index 3366a7ee23c0..f2bce9c44001 100644
--- a/core/java/android/window/flags/windowing_frontend.aconfig
+++ b/core/java/android/window/flags/windowing_frontend.aconfig
@@ -82,4 +82,12 @@ flag {
description: "Enable record activity snapshot by default"
bug: "259497289"
is_fixed_read_only: true
+}
+
+flag {
+ name: "supports_multi_instance_system_ui"
+ namespace: "multitasking"
+ description: "Feature flag to enable a multi-instance system ui component property."
+ bug: "262864589"
+ is_fixed_read_only: true
} \ No newline at end of file