diff --git a/core/java/android/view/InsetsVisibilities.java b/core/java/android/view/InsetsVisibilities.java index 30668bad34242..7d259fb916343 100644 --- a/core/java/android/view/InsetsVisibilities.java +++ b/core/java/android/view/InsetsVisibilities.java @@ -116,6 +116,10 @@ public class InsetsVisibilities implements Parcelable { dest.writeIntArray(mVisibilities); } + public void readFromParcel(@NonNull Parcel in) { + in.readIntArray(mVisibilities); + } + public static final @NonNull Creator CREATOR = new Creator() { diff --git a/core/java/android/window/StartingWindowInfo.java b/core/java/android/window/StartingWindowInfo.java index 8c64474dc887c..10d21a0ff003d 100644 --- a/core/java/android/window/StartingWindowInfo.java +++ b/core/java/android/window/StartingWindowInfo.java @@ -26,6 +26,7 @@ import android.content.pm.ActivityInfo; import android.os.Parcel; import android.os.Parcelable; import android.view.InsetsState; +import android.view.InsetsVisibilities; import android.view.WindowManager; /** @@ -165,7 +166,13 @@ public final class StartingWindowInfo implements Parcelable { * TaskSnapshot. * @hide */ - public TaskSnapshot mTaskSnapshot; + public TaskSnapshot taskSnapshot; + + /** + * The requested insets visibility of the top main window. + * @hide + */ + public final InsetsVisibilities requestedVisibilities = new InsetsVisibilities(); public StartingWindowInfo() { @@ -190,7 +197,8 @@ public final class StartingWindowInfo implements Parcelable { dest.writeTypedObject(mainWindowLayoutParams, flags); dest.writeInt(splashScreenThemeResId); dest.writeBoolean(isKeyguardOccluded); - dest.writeTypedObject(mTaskSnapshot, flags); + dest.writeTypedObject(taskSnapshot, flags); + requestedVisibilities.writeToParcel(dest, flags); } void readFromParcel(@NonNull Parcel source) { @@ -203,7 +211,8 @@ public final class StartingWindowInfo implements Parcelable { mainWindowLayoutParams = source.readTypedObject(WindowManager.LayoutParams.CREATOR); splashScreenThemeResId = source.readInt(); isKeyguardOccluded = source.readBoolean(); - mTaskSnapshot = source.readTypedObject(TaskSnapshot.CREATOR); + taskSnapshot = source.readTypedObject(TaskSnapshot.CREATOR); + requestedVisibilities.readFromParcel(source); } @Override diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/startingsurface/StartingWindowController.java b/libs/WindowManager/Shell/src/com/android/wm/shell/startingsurface/StartingWindowController.java index 8d86c265e04cb..4433e275cd1b7 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/startingsurface/StartingWindowController.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/startingsurface/StartingWindowController.java @@ -134,7 +134,7 @@ public class StartingWindowController implements RemoteCallable