Loading core/java/android/app/WindowConfiguration.java +0 −3 Original line number Diff line number Diff line Loading @@ -222,9 +222,6 @@ public class WindowConfiguration implements Parcelable, Comparable<WindowConfigu }) public @interface WindowConfig {} /** @hide */ public static final int PINNED_WINDOWING_MODE_ELEVATION_IN_DIP = 5; @UnsupportedAppUsage public WindowConfiguration() { unset(); Loading core/java/android/window/PictureInPictureSurfaceTransaction.java +26 −4 Original line number Diff line number Diff line Loading @@ -47,6 +47,8 @@ public final class PictureInPictureSurfaceTransaction implements Parcelable { public final float mCornerRadius; public final float mShadowRadius; private final Rect mWindowCrop; private PictureInPictureSurfaceTransaction(Parcel in) { Loading @@ -56,11 +58,12 @@ public final class PictureInPictureSurfaceTransaction implements Parcelable { in.readFloatArray(mFloat9); mRotation = in.readFloat(); mCornerRadius = in.readFloat(); mShadowRadius = in.readFloat(); mWindowCrop = in.readTypedObject(Rect.CREATOR); } private PictureInPictureSurfaceTransaction(float alpha, @Nullable PointF position, @Nullable float[] float9, float rotation, float cornerRadius, @Nullable float[] float9, float rotation, float cornerRadius, float shadowRadius, @Nullable Rect windowCrop) { mAlpha = alpha; mPosition = position; Loading @@ -73,12 +76,14 @@ public final class PictureInPictureSurfaceTransaction implements Parcelable { mRotation = rotation; } mCornerRadius = cornerRadius; mShadowRadius = shadowRadius; mWindowCrop = (windowCrop == null) ? null : new Rect(windowCrop); } public PictureInPictureSurfaceTransaction(PictureInPictureSurfaceTransaction other) { this(other.mAlpha, other.mPosition, other.mFloat9, other.mRotation, other.mCornerRadius, other.mWindowCrop); other.mFloat9, other.mRotation, other.mCornerRadius, other.mShadowRadius, other.mWindowCrop); } /** @return {@link Matrix} from {@link #mFloat9} */ Loading @@ -93,6 +98,11 @@ public final class PictureInPictureSurfaceTransaction implements Parcelable { return mCornerRadius > 0; } /** @return {@code true} if this transaction contains setting shadow radius. */ public boolean hasShadowRadiusSet() { return mShadowRadius > 0; } @Override public boolean equals(Object o) { if (this == o) return true; Loading @@ -103,13 +113,14 @@ public final class PictureInPictureSurfaceTransaction implements Parcelable { && Arrays.equals(mFloat9, that.mFloat9) && Objects.equals(mRotation, that.mRotation) && Objects.equals(mCornerRadius, that.mCornerRadius) && Objects.equals(mShadowRadius, that.mShadowRadius) && Objects.equals(mWindowCrop, that.mWindowCrop); } @Override public int hashCode() { return Objects.hash(mAlpha, mPosition, Arrays.hashCode(mFloat9), mRotation, mCornerRadius, mWindowCrop); mRotation, mCornerRadius, mShadowRadius, mWindowCrop); } @Override Loading @@ -124,6 +135,7 @@ public final class PictureInPictureSurfaceTransaction implements Parcelable { out.writeFloatArray(mFloat9); out.writeFloat(mRotation); out.writeFloat(mCornerRadius); out.writeFloat(mShadowRadius); out.writeTypedObject(mWindowCrop, 0 /* flags */); } Loading @@ -136,6 +148,7 @@ public final class PictureInPictureSurfaceTransaction implements Parcelable { + " matrix=" + matrix.toShortString() + " rotation=" + mRotation + " cornerRadius=" + mCornerRadius + " shadowRadius=" + mShadowRadius + " crop=" + mWindowCrop + ")"; } Loading @@ -156,6 +169,9 @@ public final class PictureInPictureSurfaceTransaction implements Parcelable { if (surfaceTransaction.hasCornerRadiusSet()) { tx.setCornerRadius(surfaceControl, surfaceTransaction.mCornerRadius); } if (surfaceTransaction.hasShadowRadiusSet()) { tx.setShadowRadius(surfaceControl, surfaceTransaction.mShadowRadius); } if (surfaceTransaction.mAlpha != NOT_SET) { tx.setAlpha(surfaceControl, surfaceTransaction.mAlpha); } Loading @@ -178,6 +194,7 @@ public final class PictureInPictureSurfaceTransaction implements Parcelable { private float[] mFloat9; private float mRotation; private float mCornerRadius = NOT_SET; private float mShadowRadius = NOT_SET; private Rect mWindowCrop; public Builder setAlpha(float alpha) { Loading @@ -201,6 +218,11 @@ public final class PictureInPictureSurfaceTransaction implements Parcelable { return this; } public Builder setShadowRadius(float shadowRadius) { mShadowRadius = shadowRadius; return this; } public Builder setWindowCrop(@NonNull Rect windowCrop) { mWindowCrop = new Rect(windowCrop); return this; Loading @@ -208,7 +230,7 @@ public final class PictureInPictureSurfaceTransaction implements Parcelable { public PictureInPictureSurfaceTransaction build() { return new PictureInPictureSurfaceTransaction(mAlpha, mPosition, mFloat9, mRotation, mCornerRadius, mWindowCrop); mFloat9, mRotation, mCornerRadius, mShadowRadius, mWindowCrop); } } } core/java/com/android/internal/policy/DecorView.java +0 −5 Original line number Diff line number Diff line Loading @@ -16,9 +16,7 @@ package com.android.internal.policy; import static android.app.WindowConfiguration.PINNED_WINDOWING_MODE_ELEVATION_IN_DIP; import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM; import static android.app.WindowConfiguration.WINDOWING_MODE_PINNED; import static android.content.res.Configuration.ORIENTATION_PORTRAIT; import static android.os.Build.VERSION_CODES.M; import static android.os.Build.VERSION_CODES.N; Loading Loading @@ -2549,9 +2547,6 @@ public class DecorView extends FrameLayout implements RootViewSurfaceTaker, Wind // Convert the DP elevation into physical pixels. elevation = dipToPx(elevation); mElevationAdjustedForStack = true; } else if (windowingMode == WINDOWING_MODE_PINNED) { elevation = dipToPx(PINNED_WINDOWING_MODE_ELEVATION_IN_DIP); mElevationAdjustedForStack = true; } else { mElevationAdjustedForStack = false; } Loading libs/WindowManager/Shell/res/values/dimen.xml +4 −0 Original line number Diff line number Diff line Loading @@ -74,6 +74,10 @@ <!-- PIP stash offset size, which is the width of visible PIP region when stashed. --> <dimen name="pip_stash_offset">32dp</dimen> <!-- PIP shadow radius, originally as WindowConfiguration#PINNED_WINDOWING_MODE_ELEVATION_IN_DIP --> <dimen name="pip_shadow_radius">5dp</dimen> <dimen name="dismiss_target_x_size">24dp</dimen> <dimen name="floating_dismiss_bottom_margin">50dp</dimen> Loading libs/WindowManager/Shell/src/com/android/wm/shell/pip/IPipAnimationListener.aidl +3 −2 Original line number Diff line number Diff line Loading @@ -26,12 +26,13 @@ oneway interface IPipAnimationListener { void onPipAnimationStarted(); /** * Notifies the listener about PiP round corner radius changes. * Notifies the listener about PiP resource dimensions changed. * Listener can expect an immediate callback the first time they attach. * * @param cornerRadius the pixel value of the corner radius, zero means it's disabled. * @param shadowRadius the pixel value of the shadow radius, zero means it's disabled. */ void onPipCornerRadiusChanged(int cornerRadius); void onPipResourceDimensionsChanged(int cornerRadius, int shadowRadius); /** * Notifies the listener that user leaves PiP by tapping on the expand button. Loading Loading
core/java/android/app/WindowConfiguration.java +0 −3 Original line number Diff line number Diff line Loading @@ -222,9 +222,6 @@ public class WindowConfiguration implements Parcelable, Comparable<WindowConfigu }) public @interface WindowConfig {} /** @hide */ public static final int PINNED_WINDOWING_MODE_ELEVATION_IN_DIP = 5; @UnsupportedAppUsage public WindowConfiguration() { unset(); Loading
core/java/android/window/PictureInPictureSurfaceTransaction.java +26 −4 Original line number Diff line number Diff line Loading @@ -47,6 +47,8 @@ public final class PictureInPictureSurfaceTransaction implements Parcelable { public final float mCornerRadius; public final float mShadowRadius; private final Rect mWindowCrop; private PictureInPictureSurfaceTransaction(Parcel in) { Loading @@ -56,11 +58,12 @@ public final class PictureInPictureSurfaceTransaction implements Parcelable { in.readFloatArray(mFloat9); mRotation = in.readFloat(); mCornerRadius = in.readFloat(); mShadowRadius = in.readFloat(); mWindowCrop = in.readTypedObject(Rect.CREATOR); } private PictureInPictureSurfaceTransaction(float alpha, @Nullable PointF position, @Nullable float[] float9, float rotation, float cornerRadius, @Nullable float[] float9, float rotation, float cornerRadius, float shadowRadius, @Nullable Rect windowCrop) { mAlpha = alpha; mPosition = position; Loading @@ -73,12 +76,14 @@ public final class PictureInPictureSurfaceTransaction implements Parcelable { mRotation = rotation; } mCornerRadius = cornerRadius; mShadowRadius = shadowRadius; mWindowCrop = (windowCrop == null) ? null : new Rect(windowCrop); } public PictureInPictureSurfaceTransaction(PictureInPictureSurfaceTransaction other) { this(other.mAlpha, other.mPosition, other.mFloat9, other.mRotation, other.mCornerRadius, other.mWindowCrop); other.mFloat9, other.mRotation, other.mCornerRadius, other.mShadowRadius, other.mWindowCrop); } /** @return {@link Matrix} from {@link #mFloat9} */ Loading @@ -93,6 +98,11 @@ public final class PictureInPictureSurfaceTransaction implements Parcelable { return mCornerRadius > 0; } /** @return {@code true} if this transaction contains setting shadow radius. */ public boolean hasShadowRadiusSet() { return mShadowRadius > 0; } @Override public boolean equals(Object o) { if (this == o) return true; Loading @@ -103,13 +113,14 @@ public final class PictureInPictureSurfaceTransaction implements Parcelable { && Arrays.equals(mFloat9, that.mFloat9) && Objects.equals(mRotation, that.mRotation) && Objects.equals(mCornerRadius, that.mCornerRadius) && Objects.equals(mShadowRadius, that.mShadowRadius) && Objects.equals(mWindowCrop, that.mWindowCrop); } @Override public int hashCode() { return Objects.hash(mAlpha, mPosition, Arrays.hashCode(mFloat9), mRotation, mCornerRadius, mWindowCrop); mRotation, mCornerRadius, mShadowRadius, mWindowCrop); } @Override Loading @@ -124,6 +135,7 @@ public final class PictureInPictureSurfaceTransaction implements Parcelable { out.writeFloatArray(mFloat9); out.writeFloat(mRotation); out.writeFloat(mCornerRadius); out.writeFloat(mShadowRadius); out.writeTypedObject(mWindowCrop, 0 /* flags */); } Loading @@ -136,6 +148,7 @@ public final class PictureInPictureSurfaceTransaction implements Parcelable { + " matrix=" + matrix.toShortString() + " rotation=" + mRotation + " cornerRadius=" + mCornerRadius + " shadowRadius=" + mShadowRadius + " crop=" + mWindowCrop + ")"; } Loading @@ -156,6 +169,9 @@ public final class PictureInPictureSurfaceTransaction implements Parcelable { if (surfaceTransaction.hasCornerRadiusSet()) { tx.setCornerRadius(surfaceControl, surfaceTransaction.mCornerRadius); } if (surfaceTransaction.hasShadowRadiusSet()) { tx.setShadowRadius(surfaceControl, surfaceTransaction.mShadowRadius); } if (surfaceTransaction.mAlpha != NOT_SET) { tx.setAlpha(surfaceControl, surfaceTransaction.mAlpha); } Loading @@ -178,6 +194,7 @@ public final class PictureInPictureSurfaceTransaction implements Parcelable { private float[] mFloat9; private float mRotation; private float mCornerRadius = NOT_SET; private float mShadowRadius = NOT_SET; private Rect mWindowCrop; public Builder setAlpha(float alpha) { Loading @@ -201,6 +218,11 @@ public final class PictureInPictureSurfaceTransaction implements Parcelable { return this; } public Builder setShadowRadius(float shadowRadius) { mShadowRadius = shadowRadius; return this; } public Builder setWindowCrop(@NonNull Rect windowCrop) { mWindowCrop = new Rect(windowCrop); return this; Loading @@ -208,7 +230,7 @@ public final class PictureInPictureSurfaceTransaction implements Parcelable { public PictureInPictureSurfaceTransaction build() { return new PictureInPictureSurfaceTransaction(mAlpha, mPosition, mFloat9, mRotation, mCornerRadius, mWindowCrop); mFloat9, mRotation, mCornerRadius, mShadowRadius, mWindowCrop); } } }
core/java/com/android/internal/policy/DecorView.java +0 −5 Original line number Diff line number Diff line Loading @@ -16,9 +16,7 @@ package com.android.internal.policy; import static android.app.WindowConfiguration.PINNED_WINDOWING_MODE_ELEVATION_IN_DIP; import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM; import static android.app.WindowConfiguration.WINDOWING_MODE_PINNED; import static android.content.res.Configuration.ORIENTATION_PORTRAIT; import static android.os.Build.VERSION_CODES.M; import static android.os.Build.VERSION_CODES.N; Loading Loading @@ -2549,9 +2547,6 @@ public class DecorView extends FrameLayout implements RootViewSurfaceTaker, Wind // Convert the DP elevation into physical pixels. elevation = dipToPx(elevation); mElevationAdjustedForStack = true; } else if (windowingMode == WINDOWING_MODE_PINNED) { elevation = dipToPx(PINNED_WINDOWING_MODE_ELEVATION_IN_DIP); mElevationAdjustedForStack = true; } else { mElevationAdjustedForStack = false; } Loading
libs/WindowManager/Shell/res/values/dimen.xml +4 −0 Original line number Diff line number Diff line Loading @@ -74,6 +74,10 @@ <!-- PIP stash offset size, which is the width of visible PIP region when stashed. --> <dimen name="pip_stash_offset">32dp</dimen> <!-- PIP shadow radius, originally as WindowConfiguration#PINNED_WINDOWING_MODE_ELEVATION_IN_DIP --> <dimen name="pip_shadow_radius">5dp</dimen> <dimen name="dismiss_target_x_size">24dp</dimen> <dimen name="floating_dismiss_bottom_margin">50dp</dimen> Loading
libs/WindowManager/Shell/src/com/android/wm/shell/pip/IPipAnimationListener.aidl +3 −2 Original line number Diff line number Diff line Loading @@ -26,12 +26,13 @@ oneway interface IPipAnimationListener { void onPipAnimationStarted(); /** * Notifies the listener about PiP round corner radius changes. * Notifies the listener about PiP resource dimensions changed. * Listener can expect an immediate callback the first time they attach. * * @param cornerRadius the pixel value of the corner radius, zero means it's disabled. * @param shadowRadius the pixel value of the shadow radius, zero means it's disabled. */ void onPipCornerRadiusChanged(int cornerRadius); void onPipResourceDimensionsChanged(int cornerRadius, int shadowRadius); /** * Notifies the listener that user leaves PiP by tapping on the expand button. Loading