summaryrefslogtreecommitdiff
path: root/app/src/main/java/de/danoeh/antennapod
diff options
context:
space:
mode:
authorByteHamster <info@bytehamster.com>2021-10-24 18:28:27 +0200
committerByteHamster <info@bytehamster.com>2021-10-24 18:28:27 +0200
commit8a4b0361485a0f0953af7b13d74c13dc06bd0ca7 (patch)
tree94eda684be439f726396da8972201de54af18fa2 /app/src/main/java/de/danoeh/antennapod
parentdef0211358c003f4bc262f6a7aefcbf6ccbe1488 (diff)
downloadAntennaPod-8a4b0361485a0f0953af7b13d74c13dc06bd0ca7.zip
Convert buffering update to event
Diffstat (limited to 'app/src/main/java/de/danoeh/antennapod')
-rw-r--r--app/src/main/java/de/danoeh/antennapod/activity/VideoplayerActivity.java28
-rw-r--r--app/src/main/java/de/danoeh/antennapod/fragment/AudioPlayerFragment.java34
2 files changed, 28 insertions, 34 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/activity/VideoplayerActivity.java b/app/src/main/java/de/danoeh/antennapod/activity/VideoplayerActivity.java
index b5d8caa0a..dba884fb7 100644
--- a/app/src/main/java/de/danoeh/antennapod/activity/VideoplayerActivity.java
+++ b/app/src/main/java/de/danoeh/antennapod/activity/VideoplayerActivity.java
@@ -36,6 +36,7 @@ import androidx.core.view.WindowCompat;
import androidx.interpolator.view.animation.FastOutSlowInInterpolator;
import com.bumptech.glide.Glide;
import de.danoeh.antennapod.R;
+import de.danoeh.antennapod.core.event.playback.BufferUpdateEvent;
import de.danoeh.antennapod.core.event.playback.PlaybackPositionEvent;
import de.danoeh.antennapod.core.event.PlayerErrorEvent;
import de.danoeh.antennapod.core.event.playback.PlaybackServiceEvent;
@@ -193,21 +194,6 @@ public class VideoplayerActivity extends CastEnabledActivity implements SeekBar.
}
@Override
- public void onBufferStart() {
- viewBinding.progressBar.setVisibility(View.VISIBLE);
- }
-
- @Override
- public void onBufferEnd() {
- viewBinding.progressBar.setVisibility(View.INVISIBLE);
- }
-
- @Override
- public void onBufferUpdate(float progress) {
- viewBinding.sbPosition.setSecondaryProgress((int) (progress * viewBinding.sbPosition.getMax()));
- }
-
- @Override
public void onReloadNotification(int code) {
VideoplayerActivity.this.onReloadNotification(code);
}
@@ -252,6 +238,18 @@ public class VideoplayerActivity extends CastEnabledActivity implements SeekBar.
};
}
+ @Subscribe(threadMode = ThreadMode.MAIN)
+ @SuppressWarnings("unused")
+ public void bufferUpdate(BufferUpdateEvent event) {
+ if (event.hasStarted()) {
+ viewBinding.progressBar.setVisibility(View.VISIBLE);
+ } else if (event.hasEnded()) {
+ viewBinding.progressBar.setVisibility(View.INVISIBLE);
+ } else {
+ viewBinding.sbPosition.setSecondaryProgress((int) (event.getProgress() * viewBinding.sbPosition.getMax()));
+ }
+ }
+
protected void loadMediaInfo() {
Log.d(TAG, "loadMediaInfo()");
if (controller == null || controller.getMedia() == null) {
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 5bf84c169..469a48a39 100644
--- a/app/src/main/java/de/danoeh/antennapod/fragment/AudioPlayerFragment.java
+++ b/app/src/main/java/de/danoeh/antennapod/fragment/AudioPlayerFragment.java
@@ -25,6 +25,7 @@ import androidx.viewpager2.widget.ViewPager2;
import com.google.android.material.bottomsheet.BottomSheetBehavior;
import com.google.android.material.snackbar.Snackbar;
+import de.danoeh.antennapod.core.event.playback.BufferUpdateEvent;
import de.danoeh.antennapod.core.event.playback.PlaybackServiceEvent;
import de.danoeh.antennapod.core.event.PlayerErrorEvent;
import org.greenrobot.eventbus.EventBus;
@@ -282,25 +283,6 @@ public class AudioPlayerFragment extends Fragment implements
private PlaybackController newPlaybackController() {
return new PlaybackController(getActivity()) {
@Override
- public void onBufferStart() {
- progressIndicator.setVisibility(View.VISIBLE);
- }
-
- @Override
- public void onBufferEnd() {
- progressIndicator.setVisibility(View.GONE);
- }
-
- @Override
- public void onBufferUpdate(float progress) {
- if (isStreaming()) {
- sbPosition.setSecondaryProgress((int) (progress * sbPosition.getMax()));
- } else {
- sbPosition.setSecondaryProgress(0);
- }
- }
-
- @Override
public void onSleepTimerUpdate() {
AudioPlayerFragment.this.loadMediaInfo(false);
}
@@ -368,6 +350,20 @@ public class AudioPlayerFragment extends Fragment implements
}
@Subscribe(threadMode = ThreadMode.MAIN)
+ @SuppressWarnings("unused")
+ public void bufferUpdate(BufferUpdateEvent event) {
+ if (event.hasStarted()) {
+ progressIndicator.setVisibility(View.VISIBLE);
+ } else if (event.hasEnded()) {
+ progressIndicator.setVisibility(View.GONE);
+ } else if (controller != null && controller.isStreaming()) {
+ sbPosition.setSecondaryProgress((int) (event.getProgress() * sbPosition.getMax()));
+ } else {
+ sbPosition.setSecondaryProgress(0);
+ }
+ }
+
+ @Subscribe(threadMode = ThreadMode.MAIN)
public void updatePosition(PlaybackPositionEvent event) {
if (controller == null || txtvPosition == null || txtvLength == null || sbPosition == null) {
return;