diff --git a/library/ui/src/main/java/com/google/android/exoplayer2/ui/DefaultTimeBar.java b/library/ui/src/main/java/com/google/android/exoplayer2/ui/DefaultTimeBar.java
index 24d890134a..f7a99a50dc 100644
--- a/library/ui/src/main/java/com/google/android/exoplayer2/ui/DefaultTimeBar.java
+++ b/library/ui/src/main/java/com/google/android/exoplayer2/ui/DefaultTimeBar.java
@@ -227,13 +227,22 @@ public class DefaultTimeBar extends View implements TimeBar {
this(context, attrs, defStyleAttr, attrs);
}
+ public DefaultTimeBar(
+ Context context,
+ @Nullable AttributeSet attrs,
+ int defStyleAttr,
+ @Nullable AttributeSet timebarAttrs) {
+ this(context, attrs, defStyleAttr, timebarAttrs, 0);
+ }
+
// Suppress warnings due to usage of View methods in the constructor.
@SuppressWarnings("nullness:method.invocation.invalid")
public DefaultTimeBar(
Context context,
@Nullable AttributeSet attrs,
int defStyleAttr,
- @Nullable AttributeSet timebarAttrs) {
+ @Nullable AttributeSet timebarAttrs,
+ int defStyleRes) {
super(context, attrs, defStyleAttr);
seekBounds = new Rect();
progressBar = new Rect();
@@ -262,7 +271,10 @@ public class DefaultTimeBar extends View implements TimeBar {
int defaultScrubberDraggedSize = dpToPx(density, DEFAULT_SCRUBBER_DRAGGED_SIZE_DP);
if (timebarAttrs != null) {
TypedArray a =
- context.getTheme().obtainStyledAttributes(timebarAttrs, R.styleable.DefaultTimeBar, 0, 0);
+ context
+ .getTheme()
+ .obtainStyledAttributes(
+ timebarAttrs, R.styleable.DefaultTimeBar, defStyleAttr, defStyleRes);
try {
scrubberDrawable = a.getDrawable(R.styleable.DefaultTimeBar_scrubber_drawable);
if (scrubberDrawable != null) {
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 9ce0b6aed9..ed2bad6eeb 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
@@ -570,7 +570,8 @@ public class StyledPlayerControlView extends FrameLayout {
} else if (timeBarPlaceholder != null) {
// Propagate attrs as timebarAttrs so that DefaultTimeBar's custom attributes are transferred,
// but standard attributes (e.g. background) are not.
- DefaultTimeBar defaultTimeBar = new DefaultTimeBar(context, null, 0, playbackAttrs);
+ DefaultTimeBar defaultTimeBar =
+ new DefaultTimeBar(context, null, 0, playbackAttrs, R.style.ExoStyledControls_TimeBar);
defaultTimeBar.setId(R.id.exo_progress);
defaultTimeBar.setLayoutParams(timeBarPlaceholder.getLayoutParams());
ViewGroup parent = ((ViewGroup) timeBarPlaceholder.getParent());
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 92a80aecd5..9f035c6241 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
@@ -125,8 +125,13 @@ import java.util.List;
}
Resources resources = styledPlayerControlView.getResources();
- float progressBarHeight = resources.getDimension(R.dimen.exo_custom_progress_thumb_size);
- float bottomBarHeight = resources.getDimension(R.dimen.exo_bottom_bar_height);
+ float bottomBarHeight =
+ resources.getDimension(R.dimen.exo_bottom_bar_height)
+ - resources.getDimension(R.dimen.exo_styled_progress_bar_height);
+ float progressBarHeight =
+ resources.getDimension(R.dimen.exo_styled_progress_margin_bottom)
+ + resources.getDimension(R.dimen.exo_styled_progress_layout_height)
+ - bottomBarHeight;
ValueAnimator fadeOutAnimator = ValueAnimator.ofFloat(1.0f, 0.0f);
fadeOutAnimator.setInterpolator(new LinearInterpolator());
@@ -590,7 +595,7 @@ import java.util.List;
int timeBarMarginBottom =
styledPlayerControlView
.getResources()
- .getDimensionPixelSize(R.dimen.exo_custom_progress_margin_bottom);
+ .getDimensionPixelSize(R.dimen.exo_styled_progress_margin_bottom);
timeBarParams.bottomMargin = (isMinimalMode ? 0 : timeBarMarginBottom);
timeBar.setLayoutParams(timeBarParams);
if (timeBar instanceof DefaultTimeBar
diff --git a/library/ui/src/main/res/drawable/exo_progress.xml b/library/ui/src/main/res/drawable/exo_progress.xml
deleted file mode 100644
index 2ba05326f0..0000000000
--- a/library/ui/src/main/res/drawable/exo_progress.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
- -
-
-
-
-
- -
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
diff --git a/library/ui/src/main/res/drawable/exo_progress_thumb.xml b/library/ui/src/main/res/drawable/exo_progress_thumb.xml
deleted file mode 100644
index e61a015f7d..0000000000
--- a/library/ui/src/main/res/drawable/exo_progress_thumb.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
-
-
-
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 3fb8b98ce5..8cf62050ed 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
@@ -123,15 +123,14 @@
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_gravity="bottom|end"
- android:layout_marginBottom="@dimen/exo_custom_progress_thumb_size"
+ android:layout_marginBottom="@dimen/exo_styled_progress_layout_height"
android:visibility="invisible">
-
+ android:layout_marginBottom="@dimen/exo_styled_progress_margin_bottom"/>
diff --git a/library/ui/src/main/res/values/dimens.xml b/library/ui/src/main/res/values/dimens.xml
index d9af3819f9..93bfd8828d 100644
--- a/library/ui/src/main/res/values/dimens.xml
+++ b/library/ui/src/main/res/values/dimens.xml
@@ -35,11 +35,14 @@
12dp
12dp
- 2dp
- 24dp
- 56dp
+ 2dp
+ 10dp
+ 14dp
+ 14dp
+ 14dp
+ 52dp
- 70dp
+ 60dp
4dp
10dp
diff --git a/library/ui/src/main/res/values/styles.xml b/library/ui/src/main/res/values/styles.xml
index 03afddfdc5..38daccb377 100644
--- a/library/ui/src/main/res/values/styles.xml
+++ b/library/ui/src/main/res/values/styles.xml
@@ -185,4 +185,11 @@
- @string/exo_controls_settings_description
+