From cebc0fa3745c7a66a9df4601bccd6b707800d9c7 Mon Sep 17 00:00:00 2001 From: Googler Date: Tue, 17 Jan 2023 14:42:18 +0000 Subject: [PATCH] Disables play/pause button when there's nothing to play PiperOrigin-RevId: 502571320 (cherry picked from commit 345f2345c74ccbbf3dd49f125b1b81938b0a9995) --- .../android/exoplayer2/ui/StyledPlayerControlView.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/library/ui/src/main/java/com/google/android/exoplayer2/ui/StyledPlayerControlView.java b/library/ui/src/main/java/com/google/android/exoplayer2/ui/StyledPlayerControlView.java index e8d72983f0..55e9680b06 100644 --- a/library/ui/src/main/java/com/google/android/exoplayer2/ui/StyledPlayerControlView.java +++ b/library/ui/src/main/java/com/google/android/exoplayer2/ui/StyledPlayerControlView.java @@ -986,6 +986,9 @@ public class StyledPlayerControlView extends FrameLayout { ((ImageView) playPauseButton) .setImageDrawable(getDrawable(getContext(), resources, drawableRes)); playPauseButton.setContentDescription(resources.getString(stringRes)); + + boolean enablePlayPause = shouldEnablePlayPauseButton(); + updateButton(enablePlayPause, playPauseButton); } } @@ -1503,6 +1506,10 @@ public class StyledPlayerControlView extends FrameLayout { } } + private boolean shouldEnablePlayPauseButton() { + return player != null && !player.getCurrentTimeline().isEmpty(); + } + private boolean shouldShowPauseButton() { return player != null && player.getPlaybackState() != Player.STATE_ENDED