• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 package android.view;
2 
3 import android.graphics.GraphicBuffer;
4 import android.graphics.Rect;
5 import android.os.Parcel;
6 import android.os.Parcelable;
7 
8 /**
9  * Holds information about how the next app transition animation should be executed.
10  *
11  * This class is intended to be used with IWindowManager.overridePendingAppTransition* methods when
12  * simple arguments are not enough to describe the animation.
13  *
14  * @hide
15  */
16 public class AppTransitionAnimationSpec implements Parcelable {
17     public final int taskId;
18     public final GraphicBuffer buffer;
19     public final Rect rect;
20 
AppTransitionAnimationSpec(int taskId, GraphicBuffer buffer, Rect rect)21     public AppTransitionAnimationSpec(int taskId, GraphicBuffer buffer, Rect rect) {
22         this.taskId = taskId;
23         this.rect = rect;
24         this.buffer = buffer;
25     }
26 
AppTransitionAnimationSpec(Parcel in)27     public AppTransitionAnimationSpec(Parcel in) {
28         taskId = in.readInt();
29         rect = in.readParcelable(null);
30         buffer = in.readParcelable(null);
31     }
32 
33     @Override
describeContents()34     public int describeContents() {
35         return 0;
36     }
37 
38     @Override
writeToParcel(Parcel dest, int flags)39     public void writeToParcel(Parcel dest, int flags) {
40         dest.writeInt(taskId);
41         dest.writeParcelable(rect, 0 /* flags */);
42         dest.writeParcelable(buffer, 0);
43     }
44 
45     public static final Parcelable.Creator<AppTransitionAnimationSpec> CREATOR
46             = new Parcelable.Creator<AppTransitionAnimationSpec>() {
47         public AppTransitionAnimationSpec createFromParcel(Parcel in) {
48             return new AppTransitionAnimationSpec(in);
49         }
50 
51         public AppTransitionAnimationSpec[] newArray(int size) {
52             return new AppTransitionAnimationSpec[size];
53         }
54     };
55 
56     @Override
toString()57     public String toString() {
58         return "{taskId: " + taskId + ", buffer: " + buffer + ", rect: " + rect + "}";
59     }
60 }
61