diff --git a/RELEASENOTES.md b/RELEASENOTES.md index 82594aed642..cbbfc213e5d 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -10,6 +10,9 @@ * Fix measurement of `StyledPlayerView` and `StyledPlayerControlView` when `wrap_content` is used ([#8726](https://github.com/google/ExoPlayer/issues/8726)). + * Fix `StyledPlayerControlView` to stay in full mode (rather than minimal + mode) when possible + ([#8763](https://github.com/google/ExoPlayer/issues/8763)). * Audio: * Report unexpected discontinuities in `AnalyticsListener.onAudioSinkError` diff --git a/library/ui/src/main/java/com/google/android/exoplayer2/ui/StyledPlayerControlViewLayoutManager.java b/library/ui/src/main/java/com/google/android/exoplayer2/ui/StyledPlayerControlViewLayoutManager.java index 00599314ec3..6fbf7593051 100644 --- a/library/ui/src/main/java/com/google/android/exoplayer2/ui/StyledPlayerControlViewLayoutManager.java +++ b/library/ui/src/main/java/com/google/android/exoplayer2/ui/StyledPlayerControlViewLayoutManager.java @@ -587,13 +587,17 @@ private boolean useMinimalMode() { - (centerControls != null ? (centerControls.getPaddingLeft() + centerControls.getPaddingRight()) : 0); + int centerControlHeight = + getHeightWithMargins(centerControls) + - (centerControls != null + ? (centerControls.getPaddingTop() + centerControls.getPaddingBottom()) + : 0); int defaultModeMinimumWidth = Math.max( centerControlWidth, getWidthWithMargins(timeView) + getWidthWithMargins(overflowShowButton)); - int defaultModeMinimumHeight = - getHeightWithMargins(centerControls) + 2 * getHeightWithMargins(bottomBar); + int defaultModeMinimumHeight = centerControlHeight + (2 * getHeightWithMargins(bottomBar)); return width <= defaultModeMinimumWidth || height <= defaultModeMinimumHeight; } diff --git a/library/ui/src/main/res/layout/exo_styled_player_control_view.xml b/library/ui/src/main/res/layout/exo_styled_player_control_view.xml index 5c8153bf179..a83bb1c72c7 100644 --- a/library/ui/src/main/res/layout/exo_styled_player_control_view.xml +++ b/library/ui/src/main/res/layout/exo_styled_player_control_view.xml @@ -130,7 +130,8 @@ android:layout_gravity="center" android:background="@android:color/transparent" android:gravity="center" - android:padding="@dimen/exo_styled_controls_padding"> + android:padding="@dimen/exo_styled_controls_padding" + android:clipToPadding="false">