new settings screen

This commit is contained in:
kosyak 2024-07-21 13:49:31 +02:00
parent 14c3df535d
commit e94aae746d
5 changed files with 374 additions and 326 deletions

View file

@ -17,6 +17,7 @@ import android.preference.CheckBoxPreference;
import android.preference.ListPreference;
import android.preference.Preference;
import android.preference.PreferenceCategory;
import android.preference.PreferenceGroup;
import android.preference.PreferenceManager;
import android.preference.PreferenceScreen;
import android.provider.MediaStore;
@ -173,8 +174,8 @@ public class SettingsActivity extends XmppActivity implements OnSharedPreference
PreferenceScreen mainPreferenceScreen =
(PreferenceScreen) mSettingsFragment.findPreference("main_screen");
PreferenceCategory attachmentsCategory =
(PreferenceCategory) mSettingsFragment.findPreference("attachments");
PreferenceGroup attachmentsCategory =
(PreferenceGroup) mSettingsFragment.findPreference("attachments");
CheckBoxPreference locationPlugin =
(CheckBoxPreference) mSettingsFragment.findPreference("use_share_location_plugin");
if (attachmentsCategory != null && locationPlugin != null) {
@ -190,14 +191,9 @@ public class SettingsActivity extends XmppActivity implements OnSharedPreference
Intent intent = huaweiPreferenceScreen.getIntent();
// remove when Api version is above M (Version 6.0) or if the intent is not callable
if (Build.VERSION.SDK_INT > Build.VERSION_CODES.M || !isCallable(intent)) {
PreferenceCategory generalCategory =
(PreferenceCategory) mSettingsFragment.findPreference("general");
generalCategory.removePreference(huaweiPreferenceScreen);
if (generalCategory.getPreferenceCount() == 0) {
if (mainPreferenceScreen != null) {
mainPreferenceScreen.removePreference(generalCategory);
}
}
PreferenceGroup notifications =
(PreferenceGroup) mSettingsFragment.findPreference("notification_category");
notifications.removePreference(huaweiPreferenceScreen);
}
}

View file

