From a7068cc24a2e943fe7885369c34020e7ba02c7e0 Mon Sep 17 00:00:00 2001 From: ByteHamster Date: Sun, 25 Feb 2024 15:31:59 +0100 Subject: [PATCH] String tweaks reported on Transifex (#6942) --- .../UserInterfacePreferencesFragment.java | 29 +++++-------------- ui/i18n/src/main/res/values/strings.xml | 4 +-- 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 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); + final String title = context.getResources().getString(R.string.pref_full_notification_buttons_title); - showNotificationButtonsDialog(preferredButtons, allButtonNames, buttonIDs, title, - exactItems, completeListener - ); - } - - private void showNotificationButtonsDialog(List 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 @@ This usually expands the notification to show playback buttons. Persistent playback controls Keep notification and lockscreen controls when playback is paused - You must select exactly %1$d items. + You must select exactly two items Set notification buttons - Change the playback buttons on the playback notification. + Change the buttons on the playback notification Enqueue location Add episodes to: %1$s Back