summaryrefslogtreecommitdiff
path: root/app/src/main/java
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/java')
-rw-r--r--app/src/main/java/de/danoeh/antennapod/activity/MediaplayerActivity.java19
-rw-r--r--app/src/main/java/de/danoeh/antennapod/dialog/VariableSpeedDialog.java11
-rw-r--r--app/src/main/java/de/danoeh/antennapod/fragment/AudioPlayerFragment.java28
-rw-r--r--app/src/main/java/de/danoeh/antennapod/fragment/ChaptersFragment.java2
-rw-r--r--app/src/main/java/de/danoeh/antennapod/fragment/ExternalPlayerFragment.java13
-rw-r--r--app/src/main/java/de/danoeh/antennapod/view/PlaybackSpeedSeekBar.java6
6 files changed, 25 insertions, 54 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 a5bdb5554..4b5822ac7 100644
--- a/app/src/main/java/de/danoeh/antennapod/activity/MediaplayerActivity.java
+++ b/app/src/main/java/de/danoeh/antennapod/activity/MediaplayerActivity.java
@@ -17,6 +17,7 @@ import android.widget.TextView;
import com.bumptech.glide.Glide;
+import de.danoeh.antennapod.core.event.ServiceEvent;
import de.danoeh.antennapod.view.PlayButton;
import org.apache.commons.lang3.StringUtils;
import org.greenrobot.eventbus.EventBus;
@@ -139,11 +140,6 @@ public abstract class MediaplayerActivity extends CastEnabledActivity implements
}
@Override
- public void onShutdownNotification() {
- finish();
- }
-
- @Override
public void onPlaybackEnd() {
finish();
}
@@ -158,11 +154,6 @@ public abstract class MediaplayerActivity extends CastEnabledActivity implements
super.setScreenOn(enable);
MediaplayerActivity.this.setScreenOn(enable);
}
-
- @Override
- public void onSetSpeedAbilityChanged() {
- MediaplayerActivity.this.onSetSpeedAbilityChanged();
- }
};
}
@@ -171,9 +162,11 @@ public abstract class MediaplayerActivity extends CastEnabledActivity implements
onPositionObserverUpdate();
}
- private void onSetSpeedAbilityChanged() {
- Log.d(TAG, "onSetSpeedAbilityChanged()");
- updatePlaybackSpeedButton();
+ @Subscribe(threadMode = ThreadMode.MAIN)
+ public void onPlaybackServiceChanged(ServiceEvent event) {
+ if (event.action == ServiceEvent.Action.SERVICE_SHUT_DOWN) {
+ finish();
+ }
}
private void onPlaybackSpeedChange() {
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 cd6f006ac..c6927c69f 100644
--- a/app/src/main/java/de/danoeh/antennapod/dialog/VariableSpeedDialog.java
+++ b/app/src/main/java/de/danoeh/antennapod/dialog/VariableSpeedDialog.java
@@ -1,7 +1,6 @@
package de.danoeh.antennapod.dialog;
import android.app.Dialog;
-import android.content.Context;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
@@ -41,16 +40,6 @@ public class VariableSpeedDialog extends DialogFragment {
selectedSpeeds = new ArrayList<>(UserPreferences.getPlaybackSpeedArray());
}
- public static void showGetPluginDialog(final Context context) {
- AlertDialog.Builder builder = new AlertDialog.Builder(context);
- builder.setTitle(R.string.no_playback_plugin_title);
- builder.setMessage(R.string.no_playback_plugin_or_sonic_msg);
- builder.setPositiveButton(R.string.enable_sonic, (dialog, which) ->
- UserPreferences.enableSonic());
- builder.setNeutralButton(R.string.close_label, null);
- builder.show();
- }
-
@Override
public void onStart() {
super.onStart();
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 d54ea566b..64cbaa023 100644
--- a/app/src/main/java/de/danoeh/antennapod/fragment/AudioPlayerFragment.java
+++ b/app/src/main/java/de/danoeh/antennapod/fragment/AudioPlayerFragment.java
@@ -38,6 +38,7 @@ import de.danoeh.antennapod.activity.CastEnabledActivity;
import de.danoeh.antennapod.activity.MainActivity;
import de.danoeh.antennapod.core.event.FavoritesEvent;
import de.danoeh.antennapod.core.event.PlaybackPositionEvent;
+import de.danoeh.antennapod.core.event.ServiceEvent;
import de.danoeh.antennapod.model.feed.Chapter;
import de.danoeh.antennapod.core.event.UnreadItemsUpdateEvent;
import de.danoeh.antennapod.model.feed.FeedItem;
@@ -223,6 +224,13 @@ public class AudioPlayerFragment extends Fragment implements
controller.getDuration()));
}
+ @Subscribe(threadMode = ThreadMode.MAIN)
+ public void onPlaybackServiceChanged(ServiceEvent event) {
+ if (event.action == ServiceEvent.Action.SERVICE_SHUT_DOWN) {
+ ((MainActivity) getActivity()).getBottomSheet().setState(BottomSheetBehavior.STATE_COLLAPSED);
+ }
+ }
+
private void setupLengthTextView() {
showTimeLeft = UserPreferences.shouldShowRemainingTime();
txtvLength.setOnClickListener(v -> {
@@ -241,10 +249,6 @@ public class AudioPlayerFragment extends Fragment implements
if (controller == null) {
return;
}
- if (!controller.canSetPlaybackSpeed()) {
- VariableSpeedDialog.showGetPluginDialog(getContext());
- return;
- }
List<Float> availableSpeeds = UserPreferences.getPlaybackSpeedArray();
float currentSpeed = controller.getCurrentPlaybackSpeedMultiplier();
@@ -278,14 +282,10 @@ public class AudioPlayerFragment extends Fragment implements
if (butPlaybackSpeed == null || controller == null) {
return;
}
- float speed = 1.0f;
- if (controller.canSetPlaybackSpeed()) {
- speed = PlaybackSpeedUtils.getCurrentPlaybackSpeed(media);
- }
+ float speed = PlaybackSpeedUtils.getCurrentPlaybackSpeed(media);
String speedStr = new DecimalFormat("0.00").format(speed);
txtvPlaybackSpeed.setText(speedStr);
butPlaybackSpeed.setSpeed(speed);
- butPlaybackSpeed.setAlpha(controller.canSetPlaybackSpeed() ? 1.0f : 0.5f);
butPlaybackSpeed.setVisibility(View.VISIBLE);
txtvPlaybackSpeed.setVisibility(View.VISIBLE);
}
@@ -364,11 +364,6 @@ public class AudioPlayerFragment extends Fragment implements
}
@Override
- public void onShutdownNotification() {
- ((MainActivity) getActivity()).getBottomSheet().setState(BottomSheetBehavior.STATE_COLLAPSED);
- }
-
- @Override
public void onPlaybackEnd() {
((MainActivity) getActivity()).getBottomSheet().setState(BottomSheetBehavior.STATE_COLLAPSED);
}
@@ -377,11 +372,6 @@ public class AudioPlayerFragment extends Fragment implements
public void onPlaybackSpeedChange() {
updatePlaybackSpeedButton(getMedia());
}
-
- @Override
- public void onSetSpeedAbilityChanged() {
- updatePlaybackSpeedButton(getMedia());
- }
};
}
diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/ChaptersFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/ChaptersFragment.java
index 6a8d648ad..de14f220e 100644
--- a/app/src/main/java/de/danoeh/antennapod/fragment/ChaptersFragment.java
+++ b/app/src/main/java/de/danoeh/antennapod/fragment/ChaptersFragment.java
@@ -70,7 +70,7 @@ public class ChaptersFragment extends AppCompatDialogFragment {
controller.playPause();
}
Chapter chapter = adapter.getItem(pos);
- controller.seekToChapter(chapter);
+ controller.seekTo((int) chapter.getStart());
updateChapterSelection(pos);
});
recyclerView.setAdapter(adapter);
diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/ExternalPlayerFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/ExternalPlayerFragment.java
index fe7787bc9..370c4c301 100644
--- a/app/src/main/java/de/danoeh/antennapod/fragment/ExternalPlayerFragment.java
+++ b/app/src/main/java/de/danoeh/antennapod/fragment/ExternalPlayerFragment.java
@@ -16,6 +16,7 @@ import com.google.android.material.bottomsheet.BottomSheetBehavior;
import de.danoeh.antennapod.R;
import de.danoeh.antennapod.activity.MainActivity;
import de.danoeh.antennapod.core.event.PlaybackPositionEvent;
+import de.danoeh.antennapod.core.event.ServiceEvent;
import de.danoeh.antennapod.model.playback.MediaType;
import de.danoeh.antennapod.core.feed.util.ImageResourceUtils;
import de.danoeh.antennapod.core.glide.ApGlideSettings;
@@ -113,11 +114,6 @@ public class ExternalPlayerFragment extends Fragment {
}
@Override
- public void onShutdownNotification() {
- ((MainActivity) getActivity()).setPlayerVisible(false);
- }
-
- @Override
public void onPlaybackEnd() {
((MainActivity) getActivity()).setPlayerVisible(false);
}
@@ -148,6 +144,13 @@ public class ExternalPlayerFragment extends Fragment {
onPositionObserverUpdate();
}
+ @Subscribe(threadMode = ThreadMode.MAIN)
+ public void onPlaybackServiceChanged(ServiceEvent event) {
+ if (event.action == ServiceEvent.Action.SERVICE_SHUT_DOWN) {
+ ((MainActivity) getActivity()).setPlayerVisible(false);
+ }
+ }
+
@Override
public void onDestroy() {
super.onDestroy();
diff --git a/app/src/main/java/de/danoeh/antennapod/view/PlaybackSpeedSeekBar.java b/app/src/main/java/de/danoeh/antennapod/view/PlaybackSpeedSeekBar.java
index 47797e4a4..c75164a74 100644
--- a/app/src/main/java/de/danoeh/antennapod/view/PlaybackSpeedSeekBar.java
+++ b/app/src/main/java/de/danoeh/antennapod/view/PlaybackSpeedSeekBar.java
@@ -10,7 +10,6 @@ import androidx.annotation.Nullable;
import androidx.core.util.Consumer;
import de.danoeh.antennapod.R;
import de.danoeh.antennapod.core.util.playback.PlaybackController;
-import de.danoeh.antennapod.dialog.VariableSpeedDialog;
public class PlaybackSpeedSeekBar extends FrameLayout {
private SeekBar seekBar;
@@ -41,7 +40,7 @@ public class PlaybackSpeedSeekBar extends FrameLayout {
seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
- if (controller != null && controller.canSetPlaybackSpeed()) {
+ if (controller != null) {
float playbackSpeed = (progress + 10) / 20.0f;
controller.setPlaybackSpeed(playbackSpeed);
@@ -55,9 +54,6 @@ public class PlaybackSpeedSeekBar extends FrameLayout {
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
- if (controller != null && !controller.canSetPlaybackSpeed()) {
- VariableSpeedDialog.showGetPluginDialog(getContext());
- }
}
@Override