summaryrefslogtreecommitdiff
path: root/app/src/main/java/de/danoeh/antennapod/fragment/FeedSettingsFragment.java
diff options
context:
space:
mode:
authorByteHamster <info@bytehamster.com>2021-01-02 21:17:40 +0100
committerByteHamster <info@bytehamster.com>2021-01-02 21:17:40 +0100
commitf4bbc5535cdd8210634ecb043142b8efdedaa064 (patch)
treeeb92c1f3aebdfb55afff6a3a8f06523d57efc8d7 /app/src/main/java/de/danoeh/antennapod/fragment/FeedSettingsFragment.java
parent19e427b52438f7508b97127100947f0f81e4f378 (diff)
downloadAntennaPod-f4bbc5535cdd8210634ecb043142b8efdedaa064.zip
Added basic UI for editing tags
Diffstat (limited to 'app/src/main/java/de/danoeh/antennapod/fragment/FeedSettingsFragment.java')
-rw-r--r--app/src/main/java/de/danoeh/antennapod/fragment/FeedSettingsFragment.java26
1 files changed, 26 insertions, 0 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/FeedSettingsFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/FeedSettingsFragment.java
index 568b56304..1253a8ad2 100644
--- a/app/src/main/java/de/danoeh/antennapod/fragment/FeedSettingsFragment.java
+++ b/app/src/main/java/de/danoeh/antennapod/fragment/FeedSettingsFragment.java
@@ -9,6 +9,7 @@ import android.view.View;
import android.view.ViewGroup;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
+import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.widget.Toolbar;
import androidx.fragment.app.Fragment;
import androidx.preference.ListPreference;
@@ -27,6 +28,7 @@ import de.danoeh.antennapod.core.feed.VolumeAdaptionSetting;
import de.danoeh.antennapod.core.preferences.UserPreferences;
import de.danoeh.antennapod.core.storage.DBReader;
import de.danoeh.antennapod.core.storage.DBWriter;
+import de.danoeh.antennapod.databinding.EditTextDialogBinding;
import de.danoeh.antennapod.dialog.AuthenticationDialog;
import de.danoeh.antennapod.dialog.EpisodeFilterDialog;
import de.danoeh.antennapod.dialog.FeedPreferenceSkipDialog;
@@ -39,6 +41,8 @@ import org.greenrobot.eventbus.EventBus;
import java.text.DecimalFormat;
import java.text.DecimalFormatSymbols;
+import java.util.Arrays;
+import java.util.HashSet;
import java.util.Locale;
import static de.danoeh.antennapod.core.feed.FeedPreferences.SPEED_USE_GLOBAL;
@@ -105,6 +109,7 @@ public class FeedSettingsFragment extends Fragment {
private static final CharSequence PREF_CATEGORY_AUTO_DOWNLOAD = "autoDownloadCategory";
private static final String PREF_FEED_PLAYBACK_SPEED = "feedPlaybackSpeed";
private static final String PREF_AUTO_SKIP = "feedAutoSkip";
+ private static final String PREF_TAGS = "tags";
private static final DecimalFormat SPEED_FORMAT =
new DecimalFormat("0.00", DecimalFormatSymbols.getInstance(Locale.US));
@@ -159,6 +164,7 @@ public class FeedSettingsFragment extends Fragment {
setupEpisodeFilterPreference();
setupPlaybackSpeedPreference();
setupFeedAutoSkipPreference();
+ setupTags();
updateAutoDeleteSummary();
updateVolumeReductionValue();
@@ -394,6 +400,26 @@ public class FeedSettingsFragment extends Fragment {
}
}
+ private void setupTags() {
+ findPreference(PREF_TAGS).setOnPreferenceClickListener(preference -> {
+ EditTextDialogBinding alertViewBinding = EditTextDialogBinding.inflate(getLayoutInflater());
+ alertViewBinding.urlEditText.setText(feed.getPreferences().getTagsAsString());
+ new AlertDialog.Builder(getContext())
+ .setView(alertViewBinding.getRoot())
+ .setTitle(R.string.feed_folders_label)
+ .setPositiveButton(android.R.string.ok, (d, input) -> {
+ String foldersString = alertViewBinding.urlEditText.getText().toString();
+ feedPreferences.getTags().clear();
+ feedPreferences.getTags().addAll(new HashSet<>(Arrays.asList(
+ foldersString.split(FeedPreferences.TAG_SEPARATOR))));
+ feed.savePreferences();
+ })
+ .setNegativeButton(R.string.cancel_label, null)
+ .show();
+ return true;
+ });
+ }
+
private class ApplyToEpisodesDialog extends ConfirmationDialog {
private final boolean autoDownload;