mirror of
https://github.com/oxen-io/session-android.git
synced 2025-08-26 09:27:54 +00:00
Support granular "custom" MMS preferences.
1) Make each MMS preference an individual choice between custom and default. 2) Display default values. Closes #2487 // FREEBIE
This commit is contained in:
33
res/layout/custom_default_preference_dialog.xml
Normal file
33
res/layout/custom_default_preference_dialog.xml
Normal file
@@ -0,0 +1,33 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:orientation="vertical"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<Spinner android:id="@+id/default_or_custom"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:entries="@array/default_or_custom_entries"
|
||||
android:entryValues="@array/default_or_custom_values"
|
||||
android:layout_marginStart="16dip"
|
||||
android:layout_marginLeft="16dip"
|
||||
android:spinnerMode="dropdown"/>
|
||||
|
||||
<TextView android:id="@+id/default_label"
|
||||
android:layout_marginLeft="18dip"
|
||||
android:layout_marginRight="16dip"
|
||||
android:layout_marginTop="16dip"
|
||||
android:layout_marginBottom="16dip"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"/>
|
||||
|
||||
<EditText android:id="@+id/custom_edit"
|
||||
android:layout_marginLeft="16dip"
|
||||
android:layout_marginRight="16dip"
|
||||
android:layout_marginTop="16dip"
|
||||
android:layout_marginBottom="16dip"
|
||||
android:visibility="gone"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"/>
|
||||
|
||||
</LinearLayout>
|
@@ -202,4 +202,15 @@
|
||||
<item>5</item>
|
||||
<item>10</item>
|
||||
</string-array>
|
||||
|
||||
<string-array name="default_or_custom_values" translatable="false">
|
||||
<item>default</item>
|
||||
<item>custom</item>
|
||||
</string-array>
|
||||
|
||||
<string-array name="default_or_custom_entries">
|
||||
<item>@string/arrays__use_default</item>
|
||||
<item>@string/arrays__use_custom</item>
|
||||
</string-array>
|
||||
|
||||
</resources>
|
||||
|
@@ -101,4 +101,9 @@
|
||||
<attr name="pref_ic_advanced" format="reference" />
|
||||
|
||||
<attr name="app_protect_timeout_picker_color" format="reference"/>
|
||||
|
||||
<declare-styleable name="CustomDefaultPreference">
|
||||
<attr name="custom_pref_toggle" format="string"/>
|
||||
</declare-styleable>
|
||||
|
||||
</resources>
|
||||
|
@@ -153,6 +153,11 @@
|
||||
<!-- ConversationListItem -->
|
||||
<string name="ConversationListItem_key_exchange_message">Key exchange message...</string>
|
||||
|
||||
<!-- CustomDefaultPreference -->
|
||||
<string name="CustomDefaultPreference_using_custom">Using custom: %s</string>
|
||||
<string name="CustomDefaultPreference_using_default">Using default: %s</string>
|
||||
<string name="CustomDefaultPreference_none">None</string>
|
||||
|
||||
<!-- DateUtils -->
|
||||
<string name="DateUtils_now">Now</string>
|
||||
|
||||
@@ -691,6 +696,8 @@
|
||||
<!-- arrays.xml -->
|
||||
<string name="arrays__import_export">Import / export</string>
|
||||
<string name="arrays__my_identity_key">My identity key</string>
|
||||
<string name="arrays__use_default">Use default</string>
|
||||
<string name="arrays__use_custom">Use custom</string>
|
||||
|
||||
<!-- plurals.xml -->
|
||||
<plurals name="minutes_ago">
|
||||
@@ -775,11 +782,11 @@
|
||||
<string name="preferences__advanced_mms_access_point_names">Manual MMS settings</string>
|
||||
<string name="preferences__enable_manual_mms">Use manual MMS settings</string>
|
||||
<string name="preferences__override_system_mms_settings">Override system MMS settings with the information below.</string>
|
||||
<string name="preferences__mmsc_url_required">MMSC URL (Required)</string>
|
||||
<string name="preferences__mms_proxy_host_optional">MMS Proxy Host (Optional)</string>
|
||||
<string name="preferences__mms_proxy_port_optional">MMS Proxy Port (Optional)</string>
|
||||
<string name="preferences__mmsc_username_optional">MMSC Username (Optional)</string>
|
||||
<string name="preferences__mmsc_password_optional">MMSC Password (Optional)</string>
|
||||
<string name="preferences__mmsc_url">MMSC URL</string>
|
||||
<string name="preferences__mms_proxy_host">MMS Proxy Host</string>
|
||||
<string name="preferences__mms_proxy_port">MMS Proxy Port</string>
|
||||
<string name="preferences__mmsc_username">MMSC Username</string>
|
||||
<string name="preferences__mmsc_password">MMSC Password</string>
|
||||
<string name="preferences__sms_delivery_reports">SMS delivery reports</string>
|
||||
<string name="preferences__request_a_delivery_report_for_each_sms_message_you_send">Request a delivery report for each SMS message you send</string>
|
||||
<string name="preferences__automatically_delete_older_messages_once_a_conversation_thread_exceeds_a_specified_length">Automatically delete older messages once a conversation thread exceeds a specified length</string>
|
||||
|
@@ -1,33 +1,36 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<CheckBoxPreference android:key="pref_enable_manual_mms"
|
||||
android:defaultValue="false"
|
||||
android:title="@string/preferences__enable_manual_mms"
|
||||
android:summary="@string/preferences__override_system_mms_settings"/>
|
||||
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||
|
||||
<EditTextPreference android:key="pref_apn_mmsc_host"
|
||||
android:title="@string/preferences__mmsc_url_required"
|
||||
android:dependency="pref_enable_manual_mms"
|
||||
android:inputType="textUri" />
|
||||
<org.thoughtcrime.securesms.components.CustomDefaultPreference
|
||||
app:custom_pref_toggle="pref_apn_mmsc_custom_host"
|
||||
android:key="pref_apn_mmsc_host"
|
||||
android:title="@string/preferences__mmsc_url"
|
||||
android:inputType="textUri" />
|
||||
|
||||
<EditTextPreference android:key="pref_apn_mms_proxy"
|
||||
android:title="@string/preferences__mms_proxy_host_optional"
|
||||
android:dependency="pref_enable_manual_mms"
|
||||
android:inputType="textUri" />
|
||||
<org.thoughtcrime.securesms.components.CustomDefaultPreference
|
||||
app:custom_pref_toggle="pref_apn_mms_custom_proxy"
|
||||
android:key="pref_apn_mms_proxy"
|
||||
android:title="@string/preferences__mms_proxy_host"
|
||||
android:inputType="textUri" />
|
||||
|
||||
<EditTextPreference android:key="pref_apn_mms_proxy_port"
|
||||
android:title="@string/preferences__mms_proxy_port_optional"
|
||||
android:dependency="pref_enable_manual_mms"
|
||||
android:inputType="number" />
|
||||
<org.thoughtcrime.securesms.components.CustomDefaultPreference
|
||||
app:custom_pref_toggle="pref_apn_mms_custom_proxy_port"
|
||||
android:key="pref_apn_mms_proxy_port"
|
||||
android:title="@string/preferences__mms_proxy_port"
|
||||
android:inputType="number"/>
|
||||
|
||||
<EditTextPreference android:key="pref_apn_mmsc_username"
|
||||
android:title="@string/preferences__mmsc_username_optional"
|
||||
android:dependency="pref_enable_manual_mms"
|
||||
android:inputType="textNoSuggestions" />
|
||||
<org.thoughtcrime.securesms.components.CustomDefaultPreference
|
||||
app:custom_pref_toggle="pref_apn_mmsc_custom_username"
|
||||
android:key="pref_apn_mmsc_username"
|
||||
android:title="@string/preferences__mmsc_username"
|
||||
android:inputType="textNoSuggestions"/>
|
||||
|
||||
<org.thoughtcrime.securesms.components.CustomDefaultPreference
|
||||
app:custom_pref_toggle="pref_apn_mmsc_custom_password"
|
||||
android:key="pref_apn_mmsc_password"
|
||||
android:title="@string/preferences__mmsc_password"
|
||||
android:inputType="textVisiblePassword"/>
|
||||
|
||||
<EditTextPreference android:key="pref_apn_mmsc_password"
|
||||
android:title="@string/preferences__mmsc_password_optional"
|
||||
android:dependency="pref_enable_manual_mms"
|
||||
android:inputType="textVisiblePassword" />
|
||||
</PreferenceScreen>
|
Reference in New Issue
Block a user