package android.view;

import android.graphics.GraphicBuffer;
import android.graphics.Rect;
import android.os.Parcel;
import android.os.Parcelable;

Holds information about how the next app transition animation should be executed. This class is intended to be used with IWindowManager.overridePendingAppTransition* methods when simple arguments are not enough to describe the animation.
@hide
/** * Holds information about how the next app transition animation should be executed. * * This class is intended to be used with IWindowManager.overridePendingAppTransition* methods when * simple arguments are not enough to describe the animation. * * @hide */
public class AppTransitionAnimationSpec implements Parcelable { public final int taskId; public final GraphicBuffer buffer; public final Rect rect; public AppTransitionAnimationSpec(int taskId, GraphicBuffer buffer, Rect rect) { this.taskId = taskId; this.rect = rect; this.buffer = buffer; } public AppTransitionAnimationSpec(Parcel in) { taskId = in.readInt(); rect = in.readParcelable(null); buffer = in.readParcelable(null); } @Override public int describeContents() { return 0; } @Override public void writeToParcel(Parcel dest, int flags) { dest.writeInt(taskId); dest.writeParcelable(rect, 0 /* flags */); dest.writeParcelable(buffer, 0); } public static final Parcelable.Creator<AppTransitionAnimationSpec> CREATOR = new Parcelable.Creator<AppTransitionAnimationSpec>() { public AppTransitionAnimationSpec createFromParcel(Parcel in) { return new AppTransitionAnimationSpec(in); } public AppTransitionAnimationSpec[] newArray(int size) { return new AppTransitionAnimationSpec[size]; } }; @Override public String toString() { return "{taskId: " + taskId + ", buffer: " + buffer + ", rect: " + rect + "}"; } }