summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--packages/SystemUI/src/com/android/systemui/statusbar/NotificationMediaManager.java13
1 files changed, 8 insertions, 5 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationMediaManager.java b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationMediaManager.java
index 04a413acdf0b..240953d6bfcd 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationMediaManager.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationMediaManager.java
@@ -291,8 +291,9 @@ public class NotificationMediaManager implements Dumpable {
}
private void updateMediaMetaData(MediaListener callback) {
- callback.onPrimaryMetadataOrStateChanged(mMediaMetadata,
- getMediaControllerPlaybackState(mMediaController));
+ int playbackState = getMediaControllerPlaybackState(mMediaController);
+ mHandler.post(
+ () -> callback.onPrimaryMetadataOrStateChanged(mMediaMetadata, playbackState));
}
public void removeCallback(MediaListener callback) {
@@ -437,9 +438,11 @@ public class NotificationMediaManager implements Dumpable {
private void updateMediaMetaData(List<MediaListener> callbacks) {
@PlaybackState.State int state = getMediaControllerPlaybackState(mMediaController);
- for (int i = 0; i < callbacks.size(); i++) {
- callbacks.get(i).onPrimaryMetadataOrStateChanged(mMediaMetadata, state);
- }
+ mHandler.post(() -> {
+ for (int i = 0; i < callbacks.size(); i++) {
+ callbacks.get(i).onPrimaryMetadataOrStateChanged(mMediaMetadata, state);
+ }
+ });
}
@Override