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 cf89fbc110..91d00ab9e3 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 @@ -453,6 +453,8 @@ public class StyledPlayerControlView extends FrameLayout { @Nullable private ImageView fullScreenButton; @Nullable private ImageView minimalFullScreenButton; @Nullable private View settingsButton; + @Nullable private View playbackSpeedButton; + @Nullable private View audioTrackButton; public StyledPlayerControlView(Context context) { this(context, /* attrs= */ null); @@ -571,6 +573,16 @@ public class StyledPlayerControlView extends FrameLayout { settingsButton.setOnClickListener(componentListener); } + playbackSpeedButton = findViewById(R.id.exo_playback_speed); + if (playbackSpeedButton != null) { + playbackSpeedButton.setOnClickListener(componentListener); + } + + audioTrackButton = findViewById(R.id.exo_audio_track); + if (audioTrackButton != null) { + audioTrackButton.setOnClickListener(componentListener); + } + TimeBar customTimeBar = findViewById(R.id.exo_progress); View timeBarPlaceholder = findViewById(R.id.exo_progress_placeholder); if (customTimeBar != null) { @@ -1849,6 +1861,12 @@ public class StyledPlayerControlView extends FrameLayout { } else if (settingsButton == view) { controlViewLayoutManager.removeHideCallbacks(); displaySettingsWindow(settingsAdapter); + } else if (playbackSpeedButton == view) { + controlViewLayoutManager.removeHideCallbacks(); + displaySettingsWindow(playbackSpeedAdapter); + } else if (audioTrackButton == view) { + controlViewLayoutManager.removeHideCallbacks(); + displaySettingsWindow(audioTrackSelectionAdapter); } else if (subtitleButton == view) { controlViewLayoutManager.removeHideCallbacks(); displaySettingsWindow(textTrackSelectionAdapter); diff --git a/library/ui/src/main/res/values/ids.xml b/library/ui/src/main/res/values/ids.xml index a348e9d11e..b0c1632693 100644 --- a/library/ui/src/main/res/values/ids.xml +++ b/library/ui/src/main/res/values/ids.xml @@ -43,6 +43,8 @@ + + diff --git a/library/ui/src/main/res/values/styles.xml b/library/ui/src/main/res/values/styles.xml index a7d44ec59b..84f2db543d 100644 --- a/library/ui/src/main/res/values/styles.xml +++ b/library/ui/src/main/res/values/styles.xml @@ -192,6 +192,16 @@ @string/exo_controls_settings_description + + + +