diff --git a/library/ui/src/main/java/com/google/android/exoplayer2/ui/PlayerControlView.java b/library/ui/src/main/java/com/google/android/exoplayer2/ui/PlayerControlView.java
index 73bb98a1a0..e35169dd71 100644
--- a/library/ui/src/main/java/com/google/android/exoplayer2/ui/PlayerControlView.java
+++ b/library/ui/src/main/java/com/google/android/exoplayer2/ui/PlayerControlView.java
@@ -238,7 +238,7 @@ public class PlayerControlView extends FrameLayout {
private final View fastForwardButton;
private final View rewindButton;
private final ImageView repeatToggleButton;
- private final View shuffleButton;
+ private final ImageView shuffleButton;
private final View vrButton;
private final TextView durationView;
private final TextView positionView;
@@ -256,6 +256,8 @@ public class PlayerControlView extends FrameLayout {
private final String repeatOffButtonContentDescription;
private final String repeatOneButtonContentDescription;
private final String repeatAllButtonContentDescription;
+ private final Drawable shuffleOnButtonDrawable;
+ private final Drawable shuffleOffButtonDrawable;
@Nullable private Player player;
private com.google.android.exoplayer2.ControlDispatcher controlDispatcher;
@@ -407,6 +409,8 @@ public class PlayerControlView extends FrameLayout {
repeatOffButtonDrawable = resources.getDrawable(R.drawable.exo_controls_repeat_off);
repeatOneButtonDrawable = resources.getDrawable(R.drawable.exo_controls_repeat_one);
repeatAllButtonDrawable = resources.getDrawable(R.drawable.exo_controls_repeat_all);
+ shuffleOnButtonDrawable = resources.getDrawable(R.drawable.exo_controls_shuffle_on);
+ shuffleOffButtonDrawable = resources.getDrawable(R.drawable.exo_controls_shuffle_off);
repeatOffButtonContentDescription =
resources.getString(R.string.exo_controls_repeat_off_description);
repeatOneButtonContentDescription =
@@ -815,10 +819,11 @@ public class PlayerControlView extends FrameLayout {
shuffleButton.setVisibility(GONE);
} else if (player == null) {
setButtonEnabled(false, shuffleButton);
+ shuffleButton.setImageDrawable(shuffleOffButtonDrawable);
} else {
- shuffleButton.setAlpha(player.getShuffleModeEnabled() ? 1f : 0.3f);
- shuffleButton.setEnabled(true);
- shuffleButton.setVisibility(VISIBLE);
+ setButtonEnabled(true, shuffleButton);
+ shuffleButton.setImageDrawable(
+ player.getShuffleModeEnabled() ? shuffleOnButtonDrawable : shuffleOffButtonDrawable);
}
}
diff --git a/library/ui/src/main/res/drawable-anydpi-v21/exo_controls_shuffle_off.xml b/library/ui/src/main/res/drawable-anydpi-v21/exo_controls_shuffle_off.xml
new file mode 100644
index 0000000000..283ce30c3c
--- /dev/null
+++ b/library/ui/src/main/res/drawable-anydpi-v21/exo_controls_shuffle_off.xml
@@ -0,0 +1,26 @@
+
+
+
+
+
diff --git a/library/ui/src/main/res/drawable-anydpi-v21/exo_controls_shuffle.xml b/library/ui/src/main/res/drawable-anydpi-v21/exo_controls_shuffle_on.xml
similarity index 100%
rename from library/ui/src/main/res/drawable-anydpi-v21/exo_controls_shuffle.xml
rename to library/ui/src/main/res/drawable-anydpi-v21/exo_controls_shuffle_on.xml
diff --git a/library/ui/src/main/res/drawable-hdpi/exo_controls_shuffle_off.png b/library/ui/src/main/res/drawable-hdpi/exo_controls_shuffle_off.png
new file mode 100644
index 0000000000..b693422db7
Binary files /dev/null and b/library/ui/src/main/res/drawable-hdpi/exo_controls_shuffle_off.png differ
diff --git a/library/ui/src/main/res/drawable-hdpi/exo_controls_shuffle.png b/library/ui/src/main/res/drawable-hdpi/exo_controls_shuffle_on.png
similarity index 100%
rename from library/ui/src/main/res/drawable-hdpi/exo_controls_shuffle.png
rename to library/ui/src/main/res/drawable-hdpi/exo_controls_shuffle_on.png
diff --git a/library/ui/src/main/res/drawable-ldpi/exo_controls_shuffle_off.png b/library/ui/src/main/res/drawable-ldpi/exo_controls_shuffle_off.png
new file mode 100644
index 0000000000..2353dd4289
Binary files /dev/null and b/library/ui/src/main/res/drawable-ldpi/exo_controls_shuffle_off.png differ
diff --git a/library/ui/src/main/res/drawable-ldpi/exo_controls_shuffle.png b/library/ui/src/main/res/drawable-ldpi/exo_controls_shuffle_on.png
similarity index 100%
rename from library/ui/src/main/res/drawable-ldpi/exo_controls_shuffle.png
rename to library/ui/src/main/res/drawable-ldpi/exo_controls_shuffle_on.png
diff --git a/library/ui/src/main/res/drawable-mdpi/exo_controls_shuffle_off.png b/library/ui/src/main/res/drawable-mdpi/exo_controls_shuffle_off.png
new file mode 100644
index 0000000000..a55d716cce
Binary files /dev/null and b/library/ui/src/main/res/drawable-mdpi/exo_controls_shuffle_off.png differ
diff --git a/library/ui/src/main/res/drawable-mdpi/exo_controls_shuffle.png b/library/ui/src/main/res/drawable-mdpi/exo_controls_shuffle_on.png
similarity index 100%
rename from library/ui/src/main/res/drawable-mdpi/exo_controls_shuffle.png
rename to library/ui/src/main/res/drawable-mdpi/exo_controls_shuffle_on.png
diff --git a/library/ui/src/main/res/drawable-xhdpi/exo_controls_shuffle_off.png b/library/ui/src/main/res/drawable-xhdpi/exo_controls_shuffle_off.png
new file mode 100644
index 0000000000..2b67cabf5a
Binary files /dev/null and b/library/ui/src/main/res/drawable-xhdpi/exo_controls_shuffle_off.png differ
diff --git a/library/ui/src/main/res/drawable-xhdpi/exo_controls_shuffle.png b/library/ui/src/main/res/drawable-xhdpi/exo_controls_shuffle_on.png
similarity index 100%
rename from library/ui/src/main/res/drawable-xhdpi/exo_controls_shuffle.png
rename to library/ui/src/main/res/drawable-xhdpi/exo_controls_shuffle_on.png
diff --git a/library/ui/src/main/res/drawable-xxhdpi/exo_controls_shuffle_off.png b/library/ui/src/main/res/drawable-xxhdpi/exo_controls_shuffle_off.png
new file mode 100644
index 0000000000..22209d1f88
Binary files /dev/null and b/library/ui/src/main/res/drawable-xxhdpi/exo_controls_shuffle_off.png differ
diff --git a/library/ui/src/main/res/drawable-xxhdpi/exo_controls_shuffle.png b/library/ui/src/main/res/drawable-xxhdpi/exo_controls_shuffle_on.png
similarity index 100%
rename from library/ui/src/main/res/drawable-xxhdpi/exo_controls_shuffle.png
rename to library/ui/src/main/res/drawable-xxhdpi/exo_controls_shuffle_on.png
diff --git a/library/ui/src/main/res/values/styles.xml b/library/ui/src/main/res/values/styles.xml
index 89d7a2fc8e..e73524815a 100644
--- a/library/ui/src/main/res/values/styles.xml
+++ b/library/ui/src/main/res/values/styles.xml
@@ -52,7 +52,7 @@