diff options
author | ByteHamster <info@bytehamster.com> | 2020-03-25 16:09:39 +0100 |
---|---|---|
committer | ByteHamster <info@bytehamster.com> | 2020-03-25 16:09:45 +0100 |
commit | a989db586a853852549c638d43c425a3463f901d (patch) | |
tree | c6f2a304e726ae9fa79ca5629b407204be4b2238 /app/src/main/java/de/danoeh | |
parent | 982ce61b3fd2d27f70c6b595544e7dc51f68b752 (diff) | |
download | AntennaPod-a989db586a853852549c638d43c425a3463f901d.zip |
Implemented missing PlaybackController state handling
Diffstat (limited to 'app/src/main/java/de/danoeh')
4 files changed, 28 insertions, 86 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/activity/MediaplayerActivity.java b/app/src/main/java/de/danoeh/antennapod/activity/MediaplayerActivity.java index 4e8269810..973ca6b98 100644 --- a/app/src/main/java/de/danoeh/antennapod/activity/MediaplayerActivity.java +++ b/app/src/main/java/de/danoeh/antennapod/activity/MediaplayerActivity.java @@ -138,16 +138,6 @@ public abstract class MediaplayerActivity extends CastEnabledActivity implements } @Override - public void postStatusMsg(int msg, boolean showToast) { - MediaplayerActivity.this.postStatusMsg(msg, showToast); - } - - @Override - public void clearStatusMsg() { - MediaplayerActivity.this.clearStatusMsg(); - } - - @Override public boolean loadMediaInfo() { return MediaplayerActivity.this.loadMediaInfo(); } @@ -248,12 +238,16 @@ public abstract class MediaplayerActivity extends CastEnabledActivity implements * Should be used to inform the user that the PlaybackService is currently * buffering. */ - protected abstract void onBufferStart(); + protected void onBufferStart() { + + } /** * Should be used to hide the view that was showing the 'buffering'-message. */ - protected abstract void onBufferEnd(); + protected void onBufferEnd() { + + } private void onBufferUpdate(float progress) { if (sbPosition != null) { @@ -468,10 +462,6 @@ public abstract class MediaplayerActivity extends CastEnabledActivity implements */ protected abstract void onAwaitingVideoSurface(); - protected abstract void postStatusMsg(int resId, boolean showToast); - - protected abstract void clearStatusMsg(); - void onPositionObserverUpdate() { if (controller == null || txtvPosition == null || txtvLength == null) { return; diff --git a/app/src/main/java/de/danoeh/antennapod/activity/MediaplayerInfoActivity.java b/app/src/main/java/de/danoeh/antennapod/activity/MediaplayerInfoActivity.java index 1a7631813..7e4ccbe23 100644 --- a/app/src/main/java/de/danoeh/antennapod/activity/MediaplayerInfoActivity.java +++ b/app/src/main/java/de/danoeh/antennapod/activity/MediaplayerInfoActivity.java @@ -127,24 +127,6 @@ public abstract class MediaplayerInfoActivity extends MediaplayerActivity { } @Override - protected void postStatusMsg(int resId, boolean showToast) { - if (resId == R.string.player_preparing_msg - || resId == R.string.player_seeking_msg - || resId == R.string.player_buffering_msg) { - // TODO Show progress bar here - } - if (showToast) { - Toast.makeText(this, resId, Toast.LENGTH_SHORT).show(); - } - } - - @Override - protected void clearStatusMsg() { - // TODO Hide progress bar here - } - - - @Override protected void setupGUI() { super.setupGUI(); Toolbar toolbar = findViewById(R.id.toolbar); @@ -199,16 +181,6 @@ public abstract class MediaplayerInfoActivity extends MediaplayerActivity { } } - @Override - protected void onBufferStart() { - postStatusMsg(R.string.player_buffering_msg, false); - } - - @Override - protected void onBufferEnd() { - clearStatusMsg(); - } - public PlaybackController getPlaybackController() { return controller; } 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 a1a4e0374..b8a30f994 100644 --- a/app/src/main/java/de/danoeh/antennapod/activity/VideoplayerActivity.java +++ b/app/src/main/java/de/danoeh/antennapod/activity/VideoplayerActivity.java @@ -171,20 +171,6 @@ public class VideoplayerActivity extends MediaplayerActivity { } } - @Override - protected void postStatusMsg(int resId, boolean showToast) { - if (resId == R.string.player_preparing_msg) { - progressIndicator.setVisibility(View.VISIBLE); - } else { - progressIndicator.setVisibility(View.INVISIBLE); - } - } - - @Override - protected void clearStatusMsg() { - progressIndicator.setVisibility(View.INVISIBLE); - } - private final View.OnTouchListener onVideoviewTouched = (v, event) -> { if (event.getAction() == MotionEvent.ACTION_DOWN) { if (PictureInPictureUtil.isInPictureInPictureMode(this)) { 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 c9322a3a9..5b9740154 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/AudioPlayerFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/AudioPlayerFragment.java @@ -10,9 +10,11 @@ import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; import android.widget.ImageButton; +import android.widget.ProgressBar; import android.widget.SeekBar; import android.widget.TextView; import androidx.annotation.Nullable; +import androidx.appcompat.app.AlertDialog; import androidx.appcompat.widget.Toolbar; import androidx.fragment.app.Fragment; import androidx.fragment.app.FragmentManager; @@ -33,6 +35,7 @@ import de.danoeh.antennapod.core.service.playback.PlaybackService; import de.danoeh.antennapod.core.util.Converter; import de.danoeh.antennapod.core.util.IntentUtils; import de.danoeh.antennapod.core.util.TimeSpeedConverter; +import de.danoeh.antennapod.core.util.playback.MediaPlayerError; import de.danoeh.antennapod.core.util.playback.Playable; import de.danoeh.antennapod.core.util.playback.PlaybackController; import de.danoeh.antennapod.dialog.PlaybackControlsDialog; @@ -77,6 +80,7 @@ public class AudioPlayerFragment extends Fragment implements private TextView txtvFF; private ImageButton butSkip; private Toolbar toolbar; + private ProgressBar progressIndicator; private PlaybackController controller; private boolean showTimeLeft; @@ -108,6 +112,7 @@ public class AudioPlayerFragment extends Fragment implements butFF = root.findViewById(R.id.butFF); txtvFF = root.findViewById(R.id.txtvFF); butSkip = root.findViewById(R.id.butSkip); + progressIndicator = root.findViewById(R.id.progLoading); setupLengthTextView(); setupControlButtons(); @@ -249,27 +254,32 @@ public class AudioPlayerFragment extends Fragment implements @Override public void onBufferStart() { - //MediaplayerActivity.this.onBufferStart(); + progressIndicator.setVisibility(View.VISIBLE); } @Override public void onBufferEnd() { - //MediaplayerActivity.this.onBufferEnd(); + progressIndicator.setVisibility(View.GONE); } @Override public void onBufferUpdate(float progress) { - //MediaplayerActivity.this.onBufferUpdate(progress); + sbPosition.setSecondaryProgress((int) (progress * sbPosition.getMax())); } @Override public void handleError(int code) { - //MediaplayerActivity.this.handleError(code); - } - - @Override - public void onReloadNotification(int code) { - //MediaplayerActivity.this.onReloadNotification(code); + final AlertDialog.Builder errorDialog = new AlertDialog.Builder(getContext()); + errorDialog.setTitle(R.string.error_label); + errorDialog.setMessage(MediaPlayerError.getErrorString(getContext(), code)); + errorDialog.setNeutralButton(android.R.string.ok, + (dialog, which) -> { + dialog.dismiss(); + ((MainActivity) getActivity()).getBottomSheet() + .setState(BottomSheetBehavior.STATE_COLLAPSED); + } + ); + errorDialog.create().show(); } @Override @@ -283,35 +293,20 @@ public class AudioPlayerFragment extends Fragment implements } @Override - public void postStatusMsg(int msg, boolean showToast) { - //MediaplayerActivity.this.postStatusMsg(msg, showToast); - } - - @Override - public void clearStatusMsg() { - //MediaplayerActivity.this.clearStatusMsg(); - } - - @Override public boolean loadMediaInfo() { updateUi(); return true; - }/* - - @Override - public void onServiceQueried() { - MediaplayerActivity.this.onServiceQueried(); } @Override public void onShutdownNotification() { - finish(); + ((MainActivity) getActivity()).getBottomSheet().setState(BottomSheetBehavior.STATE_COLLAPSED); } @Override public void onPlaybackEnd() { - finish(); - }*/ + ((MainActivity) getActivity()).getBottomSheet().setState(BottomSheetBehavior.STATE_COLLAPSED); + } @Override public void onPlaybackSpeedChange() { @@ -344,7 +339,6 @@ public class AudioPlayerFragment extends Fragment implements public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setRetainInstance(true); - //setHasOptionsMenu(true); } @Override |