Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7075d79c authored by Winson Chung's avatar Winson Chung Committed by Android (Google) Code Review
Browse files

Merge "Adding API for apps to specify their aspect ratio when entering PIP."

parents 7bfba3a5 84a3834a
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -3463,6 +3463,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 android.view.View findViewById(int);
    method public void finish();
    method public void finishActivity(int);
@@ -3634,6 +3635,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 setPictureInPictureAspectRatio(float);
    method public final deprecated void setProgress(int);
    method public final deprecated void setProgressBarIndeterminate(boolean);
    method public final deprecated void setProgressBarIndeterminateVisibility(boolean);
+2 −0
Original line number Diff line number Diff line
@@ -3580,6 +3580,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 android.view.View findViewById(int);
    method public void finish();
    method public void finishActivity(int);
@@ -3753,6 +3754,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 setPictureInPictureAspectRatio(float);
    method public final deprecated void setProgress(int);
    method public final deprecated void setProgressBarIndeterminate(boolean);
    method public final deprecated void setProgressBarIndeterminateVisibility(boolean);
+2 −0
Original line number Diff line number Diff line
@@ -3465,6 +3465,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 android.view.View findViewById(int);
    method public void finish();
    method public void finishActivity(int);
@@ -3636,6 +3637,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 setPictureInPictureAspectRatio(float);
    method public final deprecated void setProgress(int);
    method public final deprecated void setProgressBarIndeterminate(boolean);
    method public final deprecated void setProgressBarIndeterminateVisibility(boolean);
+26 −0
Original line number Diff line number Diff line
@@ -1928,6 +1928,32 @@ public class Activity extends ContextThemeWrapper
        }
    }

    /**
     * Puts the activity in picture-in-picture mode with a given aspect ratio.
     * @see android.R.attr#supportsPictureInPicture
     *
     * @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) {
        }
    }

    /**
     * Updates the aspect ratio of the current picture-in-picture activity.
     *
     * @param aspectRatio the new aspect ratio of the picture-in-picture.
     */
    public void setPictureInPictureAspectRatio(float aspectRatio) {
        try {
            ActivityManagerNative.getDefault().setPictureInPictureAspectRatio(mToken, aspectRatio);
        } catch (RemoteException e) {
        }
    }

    /**
     * Called by the system when the device configuration changes while your
     * activity is running.  Note that this will <em>only</em> be called if
+3 −1
Original line number Diff line number Diff line
@@ -562,6 +562,8 @@ interface IActivityManager {
    boolean updateDisplayOverrideConfiguration(in Configuration values, int displayId) = 401;
    void unregisterTaskStackListener(ITaskStackListener listener) = 402;
    void moveStackToDisplay(int stackId, int displayId) = 403;
    void enterPictureInPictureModeWithAspectRatio(in IBinder token, float aspectRatio) = 404;
    void setPictureInPictureAspectRatio(in IBinder token, float aspectRatio) = 405;

    // Please keep these transaction codes the same -- they are also
    // sent by C++ code. when a new method is added, use the next available transaction id.
Loading