-Move subscription friend list checkbox from account pref to advanced pref

-Subscription friend list is enabled by default only for linphone domain
This commit is contained in:
Erwan Croze 2017-02-27 12:05:04 +01:00
parent 6836ec4e81
commit 7d345a5f16
7 changed files with 88 additions and 90 deletions

View file

@ -202,7 +202,7 @@
<item>Send logs</item>
<item>Cancel</item>
</string-array>
<string name="pref_use_lime_encryption_key">pref_use_lime_encryption_key</string>
<string name="pref_device_ringtone_key">pref_device_ringtone_key</string>
<string name="pref_auto_answer_key">pref_auto_answer_key</string>

View file

@ -87,11 +87,6 @@
android:key="@string/pref_escape_plus_key"
android:persistent="false"/>
<CheckBoxPreference
android:title="@string/pref_friendlist_subscribe"
android:key="@string/pref_friendlist_subscribe_key"
android:persistent="false"/>
<Preference
android:title="@string/pref_link_account"
android:key="@string/pref_link_account_key"

View file

@ -3,12 +3,12 @@
<!-- DO NOT PUT A PreferenceCategory INSIDE ANOTHER ONE EVER ! -->
<!-- It will trigger [PreferencesListFragment] addPreferencesFromResource TargetInvocationException error -->
<PreferenceCategory
android:title="@string/pref_sipaccounts"
android:key="@string/pref_sipaccounts_key"
android:persistent="false"/>
<Preference
android:title="@string/pref_add_account"
android:key="@string/pref_add_account_key"
@ -21,36 +21,36 @@
android:title="@string/pref_tunnel"
android:key="@string/pref_tunnel_key"
android:persistent="false">
<PreferenceCategory
android:title="@string/pref_tunnel">
<EditTextPreference
android:title="@string/pref_tunnel_host"
android:key="@string/pref_tunnel_host_key"
android:inputType="textUri"
android:persistent="false"/>
<EditTextPreference
android:title="@string/pref_tunnel_port"
android:key="@string/pref_tunnel_port_key"
android:numeric="integer"
android:persistent="false"/>
<ListPreference
android:title="@string/pref_tunnel_mode"
android:key="@string/pref_tunnel_mode_key"
android:entries="@array/tunnel_mode_entries"
android:entryValues="@array/tunnel_mode_entry_values"
android:persistent="false"/>
</PreferenceCategory>
</PreferenceScreen>
<PreferenceScreen
android:title="@string/pref_audio_title">
<PreferenceCategory
android:title="@string/pref_audio_title">
@ -59,7 +59,7 @@
android:key="@string/pref_echo_cancellation_key"
android:summary="@string/pref_echo_cancellation_summary"
android:persistent="false"/>
<Preference
android:title="@string/pref_echo_canceller_calibration"
android:key="@string/pref_echo_canceller_calibration_key"
@ -69,21 +69,21 @@
android:title="@string/pref_echo_tester"
android:key="@string/pref_echo_tester_key"
android:persistent="false"/>
<CheckBoxPreference
android:title="@string/pref_adaptive_rate_control"
android:key="@string/pref_adaptive_rate_control_key"
android:persistent="false"/>
<ListPreference
android:title="@string/pref_codec_bitrate_limit"
android:key="@string/pref_codec_bitrate_limit_key"
android:entries="@array/limit_bitrate_entries"
android:entryValues="@array/limit_bitrate_entry_values"
android:persistent="false"/>
</PreferenceCategory>
<PreferenceCategory
android:title="@string/pref_codecs"
android:key="@string/pref_codecs_key"
@ -95,7 +95,7 @@
android:title="@string/pref_video_title"
android:key="@string/pref_video_key"
android:persistent="false">
<PreferenceCategory
android:title="@string/pref_video_title">
@ -103,28 +103,28 @@
android:title="@string/pref_video_enable_title"
android:key="@string/pref_video_enable_key"
android:persistent="false"/>
<CheckBoxPreference
android:title="@string/pref_video_use_front_camera_title"
android:key="@string/pref_video_use_front_camera_key"
android:dependency="@string/pref_video_enable_key"
android:layout="@layout/hidden"
android:persistent="false"/>
<CheckBoxPreference
android:title="@string/pref_video_initiate_call_with_video_title"
android:key="@string/pref_video_initiate_call_with_video_key"
android:summary="@string/pref_video_initiate_call_with_video"
android:dependency="@string/pref_video_enable_key"
android:persistent="false"/>
<CheckBoxPreference
android:title="@string/pref_video_automatically_accept_video_title"
android:key="@string/pref_video_automatically_accept_video_key"
android:summary="@string/pref_video_automatically_accept_video"
android:dependency="@string/pref_video_enable_key"
android:persistent="false"/>
<ListPreference
android:title="@string/pref_video_preset"
android:key="@string/pref_video_preset_key"
@ -133,21 +133,21 @@
android:entries="@array/video_preset_entries"
android:entryValues="@array/video_preset_entries"
android:persistent="false"/>
<ListPreference
android:title="@string/pref_preferred_video_size"
android:key="@string/pref_preferred_video_size_key"
android:dependency="@string/pref_video_enable_key"
android:shouldDisableView="true"
android:persistent="false"/>
<ListPreference
android:title="@string/pref_preferred_fps"
android:key="@string/pref_preferred_video_fps_key"
android:dependency="@string/pref_video_enable_key"
android:shouldDisableView="true"
android:persistent="false"/>
<EditTextPreference
android:title="@string/pref_bandwidth_limit"
android:key="@string/pref_bandwidth_limit_key"
@ -155,17 +155,17 @@
android:shouldDisableView="true"
android:numeric="integer"
android:persistent="false"/>
<CheckBoxPreference
<CheckBoxPreference
android:title="@string/pref_overlay"
android:key="@string/pref_overlay_key"
android:dependency="@string/pref_video_enable_key"
android:shouldDisableView="true"
android:summary="@string/pref_overlay_summary"
android:persistent="false"/>
</PreferenceCategory>
<PreferenceCategory
android:title="@string/pref_video_codecs_title"
android:key="@string/pref_video_codecs_key"
@ -177,7 +177,7 @@
<PreferenceScreen
android:title="@string/pref_call_title">
<PreferenceCategory
android:title="@string/pref_call_title">
@ -185,61 +185,61 @@
android:title="@string/pref_device_ringtone"
android:key="@string/pref_device_ringtone_key"
android:persistent="false"/>
<ListPreference
android:title="@string/pref_media_encryption"
android:key="@string/pref_media_encryption_key"
android:persistent="false"/>
<CheckBoxPreference
android:title="@string/pref_sipinfo_dtmf"
android:key="@string/pref_sipinfo_dtmf_key"
android:persistent="false"/>
<CheckBoxPreference
android:title="@string/pref_rfc2833_dtmf"
android:key="@string/pref_rfc2833_dtmf_key"
android:persistent="false"/>
<CheckBoxPreference
android:title="@string/pref_auto_answer"
android:key="@string/pref_auto_answer_key"
android:persistent="false"/>
<EditTextPreference
android:title="@string/pref_voice_mail"
android:key="@string/pref_voice_mail_key"
android:persistent="false"/>
</PreferenceCategory>
</PreferenceScreen>
<PreferenceScreen
android:title="@string/pref_chat_title">
<PreferenceCategory
android:title="@string/pref_chat_title">
<ListPreference
<ListPreference
android:title="@string/pref_use_lime_encryption"
android:key="@string/pref_use_lime_encryption_key"
android:persistent="false"/>
<EditTextPreference
android:title="@string/pref_image_sharing_server_title"
android:key="@string/pref_image_sharing_server_key"
android:summary="@string/pref_image_sharing_server_desc"
android:inputType="textUri"
android:persistent="false"/>
</PreferenceCategory>
</PreferenceScreen>
<PreferenceScreen
android:title="@string/pref_network_title">
<PreferenceCategory
android:title="@string/pref_network_title">
@ -247,124 +247,129 @@
android:title="@string/pref_wifi_only"
android:key="@string/pref_wifi_only_key"
android:persistent="false"/>
<EditTextPreference
android:title="@string/pref_stun_server"
android:key="@string/pref_stun_server_key"
android:inputType="textUri"
android:persistent="false"/>
<CheckBoxPreference
android:title="@string/pref_ice_enable"
android:key="@string/pref_ice_enable_key"
android:persistent="false"/>
<CheckBoxPreference
android:title="@string/pref_turn_enable"
android:key="@string/pref_turn_enable_key"
android:persistent="false"/>
<EditTextPreference
<EditTextPreference
android:key="@string/pref_turn_username_key"
android:title="@string/pref_turn_username_title"
android:inputType="text|textNoSuggestions"
android:persistent="false"/>
<EditTextPreference
<EditTextPreference
android:key="@string/pref_turn_passwd_key"
android:title="@string/pref_turn_passwd_title"
android:inputType="textPassword"
android:persistent="false"/>
<CheckBoxPreference
android:title="@string/pref_upnp_enable"
android:key="@string/pref_upnp_enable_key"
android:persistent="false"/>
<CheckBoxPreference
android:title="@string/pref_transport_use_random_ports"
android:key="@string/pref_transport_use_random_ports_key"
android:persistent="false"/>
<EditTextPreference
android:title="@string/pref_sip_port_title"
android:key="@string/pref_sip_port_key"
android:numeric="integer"
android:persistent="false"/>
<EditTextPreference
android:title="@string/pref_audio_port_title"
android:key="@string/pref_audio_port_key"
android:summary="@string/pref_audio_port_description"
android:layout="@layout/hidden"
android:persistent="false"/>
<EditTextPreference
android:title="@string/pref_video_port_title"
android:key="@string/pref_video_port_key"
android:summary="@string/pref_video_port_description"
android:layout="@layout/hidden"
android:persistent="false"/>
<CheckBoxPreference
android:title="@string/pref_push_notification"
android:key="@string/pref_push_notification_key"
android:persistent="false"/>
<CheckBoxPreference
android:title="@string/pref_ipv6_title"
android:key="@string/pref_ipv6_key"
android:persistent="false"/>
</PreferenceCategory>
</PreferenceScreen>
<PreferenceScreen
android:title="@string/pref_advanced_title">
<PreferenceCategory
android:title="@string/pref_advanced_title">
<CheckBoxPreference
android:title="@string/pref_friendlist_subscribe"
android:key="@string/pref_friendlist_subscribe_key"
android:persistent="false"/>
<CheckBoxPreference
android:title="@string/pref_debug"
android:key="@string/pref_debug_key"
android:persistent="false"/>
<CheckBoxPreference
android:title="@string/pref_background_mode"
android:key="@string/pref_background_mode_key"
android:persistent="false"/>
<CheckBoxPreference
android:title="@string/pref_service_notification"
android:key="@string/pref_service_notification_key"
android:persistent="false"/>
<CheckBoxPreference
android:title="@string/pref_autostart"
android:key="@string/pref_autostart_key"
android:persistent="false"/>
<EditTextPreference
android:title="@string/pref_incoming_call_timeout_title"
android:key="@string/pref_incoming_call_timeout_key"
android:layout="@layout/hidden"
android:persistent="false"/>
<EditTextPreference
android:title="@string/pref_remote_provisioning_title"
android:key="@string/pref_remote_provisioning_key"
android:inputType="textUri"
android:persistent="false"/>
<Preference
<Preference
android:title="@string/pref_android_app_settings_title"
android:key="@string/pref_android_app_settings_key"
android:persistent="false"/>
</PreferenceCategory>
<PreferenceCategory
android:title="@string/pref_primary_account_title">
@ -380,7 +385,7 @@
android:persistent="false"/>
</PreferenceCategory>
<PreferenceScreen
android:title="@string/pref_audio_hacks_title"
android:layout="@layout/hidden">

