diff options
author | ByteHamster <ByteHamster@users.noreply.github.com> | 2021-07-24 17:22:42 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-07-24 17:22:42 +0200 |
commit | da1059e6f6d25114cb2c72af67ed4ffe0f972267 (patch) | |
tree | 9ba9e4e59fe28c41667cc45b14dd7d3cbae2e206 /app/src/main/java/de/danoeh | |
parent | dc3e58a18896d24d876dd004cd98243d9b6dec0d (diff) | |
parent | 508cfc24c2a93fa0bff42704976e52c6066724eb (diff) | |
download | AntennaPod-da1059e6f6d25114cb2c72af67ed4ffe0f972267.zip |
Merge pull request #5294 from ByteHamster/speed-dialog-single-click
Show speed dialog on single click
Diffstat (limited to 'app/src/main/java/de/danoeh')
-rw-r--r-- | app/src/main/java/de/danoeh/antennapod/dialog/VariableSpeedDialog.java | 2 | ||||
-rw-r--r-- | app/src/main/java/de/danoeh/antennapod/fragment/AudioPlayerFragment.java | 39 |
2 files changed, 2 insertions, 39 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/dialog/VariableSpeedDialog.java b/app/src/main/java/de/danoeh/antennapod/dialog/VariableSpeedDialog.java index c6927c69f..6011872cf 100644 --- a/app/src/main/java/de/danoeh/antennapod/dialog/VariableSpeedDialog.java +++ b/app/src/main/java/de/danoeh/antennapod/dialog/VariableSpeedDialog.java @@ -131,8 +131,8 @@ public class VariableSpeedDialog extends DialogFragment { }); holder.chip.setOnClickListener(v -> { if (controller != null) { + dismiss(); controller.setPlaybackSpeed(speed); - notifyDataSetChanged(); } }); } diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/AudioPlayerFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/AudioPlayerFragment.java index 21a1d2039..ca6d28d67 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/AudioPlayerFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/AudioPlayerFragment.java @@ -75,7 +75,6 @@ public class AudioPlayerFragment extends Fragment implements public static final int POS_COVER = 0; public static final int POS_DESCRIPTION = 1; private static final int NUM_CONTENT_FRAGMENTS = 2; - private static final float EPSILON = 0.001f; PlaybackSpeedIndicatorView butPlaybackSpeed; TextView txtvPlaybackSpeed; @@ -136,7 +135,7 @@ public class AudioPlayerFragment extends Fragment implements setupLengthTextView(); setupControlButtons(); - setupPlaybackSpeedButton(); + butPlaybackSpeed.setOnClickListener(v -> new VariableSpeedDialog().show(getChildFragmentManager(), null)); sbPosition.setOnSeekBarChangeListener(this); pager = root.findViewById(R.id.pager); @@ -244,40 +243,6 @@ public class AudioPlayerFragment extends Fragment implements }); } - private void setupPlaybackSpeedButton() { - butPlaybackSpeed.setOnClickListener(v -> { - if (controller == null) { - return; - } - List<Float> availableSpeeds = UserPreferences.getPlaybackSpeedArray(); - float currentSpeed = controller.getCurrentPlaybackSpeedMultiplier(); - - int newSpeedIndex = 0; - while (newSpeedIndex < availableSpeeds.size() - && availableSpeeds.get(newSpeedIndex) < currentSpeed + EPSILON) { - newSpeedIndex++; - } - - float newSpeed; - if (availableSpeeds.size() == 0) { - newSpeed = 1.0f; - } else if (newSpeedIndex == availableSpeeds.size()) { - newSpeed = availableSpeeds.get(0); - } else { - newSpeed = availableSpeeds.get(newSpeedIndex); - } - - controller.setPlaybackSpeed(newSpeed); - loadMediaInfo(); - }); - butPlaybackSpeed.setOnLongClickListener(v -> { - new VariableSpeedDialog().show(getChildFragmentManager(), null); - return true; - }); - butPlaybackSpeed.setVisibility(View.VISIBLE); - txtvPlaybackSpeed.setVisibility(View.VISIBLE); - } - protected void updatePlaybackSpeedButton(Playable media) { if (butPlaybackSpeed == null || controller == null) { return; @@ -286,8 +251,6 @@ public class AudioPlayerFragment extends Fragment implements String speedStr = new DecimalFormat("0.00").format(speed); txtvPlaybackSpeed.setText(speedStr); butPlaybackSpeed.setSpeed(speed); - butPlaybackSpeed.setVisibility(View.VISIBLE); - txtvPlaybackSpeed.setVisibility(View.VISIBLE); } private void loadMediaInfo() { |