diff --git a/res/values/strings.xml b/res/values/strings.xml index f91c9da60..9abcba31c 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -600,7 +600,7 @@ Use Default Image Select From Gallery IMAP Folder Handling - If you disable this option, make sure, your server and your other clients are configured accordingly.\n\nOtherwise things may not work at all. + If you change this option, make sure, your server and your other clients are configured accordingly.\n\nOtherwise things may not work at all. Watch Inbox Folder Watch Sent Folder Watch DeltaChat Folder diff --git a/src/org/thoughtcrime/securesms/preferences/AdvancedPreferenceFragment.java b/src/org/thoughtcrime/securesms/preferences/AdvancedPreferenceFragment.java index c650626bf..55476367f 100644 --- a/src/org/thoughtcrime/securesms/preferences/AdvancedPreferenceFragment.java +++ b/src/org/thoughtcrime/securesms/preferences/AdvancedPreferenceFragment.java @@ -92,11 +92,25 @@ public class AdvancedPreferenceFragment extends ListSummaryPreferenceFragment onlyFetchMvboxCheckbox = this.findPreference("pref_only_fetch_mvbox"); onlyFetchMvboxCheckbox.setOnPreferenceChangeListener(((preference, newValue) -> { - boolean enabled = (Boolean) newValue; - DcHelper.getAccounts(getContext()).stopIo(); - dcContext.setConfigInt(CONFIG_ONLY_FETCH_MVBOX, enabled? 1 : 0); - DcHelper.getAccounts(getContext()).startIo(); - return true; + final boolean enabled = (Boolean) newValue; + if (enabled) { + new AlertDialog.Builder(getContext()) + .setMessage(R.string.pref_imap_folder_warn_disable_defaults) + .setPositiveButton(R.string.ok, (dialogInterface, i) -> { + DcHelper.getAccounts(getContext()).stopIo(); + dcContext.setConfigInt(CONFIG_ONLY_FETCH_MVBOX, 1); + ((CheckBoxPreference)preference).setChecked(true); + DcHelper.getAccounts(getContext()).startIo(); + }) + .setNegativeButton(R.string.cancel, null) + .show(); + return false; + } else { + DcHelper.getAccounts(getContext()).stopIo(); + dcContext.setConfigInt(CONFIG_ONLY_FETCH_MVBOX, 0); + DcHelper.getAccounts(getContext()).startIo(); + return true; + } })); Preference manageKeys = this.findPreference("pref_manage_keys");