View file

@ -247,15 +247,6 @@ public class AccountPreferencesFragment extends PreferencesListFragment implemen
return true;
}
};
OnPreferenceChangeListener friendlistSubscribeListener = new OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
boolean value = (Boolean) newValue;
mPrefs.enabledFriendlistSubscription(value);
LinphoneManager.getInstance().subscribeFriendList(value);
return true;
}
};
OnPreferenceClickListener linkAccountListener = new OnPreferenceClickListener() {
@Override
public boolean onPreferenceClick(Preference preference) {
@ -397,13 +388,7 @@ public class AccountPreferencesFragment extends PreferencesListFragment implemen
escape.setChecked(mPrefs.getReplacePlusByZeroZero(n));
}
CheckBoxPreference friendlistSubscribe = (CheckBoxPreference) advanced.getPreference(8);
friendlistSubscribe.setOnPreferenceChangeListener(friendlistSubscribeListener);
if(!isNewAccount){
friendlistSubscribe.setChecked(mPrefs.isFriendlistsubscriptionEnabled());
}
Preference linkAccount = advanced.getPreference(9);
Preference linkAccount = advanced.getPreference(8);
linkAccount.setOnPreferenceClickListener(linkAccountListener);
PreferenceCategory manage = (PreferenceCategory) getPreferenceScreen().findPreference(getString(R.string.pref_manage_key));

View file

@ -788,7 +788,7 @@ public class LinphoneManager implements LinphoneCoreListener, LinphoneChatMessag
mLc.setCallLogsDatabasePath(mCallLogDatabaseFile);
mLc.setFriendsDatabasePath(mFriendsDatabaseFile);
mLc.setUserCertificatesPath(mUserCertificatePath);
subscribeFriendList(mPrefs.isFriendlistsubscriptionEnabled());
subscribeFriendList(false);
//mLc.setCallErrorTone(Reason.NotFound, mErrorToneFile);
enableDeviceRingtone(mPrefs.isDeviceRingtoneEnabled());

View file

@ -1150,6 +1150,7 @@ public class SettingsFragment extends PreferencesListFragment {
}
private void initAdvancedSettings() {
((CheckBoxPreference)findPreference(getString(R.string.pref_friendlist_subscribe_key))).setChecked(mPrefs.isFriendlistsubscriptionEnabled());
((CheckBoxPreference)findPreference(getString(R.string.pref_debug_key))).setChecked(mPrefs.isDebugEnabled());
((CheckBoxPreference)findPreference(getString(R.string.pref_background_mode_key))).setChecked(mPrefs.isBackgroundModeEnabled());
((CheckBoxPreference)findPreference(getString(R.string.pref_service_notification_key))).setChecked(mPrefs.getServiceNotificationVisibility());
@ -1160,6 +1161,17 @@ public class SettingsFragment extends PreferencesListFragment {
}
private void setAdvancedPreferencesListener() {
findPreference(getString(R.string.pref_friendlist_subscribe_key)).setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
boolean value = (Boolean) newValue;
mPrefs.enabledFriendlistSubscription(value);
LinphoneManager.getInstance().subscribeFriendList(value);
return true;
}
});
findPreference(getString(R.string.pref_debug_key)).setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {

View file

@ -510,6 +510,7 @@ private static AssistantActivity instance;
.setNoDefault(false);
mPrefs.enabledFriendlistSubscription(getResources().getBoolean(R.bool.use_friendlist_subscription));
LinphoneManager.getInstance().subscribeFriendList(getResources().getBoolean(R.bool.use_friendlist_subscription));
mPrefs.setStunServer(getString(R.string.default_stun));
mPrefs.setIceEnabled(true);