From 03b4907311da2ae2b1ddb15f5e95b7c1a840e45e Mon Sep 17 00:00:00 2001 From: Torsten Grote <t@grobox.de> Date: Wed, 7 Mar 2018 15:20:09 -0300 Subject: [PATCH] Disable settings until they have been loaded In practise, this is not noticeable in the UI. Only when the database is congested, it should become visible and prevent a crash when the sound setting is clicked. --- .../briar/android/settings/SettingsFragment.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/briar-android/src/main/java/org/briarproject/briar/android/settings/SettingsFragment.java b/briar-android/src/main/java/org/briarproject/briar/android/settings/SettingsFragment.java index d781e6bffb..dd049fbcad 100644 --- a/briar-android/src/main/java/org/briarproject/briar/android/settings/SettingsFragment.java +++ b/briar-android/src/main/java/org/briarproject/briar/android/settings/SettingsFragment.java @@ -128,6 +128,8 @@ public class SettingsFragment extends PreferenceFragmentCompat "pref_key_notify_lock_screen"); notifySound = findPreference("pref_key_notify_sound"); + setSettingsEnabled(false); + enableBluetooth.setOnPreferenceChangeListener(this); torNetwork.setOnPreferenceChangeListener(this); notifyPrivateMessages.setOnPreferenceChangeListener(this); @@ -248,9 +250,22 @@ public class SettingsFragment extends PreferenceFragmentCompat text = getString(R.string.notify_sound_setting_disabled); } notifySound.setSummary(text); + setSettingsEnabled(true); }); } + private void setSettingsEnabled(boolean enabled) { + enableBluetooth.setEnabled(enabled); + torNetwork.setEnabled(enabled); + notifyPrivateMessages.setEnabled(enabled); + notifyGroupMessages.setEnabled(enabled); + notifyForumPosts.setEnabled(enabled); + notifyBlogPosts.setEnabled(enabled); + notifyVibration.setEnabled(enabled); + notifyLockscreen.setEnabled(enabled); + notifySound.setEnabled(enabled); + } + private void triggerFeedback() { androidExecutor.runOnBackgroundThread(() -> ACRA.getErrorReporter() .handleException(new UserFeedback(), false)); -- GitLab