diff options
Diffstat (limited to 'src/main/java/eu/siacs/conversations/ui/SettingsActivity.java')
-rw-r--r-- | src/main/java/eu/siacs/conversations/ui/SettingsActivity.java | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/src/main/java/eu/siacs/conversations/ui/SettingsActivity.java b/src/main/java/eu/siacs/conversations/ui/SettingsActivity.java index 30f71229..a6bd842d 100644 --- a/src/main/java/eu/siacs/conversations/ui/SettingsActivity.java +++ b/src/main/java/eu/siacs/conversations/ui/SettingsActivity.java @@ -130,6 +130,16 @@ public class SettingsActivity extends XmppActivity implements return true; } }); + + final Preference exportLogsPreference = mSettingsFragment.findPreference("export_logs"); + exportLogsPreference.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() { + @Override + public boolean onPreferenceClick(Preference preference) { + hasStoragePermission(REQUEST_WRITE_LOGS); + return true; + } + }); + // Avoid appearence of setting to enable or disable omemo in screen Preference omemoEnabledPreference = this.mSettingsFragment.findPreference("omemo_enabled"); PreferenceCategory otherExpertSettingsGroup = (PreferenceCategory) this.mSettingsFragment.findPreference("other_expert_settings"); @@ -151,7 +161,8 @@ public class SettingsActivity extends XmppActivity implements "confirm_messages_list", "xa_on_silent_mode", "away_when_screen_off", - "treat_vibrate_as_silent"); + "treat_vibrate_as_silent", + "manually_change_presence"); // need to synchronize the settings class first Settings.synchronizeSettingsClassWithPreferences(preferences, name); if (name.equals("resource")) { @@ -174,9 +185,13 @@ public class SettingsActivity extends XmppActivity implements xmppConnectionService.toggleForegroundService(); } else if (resendPresence.contains(name)) { if (xmppConnectionServiceBound) { - if (name.equals("away_when_screen_off")) { + if (name.equals("away_when_screen_off") + || name.equals("manually_change_presence")) { xmppConnectionService.toggleScreenEventReceiver(); } + if (name.equals("manually_change_presence") && !noAccountUsesPgp()) { + Toast.makeText(this, R.string.republish_pgp_keys, Toast.LENGTH_LONG).show(); + } xmppConnectionService.refreshAllPresences(); } } else if (name.equals("dont_trust_system_cas")) { |