diff options
| -rw-r--r-- | core/api/current.txt | 1 | ||||
| -rw-r--r-- | core/java/android/view/WindowManager.java | 24 | ||||
| -rw-r--r-- | core/java/android/window/flags/windowing_frontend.aconfig | 8 |
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> + * <activity> + * <property + * android:name="android.window.PROPERTY_SUPPORTS_MULTI_INSTANCE_SYSTEM_UI" + * android:value="true|false"/> + * </activity> + * </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 |