summaryrefslogtreecommitdiff
path: root/core/java/android/app/ClientTransactionHandler.java
diff options
context:
space:
mode:
authorBen Lin <linben@google.com>2021-03-24 17:09:35 -0700
committerBen Lin <linben@google.com>2021-04-15 13:42:17 -0700
commitca25625601c0d74a819f42f686ae5c2cf38bb8dd (patch)
treeecdff872135389156f8e36dbdfa1a350606cdbe1 /core/java/android/app/ClientTransactionHandler.java
parent1430546720742776de5dfcedf5267986aa07c1f6 (diff)
Add Activity#onPictureInPictureUiStateChanged and PictureInPictureUiState.
This adds a new API on Activity such that app developers can get signals when certain PiP UI states change, e.g. stash/unstashed. The idea is that when PiP is stashed, the activity will get a signal to do anything they wish, such as pausing/resuming video-like contents. Bug: 182409584 Test: atest PinnedStackTests#testPictureInPictureStateChangeCallback Change-Id: I308f3f1c3af8d1a54b63311fb3beaee77d6c7922
Diffstat (limited to 'core/java/android/app/ClientTransactionHandler.java')
-rw-r--r--core/java/android/app/ClientTransactionHandler.java4
1 files changed, 4 insertions, 0 deletions
diff --git a/core/java/android/app/ClientTransactionHandler.java b/core/java/android/app/ClientTransactionHandler.java
index cf5fd148c030..c752f34ab0bb 100644
--- a/core/java/android/app/ClientTransactionHandler.java
+++ b/core/java/android/app/ClientTransactionHandler.java
@@ -159,6 +159,10 @@ public abstract class ClientTransactionHandler {
/** Request that an activity enter picture-in-picture. */
public abstract void handlePictureInPictureRequested(@NonNull ActivityClientRecord r);
+ /** Signal to an activity (that is currently in PiP) of PiP state changes. */
+ public abstract void handlePictureInPictureStateChanged(@NonNull ActivityClientRecord r,
+ PictureInPictureUiState pipState);
+
/** Whether the activity want to handle splash screen exit animation */
public abstract boolean isHandleSplashScreenExit(@NonNull IBinder token);