hide encryption settings under 'expert options'

iNPUTmice created

Change summary

res/values/strings.xml  |   3 
res/xml/preferences.xml | 120 ++++++++++++++++++++++--------------------
2 files changed, 65 insertions(+), 58 deletions(-)

Detailed changes

res/values/strings.xml πŸ”—

@@ -249,5 +249,6 @@
     <string name="pref_force_encryption_summary">Always send messages encrypted (execpt for conferences)</string>
     <string name="pref_dont_save_encrypted">Don’t save encrypted messages</string>
     <string name="pref_dont_save_encrypted_summary">Warning: This could lead to message loss</string>
-
+	<string name="pref_expert_options">Expert options</string>
+	<string name="pref_expert_options_summary">Please be very careful with those</string>
 </resources>

res/xml/preferences.xml πŸ”—

@@ -1,84 +1,90 @@
 <?xml version="1.0" encoding="utf-8"?>
 <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" >
-    <PreferenceCategory 
-        android:title="@string/pref_general">
-        <CheckBoxPreference 
+
+    <PreferenceCategory android:title="@string/pref_general" >
+        <CheckBoxPreference
+            android:defaultValue="true"
             android:key="grant_new_contacts"
-            android:title="@string/pref_grant_presence_updates"
             android:summary="@string/pref_grant_presence_updates_summary"
-            android:defaultValue="true"
-            />
-        <ListPreference 
-            android:key="resource"
-            android:title="@string/pref_xmpp_resource"
-            android:summary="@string/pref_xmpp_resource_summary"
+            android:title="@string/pref_grant_presence_updates" />
+
+        <ListPreference
+            android:defaultValue="Mobile"
             android:entries="@array/resources"
             android:entryValues="@array/resources"
-            android:defaultValue="Mobile"/>
-        <ListPreference 
-            android:key="auto_accept_file_size"
-            android:title="@string/pref_accept_files"
-            android:summary="@string/pref_accept_files_summary"
+            android:key="resource"
+            android:summary="@string/pref_xmpp_resource_summary"
+            android:title="@string/pref_xmpp_resource" />
+        <ListPreference
+            android:defaultValue="524288"
             android:entries="@array/filesizes"
             android:entryValues="@array/filesizes_values"
-            android:defaultValue="524288"/>
-        <CheckBoxPreference 
+            android:key="auto_accept_file_size"
+            android:summary="@string/pref_accept_files_summary"
+            android:title="@string/pref_accept_files" />
+
+        <CheckBoxPreference
+            android:defaultValue="true"
             android:key="confirm_messages"
-            android:title="@string/pref_confirm_messages"
             android:summary="@string/pref_confirm_messages_summary"
-            android:defaultValue="true"
-            />
+            android:title="@string/pref_confirm_messages" />
     </PreferenceCategory>
-    <PreferenceCategory 
-        android:title="@string/pref_notification_settings">
-        <CheckBoxPreference 
+    <PreferenceCategory android:title="@string/pref_notification_settings" >
+        <CheckBoxPreference
+            android:defaultValue="true"
             android:key="show_notification"
-            android:title="@string/pref_notifications"
             android:summary="@string/pref_notifications_summary"
-            android:defaultValue="true"
-            />
+            android:title="@string/pref_notifications" />
         <CheckBoxPreference
-            android:key="vibrate_on_notification"
+            android:defaultValue="true"
             android:dependency="show_notification"
-            android:title="@string/pref_vibrate"
+            android:key="vibrate_on_notification"
             android:summary="@string/pref_vibrate_summary"
-            android:defaultValue="true"/>
-        <RingtonePreference 
+            android:title="@string/pref_vibrate" />
+
+        <RingtonePreference
+            android:defaultValue="content://settings/system/notification_sound"
+            android:dependency="show_notification"
             android:key="notification_ringtone"
-            android:title="@string/pref_sound"
             android:ringtoneType="notification"
-            android:dependency="show_notification"
             android:summary="@string/pref_sound_summary"
-            android:defaultValue="content://settings/system/notification_sound"/>
-        <CheckBoxPreference 
+            android:title="@string/pref_sound" />
+
+        <CheckBoxPreference
+            android:dependency="show_notification"
             android:key="notify_in_conversation_when_highlighted"
-            android:title="@string/pref_conference_notifications"
-            android:summary="@string/pref_conference_notifications_summary"/>
+            android:summary="@string/pref_conference_notifications_summary"
+            android:title="@string/pref_conference_notifications" />
         <CheckBoxPreference
+            android:defaultValue="true"
+            android:dependency="show_notification"
             android:key="notification_grace_period_after_carbon_received"
-            android:title="@string/pref_notification_grace_period"
             android:summary="@string/pref_notification_grace_period_summary"
-            android:defaultValue="true"/>
-    </PreferenceCategory>
-    <PreferenceCategory 
-        android:title="@string/pref_encryption_settings">
-        <CheckBoxPreference 
-            android:key="force_encryption"
-            android:title="@string/pref_force_encryption"
-            android:summary="@string/pref_force_encryption_summary"
-            android:defaultValue="false"/>
-        <CheckBoxPreference 
-            android:key="dont_save_encrypted"
-            android:title="@string/pref_dont_save_encrypted"
-            android:summary="@string/pref_dont_save_encrypted_summary"
-            android:defaultValue="false"/>
+            android:title="@string/pref_notification_grace_period" />
     </PreferenceCategory>
-    <PreferenceCategory
-        android:title="@string/pref_advanced_options">
-        <CheckBoxPreference 
+    <PreferenceCategory android:title="@string/pref_advanced_options" >
+        <PreferenceScreen
+            android:summary="@string/pref_expert_options_summary"
+            android:title="@string/pref_expert_options" >
+            <PreferenceCategory android:title="@string/pref_encryption_settings" >
+                <CheckBoxPreference
+                    android:defaultValue="false"
+                    android:key="force_encryption"
+                    android:summary="@string/pref_force_encryption_summary"
+                    android:title="@string/pref_force_encryption" />
+                <CheckBoxPreference
+                    android:defaultValue="false"
+                    android:key="dont_save_encrypted"
+                    android:summary="@string/pref_dont_save_encrypted_summary"
+                    android:title="@string/pref_dont_save_encrypted" />
+            </PreferenceCategory>
+        </PreferenceScreen>
+
+        <CheckBoxPreference
+            android:defaultValue="false"
             android:key="never_send"
-            android:title="@string/pref_never_send_crash"
             android:summary="@string/pref_never_send_crash_summary"
-            android:defaultValue="false"/>
+            android:title="@string/pref_never_send_crash" />
     </PreferenceCategory>
-</PreferenceScreen>
+
+</PreferenceScreen>