diff options
author | ByteHamster <info@bytehamster.com> | 2021-01-02 21:17:40 +0100 |
---|---|---|
committer | ByteHamster <info@bytehamster.com> | 2021-01-02 21:17:40 +0100 |
commit | f4bbc5535cdd8210634ecb043142b8efdedaa064 (patch) | |
tree | eb92c1f3aebdfb55afff6a3a8f06523d57efc8d7 /app/src/main/java/de/danoeh/antennapod/fragment/FeedSettingsFragment.java | |
parent | 19e427b52438f7508b97127100947f0f81e4f378 (diff) | |
download | AntennaPod-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.java | 26 |
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; |