Loading core/java/android/window/StartingWindowInfo.java +4 −0 Original line number Diff line number Diff line Loading @@ -208,6 +208,8 @@ public final class StartingWindowInfo implements Parcelable { */ public SurfaceControl rootSurface; public IBinder transitionToken; /** * Notify windowless surface is created. * @param addedSurface Created surface. Loading Loading @@ -256,6 +258,7 @@ public final class StartingWindowInfo implements Parcelable { dest.writeStrongBinder(appToken); dest.writeStrongInterface(windowlessStartingSurfaceCallback); dest.writeTypedObject(rootSurface, flags); dest.writeStrongBinder(transitionToken); } void readFromParcel(@NonNull Parcel source) { Loading @@ -272,6 +275,7 @@ public final class StartingWindowInfo implements Parcelable { windowlessStartingSurfaceCallback = IWindowlessStartingSurfaceCallback.Stub .asInterface(source.readStrongBinder()); rootSurface = source.readTypedObject(SurfaceControl.CREATOR); transitionToken = source.readStrongBinder(); } @Override Loading core/java/android/window/flags/windowing_frontend.aconfig +11 −0 Original line number Diff line number Diff line Loading @@ -499,6 +499,17 @@ flag { } } flag { name: "remove_starting_in_transition" namespace: "windowing_frontend" description: "Allows the starting window to be removed while a transition is in progress." bug: "397353053" is_fixed_read_only: true metadata { purpose: PURPOSE_BUGFIX } } flag { name: "intercept_motion_from_move_to_cancel" namespace: "windowing_frontend" Loading libs/WindowManager/Shell/src/com/android/wm/shell/dagger/WMShellBaseModule.java +4 −2 Original line number Diff line number Diff line Loading @@ -943,9 +943,11 @@ public abstract class WMShellBaseModule { ShellTaskOrganizer shellTaskOrganizer, @ShellSplashscreenThread ShellExecutor splashScreenExecutor, StartingWindowTypeAlgorithm startingWindowTypeAlgorithm, IconProvider iconProvider, TransactionPool pool) { TransactionPool pool, @ShellMainThread ShellExecutor mainExecutor, Transitions transitions) { return new StartingWindowController(context, shellInit, shellController, shellTaskOrganizer, splashScreenExecutor, startingWindowTypeAlgorithm, iconProvider, pool); splashScreenExecutor, startingWindowTypeAlgorithm, iconProvider, pool, mainExecutor, transitions); } // Workaround for dynamic overriding with a default implementation, see {@link DynamicOverride} Loading libs/WindowManager/Shell/src/com/android/wm/shell/protolog/ShellProtoLogGroup.java +2 −0 Original line number Diff line number Diff line Loading @@ -42,6 +42,8 @@ public enum ShellProtoLogGroup implements IProtoLogGroup { "ShellDragAndDrop"), WM_SHELL_STARTING_WINDOW(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, false, Consts.TAG_WM_STARTING_WINDOW), WM_SHELL_REMOVE_STARTING_TRACKER(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, true, Consts.TAG_WM_STARTING_WINDOW), WM_SHELL_BACK_PREVIEW(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, true, "ShellBackPreview"), WM_SHELL_RECENT_TASKS(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, false, Loading libs/WindowManager/Shell/src/com/android/wm/shell/startingsurface/StartingSurfaceDrawer.java +6 −0 Original line number Diff line number Diff line Loading @@ -95,6 +95,12 @@ public class StartingSurfaceDrawer { mWindowlessSplashWindowCreator.setSysuiProxy(sysuiProxy); } boolean hasStartingWindow(int taskId, boolean windowless) { if (windowless) { return mWindowlessRecords.getRecord(taskId) != null; } return mWindowRecords.getRecord(taskId) != null; } /** * Called when a task need a splash screen starting window. * Loading Loading
core/java/android/window/StartingWindowInfo.java +4 −0 Original line number Diff line number Diff line Loading @@ -208,6 +208,8 @@ public final class StartingWindowInfo implements Parcelable { */ public SurfaceControl rootSurface; public IBinder transitionToken; /** * Notify windowless surface is created. * @param addedSurface Created surface. Loading Loading @@ -256,6 +258,7 @@ public final class StartingWindowInfo implements Parcelable { dest.writeStrongBinder(appToken); dest.writeStrongInterface(windowlessStartingSurfaceCallback); dest.writeTypedObject(rootSurface, flags); dest.writeStrongBinder(transitionToken); } void readFromParcel(@NonNull Parcel source) { Loading @@ -272,6 +275,7 @@ public final class StartingWindowInfo implements Parcelable { windowlessStartingSurfaceCallback = IWindowlessStartingSurfaceCallback.Stub .asInterface(source.readStrongBinder()); rootSurface = source.readTypedObject(SurfaceControl.CREATOR); transitionToken = source.readStrongBinder(); } @Override Loading
core/java/android/window/flags/windowing_frontend.aconfig +11 −0 Original line number Diff line number Diff line Loading @@ -499,6 +499,17 @@ flag { } } flag { name: "remove_starting_in_transition" namespace: "windowing_frontend" description: "Allows the starting window to be removed while a transition is in progress." bug: "397353053" is_fixed_read_only: true metadata { purpose: PURPOSE_BUGFIX } } flag { name: "intercept_motion_from_move_to_cancel" namespace: "windowing_frontend" Loading
libs/WindowManager/Shell/src/com/android/wm/shell/dagger/WMShellBaseModule.java +4 −2 Original line number Diff line number Diff line Loading @@ -943,9 +943,11 @@ public abstract class WMShellBaseModule { ShellTaskOrganizer shellTaskOrganizer, @ShellSplashscreenThread ShellExecutor splashScreenExecutor, StartingWindowTypeAlgorithm startingWindowTypeAlgorithm, IconProvider iconProvider, TransactionPool pool) { TransactionPool pool, @ShellMainThread ShellExecutor mainExecutor, Transitions transitions) { return new StartingWindowController(context, shellInit, shellController, shellTaskOrganizer, splashScreenExecutor, startingWindowTypeAlgorithm, iconProvider, pool); splashScreenExecutor, startingWindowTypeAlgorithm, iconProvider, pool, mainExecutor, transitions); } // Workaround for dynamic overriding with a default implementation, see {@link DynamicOverride} Loading
libs/WindowManager/Shell/src/com/android/wm/shell/protolog/ShellProtoLogGroup.java +2 −0 Original line number Diff line number Diff line Loading @@ -42,6 +42,8 @@ public enum ShellProtoLogGroup implements IProtoLogGroup { "ShellDragAndDrop"), WM_SHELL_STARTING_WINDOW(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, false, Consts.TAG_WM_STARTING_WINDOW), WM_SHELL_REMOVE_STARTING_TRACKER(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, true, Consts.TAG_WM_STARTING_WINDOW), WM_SHELL_BACK_PREVIEW(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, true, "ShellBackPreview"), WM_SHELL_RECENT_TASKS(Consts.ENABLE_DEBUG, Consts.ENABLE_LOG_TO_PROTO_DEBUG, false, Loading
libs/WindowManager/Shell/src/com/android/wm/shell/startingsurface/StartingSurfaceDrawer.java +6 −0 Original line number Diff line number Diff line Loading @@ -95,6 +95,12 @@ public class StartingSurfaceDrawer { mWindowlessSplashWindowCreator.setSysuiProxy(sysuiProxy); } boolean hasStartingWindow(int taskId, boolean windowless) { if (windowless) { return mWindowlessRecords.getRecord(taskId) != null; } return mWindowRecords.getRecord(taskId) != null; } /** * Called when a task need a splash screen starting window. * Loading