diff options
| author | Evan Rosky <erosky@google.com> | 2020-12-10 20:02:14 +0000 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2020-12-10 20:02:14 +0000 |
| commit | b6569a04c30e3ceea989b66e5be208043161c2ef (patch) | |
| tree | cba49b4a7ca95505a12394fdcf3fbe237eef1e3f /core/java/android | |
| parent | 9e28c670db5efbe31c5f35d825f7ab43bcf4cd5e (diff) | |
| parent | 58d6cd504d3d0c3a59f46fe22a068a619d352732 (diff) | |
Merge "Handle keyguard occlude/unocclude in shell transitions"
Diffstat (limited to 'core/java/android')
| -rw-r--r-- | core/java/android/view/WindowManager.java | 9 | ||||
| -rw-r--r-- | core/java/android/window/TransitionInfo.java | 14 |
2 files changed, 20 insertions, 3 deletions
diff --git a/core/java/android/view/WindowManager.java b/core/java/android/view/WindowManager.java index b9afbc95de0d..36f75c6d05c5 100644 --- a/core/java/android/view/WindowManager.java +++ b/core/java/android/view/WindowManager.java @@ -418,6 +418,12 @@ public interface WindowManager extends ViewManager { int TRANSIT_FLAG_OPEN_BEHIND = 0x20; /** + * Transition flag: The keyguard is locked throughout the whole transition. + * @hide + */ + int TRANSIT_FLAG_KEYGUARD_LOCKED = 0x40; + + /** * @hide */ @IntDef(flag = true, prefix = { "TRANSIT_FLAG_" }, value = { @@ -426,7 +432,8 @@ public interface WindowManager extends ViewManager { TRANSIT_FLAG_KEYGUARD_GOING_AWAY_WITH_WALLPAPER, TRANSIT_FLAG_KEYGUARD_GOING_AWAY_SUBTLE_ANIMATION, TRANSIT_FLAG_APP_CRASHED, - TRANSIT_FLAG_OPEN_BEHIND + TRANSIT_FLAG_OPEN_BEHIND, + TRANSIT_FLAG_KEYGUARD_LOCKED }) @Retention(RetentionPolicy.SOURCE) @interface TransitionFlags {} diff --git a/core/java/android/window/TransitionInfo.java b/core/java/android/window/TransitionInfo.java index b4e7d6a9269f..214627243eae 100644 --- a/core/java/android/window/TransitionInfo.java +++ b/core/java/android/window/TransitionInfo.java @@ -65,18 +65,22 @@ public final class TransitionInfo implements Parcelable { public @interface TransitionMode {} private final @WindowManager.TransitionOldType int mType; + private final @WindowManager.TransitionFlags int mFlags; private final ArrayList<Change> mChanges = new ArrayList<>(); private SurfaceControl mRootLeash; private final Point mRootOffset = new Point(); /** @hide */ - public TransitionInfo(@WindowManager.TransitionOldType int type) { + public TransitionInfo(@WindowManager.TransitionOldType int type, + @WindowManager.TransitionFlags int flags) { mType = type; + mFlags = flags; } private TransitionInfo(Parcel in) { mType = in.readInt(); + mFlags = in.readInt(); in.readList(mChanges, null /* classLoader */); mRootLeash = new SurfaceControl(); mRootLeash.readFromParcel(in); @@ -87,6 +91,7 @@ public final class TransitionInfo implements Parcelable { /** @hide */ public void writeToParcel(@NonNull Parcel dest, int flags) { dest.writeInt(mType); + dest.writeInt(mFlags); dest.writeList(mChanges); mRootLeash.writeToParcel(dest, flags); mRootOffset.writeToParcel(dest, flags); @@ -122,6 +127,10 @@ public final class TransitionInfo implements Parcelable { return mType; } + public int getFlags() { + return mFlags; + } + /** * @return a surfacecontrol that can serve as a parent surfacecontrol for all the changing * participants to animate within. This will generally be placed at the highest-z-order @@ -170,7 +179,8 @@ public final class TransitionInfo implements Parcelable { @Override public String toString() { StringBuilder sb = new StringBuilder(); - sb.append("{t=" + mType + " ro=" + mRootOffset + " c=["); + sb.append("{t=" + mType + " f=" + Integer.toHexString(mFlags) + + " ro=" + mRootOffset + " c=["); for (int i = 0; i < mChanges.size(); ++i) { if (i > 0) { sb.append(','); |
