summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app/src/main/java/de/danoeh/antennapod/fragment/preferences/UserInterfacePreferencesFragment.java29
-rw-r--r--ui/i18n/src/main/res/values/strings.xml4
2 files changed, 9 insertions, 24 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/preferences/UserInterfacePreferencesFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/preferences/UserInterfacePreferencesFragment.java
index 2edf8cb68..af48c705d 100644
--- a/app/src/main/java/de/danoeh/antennapod/fragment/preferences/UserInterfacePreferencesFragment.java
+++ b/app/src/main/java/de/danoeh/antennapod/fragment/preferences/UserInterfacePreferencesFragment.java
@@ -97,43 +97,31 @@ public class UserInterfacePreferencesFragment extends PreferenceFragmentCompat {
}
}
-
private void showFullNotificationButtonsDialog() {
final Context context = getActivity();
final List<Integer> preferredButtons = UserPreferences.getFullNotificationButtons();
final String[] allButtonNames = context.getResources().getStringArray(
R.array.full_notification_buttons_options);
- final int[] buttonIDs = {
+ final int[] buttonIds = {
UserPreferences.NOTIFICATION_BUTTON_SKIP,
UserPreferences.NOTIFICATION_BUTTON_NEXT_CHAPTER,
UserPreferences.NOTIFICATION_BUTTON_PLAYBACK_SPEED,
UserPreferences.NOTIFICATION_BUTTON_SLEEP_TIMER,
};
- final int exactItems = 2;
final DialogInterface.OnClickListener completeListener = (dialog, which) ->
UserPreferences.setFullNotificationButtons(preferredButtons);
- final String title = context.getResources().getString(
- R.string.pref_full_notification_buttons_title);
-
- showNotificationButtonsDialog(preferredButtons, allButtonNames, buttonIDs, title,
- exactItems, completeListener
- );
- }
+ final String title = context.getResources().getString(R.string.pref_full_notification_buttons_title);
- private void showNotificationButtonsDialog(List<Integer> preferredButtons,
- String[] allButtonNames, int[] buttonIds, String title,
- int exactItems, DialogInterface.OnClickListener completeListener) {
boolean[] checked = new boolean[allButtonNames.length]; // booleans default to false in java
- final Context context = getActivity();
-
// Clear buttons that are not part of the setting anymore
for (int i = preferredButtons.size() - 1; i >= 0; i--) {
boolean isValid = false;
for (int j = 0; j < checked.length; j++) {
if (buttonIds[j] == preferredButtons.get(i)) {
isValid = true;
+ break;
}
}
@@ -142,7 +130,7 @@ public class UserInterfacePreferencesFragment extends PreferenceFragmentCompat {
}
}
- for(int i=0; i < checked.length; i++) {
+ for (int i = 0; i < checked.length; i++) {
if (preferredButtons.contains(buttonIds[i])) {
checked[i] = true;
}
@@ -152,7 +140,6 @@ public class UserInterfacePreferencesFragment extends PreferenceFragmentCompat {
builder.setTitle(title);
builder.setMultiChoiceItems(allButtonNames, checked, (dialog, which, isChecked) -> {
checked[which] = isChecked;
-
if (isChecked) {
preferredButtons.add(buttonIds[which]);
} else {
@@ -168,19 +155,17 @@ public class UserInterfacePreferencesFragment extends PreferenceFragmentCompat {
Button positiveButton = dialog.getButton(AlertDialog.BUTTON_POSITIVE);
positiveButton.setOnClickListener(v -> {
- if (preferredButtons.size() != exactItems) {
+ if (preferredButtons.size() != 2) {
ListView selectionView = dialog.getListView();
Snackbar.make(
selectionView,
- String.format(context.getResources().getString(
- R.string.pref_compact_notification_buttons_dialog_error_exact), exactItems),
+ context.getResources().getString(R.string.pref_compact_notification_buttons_dialog_error_exact),
Snackbar.LENGTH_SHORT).show();
} else {
completeListener.onClick(dialog, AlertDialog.BUTTON_POSITIVE);
dialog.cancel();
}
- }
- );
+ });
}
}
diff --git a/ui/i18n/src/main/res/values/strings.xml b/ui/i18n/src/main/res/values/strings.xml
index 6ff5154d8..2ec045a3d 100644
--- a/ui/i18n/src/main/res/values/strings.xml
+++ b/ui/i18n/src/main/res/values/strings.xml
@@ -488,9 +488,9 @@
<string name="pref_expandNotify_sum">This usually expands the notification to show playback buttons.</string>
<string name="pref_persistNotify_title">Persistent playback controls</string>
<string name="pref_persistNotify_sum">Keep notification and lockscreen controls when playback is paused</string>
- <string name="pref_compact_notification_buttons_dialog_error_exact">You must select exactly %1$d items.</string>
+ <string name="pref_compact_notification_buttons_dialog_error_exact">You must select exactly two items</string>
<string name="pref_full_notification_buttons_title">Set notification buttons</string>
- <string name="pref_full_notification_buttons_sum">Change the playback buttons on the playback notification.</string>
+ <string name="pref_full_notification_buttons_sum">Change the buttons on the playback notification</string>
<string name="pref_enqueue_location_title">Enqueue location</string>
<string name="pref_enqueue_location_sum">Add episodes to: %1$s</string>
<string name="enqueue_location_back">Back</string>