@ -41,16 +41,6 @@ public class SettingsFragment extends PreferenceFragment {
}
@Override
public void onActivityCreated(Bundle bundle) {
super.onActivityCreated(bundle);
final ListView listView = getActivity().findViewById(android.R.id.list);
if (listView != null) {
listView.setDivider(null);
}
}
public void setActivityIntent(final Intent intent) {
boolean wasEmpty = TextUtils.isEmpty(page);
if (intent != null) {

View file

@ -14,6 +14,7 @@ import android.os.Build;
import android.os.Bundle;
import android.preference.Preference;
import android.preference.PreferenceCategory;
import android.preference.PreferenceGroup;
import android.preference.PreferenceManager;
import android.util.Log;
@ -113,18 +114,18 @@ public class Compatibility {
}
public static void removeUnusedPreferences(SettingsFragment settingsFragment) {
List<PreferenceCategory> categories =
List<PreferenceGroup> categories =
Arrays.asList(
(PreferenceCategory)
(PreferenceGroup)
settingsFragment.findPreference("notification_category"),
(PreferenceCategory) settingsFragment.findPreference("advanced"));
(PreferenceGroup) settingsFragment.findPreference("advanced"));
for (String key :
(runsTwentySix()
? UNUSED_SETTINGS_POST_TWENTYSIX
: UNUSED_SETTINGS_PRE_TWENTYSIX)) {
Preference preference = settingsFragment.findPreference(key);
if (preference != null) {
for (PreferenceCategory category : categories) {
for (PreferenceGroup category : categories) {
if (category != null) {
category.removePreference(preference);
}
@ -136,7 +137,7 @@ public class Compatibility {
Preference preference =
settingsFragment.findPreference(SettingsActivity.KEEP_FOREGROUND_SERVICE);
if (preference != null) {
for (PreferenceCategory category : categories) {
for (PreferenceGroup category : categories) {
if (category != null) {
category.removePreference(preference);
}

View file

@ -117,7 +117,7 @@
<string name="pref_accept_all_files_if_wifi">Accept all files</string>
<string name="pref_accept_all_files_if_wifi_summary">Automatically accept all files when connected to Wi-Fi</string>
<string name="pref_attachments">Attachments</string>
<string name="pref_notification_settings">Notification</string>
<string name="pref_notification_settings">Notifications</string>
<string name="pref_vibrate">Vibrate</string>
<string name="pref_vibrate_summary">Vibrate when a new message arrives</string>
<string name="pref_led">LED Notification</string>
@ -135,7 +135,7 @@
<string name="pref_confirm_messages_summary">Let your contacts know when you have received and read their messages</string>
<string name="pref_prevent_screenshots">Prevent Screenshots</string>
<string name="pref_prevent_screenshots_summary">Hide app contents in the app switcher and block screenshots</string>
<string name="pref_ui_options">UI</string>
<string name="pref_ui_options">User interface</string>
<string name="openpgp_error">OpenKeychain produced an error.</string>
<string name="bad_key_for_encryption">Bad key for encryption.</string>
<string name="accept">Accept</string>
@ -589,7 +589,10 @@
<string name="gp_long">Long</string>
<string name="pref_broadcast_last_activity">Broadcast use</string>
<string name="pref_broadcast_last_activity_summary">Lets your contacts know when you use Conversations</string>
<string name="pref_privacy">Privacy</string>
<string name="pref_appearance">Appearance</string>
<string name="pref_navigation">Navigation</string>
<string name="pref_input_field">Input field</string>
<string name="pref_privacy">Privacy and data</string>
<string name="pref_theme_options">Theme</string>
<string name="pref_theme_override_color">Accent color</string>
<string name="pref_theme_options_summary">Select the color palette</string>

View file

@ -4,9 +4,116 @@
android:background="?attr/color_background_secondary"
android:key="main_screen">
<PreferenceCategory
android:key="general"
android:title="@string/pref_general">
<PreferenceScreen
android:key="userinterface"
android:title="@string/pref_ui_options">
<intent
android:action="android.intent.action.VIEW"
android:targetClass="eu.siacs.conversations.ui.SettingsActivity"
android:targetPackage="eu.siacs.conversations.classic">
<extra
android:name="page"
android:value="userinterface" />
</intent>
<PreferenceCategory android:title="@string/pref_appearance">
<ListPreference
android:defaultValue="@string/theme"
android:entries="@array/themes"
android:entryValues="@array/themes_values"
android:key="theme"
android:summary="@string/pref_theme_options_summary"
android:title="@string/pref_theme_options" />
<com.kizitonwose.colorpreference.ColorPreference
android:defaultValue="?colorPrimary"
android:key="themeOverrideColor"
android:summary="@string/pref_theme_override_color_summary"
android:title="@string/pref_theme_override_color"
app:colorChoices="@array/themeColorsOverride"
app:colorShape="circle" />
<CheckBoxPreference
android:defaultValue="@bool/use_green_background"
android:key="use_green_background"
android:summary="@string/pref_use_green_background_summary"
android:title="@string/pref_use_green_background" />
<ListPreference
android:defaultValue="@string/avatar_shape"
android:key="avatar_shape"
android:entries="@array/avatars_shape"
android:entryValues="@array/avatars_shape_values"
android:summary="@string/pref_avatar_shape_summary"
android:title="@string/pref_avatars_shape" />
<ListPreference
android:defaultValue="@string/default_font_size"
android:entries="@array/font_size_entries"
android:entryValues="@array/font_size_entry_values"
android:key="font_size"
android:summary="@string/pref_font_size_summary"
android:title="@string/pref_font_size" />
<Preference
android:key="import_background"
android:summary="@string/pref_chat_background_summary"
android:title="@string/custom_background" />
<Preference
android:key="delete_background"
android:summary="@string/pref_delete_background_summary"
android:title="@string/delete_background" />
<CheckBoxPreference
android:defaultValue="@bool/always_full_timestamps"
android:key="always_full_timestamps"
android:summary="@string/pref_always_show_full_timestamps_summary"
android:title="@string/pref_always_show_full_timestamps" />
</PreferenceCategory>
<PreferenceCategory android:title="@string/pref_navigation">
<CheckBoxPreference
android:defaultValue="@bool/show_nav_bar"
android:key="show_nav_bar"
android:summary="@string/pref_show_navigation_bar_summary"
android:title="@string/pref_show_navigation_bar" />
<CheckBoxPreference
android:defaultValue="@bool/show_dynamic_tags"
android:key="show_dynamic_tags"
android:summary="@string/pref_show_dynamic_tags_summary"
android:title="@string/pref_show_dynamic_tags" />
<CheckBoxPreference
android:defaultValue="@bool/group_by_tags"
android:key="groupByTags"
android:summary="@string/pref_group_by_tags_summary"
android:title="@string/pref_group_by_tags" />
<CheckBoxPreference
android:defaultValue="@bool/conversations_group_by_tags"
android:key="conversationsGroupByTags"
android:summary="@string/pref_group_conversations_by_tags_summary"
android:title="@string/pref_group_conversations_by_tags" />
</PreferenceCategory>
<PreferenceCategory android:title="@string/pref_input_field">
<ListPreference
android:defaultValue="@string/quick_action"
android:dialogTitle="@string/choose_quick_action"
android:entries="@array/quick_actions"
android:entryValues="@array/quick_action_values"
android:key="quick_action"
android:summary="@string/pref_quick_action_summary"
android:title="@string/pref_quick_action" />
</PreferenceCategory>
</PreferenceScreen>
<PreferenceScreen
android:key="notification_category"
android:title="@string/pref_notification_settings">
<intent
android:action="android.intent.action.VIEW"
android:targetClass="eu.siacs.conversations.ui.SettingsActivity"
android:targetPackage="eu.siacs.conversations.classic">
<extra
android:name="page"
android:value="notification_category" />
</intent>
<PreferenceScreen
android:key="huawei"
android:summary="@string/huawei_protected_apps_summary"
@ -15,43 +122,7 @@
android:targetClass="com.huawei.systemmanager.optimize.process.ProtectActivity"
android:targetPackage="com.huawei.systemmanager" />
</PreferenceScreen>
</PreferenceCategory>
<PreferenceCategory android:title="@string/pref_privacy"
android:key="privacy">
<CheckBoxPreference
android:defaultValue="@bool/confirm_messages"
android:key="confirm_messages"
android:summary="@string/pref_confirm_messages_summary"
android:title="@string/pref_confirm_messages" />
<CheckBoxPreference
android:defaultValue="@bool/chat_states"
android:key="chat_states"
android:summary="@string/pref_chat_states_summary"
android:title="@string/pref_chat_states" />
<CheckBoxPreference
android:defaultValue="@bool/last_activity"
android:key="last_activity"
android:summary="@string/pref_broadcast_last_activity_summary"
android:title="@string/pref_broadcast_last_activity" />
<CheckBoxPreference
android:defaultValue="@bool/prevent_screenshots"
android:key="prevent_screenshots"
android:summary="@string/pref_prevent_screenshots_summary"
android:title="@string/pref_prevent_screenshots" />
<ListPreference
android:defaultValue="@string/omemo_setting_default"
android:entries="@array/omemo_setting_entries"
android:entryValues="@array/omemo_setting_entry_values"
android:key="omemo"
android:summary="@string/pref_omemo_setting_summary_default_off"
android:title="@string/pref_omemo_setting" />
</PreferenceCategory>
<PreferenceCategory
android:key="notification_category"
android:title="@string/pref_notification_settings">
<CheckBoxPreference
android:defaultValue="@bool/notifications_from_strangers"
android:key="notifications_from_strangers"
@ -141,10 +212,37 @@
android:ringtoneType="ringtone"
android:summary="@string/pref_call_ringtone_summary"
android:title="@string/pref_ringtone" />
</PreferenceCategory>
<PreferenceCategory
<PreferenceCategory
android:key="unified_push"
android:title="@string/unified_push_distributor">
<ListPreference
android:defaultValue="@string/default_push_account"
android:key="up_push_account"
android:summary="@string/pref_up_push_account_summary"
android:title="@string/pref_up_push_account_title" />
<EditTextPreference
android:defaultValue="@string/default_push_server"
android:key="up_push_server"
android:summary="@string/pref_up_push_server_summary"
android:title="@string/pref_up_push_server_title" />
</PreferenceCategory>
</PreferenceScreen>
<PreferenceScreen
android:key="attachments"
android:title="@string/pref_attachments">
<intent
android:action="android.intent.action.VIEW"
android:targetClass="eu.siacs.conversations.ui.SettingsActivity"
android:targetPackage="eu.siacs.conversations.classic">
<extra
android:name="page"
android:value="attachments" />
</intent>
<CheckBoxPreference
android:defaultValue="@bool/use_share_location_plugin"
android:key="use_share_location_plugin"
@ -176,270 +274,230 @@
android:key="accept_all_files_if_wifi"
android:summary="@string/pref_accept_all_files_if_wifi_summary"
android:title="@string/pref_accept_all_files_if_wifi" />
</PreferenceCategory>
<PreferenceCategory android:title="@string/pref_ui_options">
<CheckBoxPreference
android:defaultValue="@bool/show_nav_bar"
android:key="show_nav_bar"
android:summary="@string/pref_show_navigation_bar_summary"
android:title="@string/pref_show_navigation_bar" />
<ListPreference
android:defaultValue="@string/avatar_shape"
android:key="avatar_shape"
android:entries="@array/avatars_shape"
android:entryValues="@array/avatars_shape_values"
android:summary="@string/pref_avatar_shape_summary"
android:title="@string/pref_avatars_shape" />
<CheckBoxPreference
android:defaultValue="@bool/use_green_background"
android:key="use_green_background"
android:summary="@string/pref_use_green_background_summary"
android:title="@string/pref_use_green_background" />
<CheckBoxPreference
android:defaultValue="@bool/show_dynamic_tags"
android:key="show_dynamic_tags"
android:summary="@string/pref_show_dynamic_tags_summary"
android:title="@string/pref_show_dynamic_tags" />
<CheckBoxPreference
android:defaultValue="@bool/group_by_tags"
android:key="groupByTags"
android:summary="@string/pref_group_by_tags_summary"
android:title="@string/pref_group_by_tags" />
<CheckBoxPreference
android:defaultValue="@bool/conversations_group_by_tags"
android:key="conversationsGroupByTags"
android:summary="@string/pref_group_conversations_by_tags_summary"
android:title="@string/pref_group_conversations_by_tags" />
<ListPreference
android:defaultValue="@string/theme"
android:entries="@array/themes"
android:entryValues="@array/themes_values"
android:key="theme"
android:summary="@string/pref_theme_options_summary"
android:title="@string/pref_theme_options" />
<com.kizitonwose.colorpreference.ColorPreference
android:defaultValue="?colorPrimary"
android:key="themeOverrideColor"
android:summary="@string/pref_theme_override_color_summary"
android:title="@string/pref_theme_override_color"
app:colorChoices="@array/themeColorsOverride"
app:colorShape="circle" />
<ListPreference
android:defaultValue="@string/quick_action"
android:dialogTitle="@string/choose_quick_action"
android:entries="@array/quick_actions"
android:entryValues="@array/quick_action_values"
android:key="quick_action"
android:summary="@string/pref_quick_action_summary"
android:title="@string/pref_quick_action" />
<ListPreference
android:defaultValue="@string/default_font_size"
android:entries="@array/font_size_entries"
android:entryValues="@array/font_size_entry_values"
android:key="font_size"
android:summary="@string/pref_font_size_summary"
android:title="@string/pref_font_size" />
<Preference
android:key="import_background"
android:summary="@string/pref_chat_background_summary"
android:title="@string/custom_background" />
<Preference
android:key="delete_background"
android:summary="@string/pref_delete_background_summary"
android:title="@string/delete_background" />
</PreferenceCategory>
<PreferenceCategory
android:key="backup_category"
android:title="@string/backup">
<Preference
android:key="create_backup"
android:summary="@string/pref_create_backup_summary"
android:title="@string/pref_create_backup" />
</PreferenceCategory>
<PreferenceCategory
android:key="unified_push"
android:title="@string/unified_push_distributor">
<ListPreference
android:defaultValue="@string/default_push_account"
android:key="up_push_account"
android:summary="@string/pref_up_push_account_summary"
android:title="@string/pref_up_push_account_title" />
<EditTextPreference
android:defaultValue="@string/default_push_server"
android:key="up_push_server"
android:summary="@string/pref_up_push_server_summary"
android:title="@string/pref_up_push_server_title" />
android:defaultValue="@bool/skip_image_editor_screen"
android:key="skip_image_editor_screen"
android:summary="@string/pref_skip_image_editor_screen_summary"
android:title="@string/pref_skip_image_editor_screen" />
</PreferenceScreen>
</PreferenceCategory>
<PreferenceCategory
android:key="advanced"
android:title="@string/pref_advanced_options">
<CheckBoxPreference
android:defaultValue="@bool/never_send"
android:key="never_send"
android:summary="@string/pref_never_send_crash_summary"
android:title="@string/pref_never_send_crash" />
<PreferenceScreen android:title="@string/pref_privacy"
android:key="privacy">
<intent
android:action="android.intent.action.VIEW"
android:targetClass="eu.siacs.conversations.ui.SettingsActivity"
android:targetPackage="eu.siacs.conversations.classic">
<extra
android:name="page"
android:value="privacy" />
</intent>
<CheckBoxPreference
android:defaultValue="@bool/confirm_messages"
android:key="confirm_messages"
android:summary="@string/pref_confirm_messages_summary"
android:title="@string/pref_confirm_messages" />
<CheckBoxPreference
android:defaultValue="@bool/chat_states"
android:key="chat_states"
android:summary="@string/pref_chat_states_summary"
android:title="@string/pref_chat_states" />
<CheckBoxPreference
android:defaultValue="@bool/last_activity"
android:key="last_activity"
android:summary="@string/pref_broadcast_last_activity_summary"
android:title="@string/pref_broadcast_last_activity" />
<CheckBoxPreference
android:defaultValue="@bool/prevent_screenshots"
android:key="prevent_screenshots"
android:summary="@string/pref_prevent_screenshots_summary"
android:title="@string/pref_prevent_screenshots" />
<ListPreference
android:defaultValue="@string/omemo_setting_default"
android:entries="@array/omemo_setting_entries"
android:entryValues="@array/omemo_setting_entry_values"
android:key="omemo"
android:summary="@string/pref_omemo_setting_summary_default_off"
android:title="@string/pref_omemo_setting" />
<PreferenceCategory
android:key="backup_category"
android:title="@string/backup">
<Preference
android:key="create_backup"
android:summary="@string/pref_create_backup_summary"
android:title="@string/pref_create_backup" />
</PreferenceCategory>
</PreferenceScreen>
<PreferenceScreen android:title="@string/pref_presence_settings" android:key="availability">
<intent
android:action="android.intent.action.VIEW"
android:targetClass="eu.siacs.conversations.ui.SettingsActivity"
android:targetPackage="eu.siacs.conversations.classic">
<extra
android:name="page"
android:value="availability" />
</intent>
<CheckBoxPreference
android:defaultValue="@bool/manually_change_presence"
android:disableDependentsState="true"
android:key="manually_change_presence"
android:summary="@string/pref_manually_change_presence_summary"
android:title="@string/pref_manually_change_presence" />
<CheckBoxPreference
android:defaultValue="@bool/away_when_screen_off"
android:dependency="manually_change_presence"
android:key="away_when_screen_off"
android:summary="@string/pref_away_when_screen_off_summary"
android:title="@string/pref_away_when_screen_off" />
<CheckBoxPreference
android:defaultValue="@bool/dnd_on_silent_mode"
android:dependency="manually_change_presence"
android:key="dnd_on_silent_mode"
android:summary="@string/pref_dnd_on_silent_mode_summary"
android:title="@string/pref_dnd_on_silent_mode" />
<CheckBoxPreference
android:defaultValue="@bool/treat_vibrate_as_silent"
android:dependency="dnd_on_silent_mode"
android:key="treat_vibrate_as_silent"
android:summary="@string/pref_treat_vibrate_as_dnd_summary"
android:title="@string/pref_treat_vibrate_as_silent" />
</PreferenceScreen>
<PreferenceScreen
android:key="expert"
android:title="@string/pref_expert_options">
<CheckBoxPreference
android:defaultValue="@bool/enable_foreground_service"
android:key="enable_foreground_service"
android:summary="@string/pref_keep_foreground_service_summary"
android:title="@string/pref_keep_foreground_service" />
<Preference
android:key="send_logs"
android:summary="@string/pref_send_logs_summary"
android:title="@string/pref_send_logs" />
<PreferenceScreen
android:key="expert"
android:summary="@string/pref_expert_options_summary"
android:title="@string/pref_expert_options">
<PreferenceCategory
android:key="security_options"
android:title="@string/pref_security_settings">
<CheckBoxPreference
android:defaultValue="@bool/btbv"
android:key="btbv"
android:summary="@string/pref_blind_trust_before_verification_summary"
android:title="@string/pref_blind_trust_before_verification" />
<CheckBoxPreference
android:defaultValue="@bool/dont_trust_system_cas"
android:key="dont_trust_system_cas"
android:summary="@string/pref_dont_trust_system_cas_summary"
android:title="@string/pref_dont_trust_system_cas_title" />
<CheckBoxPreference
android:defaultValue="@bool/validate_hostname"
android:key="validate_hostname"
android:summary="@string/pref_validate_hostname_summary"
android:title="@string/pref_validate_hostname" />
<CheckBoxPreference
android:defaultValue="@bool/allow_message_correction"
android:key="allow_message_correction"
android:summary="@string/pref_allow_message_correction_summary"
android:title="@string/pref_allow_message_correction" />
<ListPreference
android:defaultValue="@integer/automatic_message_deletion"
android:key="automatic_message_deletion"
android:summary="@string/pref_automatically_delete_messages_description"
android:title="@string/pref_automatically_delete_messages" />
<Preference
android:key="remove_trusted_certificates"
android:summary="@string/pref_remove_trusted_certificates_summary"
android:title="@string/pref_remove_trusted_certificates_title" />
<Preference
android:key="clean_cache"
android:summary="@string/pref_clean_cache_summary"
android:title="@string/pref_clean_cache" />
<Preference
android:key="clean_private_storage"
android:summary="@string/pref_clean_private_storage_summary"
android:title="@string/pref_clean_private_storage" />
<Preference
android:key="delete_omemo_identities"
android:summary="@string/pref_delete_omemo_identities_summary"
android:title="@string/pref_delete_omemo_identities" />
</PreferenceCategory>
<PreferenceCategory
android:key="connection_options"
android:title="@string/pref_connection_options">
<CheckBoxPreference
android:defaultValue="@bool/use_tor"
android:key="use_tor"
android:summary="@string/pref_use_tor_summary"
android:title="@string/pref_use_tor" />
<CheckBoxPreference
android:defaultValue="@bool/show_connection_options"
android:key="show_connection_options"
android:summary="@string/pref_show_connection_options_summary"
android:title="@string/pref_show_connection_options" />
</PreferenceCategory>
<PreferenceCategory android:title="@string/pref_input_options">
<CheckBoxPreference
android:defaultValue="@bool/start_searching"
android:key="start_searching"
android:summary="@string/pref_start_search_summary"
android:title="@string/pref_start_search" />
<CheckBoxPreference
android:defaultValue="@bool/enter_is_send"
android:key="enter_is_send"
android:summary="@string/pref_enter_is_send_summary"
android:title="@string/pref_enter_is_send" />
<CheckBoxPreference
android:defaultValue="@bool/display_enter_key"
android:key="display_enter_key"
android:summary="@string/pref_display_enter_key_summary"
android:title="@string/pref_display_enter_key" />
<CheckBoxPreference
android:defaultValue="@bool/scroll_to_bottom"
android:key="scroll_to_bottom"
android:summary="@string/pref_scroll_to_bottom_summary"
android:title="@string/pref_scroll_to_bottom" />
</PreferenceCategory>
<PreferenceCategory android:title="@string/pref_presence_settings">
<CheckBoxPreference
android:defaultValue="@bool/manually_change_presence"
android:disableDependentsState="true"
android:key="manually_change_presence"
android:summary="@string/pref_manually_change_presence_summary"
android:title="@string/pref_manually_change_presence" />
<CheckBoxPreference
android:defaultValue="@bool/away_when_screen_off"
android:dependency="manually_change_presence"
android:key="away_when_screen_off"
android:summary="@string/pref_away_when_screen_off_summary"
android:title="@string/pref_away_when_screen_off" />
<CheckBoxPreference
android:defaultValue="@bool/dnd_on_silent_mode"
android:dependency="manually_change_presence"
android:key="dnd_on_silent_mode"
android:summary="@string/pref_dnd_on_silent_mode_summary"
android:title="@string/pref_dnd_on_silent_mode" />
<CheckBoxPreference
android:defaultValue="@bool/treat_vibrate_as_silent"
android:dependency="dnd_on_silent_mode"
android:key="treat_vibrate_as_silent"
android:summary="@string/pref_treat_vibrate_as_dnd_summary"
android:title="@string/pref_treat_vibrate_as_silent" />
</PreferenceCategory>
<PreferenceCategory
android:key="group_chats"
android:title="@string/group_chats_and_channels">
<CheckBoxPreference
android:defaultValue="@bool/autojoin"
android:key="autojoin"
android:summary="@string/pref_autojoin_summary"
android:title="@string/pref_autojoin" />
<ListPreference
android:defaultValue="@string/default_channel_discovery"
android:entries="@array/channel_discovery_entries"
android:entryValues="@array/channel_discover_values"
android:key="channel_discovery_method"
android:summary="@string/pref_channel_discovery_summary"
android:title="@string/pref_channel_discovery" />
</PreferenceCategory>
<PreferenceCategory android:title="@string/pref_ui_options">
<CheckBoxPreference
android:defaultValue="@bool/always_full_timestamps"
android:key="always_full_timestamps"
android:summary="@string/pref_always_show_full_timestamps_summary"
android:title="@string/pref_always_show_full_timestamps" />
<CheckBoxPreference
android:defaultValue="@bool/skip_image_editor_screen"
android:key="skip_image_editor_screen"
android:summary="@string/pref_skip_image_editor_screen_summary"
android:title="@string/pref_skip_image_editor_screen" />
</PreferenceCategory>
<intent
android:action="android.intent.action.VIEW"
android:targetClass="eu.siacs.conversations.ui.SettingsActivity"
android:targetPackage="@string/applicationId">
<extra
android:name="page"
android:value="expert" />
</intent>
</PreferenceScreen>
</PreferenceCategory>
<PreferenceCategory android:title="@string/category_about">
<eu.siacs.conversations.ui.AboutPreference />
</PreferenceCategory>
<CheckBoxPreference
android:defaultValue="@bool/never_send"
android:key="never_send"
android:summary="@string/pref_never_send_crash_summary"
android:title="@string/pref_never_send_crash" />
<PreferenceCategory
android:key="security_options"
android:title="@string/pref_security_settings">
<CheckBoxPreference
android:defaultValue="@bool/btbv"
android:key="btbv"
android:summary="@string/pref_blind_trust_before_verification_summary"
android:title="@string/pref_blind_trust_before_verification" />
<CheckBoxPreference
android:defaultValue="@bool/dont_trust_system_cas"
android:key="dont_trust_system_cas"
android:summary="@string/pref_dont_trust_system_cas_summary"
android:title="@string/pref_dont_trust_system_cas_title" />
<CheckBoxPreference
android:defaultValue="@bool/validate_hostname"
android:key="validate_hostname"
android:summary="@string/pref_validate_hostname_summary"
android:title="@string/pref_validate_hostname" />
<CheckBoxPreference
android:defaultValue="@bool/allow_message_correction"
android:key="allow_message_correction"
android:summary="@string/pref_allow_message_correction_summary"
android:title="@string/pref_allow_message_correction" />
<ListPreference
android:defaultValue="@integer/automatic_message_deletion"
android:key="automatic_message_deletion"
android:summary="@string/pref_automatically_delete_messages_description"
android:title="@string/pref_automatically_delete_messages" />
<Preference
android:key="remove_trusted_certificates"
android:summary="@string/pref_remove_trusted_certificates_summary"
android:title="@string/pref_remove_trusted_certificates_title" />
<Preference
android:key="clean_cache"
android:summary="@string/pref_clean_cache_summary"
android:title="@string/pref_clean_cache" />
<Preference
android:key="clean_private_storage"
android:summary="@string/pref_clean_private_storage_summary"
android:title="@string/pref_clean_private_storage" />
<Preference
android:key="delete_omemo_identities"
android:summary="@string/pref_delete_omemo_identities_summary"
android:title="@string/pref_delete_omemo_identities" />
</PreferenceCategory>
<PreferenceCategory
android:key="connection_options"
android:title="@string/pref_connection_options">
<CheckBoxPreference
android:defaultValue="@bool/use_tor"
android:key="use_tor"
android:summary="@string/pref_use_tor_summary"
android:title="@string/pref_use_tor" />
<CheckBoxPreference
android:defaultValue="@bool/show_connection_options"
android:key="show_connection_options"
android:summary="@string/pref_show_connection_options_summary"
android:title="@string/pref_show_connection_options" />
</PreferenceCategory>
<PreferenceCategory android:title="@string/pref_input_options">
<CheckBoxPreference
android:defaultValue="@bool/start_searching"
android:key="start_searching"
android:summary="@string/pref_start_search_summary"
android:title="@string/pref_start_search" />
<CheckBoxPreference
android:defaultValue="@bool/enter_is_send"
android:key="enter_is_send"
android:summary="@string/pref_enter_is_send_summary"
android:title="@string/pref_enter_is_send" />
<CheckBoxPreference
android:defaultValue="@bool/display_enter_key"
android:key="display_enter_key"
android:summary="@string/pref_display_enter_key_summary"
android:title="@string/pref_display_enter_key" />
<CheckBoxPreference
android:defaultValue="@bool/scroll_to_bottom"
android:key="scroll_to_bottom"
android:summary="@string/pref_scroll_to_bottom_summary"
android:title="@string/pref_scroll_to_bottom" />
</PreferenceCategory>
<PreferenceCategory
android:key="group_chats"
android:title="@string/group_chats_and_channels">
<CheckBoxPreference
android:defaultValue="@bool/autojoin"
android:key="autojoin"
android:summary="@string/pref_autojoin_summary"
android:title="@string/pref_autojoin" />
<ListPreference
android:defaultValue="@string/default_channel_discovery"
android:entries="@array/channel_discovery_entries"
android:entryValues="@array/channel_discover_values"
android:key="channel_discovery_method"
android:summary="@string/pref_channel_discovery_summary"
android:title="@string/pref_channel_discovery" />
</PreferenceCategory>
<intent
android:action="android.intent.action.VIEW"
android:targetClass="eu.siacs.conversations.ui.SettingsActivity"
android:targetPackage="@string/applicationId">
<extra
android:name="page"
android:value="expert" />
</intent>
</PreferenceScreen>
<Preference
android:key="send_logs"
android:title="@string/pref_send_logs" />\
<eu.siacs.conversations.ui.AboutPreference />
</PreferenceScreen>