From 6735e5075b01224c6eccc7e513d26cdacc8d07c9 Mon Sep 17 00:00:00 2001 From: akwizgran <michael@briarproject.org> Date: Fri, 4 May 2018 12:05:09 +0100 Subject: [PATCH] Add crash button to UI in debug mode. --- .../android/settings/SettingsFragment.java | 15 ++++++++-- briar-android/src/main/res/xml/settings.xml | 30 ++++++++++++------- 2 files changed, 31 insertions(+), 14 deletions(-) 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 8f8c444040..94d1cc63b3 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 @@ -12,6 +12,7 @@ import android.support.v7.preference.CheckBoxPreference; import android.support.v7.preference.ListPreference; import android.support.v7.preference.Preference; import android.support.v7.preference.PreferenceFragmentCompat; +import android.support.v7.preference.PreferenceGroup; import android.widget.Toast; import org.acra.ACRA; @@ -149,9 +150,17 @@ public class SettingsFragment extends PreferenceFragmentCompat return true; }); - Preference testData = findPreference("pref_key_test_data"); - if (!IS_DEBUG_BUILD) { - testData.setVisible(false); + if (IS_DEBUG_BUILD) { + findPreference("pref_key_explode").setOnPreferenceClickListener( + preference -> { + throw new RuntimeException("Boom!"); + } + ); + } else { + PreferenceGroup testing = + findPreference("pref_key_explode").getParent(); + if (testing == null) throw new AssertionError(); + testing.setVisible(false); } loadSettings(); diff --git a/briar-android/src/main/res/xml/settings.xml b/briar-android/src/main/res/xml/settings.xml index a758e8b5e6..4528150143 100644 --- a/briar-android/src/main/res/xml/settings.xml +++ b/briar-android/src/main/res/xml/settings.xml @@ -111,21 +111,29 @@ <PreferenceCategory android:layout="@layout/preferences_category" - android:title="@string/feedback_settings_title"> + android:title="@string/feedback_settings_title"/> + + <Preference + android:key="pref_key_send_feedback" + android:title="@string/send_feedback"/> + + <PreferenceCategory + android:layout="@layout/preferences_category" + android:title="Testing"> <Preference - android:key="pref_key_send_feedback" - android:title="@string/send_feedback"/> + android:key="pref_key_test_data" + android:title="Create Test Data"> - </PreferenceCategory> + <intent + android:targetClass="org.briarproject.briar.android.test.TestDataActivity" + android:targetPackage="@string/app_package"/> + </Preference> - <Preference - android:key="pref_key_test_data" - android:title="Create Test Data"> + <Preference + android:key="pref_key_explode" + android:title="Crash"/> - <intent - android:targetClass="org.briarproject.briar.android.test.TestDataActivity" - android:targetPackage="@string/app_package"/> - </Preference> + </PreferenceCategory> </PreferenceScreen> -- GitLab