Merge "Work on separating out the status bar management"
diff --git a/core/java/android/content/Intent.java b/core/java/android/content/Intent.java
index 6a8141f..5f4c36c 100644
--- a/core/java/android/content/Intent.java
+++ b/core/java/android/content/Intent.java
@@ -6039,6 +6039,12 @@
case "--receiver-foreground":
intent.addFlags(Intent.FLAG_RECEIVER_FOREGROUND);
break;
+ case "--receiver-no-abort":
+ intent.addFlags(Intent.FLAG_RECEIVER_NO_ABORT);
+ break;
+ case "--receiver-include-background":
+ intent.addFlags(Intent.FLAG_RECEIVER_INCLUDE_BACKGROUND);
+ break;
case "--selector":
intent.setDataAndType(data, type);
intent = new Intent();
@@ -6162,7 +6168,8 @@
" [--activity-single-top] [--activity-clear-task]",
" [--activity-task-on-home]",
" [--receiver-registered-only] [--receiver-replace-pending]",
- " [--receiver-foreground]",
+ " [--receiver-foreground] [--receiver-no-abort]",
+ " [--receiver-include-background]",
" [--selector]",
" [<URI> | <PACKAGE> | <COMPONENT>]"
};
diff --git a/packages/SystemUI/src/com/android/systemui/pip/phone/PipMediaController.java b/packages/SystemUI/src/com/android/systemui/pip/phone/PipMediaController.java
index 5a665a9..3a4caa9 100644
--- a/packages/SystemUI/src/com/android/systemui/pip/phone/PipMediaController.java
+++ b/packages/SystemUI/src/com/android/systemui/pip/phone/PipMediaController.java
@@ -83,9 +83,7 @@
private MediaController.Callback mPlaybackChangedListener = new MediaController.Callback() {
@Override
public void onPlaybackStateChanged(PlaybackState state) {
- if (!mListeners.isEmpty()) {
- notifyActionsChanged(getMediaActions());
- }
+ notifyActionsChanged();
}
};
@@ -146,9 +144,9 @@
boolean isPlaying = MediaSession.isActiveState(state);
long actions = mMediaController.getPlaybackState().getActions();
if (!isPlaying && ((actions & PlaybackState.ACTION_PLAY) != 0)) {
- mediaActions.add(mPauseAction);
- } else if (isPlaying && ((actions & PlaybackState.ACTION_PAUSE) != 0)) {
mediaActions.add(mPlayAction);
+ } else if (isPlaying && ((actions & PlaybackState.ACTION_PAUSE) != 0)) {
+ mediaActions.add(mPauseAction);
}
return mediaActions;
}
@@ -202,9 +200,7 @@
if (controller != null) {
controller.registerCallback(mPlaybackChangedListener);
}
- if (!mListeners.isEmpty()) {
- notifyActionsChanged(getMediaActions());
- }
+ notifyActionsChanged();
// TODO(winsonc): Consider if we want to close the PIP after a timeout (like on TV)
}
@@ -213,8 +209,9 @@
/**
* Notifies all listeners that the actions have changed.
*/
- private void notifyActionsChanged(List<RemoteAction> actions) {
+ private void notifyActionsChanged() {
if (!mListeners.isEmpty()) {
+ List<RemoteAction> actions = getMediaActions();
mListeners.forEach(l -> l.onMediaActionsChanged(actions));
}
}