Commit 59b2dd27 by bachinger Committed by Oliver Woodman

don't call stop before preparing the player

Issue: #5891
PiperOrigin-RevId: 248369509
parent 4ca670be
...@@ -834,10 +834,9 @@ public final class MediaSessionConnector { ...@@ -834,10 +834,9 @@ public final class MediaSessionConnector {
return player != null && mediaButtonEventHandler != null; return player != null && mediaButtonEventHandler != null;
} }
private void stopPlayerForPrepare(boolean playWhenReady) { private void setPlayWhenReady(boolean playWhenReady) {
if (player != null) { if (player != null) {
player.stop(); controlDispatcher.dispatchSetPlayWhenReady(player, playWhenReady);
player.setPlayWhenReady(playWhenReady);
} }
} }
...@@ -1051,14 +1050,14 @@ public final class MediaSessionConnector { ...@@ -1051,14 +1050,14 @@ public final class MediaSessionConnector {
} else if (player.getPlaybackState() == Player.STATE_ENDED) { } else if (player.getPlaybackState() == Player.STATE_ENDED) {
controlDispatcher.dispatchSeekTo(player, player.getCurrentWindowIndex(), C.TIME_UNSET); controlDispatcher.dispatchSeekTo(player, player.getCurrentWindowIndex(), C.TIME_UNSET);
} }
controlDispatcher.dispatchSetPlayWhenReady(player, /* playWhenReady= */ true); setPlayWhenReady(/* playWhenReady= */ true);
} }
} }
@Override @Override
public void onPause() { public void onPause() {
if (canDispatchPlaybackAction(PlaybackStateCompat.ACTION_PAUSE)) { if (canDispatchPlaybackAction(PlaybackStateCompat.ACTION_PAUSE)) {
controlDispatcher.dispatchSetPlayWhenReady(player, /* playWhenReady= */ false); setPlayWhenReady(/* playWhenReady= */ false);
} }
} }
...@@ -1181,7 +1180,7 @@ public final class MediaSessionConnector { ...@@ -1181,7 +1180,7 @@ public final class MediaSessionConnector {
@Override @Override
public void onPrepare() { public void onPrepare() {
if (canDispatchToPlaybackPreparer(PlaybackStateCompat.ACTION_PREPARE)) { if (canDispatchToPlaybackPreparer(PlaybackStateCompat.ACTION_PREPARE)) {
stopPlayerForPrepare(/* playWhenReady= */ false); setPlayWhenReady(/* playWhenReady= */ false);
playbackPreparer.onPrepare(); playbackPreparer.onPrepare();
} }
} }
...@@ -1189,7 +1188,7 @@ public final class MediaSessionConnector { ...@@ -1189,7 +1188,7 @@ public final class MediaSessionConnector {
@Override @Override
public void onPrepareFromMediaId(String mediaId, Bundle extras) { public void onPrepareFromMediaId(String mediaId, Bundle extras) {
if (canDispatchToPlaybackPreparer(PlaybackStateCompat.ACTION_PREPARE_FROM_MEDIA_ID)) { if (canDispatchToPlaybackPreparer(PlaybackStateCompat.ACTION_PREPARE_FROM_MEDIA_ID)) {
stopPlayerForPrepare(/* playWhenReady= */ false); setPlayWhenReady(/* playWhenReady= */ false);
playbackPreparer.onPrepareFromMediaId(mediaId, extras); playbackPreparer.onPrepareFromMediaId(mediaId, extras);
} }
} }
...@@ -1197,7 +1196,7 @@ public final class MediaSessionConnector { ...@@ -1197,7 +1196,7 @@ public final class MediaSessionConnector {
@Override @Override
public void onPrepareFromSearch(String query, Bundle extras) { public void onPrepareFromSearch(String query, Bundle extras) {
if (canDispatchToPlaybackPreparer(PlaybackStateCompat.ACTION_PREPARE_FROM_SEARCH)) { if (canDispatchToPlaybackPreparer(PlaybackStateCompat.ACTION_PREPARE_FROM_SEARCH)) {
stopPlayerForPrepare(/* playWhenReady= */ false); setPlayWhenReady(/* playWhenReady= */ false);
playbackPreparer.onPrepareFromSearch(query, extras); playbackPreparer.onPrepareFromSearch(query, extras);
} }
} }
...@@ -1205,7 +1204,7 @@ public final class MediaSessionConnector { ...@@ -1205,7 +1204,7 @@ public final class MediaSessionConnector {
@Override @Override
public void onPrepareFromUri(Uri uri, Bundle extras) { public void onPrepareFromUri(Uri uri, Bundle extras) {
if (canDispatchToPlaybackPreparer(PlaybackStateCompat.ACTION_PREPARE_FROM_URI)) { if (canDispatchToPlaybackPreparer(PlaybackStateCompat.ACTION_PREPARE_FROM_URI)) {
stopPlayerForPrepare(/* playWhenReady= */ false); setPlayWhenReady(/* playWhenReady= */ false);
playbackPreparer.onPrepareFromUri(uri, extras); playbackPreparer.onPrepareFromUri(uri, extras);
} }
} }
...@@ -1213,7 +1212,7 @@ public final class MediaSessionConnector { ...@@ -1213,7 +1212,7 @@ public final class MediaSessionConnector {
@Override @Override
public void onPlayFromMediaId(String mediaId, Bundle extras) { public void onPlayFromMediaId(String mediaId, Bundle extras) {
if (canDispatchToPlaybackPreparer(PlaybackStateCompat.ACTION_PLAY_FROM_MEDIA_ID)) { if (canDispatchToPlaybackPreparer(PlaybackStateCompat.ACTION_PLAY_FROM_MEDIA_ID)) {
stopPlayerForPrepare(/* playWhenReady= */ true); setPlayWhenReady(/* playWhenReady= */ true);
playbackPreparer.onPrepareFromMediaId(mediaId, extras); playbackPreparer.onPrepareFromMediaId(mediaId, extras);
} }
} }
...@@ -1221,7 +1220,7 @@ public final class MediaSessionConnector { ...@@ -1221,7 +1220,7 @@ public final class MediaSessionConnector {
@Override @Override
public void onPlayFromSearch(String query, Bundle extras) { public void onPlayFromSearch(String query, Bundle extras) {
if (canDispatchToPlaybackPreparer(PlaybackStateCompat.ACTION_PLAY_FROM_SEARCH)) { if (canDispatchToPlaybackPreparer(PlaybackStateCompat.ACTION_PLAY_FROM_SEARCH)) {
stopPlayerForPrepare(/* playWhenReady= */ true); setPlayWhenReady(/* playWhenReady= */ true);
playbackPreparer.onPrepareFromSearch(query, extras); playbackPreparer.onPrepareFromSearch(query, extras);
} }
} }
...@@ -1229,7 +1228,7 @@ public final class MediaSessionConnector { ...@@ -1229,7 +1228,7 @@ public final class MediaSessionConnector {
@Override @Override
public void onPlayFromUri(Uri uri, Bundle extras) { public void onPlayFromUri(Uri uri, Bundle extras) {
if (canDispatchToPlaybackPreparer(PlaybackStateCompat.ACTION_PLAY_FROM_URI)) { if (canDispatchToPlaybackPreparer(PlaybackStateCompat.ACTION_PLAY_FROM_URI)) {
stopPlayerForPrepare(/* playWhenReady= */ true); setPlayWhenReady(/* playWhenReady= */ true);
playbackPreparer.onPrepareFromUri(uri, extras); playbackPreparer.onPrepareFromUri(uri, extras);
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment