summaryrefslogtreecommitdiff
path: root/app/src/main/java/de/danoeh/antennapod/fragment/preferences/PlaybackPreferencesFragment.java
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/java/de/danoeh/antennapod/fragment/preferences/PlaybackPreferencesFragment.java')
-rw-r--r--app/src/main/java/de/danoeh/antennapod/fragment/preferences/PlaybackPreferencesFragment.java128
1 files changed, 0 insertions, 128 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/preferences/PlaybackPreferencesFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/preferences/PlaybackPreferencesFragment.java
deleted file mode 100644
index dcbd96d5b..000000000
--- a/app/src/main/java/de/danoeh/antennapod/fragment/preferences/PlaybackPreferencesFragment.java
+++ /dev/null
@@ -1,128 +0,0 @@
-package de.danoeh.antennapod.fragment.preferences;
-
-import android.app.Activity;
-import android.content.res.Resources;
-import android.os.Build;
-import android.os.Bundle;
-import androidx.annotation.NonNull;
-import androidx.collection.ArrayMap;
-import androidx.preference.ListPreference;
-import androidx.preference.Preference;
-import androidx.preference.PreferenceFragmentCompat;
-import de.danoeh.antennapod.R;
-import de.danoeh.antennapod.activity.PreferenceActivity;
-import de.danoeh.antennapod.event.UnreadItemsUpdateEvent;
-import de.danoeh.antennapod.storage.preferences.UsageStatistics;
-import de.danoeh.antennapod.storage.preferences.UserPreferences;
-import de.danoeh.antennapod.dialog.SkipPreferenceDialog;
-import de.danoeh.antennapod.dialog.VariableSpeedDialog;
-import java.util.Map;
-import org.greenrobot.eventbus.EventBus;
-
-public class PlaybackPreferencesFragment extends PreferenceFragmentCompat {
- private static final String PREF_PLAYBACK_SPEED_LAUNCHER = "prefPlaybackSpeedLauncher";
- private static final String PREF_PLAYBACK_REWIND_DELTA_LAUNCHER = "prefPlaybackRewindDeltaLauncher";
- private static final String PREF_PLAYBACK_FAST_FORWARD_DELTA_LAUNCHER = "prefPlaybackFastForwardDeltaLauncher";
- private static final String PREF_PLAYBACK_PREFER_STREAMING = "prefStreamOverDownload";
-
- @Override
- public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
- addPreferencesFromResource(R.xml.preferences_playback);
-
- setupPlaybackScreen();
- buildSmartMarkAsPlayedPreference();
- }
-
- @Override
- public void onStart() {
- super.onStart();
- ((PreferenceActivity) getActivity()).getSupportActionBar().setTitle(R.string.playback_pref);
- }
-
- private void setupPlaybackScreen() {
- final Activity activity = getActivity();
-
- findPreference(PREF_PLAYBACK_SPEED_LAUNCHER).setOnPreferenceClickListener(preference -> {
- new VariableSpeedDialog().show(getChildFragmentManager(), null);
- return true;
- });
- findPreference(PREF_PLAYBACK_REWIND_DELTA_LAUNCHER).setOnPreferenceClickListener(preference -> {
- SkipPreferenceDialog.showSkipPreference(activity, SkipPreferenceDialog.SkipDirection.SKIP_REWIND, null);
- return true;
- });
- findPreference(PREF_PLAYBACK_FAST_FORWARD_DELTA_LAUNCHER).setOnPreferenceClickListener(preference -> {
- SkipPreferenceDialog.showSkipPreference(activity, SkipPreferenceDialog.SkipDirection.SKIP_FORWARD, null);
- return true;
- });
- findPreference(PREF_PLAYBACK_PREFER_STREAMING).setOnPreferenceChangeListener((preference, newValue) -> {
- // Update all visible lists to reflect new streaming action button
- EventBus.getDefault().post(new UnreadItemsUpdateEvent());
- // User consciously decided whether to prefer the streaming button, disable suggestion to change that
- UsageStatistics.doNotAskAgain(UsageStatistics.ACTION_STREAM);
- return true;
- });
- if (Build.VERSION.SDK_INT >= 31) {
- findPreference(UserPreferences.PREF_UNPAUSE_ON_HEADSET_RECONNECT).setVisible(false);
- findPreference(UserPreferences.PREF_UNPAUSE_ON_BLUETOOTH_RECONNECT).setVisible(false);
- }
-
- buildEnqueueLocationPreference();
- }
-
- private void buildEnqueueLocationPreference() {
- final Resources res = requireActivity().getResources();
- final Map<String, String> options = new ArrayMap<>();
- {
- String[] keys = res.getStringArray(R.array.enqueue_location_values);
- String[] values = res.getStringArray(R.array.enqueue_location_options);
- for (int i = 0; i < keys.length; i++) {
- options.put(keys[i], values[i]);
- }
- }
-
- ListPreference pref = requirePreference(UserPreferences.PREF_ENQUEUE_LOCATION);
- pref.setSummary(res.getString(R.string.pref_enqueue_location_sum, options.get(pref.getValue())));
-
- pref.setOnPreferenceChangeListener((preference, newValue) -> {
- if (!(newValue instanceof String)) {
- return false;
- }
- String newValStr = (String)newValue;
- pref.setSummary(res.getString(R.string.pref_enqueue_location_sum, options.get(newValStr)));
- return true;
- });
- }
-
- @NonNull
- private <T extends Preference> T requirePreference(@NonNull CharSequence key) {
- // Possibly put it to a common method in abstract base class
- T result = findPreference(key);
- if (result == null) {
- throw new IllegalArgumentException("Preference with key '" + key + "' is not found");
-
- }
- return result;
- }
-
- private void buildSmartMarkAsPlayedPreference() {
- final Resources res = getActivity().getResources();
-
- ListPreference pref = findPreference(UserPreferences.PREF_SMART_MARK_AS_PLAYED_SECS);
- String[] values = res.getStringArray(R.array.smart_mark_as_played_values);
- String[] entries = new String[values.length];
- for (int x = 0; x < values.length; x++) {
- if(x == 0) {
- entries[x] = res.getString(R.string.pref_smart_mark_as_played_disabled);
- } else {
- int v = Integer.parseInt(values[x]);
- if(v < 60) {
- entries[x] = res.getQuantityString(R.plurals.time_seconds_quantified, v, v);
- } else {
- v /= 60;
- entries[x] = res.getQuantityString(R.plurals.time_minutes_quantified, v, v);
- }
- }
- }
- pref.setEntries(entries);
- }
-}