Loading api/current.txt +13 −4 Original line number Diff line number Diff line Loading @@ -3501,8 +3501,7 @@ package android.app { method public boolean dispatchTrackballEvent(android.view.MotionEvent); method public void dump(java.lang.String, java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]); method public void enterPictureInPictureMode(); method public void enterPictureInPictureMode(float); method public void enterPictureInPictureModeOnMoveToBackground(boolean); method public boolean enterPictureInPictureMode(android.app.PictureInPictureArgs); method public android.view.View findViewById(int); method public void finish(); method public void finishActivity(int); Loading Loading @@ -3675,8 +3674,7 @@ package android.app { method public void setIntent(android.content.Intent); method public final void setMediaController(android.media.session.MediaController); method public void setOverlayWithDecorCaptionEnabled(boolean); method public void setPictureInPictureActions(java.util.List<android.app.RemoteAction>); method public void setPictureInPictureAspectRatio(float); method public void setPictureInPictureArgs(android.app.PictureInPictureArgs); method public final deprecated void setProgress(int); method public final deprecated void setProgressBarIndeterminate(boolean); method public final deprecated void setProgressBarIndeterminateVisibility(boolean); Loading Loading @@ -5536,6 +5534,17 @@ package android.app { method public abstract void onSendFinished(android.app.PendingIntent, android.content.Intent, int, java.lang.String, android.os.Bundle); } public final class PictureInPictureArgs implements android.os.Parcelable { ctor public PictureInPictureArgs(); ctor public PictureInPictureArgs(float, java.util.List<android.app.RemoteAction>); method public android.app.PictureInPictureArgs clone(); method public int describeContents(); method public void setActions(java.util.List<android.app.RemoteAction>); method public void setAspectRatio(float); method public void writeToParcel(android.os.Parcel, int); field public static final android.os.Parcelable.Creator<android.app.PictureInPictureArgs> CREATOR; } public class Presentation extends android.app.Dialog { ctor public Presentation(android.content.Context, android.view.Display); ctor public Presentation(android.content.Context, android.view.Display, int); api/system-current.txt +13 −4 Original line number Diff line number Diff line Loading @@ -3620,8 +3620,7 @@ package android.app { method public boolean dispatchTrackballEvent(android.view.MotionEvent); method public void dump(java.lang.String, java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]); method public void enterPictureInPictureMode(); method public void enterPictureInPictureMode(float); method public void enterPictureInPictureModeOnMoveToBackground(boolean); method public boolean enterPictureInPictureMode(android.app.PictureInPictureArgs); method public android.view.View findViewById(int); method public void finish(); method public void finishActivity(int); Loading Loading @@ -3796,8 +3795,7 @@ package android.app { method public void setIntent(android.content.Intent); method public final void setMediaController(android.media.session.MediaController); method public void setOverlayWithDecorCaptionEnabled(boolean); method public void setPictureInPictureActions(java.util.List<android.app.RemoteAction>); method public void setPictureInPictureAspectRatio(float); method public void setPictureInPictureArgs(android.app.PictureInPictureArgs); method public final deprecated void setProgress(int); method public final deprecated void setProgressBarIndeterminate(boolean); method public final deprecated void setProgressBarIndeterminateVisibility(boolean); Loading Loading @@ -5723,6 +5721,17 @@ package android.app { method public abstract void onSendFinished(android.app.PendingIntent, android.content.Intent, int, java.lang.String, android.os.Bundle); } public final class PictureInPictureArgs implements android.os.Parcelable { ctor public PictureInPictureArgs(); ctor public PictureInPictureArgs(float, java.util.List<android.app.RemoteAction>); method public android.app.PictureInPictureArgs clone(); method public int describeContents(); method public void setActions(java.util.List<android.app.RemoteAction>); method public void setAspectRatio(float); method public void writeToParcel(android.os.Parcel, int); field public static final android.os.Parcelable.Creator<android.app.PictureInPictureArgs> CREATOR; } public class Presentation extends android.app.Dialog { ctor public Presentation(android.content.Context, android.view.Display); ctor public Presentation(android.content.Context, android.view.Display, int); api/test-current.txt +13 −4 Original line number Diff line number Diff line Loading @@ -3503,8 +3503,7 @@ package android.app { method public boolean dispatchTrackballEvent(android.view.MotionEvent); method public void dump(java.lang.String, java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]); method public void enterPictureInPictureMode(); method public void enterPictureInPictureMode(float); method public void enterPictureInPictureModeOnMoveToBackground(boolean); method public boolean enterPictureInPictureMode(android.app.PictureInPictureArgs); method public android.view.View findViewById(int); method public void finish(); method public void finishActivity(int); Loading Loading @@ -3677,8 +3676,7 @@ package android.app { method public void setIntent(android.content.Intent); method public final void setMediaController(android.media.session.MediaController); method public void setOverlayWithDecorCaptionEnabled(boolean); method public void setPictureInPictureActions(java.util.List<android.app.RemoteAction>); method public void setPictureInPictureAspectRatio(float); method public void setPictureInPictureArgs(android.app.PictureInPictureArgs); method public final deprecated void setProgress(int); method public final deprecated void setProgressBarIndeterminate(boolean); method public final deprecated void setProgressBarIndeterminateVisibility(boolean); Loading Loading @@ -5547,6 +5545,17 @@ package android.app { method public abstract void onSendFinished(android.app.PendingIntent, android.content.Intent, int, java.lang.String, android.os.Bundle); } public final class PictureInPictureArgs implements android.os.Parcelable { ctor public PictureInPictureArgs(); ctor public PictureInPictureArgs(float, java.util.List<android.app.RemoteAction>); method public android.app.PictureInPictureArgs clone(); method public int describeContents(); method public void setActions(java.util.List<android.app.RemoteAction>); method public void setAspectRatio(float); method public void writeToParcel(android.os.Parcel, int); field public static final android.os.Parcelable.Creator<android.app.PictureInPictureArgs> CREATOR; } public class Presentation extends android.app.Dialog { ctor public Presentation(android.content.Context, android.view.Display); ctor public Presentation(android.content.Context, android.view.Display, int); core/java/android/app/Activity.java +27 −52 Original line number Diff line number Diff line Loading @@ -2029,78 +2029,53 @@ public class Activity extends ContextThemeWrapper } /** * Puts the activity in picture-in-picture mode. * Puts the activity in picture-in-picture mode if possible in the current system state. Any * prior calls to {@link #setPictureInPictureArgs(PictureInPictureArgs)} will still apply when * entering picture-in-picture through this call. * * @see #enterPictureInPictureMode(PictureInPictureArgs) * @see android.R.attr#supportsPictureInPicture */ public void enterPictureInPictureMode() { try { ActivityManager.getService().enterPictureInPictureMode(mToken); } catch (RemoteException e) { } enterPictureInPictureMode(new PictureInPictureArgs()); } /** * Puts the activity in picture-in-picture mode with a given aspect ratio. * @see android.R.attr#supportsPictureInPicture * Puts the activity in picture-in-picture mode if possible in the current system state with * explicit given arguments. Only the set parameters in {@param args} will override prior calls * {@link #setPictureInPictureArgs(PictureInPictureArgs)}. * * @param aspectRatio the new aspect ratio of the picture-in-picture. */ public void enterPictureInPictureMode(float aspectRatio) { try { ActivityManagerNative.getDefault().enterPictureInPictureModeWithAspectRatio(mToken, aspectRatio); } catch (RemoteException e) { } } /** * Requests to the system that the activity can be automatically put into picture-in-picture * mode when the user leaves the activity causing it normally to be hidden. Generally, this * happens when another task is brought to the forground or the task containing this activity * is moved to the background. This is a *not* a guarantee that the activity will actually be * put in picture-in-picture mode, and depends on a number of factors, including whether there * is already something in picture-in-picture. * The system may disallow entering picture-in-picture in various cases, including when the * activity is not visible. * * @param enterPictureInPictureOnMoveToBg whether or not this activity can automatically enter * picture-in-picture */ public void enterPictureInPictureModeOnMoveToBackground( boolean enterPictureInPictureOnMoveToBg) { try { ActivityManagerNative.getDefault().enterPictureInPictureModeOnMoveToBackground(mToken, enterPictureInPictureOnMoveToBg); } catch (RemoteException e) { } } /** * Updates the aspect ratio of the current picture-in-picture activity if this activity is * already in picture-in-picture mode, or sets it to be used later if * {@link #enterPictureInPictureModeOnMoveToBackground(boolean)} is requested. * @see android.R.attr#supportsPictureInPicture * * @param aspectRatio the new aspect ratio of the picture-in-picture. * @param args the explicit non-null arguments to use when entering picture-in-picture. * @return whether the system successfully entered picture-in-picture. */ public void setPictureInPictureAspectRatio(float aspectRatio) { public boolean enterPictureInPictureMode(@NonNull PictureInPictureArgs args) { try { ActivityManagerNative.getDefault().setPictureInPictureAspectRatio(mToken, aspectRatio); if (args == null) { throw new IllegalArgumentException("Expected non-null picture-in-picture args"); } return ActivityManagerNative.getDefault().enterPictureInPictureMode(mToken, args); } catch (RemoteException e) { return false; } } /** * Updates the set of user actions associated with the picture-in-picture activity. * Updates the properties of the picture-in-picture activity, or sets it to be used later when * {@link #enterPictureInPictureMode()} is called. * * @param actions the new actions for picture-in-picture (can be null to reset the set of * actions). The maximum number of actions that will be displayed on this device * is defined by {@link ActivityManager#getMaxNumPictureInPictureActions()}. * @param args the new properties of the picture-in-picture. */ public void setPictureInPictureActions(List<RemoteAction> actions) { public void setPictureInPictureArgs(@NonNull PictureInPictureArgs args) { try { if (actions == null) { actions = new ArrayList<>(); if (args == null) { throw new IllegalArgumentException("Expected non-null picture-in-picture args"); } ActivityManagerNative.getDefault().setPictureInPictureActions(mToken, new ParceledListSlice<RemoteAction>(actions)); ActivityManagerNative.getDefault().setPictureInPictureArgs(mToken, args); } catch (RemoteException e) { } } Loading core/java/android/app/ActivityManagerInternal.java +0 −30 Original line number Diff line number Diff line Loading @@ -63,36 +63,6 @@ public abstract class ActivityManagerInternal { */ public static final int APP_TRANSITION_TIMEOUT = 3; /** * Class to hold deferred properties to apply for picture-in-picture for a given activity. */ public static class PictureInPictureArguments { /** * The expected aspect ratio of the picture-in-picture. */ public float aspectRatio; /** * The set of actions that are associated with this activity when in picture in picture. */ public List<RemoteAction> userActions = new ArrayList<>(); public void dump(PrintWriter pw, String prefix) { pw.println(prefix + "aspectRatio=" + aspectRatio); if (userActions.isEmpty()) { pw.println(prefix + " userActions=[]"); } else { pw.println(prefix + " userActions=["); for (int i = 0; i < userActions.size(); i++) { RemoteAction action = userActions.get(i); pw.print(prefix + " Action[" + i + "]: "); action.dump("", pw); } pw.println(prefix + " ]"); } } } /** * Grant Uri permissions from one app to another. This method only extends * permission grants if {@code callingUid} has permission to them. Loading Loading
api/current.txt +13 −4 Original line number Diff line number Diff line Loading @@ -3501,8 +3501,7 @@ package android.app { method public boolean dispatchTrackballEvent(android.view.MotionEvent); method public void dump(java.lang.String, java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]); method public void enterPictureInPictureMode(); method public void enterPictureInPictureMode(float); method public void enterPictureInPictureModeOnMoveToBackground(boolean); method public boolean enterPictureInPictureMode(android.app.PictureInPictureArgs); method public android.view.View findViewById(int); method public void finish(); method public void finishActivity(int); Loading Loading @@ -3675,8 +3674,7 @@ package android.app { method public void setIntent(android.content.Intent); method public final void setMediaController(android.media.session.MediaController); method public void setOverlayWithDecorCaptionEnabled(boolean); method public void setPictureInPictureActions(java.util.List<android.app.RemoteAction>); method public void setPictureInPictureAspectRatio(float); method public void setPictureInPictureArgs(android.app.PictureInPictureArgs); method public final deprecated void setProgress(int); method public final deprecated void setProgressBarIndeterminate(boolean); method public final deprecated void setProgressBarIndeterminateVisibility(boolean); Loading Loading @@ -5536,6 +5534,17 @@ package android.app { method public abstract void onSendFinished(android.app.PendingIntent, android.content.Intent, int, java.lang.String, android.os.Bundle); } public final class PictureInPictureArgs implements android.os.Parcelable { ctor public PictureInPictureArgs(); ctor public PictureInPictureArgs(float, java.util.List<android.app.RemoteAction>); method public android.app.PictureInPictureArgs clone(); method public int describeContents(); method public void setActions(java.util.List<android.app.RemoteAction>); method public void setAspectRatio(float); method public void writeToParcel(android.os.Parcel, int); field public static final android.os.Parcelable.Creator<android.app.PictureInPictureArgs> CREATOR; } public class Presentation extends android.app.Dialog { ctor public Presentation(android.content.Context, android.view.Display); ctor public Presentation(android.content.Context, android.view.Display, int);
api/system-current.txt +13 −4 Original line number Diff line number Diff line Loading @@ -3620,8 +3620,7 @@ package android.app { method public boolean dispatchTrackballEvent(android.view.MotionEvent); method public void dump(java.lang.String, java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]); method public void enterPictureInPictureMode(); method public void enterPictureInPictureMode(float); method public void enterPictureInPictureModeOnMoveToBackground(boolean); method public boolean enterPictureInPictureMode(android.app.PictureInPictureArgs); method public android.view.View findViewById(int); method public void finish(); method public void finishActivity(int); Loading Loading @@ -3796,8 +3795,7 @@ package android.app { method public void setIntent(android.content.Intent); method public final void setMediaController(android.media.session.MediaController); method public void setOverlayWithDecorCaptionEnabled(boolean); method public void setPictureInPictureActions(java.util.List<android.app.RemoteAction>); method public void setPictureInPictureAspectRatio(float); method public void setPictureInPictureArgs(android.app.PictureInPictureArgs); method public final deprecated void setProgress(int); method public final deprecated void setProgressBarIndeterminate(boolean); method public final deprecated void setProgressBarIndeterminateVisibility(boolean); Loading Loading @@ -5723,6 +5721,17 @@ package android.app { method public abstract void onSendFinished(android.app.PendingIntent, android.content.Intent, int, java.lang.String, android.os.Bundle); } public final class PictureInPictureArgs implements android.os.Parcelable { ctor public PictureInPictureArgs(); ctor public PictureInPictureArgs(float, java.util.List<android.app.RemoteAction>); method public android.app.PictureInPictureArgs clone(); method public int describeContents(); method public void setActions(java.util.List<android.app.RemoteAction>); method public void setAspectRatio(float); method public void writeToParcel(android.os.Parcel, int); field public static final android.os.Parcelable.Creator<android.app.PictureInPictureArgs> CREATOR; } public class Presentation extends android.app.Dialog { ctor public Presentation(android.content.Context, android.view.Display); ctor public Presentation(android.content.Context, android.view.Display, int);
api/test-current.txt +13 −4 Original line number Diff line number Diff line Loading @@ -3503,8 +3503,7 @@ package android.app { method public boolean dispatchTrackballEvent(android.view.MotionEvent); method public void dump(java.lang.String, java.io.FileDescriptor, java.io.PrintWriter, java.lang.String[]); method public void enterPictureInPictureMode(); method public void enterPictureInPictureMode(float); method public void enterPictureInPictureModeOnMoveToBackground(boolean); method public boolean enterPictureInPictureMode(android.app.PictureInPictureArgs); method public android.view.View findViewById(int); method public void finish(); method public void finishActivity(int); Loading Loading @@ -3677,8 +3676,7 @@ package android.app { method public void setIntent(android.content.Intent); method public final void setMediaController(android.media.session.MediaController); method public void setOverlayWithDecorCaptionEnabled(boolean); method public void setPictureInPictureActions(java.util.List<android.app.RemoteAction>); method public void setPictureInPictureAspectRatio(float); method public void setPictureInPictureArgs(android.app.PictureInPictureArgs); method public final deprecated void setProgress(int); method public final deprecated void setProgressBarIndeterminate(boolean); method public final deprecated void setProgressBarIndeterminateVisibility(boolean); Loading Loading @@ -5547,6 +5545,17 @@ package android.app { method public abstract void onSendFinished(android.app.PendingIntent, android.content.Intent, int, java.lang.String, android.os.Bundle); } public final class PictureInPictureArgs implements android.os.Parcelable { ctor public PictureInPictureArgs(); ctor public PictureInPictureArgs(float, java.util.List<android.app.RemoteAction>); method public android.app.PictureInPictureArgs clone(); method public int describeContents(); method public void setActions(java.util.List<android.app.RemoteAction>); method public void setAspectRatio(float); method public void writeToParcel(android.os.Parcel, int); field public static final android.os.Parcelable.Creator<android.app.PictureInPictureArgs> CREATOR; } public class Presentation extends android.app.Dialog { ctor public Presentation(android.content.Context, android.view.Display); ctor public Presentation(android.content.Context, android.view.Display, int);
core/java/android/app/Activity.java +27 −52 Original line number Diff line number Diff line Loading @@ -2029,78 +2029,53 @@ public class Activity extends ContextThemeWrapper } /** * Puts the activity in picture-in-picture mode. * Puts the activity in picture-in-picture mode if possible in the current system state. Any * prior calls to {@link #setPictureInPictureArgs(PictureInPictureArgs)} will still apply when * entering picture-in-picture through this call. * * @see #enterPictureInPictureMode(PictureInPictureArgs) * @see android.R.attr#supportsPictureInPicture */ public void enterPictureInPictureMode() { try { ActivityManager.getService().enterPictureInPictureMode(mToken); } catch (RemoteException e) { } enterPictureInPictureMode(new PictureInPictureArgs()); } /** * Puts the activity in picture-in-picture mode with a given aspect ratio. * @see android.R.attr#supportsPictureInPicture * Puts the activity in picture-in-picture mode if possible in the current system state with * explicit given arguments. Only the set parameters in {@param args} will override prior calls * {@link #setPictureInPictureArgs(PictureInPictureArgs)}. * * @param aspectRatio the new aspect ratio of the picture-in-picture. */ public void enterPictureInPictureMode(float aspectRatio) { try { ActivityManagerNative.getDefault().enterPictureInPictureModeWithAspectRatio(mToken, aspectRatio); } catch (RemoteException e) { } } /** * Requests to the system that the activity can be automatically put into picture-in-picture * mode when the user leaves the activity causing it normally to be hidden. Generally, this * happens when another task is brought to the forground or the task containing this activity * is moved to the background. This is a *not* a guarantee that the activity will actually be * put in picture-in-picture mode, and depends on a number of factors, including whether there * is already something in picture-in-picture. * The system may disallow entering picture-in-picture in various cases, including when the * activity is not visible. * * @param enterPictureInPictureOnMoveToBg whether or not this activity can automatically enter * picture-in-picture */ public void enterPictureInPictureModeOnMoveToBackground( boolean enterPictureInPictureOnMoveToBg) { try { ActivityManagerNative.getDefault().enterPictureInPictureModeOnMoveToBackground(mToken, enterPictureInPictureOnMoveToBg); } catch (RemoteException e) { } } /** * Updates the aspect ratio of the current picture-in-picture activity if this activity is * already in picture-in-picture mode, or sets it to be used later if * {@link #enterPictureInPictureModeOnMoveToBackground(boolean)} is requested. * @see android.R.attr#supportsPictureInPicture * * @param aspectRatio the new aspect ratio of the picture-in-picture. * @param args the explicit non-null arguments to use when entering picture-in-picture. * @return whether the system successfully entered picture-in-picture. */ public void setPictureInPictureAspectRatio(float aspectRatio) { public boolean enterPictureInPictureMode(@NonNull PictureInPictureArgs args) { try { ActivityManagerNative.getDefault().setPictureInPictureAspectRatio(mToken, aspectRatio); if (args == null) { throw new IllegalArgumentException("Expected non-null picture-in-picture args"); } return ActivityManagerNative.getDefault().enterPictureInPictureMode(mToken, args); } catch (RemoteException e) { return false; } } /** * Updates the set of user actions associated with the picture-in-picture activity. * Updates the properties of the picture-in-picture activity, or sets it to be used later when * {@link #enterPictureInPictureMode()} is called. * * @param actions the new actions for picture-in-picture (can be null to reset the set of * actions). The maximum number of actions that will be displayed on this device * is defined by {@link ActivityManager#getMaxNumPictureInPictureActions()}. * @param args the new properties of the picture-in-picture. */ public void setPictureInPictureActions(List<RemoteAction> actions) { public void setPictureInPictureArgs(@NonNull PictureInPictureArgs args) { try { if (actions == null) { actions = new ArrayList<>(); if (args == null) { throw new IllegalArgumentException("Expected non-null picture-in-picture args"); } ActivityManagerNative.getDefault().setPictureInPictureActions(mToken, new ParceledListSlice<RemoteAction>(actions)); ActivityManagerNative.getDefault().setPictureInPictureArgs(mToken, args); } catch (RemoteException e) { } } Loading
core/java/android/app/ActivityManagerInternal.java +0 −30 Original line number Diff line number Diff line Loading @@ -63,36 +63,6 @@ public abstract class ActivityManagerInternal { */ public static final int APP_TRANSITION_TIMEOUT = 3; /** * Class to hold deferred properties to apply for picture-in-picture for a given activity. */ public static class PictureInPictureArguments { /** * The expected aspect ratio of the picture-in-picture. */ public float aspectRatio; /** * The set of actions that are associated with this activity when in picture in picture. */ public List<RemoteAction> userActions = new ArrayList<>(); public void dump(PrintWriter pw, String prefix) { pw.println(prefix + "aspectRatio=" + aspectRatio); if (userActions.isEmpty()) { pw.println(prefix + " userActions=[]"); } else { pw.println(prefix + " userActions=["); for (int i = 0; i < userActions.size(); i++) { RemoteAction action = userActions.get(i); pw.print(prefix + " Action[" + i + "]: "); action.dump("", pw); } pw.println(prefix + " ]"); } } } /** * Grant Uri permissions from one app to another. This method only extends * permission grants if {@code callingUid} has permission to them. Loading