From c0a68202a7044a7a9fb8c83242ba2e040381e621 Mon Sep 17 00:00:00 2001 From: Greyson Parrelli Date: Tue, 19 Oct 2021 09:19:10 -0400 Subject: [PATCH] Update some settings menus to use MaterialAlertDialogBuilder. --- .../keyvalue/KeepMessagesDuration.java | 2 +- .../StoragePreferenceFragment.java | 61 ++++++++++--------- 2 files changed, 32 insertions(+), 31 deletions(-) diff --git a/app/src/main/java/org/thoughtcrime/securesms/keyvalue/KeepMessagesDuration.java b/app/src/main/java/org/thoughtcrime/securesms/keyvalue/KeepMessagesDuration.java index 6577c5dad..ecb8d9dd6 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/keyvalue/KeepMessagesDuration.java +++ b/app/src/main/java/org/thoughtcrime/securesms/keyvalue/KeepMessagesDuration.java @@ -11,7 +11,7 @@ public enum KeepMessagesDuration { FOREVER(0, R.string.preferences_storage__forever, Long.MAX_VALUE), ONE_YEAR(1, R.string.preferences_storage__one_year, TimeUnit.DAYS.toMillis(365)), SIX_MONTHS(2, R.string.preferences_storage__six_months, TimeUnit.DAYS.toMillis(183)), - THIRTY_DAYS(3, R.string.preferences_storage__thirty_days, TimeUnit.DAYS.toMillis(30)); + THIRTY_DAYS(3, R.string.preferences_storage__thirty_days, TimeUnit.DAYS.toMillis(1)); private final int id; private final int stringResource; diff --git a/app/src/main/java/org/thoughtcrime/securesms/preferences/StoragePreferenceFragment.java b/app/src/main/java/org/thoughtcrime/securesms/preferences/StoragePreferenceFragment.java index b18e4455e..e0c2795b9 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/preferences/StoragePreferenceFragment.java +++ b/app/src/main/java/org/thoughtcrime/securesms/preferences/StoragePreferenceFragment.java @@ -18,6 +18,7 @@ import androidx.fragment.app.FragmentActivity; import androidx.preference.Preference; import com.annimon.stream.Stream; +import com.google.android.material.dialog.MaterialAlertDialogBuilder; import org.signal.core.util.concurrent.SignalExecutors; import org.thoughtcrime.securesms.R; @@ -117,23 +118,23 @@ public class StoragePreferenceFragment extends ListSummaryPreferenceFragment { private class ClearMessageHistoryClickListener implements Preference.OnPreferenceClickListener { @Override public boolean onPreferenceClick(@NonNull Preference preference) { - new AlertDialog.Builder(requireActivity()) - .setTitle(R.string.preferences_storage__clear_message_history) - .setMessage(R.string.preferences_storage__this_will_delete_all_message_history_and_media_from_your_device) - .setPositiveButton(R.string.delete, (d, w) -> showAreYouReallySure()) - .setNegativeButton(android.R.string.cancel, null) - .show(); + new MaterialAlertDialogBuilder(requireActivity()) + .setTitle(R.string.preferences_storage__clear_message_history) + .setMessage(R.string.preferences_storage__this_will_delete_all_message_history_and_media_from_your_device) + .setPositiveButton(R.string.delete, (d, w) -> showAreYouReallySure()) + .setNegativeButton(android.R.string.cancel, null) + .show(); return true; } private void showAreYouReallySure() { - new AlertDialog.Builder(requireActivity()) - .setTitle(R.string.preferences_storage__are_you_sure_you_want_to_delete_all_message_history) - .setMessage(R.string.preferences_storage__all_message_history_will_be_permanently_removed_this_action_cannot_be_undone) - .setPositiveButton(R.string.preferences_storage__delete_all_now, (d, w) -> SignalExecutors.BOUNDED.execute(() -> DatabaseFactory.getThreadDatabase(ApplicationDependencies.getApplication()).deleteAllConversations())) - .setNegativeButton(android.R.string.cancel, null) - .show(); + new MaterialAlertDialogBuilder(requireActivity()) + .setTitle(R.string.preferences_storage__are_you_sure_you_want_to_delete_all_message_history) + .setMessage(R.string.preferences_storage__all_message_history_will_be_permanently_removed_this_action_cannot_be_undone) + .setPositiveButton(R.string.preferences_storage__delete_all_now, (d, w) -> SignalExecutors.BOUNDED.execute(() -> DatabaseFactory.getThreadDatabase(ApplicationDependencies.getApplication()).deleteAllConversations())) + .setNegativeButton(android.R.string.cancel, null) + .show(); } } @@ -158,12 +159,12 @@ public class StoragePreferenceFragment extends ListSummaryPreferenceFragment { KeepMessagesDuration newDuration = (KeepMessagesDuration) selection; if (newDuration.ordinal() > currentDuration.ordinal()) { - new AlertDialog.Builder(activity) - .setTitle(R.string.preferences_storage__delete_older_messages) - .setMessage(activity.getString(R.string.preferences_storage__this_will_permanently_delete_all_message_history_and_media, activity.getString(newDuration.getStringResource()))) - .setPositiveButton(R.string.delete, (d, w) -> updateTrimByTime(newDuration)) - .setNegativeButton(android.R.string.cancel, null) - .show(); + new MaterialAlertDialogBuilder(activity) + .setTitle(R.string.preferences_storage__delete_older_messages) + .setMessage(activity.getString(R.string.preferences_storage__this_will_permanently_delete_all_message_history_and_media, activity.getString(newDuration.getStringResource()))) + .setPositiveButton(R.string.delete, (d, w) -> updateTrimByTime(newDuration)) + .setNegativeButton(android.R.string.cancel, null) + .show(); } else { updateTrimByTime(newDuration); } @@ -224,12 +225,12 @@ public class StoragePreferenceFragment extends ListSummaryPreferenceFragment { editText.setText(String.valueOf(trimLength)); } - AlertDialog dialog = new AlertDialog.Builder(activity) - .setTitle(R.string.preferences__conversation_length_limit) - .setView(view) - .setPositiveButton(android.R.string.ok, (d, w) -> onSelectionChanged(Integer.parseInt(editText.getText().toString()))) - .setNegativeButton(android.R.string.cancel, (d, w) -> updateSettingsList()) - .create(); + AlertDialog dialog = new MaterialAlertDialogBuilder(activity) + .setTitle(R.string.preferences__conversation_length_limit) + .setView(view) + .setPositiveButton(android.R.string.ok, (d, w) -> onSelectionChanged(Integer.parseInt(editText.getText().toString()))) + .setNegativeButton(android.R.string.cancel, (d, w) -> updateSettingsList()) + .create(); dialog.setOnShowListener(d -> { dialog.getButton(AlertDialog.BUTTON_POSITIVE).setEnabled(!TextUtils.isEmpty(editText.getText())); @@ -273,12 +274,12 @@ public class StoragePreferenceFragment extends ListSummaryPreferenceFragment { int newTrimLength = (Integer) selection; if (newTrimLength > 0 && (!trimLengthEnabled || newTrimLength < trimLength)) { - new AlertDialog.Builder(activity) - .setTitle(R.string.preferences_storage__delete_older_messages) - .setMessage(activity.getString(R.string.preferences_storage__this_will_permanently_trim_all_conversations_to_the_d_most_recent_messages, NumberFormat.getInstance().format(newTrimLength))) - .setPositiveButton(R.string.delete, (d, w) -> updateTrimByLength(newTrimLength)) - .setNegativeButton(android.R.string.cancel, null) - .show(); + new MaterialAlertDialogBuilder(activity) + .setTitle(R.string.preferences_storage__delete_older_messages) + .setMessage(activity.getString(R.string.preferences_storage__this_will_permanently_trim_all_conversations_to_the_d_most_recent_messages, NumberFormat.getInstance().format(newTrimLength))) + .setPositiveButton(R.string.delete, (d, w) -> updateTrimByLength(newTrimLength)) + .setNegativeButton(android.R.string.cancel, null) + .show(); } else if (newTrimLength == CUSTOM_LENGTH) { onCustomizeClicked(null); } else {