Loading core/java/android/view/ViewRootImpl.java +10 −0 Original line number Original line Diff line number Diff line Loading @@ -310,6 +310,16 @@ public final class ViewRootImpl implements ViewParent, public static final boolean CLIENT_TRANSIENT = public static final boolean CLIENT_TRANSIENT = SystemProperties.getBoolean("persist.wm.debug.client_transient", false); SystemProperties.getBoolean("persist.wm.debug.client_transient", false); /** * Whether the client (system UI) is handling the immersive confirmation window. If * {@link CLIENT_TRANSIENT} is set to true, the immersive confirmation window will always be the * client instance and this flag will be ignored. Otherwise, the immersive confirmation window * can be switched freely by this flag. * @hide */ public static final boolean CLIENT_IMMERSIVE_CONFIRMATION = SystemProperties.getBoolean("persist.wm.debug.client_immersive_confirmation", false); /** /** * Whether the client should compute the window frame on its own. * Whether the client should compute the window frame on its own. * @hide * @hide Loading core/java/android/view/WindowManager.java +15 −0 Original line number Original line Diff line number Diff line Loading @@ -3098,6 +3098,16 @@ public interface WindowManager extends ViewManager { */ */ public static final int PRIVATE_FLAG_SUSTAINED_PERFORMANCE_MODE = 1 << 16; public static final int PRIVATE_FLAG_SUSTAINED_PERFORMANCE_MODE = 1 << 16; /** * Flag to indicate that this window is a immersive mode confirmation window. The window * should be ignored when calculating insets control. This is used for prompt window * triggered by insets visibility changes. If it can take over the insets control, the * visibility will change unexpectedly and the window may dismiss itself. Power button panic * handling will be disabled when this window exists. * @hide */ public static final int PRIVATE_FLAG_IMMERSIVE_CONFIRMATION_WINDOW = 1 << 17; /** /** * Flag to indicate that any window added by an application process that is of type * Flag to indicate that any window added by an application process that is of type * {@link #TYPE_TOAST} or that requires * {@link #TYPE_TOAST} or that requires Loading Loading @@ -3242,6 +3252,7 @@ public interface WindowManager extends ViewManager { PRIVATE_FLAG_LAYOUT_CHILD_WINDOW_IN_PARENT_FRAME, PRIVATE_FLAG_LAYOUT_CHILD_WINDOW_IN_PARENT_FRAME, PRIVATE_FLAG_FORCE_DRAW_BAR_BACKGROUNDS, PRIVATE_FLAG_FORCE_DRAW_BAR_BACKGROUNDS, PRIVATE_FLAG_SUSTAINED_PERFORMANCE_MODE, PRIVATE_FLAG_SUSTAINED_PERFORMANCE_MODE, PRIVATE_FLAG_IMMERSIVE_CONFIRMATION_WINDOW, SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS, SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS, PRIVATE_FLAG_IS_ROUNDED_CORNERS_OVERLAY, PRIVATE_FLAG_IS_ROUNDED_CORNERS_OVERLAY, PRIVATE_FLAG_EXCLUDE_FROM_SCREEN_MAGNIFICATION, PRIVATE_FLAG_EXCLUDE_FROM_SCREEN_MAGNIFICATION, Loading Loading @@ -3325,6 +3336,10 @@ public interface WindowManager extends ViewManager { mask = PRIVATE_FLAG_SUSTAINED_PERFORMANCE_MODE, mask = PRIVATE_FLAG_SUSTAINED_PERFORMANCE_MODE, equals = PRIVATE_FLAG_SUSTAINED_PERFORMANCE_MODE, equals = PRIVATE_FLAG_SUSTAINED_PERFORMANCE_MODE, name = "SUSTAINED_PERFORMANCE_MODE"), name = "SUSTAINED_PERFORMANCE_MODE"), @ViewDebug.FlagToString( mask = PRIVATE_FLAG_IMMERSIVE_CONFIRMATION_WINDOW, equals = PRIVATE_FLAG_IMMERSIVE_CONFIRMATION_WINDOW, name = "IMMERSIVE_CONFIRMATION_WINDOW"), @ViewDebug.FlagToString( @ViewDebug.FlagToString( mask = SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS, mask = SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS, equals = SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS, equals = SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS, Loading core/java/com/android/internal/statusbar/IStatusBar.aidl +13 −0 Original line number Original line Diff line number Diff line Loading @@ -63,6 +63,19 @@ oneway interface IStatusBar void cancelPreloadRecentApps(); void cancelPreloadRecentApps(); void showScreenPinningRequest(int taskId); void showScreenPinningRequest(int taskId); /** * Notify system UI the immersive prompt should be dismissed as confirmed, and the confirmed * status should be saved without user clicking on the button. This could happen when a user * swipe on the edge with the confirmation prompt showing. */ void confirmImmersivePrompt(); /** * Notify system UI the immersive mode changed. This shall be removed when client immersive is * enabled. */ void immersiveModeChanged(int rootDisplayAreaId, boolean isImmersiveMode); void dismissKeyboardShortcutsMenu(); void dismissKeyboardShortcutsMenu(); void toggleKeyboardShortcutsMenu(int deviceId); void toggleKeyboardShortcutsMenu(int deviceId); Loading packages/SystemUI/res/drawable/immersive_cling_bg_circ.xml +1 −1 Original line number Original line Diff line number Diff line Loading @@ -17,7 +17,7 @@ <shape xmlns:android="http://schemas.android.com/apk/res/android" <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval" > android:shape="oval" > <solid android:color="@android:color/white" /> <solid android:color="?android:attr/colorBackground" /> <size <size android:height="56dp" android:height="56dp" Loading packages/SystemUI/res/drawable/immersive_cling_light_bg_circ.xml +1 −1 Original line number Original line Diff line number Diff line Loading @@ -17,7 +17,7 @@ <shape xmlns:android="http://schemas.android.com/apk/res/android" <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval" > android:shape="oval" > <solid android:color="#80ffffff" /> <solid android:color="?android:attr/colorBackground" /> <size <size android:height="76dp" android:height="76dp" Loading Loading
core/java/android/view/ViewRootImpl.java +10 −0 Original line number Original line Diff line number Diff line Loading @@ -310,6 +310,16 @@ public final class ViewRootImpl implements ViewParent, public static final boolean CLIENT_TRANSIENT = public static final boolean CLIENT_TRANSIENT = SystemProperties.getBoolean("persist.wm.debug.client_transient", false); SystemProperties.getBoolean("persist.wm.debug.client_transient", false); /** * Whether the client (system UI) is handling the immersive confirmation window. If * {@link CLIENT_TRANSIENT} is set to true, the immersive confirmation window will always be the * client instance and this flag will be ignored. Otherwise, the immersive confirmation window * can be switched freely by this flag. * @hide */ public static final boolean CLIENT_IMMERSIVE_CONFIRMATION = SystemProperties.getBoolean("persist.wm.debug.client_immersive_confirmation", false); /** /** * Whether the client should compute the window frame on its own. * Whether the client should compute the window frame on its own. * @hide * @hide Loading
core/java/android/view/WindowManager.java +15 −0 Original line number Original line Diff line number Diff line Loading @@ -3098,6 +3098,16 @@ public interface WindowManager extends ViewManager { */ */ public static final int PRIVATE_FLAG_SUSTAINED_PERFORMANCE_MODE = 1 << 16; public static final int PRIVATE_FLAG_SUSTAINED_PERFORMANCE_MODE = 1 << 16; /** * Flag to indicate that this window is a immersive mode confirmation window. The window * should be ignored when calculating insets control. This is used for prompt window * triggered by insets visibility changes. If it can take over the insets control, the * visibility will change unexpectedly and the window may dismiss itself. Power button panic * handling will be disabled when this window exists. * @hide */ public static final int PRIVATE_FLAG_IMMERSIVE_CONFIRMATION_WINDOW = 1 << 17; /** /** * Flag to indicate that any window added by an application process that is of type * Flag to indicate that any window added by an application process that is of type * {@link #TYPE_TOAST} or that requires * {@link #TYPE_TOAST} or that requires Loading Loading @@ -3242,6 +3252,7 @@ public interface WindowManager extends ViewManager { PRIVATE_FLAG_LAYOUT_CHILD_WINDOW_IN_PARENT_FRAME, PRIVATE_FLAG_LAYOUT_CHILD_WINDOW_IN_PARENT_FRAME, PRIVATE_FLAG_FORCE_DRAW_BAR_BACKGROUNDS, PRIVATE_FLAG_FORCE_DRAW_BAR_BACKGROUNDS, PRIVATE_FLAG_SUSTAINED_PERFORMANCE_MODE, PRIVATE_FLAG_SUSTAINED_PERFORMANCE_MODE, PRIVATE_FLAG_IMMERSIVE_CONFIRMATION_WINDOW, SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS, SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS, PRIVATE_FLAG_IS_ROUNDED_CORNERS_OVERLAY, PRIVATE_FLAG_IS_ROUNDED_CORNERS_OVERLAY, PRIVATE_FLAG_EXCLUDE_FROM_SCREEN_MAGNIFICATION, PRIVATE_FLAG_EXCLUDE_FROM_SCREEN_MAGNIFICATION, Loading Loading @@ -3325,6 +3336,10 @@ public interface WindowManager extends ViewManager { mask = PRIVATE_FLAG_SUSTAINED_PERFORMANCE_MODE, mask = PRIVATE_FLAG_SUSTAINED_PERFORMANCE_MODE, equals = PRIVATE_FLAG_SUSTAINED_PERFORMANCE_MODE, equals = PRIVATE_FLAG_SUSTAINED_PERFORMANCE_MODE, name = "SUSTAINED_PERFORMANCE_MODE"), name = "SUSTAINED_PERFORMANCE_MODE"), @ViewDebug.FlagToString( mask = PRIVATE_FLAG_IMMERSIVE_CONFIRMATION_WINDOW, equals = PRIVATE_FLAG_IMMERSIVE_CONFIRMATION_WINDOW, name = "IMMERSIVE_CONFIRMATION_WINDOW"), @ViewDebug.FlagToString( @ViewDebug.FlagToString( mask = SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS, mask = SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS, equals = SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS, equals = SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS, Loading
core/java/com/android/internal/statusbar/IStatusBar.aidl +13 −0 Original line number Original line Diff line number Diff line Loading @@ -63,6 +63,19 @@ oneway interface IStatusBar void cancelPreloadRecentApps(); void cancelPreloadRecentApps(); void showScreenPinningRequest(int taskId); void showScreenPinningRequest(int taskId); /** * Notify system UI the immersive prompt should be dismissed as confirmed, and the confirmed * status should be saved without user clicking on the button. This could happen when a user * swipe on the edge with the confirmation prompt showing. */ void confirmImmersivePrompt(); /** * Notify system UI the immersive mode changed. This shall be removed when client immersive is * enabled. */ void immersiveModeChanged(int rootDisplayAreaId, boolean isImmersiveMode); void dismissKeyboardShortcutsMenu(); void dismissKeyboardShortcutsMenu(); void toggleKeyboardShortcutsMenu(int deviceId); void toggleKeyboardShortcutsMenu(int deviceId); Loading
packages/SystemUI/res/drawable/immersive_cling_bg_circ.xml +1 −1 Original line number Original line Diff line number Diff line Loading @@ -17,7 +17,7 @@ <shape xmlns:android="http://schemas.android.com/apk/res/android" <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval" > android:shape="oval" > <solid android:color="@android:color/white" /> <solid android:color="?android:attr/colorBackground" /> <size <size android:height="56dp" android:height="56dp" Loading
packages/SystemUI/res/drawable/immersive_cling_light_bg_circ.xml +1 −1 Original line number Original line Diff line number Diff line Loading @@ -17,7 +17,7 @@ <shape xmlns:android="http://schemas.android.com/apk/res/android" <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval" > android:shape="oval" > <solid android:color="#80ffffff" /> <solid android:color="?android:attr/colorBackground" /> <size <size android:height="76dp" android:height="76dp" Loading