Added dial prefix and dial escape to accounts params + fix for account expire
This commit is contained in:
parent
5c31f7e3f6
commit
fbce02c572
10 changed files with 106 additions and 68 deletions
|
@ -371,6 +371,7 @@
|
|||
<string name="call_state_incoming">Reçu</string>
|
||||
|
||||
<string name="pref_background_mode">Actif en arrière plan</string>
|
||||
<string name="pref_manage">Gestion</string>
|
||||
|
||||
<string name="show_image">Afficher</string>
|
||||
<string name="download_image">Télécharger</string>
|
||||
|
|
|
@ -430,6 +430,7 @@
|
|||
<string name="pref_help_auth_userid">Enter authentication userid (optionnal)</string>
|
||||
|
||||
<string name="pref_upnp_enable">Enable UPNP</string>
|
||||
<string name="pref_manage">Manage</string>
|
||||
|
||||
<string name="wait">Please wait...</string>
|
||||
<string name="importing_messages">Updating messages database</string>
|
||||
|
|
|
@ -122,4 +122,8 @@
|
|||
<string name="pref_upnp_enable_key">pref_upnp_enable_key</string>
|
||||
|
||||
<string name="pref_first_time_linphone_chat_storage">pref_first_time_linphone_chat_storage</string>
|
||||
|
||||
<string name="pref_sipaccount_key">pref_sipaccount_key</string>
|
||||
<string name="pref_advanced_key">pref_advanced_key</string>
|
||||
<string name="pref_manage_key">pref_manage_key</string>
|
||||
</resources>
|
||||
|
|
|
@ -430,6 +430,7 @@
|
|||
<string name="pref_help_auth_userid">Enter authentication userid (optionnal)</string>
|
||||
|
||||
<string name="pref_upnp_enable">Enable UPNP</string>
|
||||
<string name="pref_manage">Manage</string>
|
||||
|
||||
<string name="wait">Please wait...</string>
|
||||
<string name="importing_messages">Updating messages database</string>
|
||||
|
|
|
@ -2,7 +2,8 @@
|
|||
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
|
||||
<PreferenceCategory
|
||||
android:title="@string/pref_sipaccount">
|
||||
android:title="@string/pref_sipaccount"
|
||||
android:key="@string/pref_sipaccount_key">
|
||||
|
||||
<EditTextPreference
|
||||
android:title="@string/pref_username"
|
||||
|
@ -24,7 +25,8 @@
|
|||
</PreferenceCategory>
|
||||
|
||||
<PreferenceCategory
|
||||
android:title="@string/pref_advanced">
|
||||
android:title="@string/pref_advanced"
|
||||
android:key="@string/pref_advanced_key">
|
||||
|
||||
<EditTextPreference
|
||||
android:title="@string/pref_proxy"
|
||||
|
@ -42,6 +44,20 @@
|
|||
android:key="@string/pref_expire_key"
|
||||
android:numeric="integer" />
|
||||
|
||||
<EditTextPreference
|
||||
android:title="@string/pref_prefix"
|
||||
android:key="@string/pref_prefix_key"/>
|
||||
|
||||
<CheckBoxPreference
|
||||
android:title="@string/pref_escape_plus"
|
||||
android:key="@string/pref_escape_plus_key"/>
|
||||
|
||||
</PreferenceCategory>
|
||||
|
||||
<PreferenceCategory
|
||||
android:title="@string/pref_manage"
|
||||
android:key="@string/pref_manage_key">
|
||||
|
||||
<CheckBoxPreference
|
||||
android:title="@string/pref_disable_account"
|
||||
android:persistent="true"/>
|
||||
|
|
|
@ -104,14 +104,6 @@
|
|||
<PreferenceScreen
|
||||
android:title="@string/call">
|
||||
|
||||
<EditTextPreference
|
||||
android:title="@string/pref_prefix"
|
||||
android:key="@string/pref_prefix_key"/>
|
||||
|
||||
<CheckBoxPreference
|
||||
android:title="@string/pref_escape_plus"
|
||||
android:key="@string/pref_escape_plus_key"/>
|
||||
|
||||
<CheckBoxPreference
|
||||
android:title="@string/pref_sipinfo_dtmf"
|
||||
android:key="@string/pref_sipinfo_dtmf_key"/>
|
||||
|
|
|
@ -35,9 +35,11 @@ import android.text.InputType;
|
|||
*/
|
||||
public class AccountPreferencesFragment extends PreferencesListFragment {
|
||||
private int n;
|
||||
private LinphonePreferences mPrefs;
|
||||
|
||||
public AccountPreferencesFragment() {
|
||||
super(R.xml.account_preferences);
|
||||
mPrefs = LinphonePreferences.instance();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -58,7 +60,7 @@ public class AccountPreferencesFragment extends PreferencesListFragment {
|
|||
OnPreferenceChangeListener usernameChangedListener = new OnPreferenceChangeListener() {
|
||||
@Override
|
||||
public boolean onPreferenceChange(Preference preference, Object newValue) {
|
||||
LinphonePreferences.instance().setAccountUsername(n, newValue.toString());
|
||||
mPrefs.setAccountUsername(n, newValue.toString());
|
||||
preference.setSummary(newValue.toString());
|
||||
return true;
|
||||
}
|
||||
|
@ -66,7 +68,7 @@ public class AccountPreferencesFragment extends PreferencesListFragment {
|
|||
OnPreferenceChangeListener useridChangedListener = new OnPreferenceChangeListener() {
|
||||
@Override
|
||||
public boolean onPreferenceChange(Preference preference, Object newValue) {
|
||||
LinphonePreferences.instance().setAccountUserId(n, newValue.toString());
|
||||
mPrefs.setAccountUserId(n, newValue.toString());
|
||||
preference.setSummary(newValue.toString());
|
||||
return true;
|
||||
}
|
||||
|
@ -74,14 +76,14 @@ public class AccountPreferencesFragment extends PreferencesListFragment {
|
|||
OnPreferenceChangeListener passwordChangedListener = new OnPreferenceChangeListener() {
|
||||
@Override
|
||||
public boolean onPreferenceChange(Preference preference, Object newValue) {
|
||||
LinphonePreferences.instance().setAccountPassword(n, newValue.toString());
|
||||
mPrefs.setAccountPassword(n, newValue.toString());
|
||||
return true;
|
||||
}
|
||||
};
|
||||
OnPreferenceChangeListener domainChangedListener = new OnPreferenceChangeListener() {
|
||||
@Override
|
||||
public boolean onPreferenceChange(Preference preference, Object newValue) {
|
||||
LinphonePreferences.instance().setAccountDomain(n, newValue.toString());
|
||||
mPrefs.setAccountDomain(n, newValue.toString());
|
||||
preference.setSummary(newValue.toString());
|
||||
return true;
|
||||
}
|
||||
|
@ -89,7 +91,7 @@ public class AccountPreferencesFragment extends PreferencesListFragment {
|
|||
OnPreferenceChangeListener proxyChangedListener = new OnPreferenceChangeListener() {
|
||||
@Override
|
||||
public boolean onPreferenceChange(Preference preference, Object newValue) {
|
||||
LinphonePreferences.instance().setAccountProxy(n, newValue.toString());
|
||||
mPrefs.setAccountProxy(n, newValue.toString());
|
||||
preference.setSummary(newValue.toString());
|
||||
return true;
|
||||
}
|
||||
|
@ -97,22 +99,39 @@ public class AccountPreferencesFragment extends PreferencesListFragment {
|
|||
OnPreferenceChangeListener outboundProxyChangedListener = new OnPreferenceChangeListener() {
|
||||
@Override
|
||||
public boolean onPreferenceChange(Preference preference, Object newValue) {
|
||||
LinphonePreferences.instance().setAccountOutboundProxyEnabled(n, (Boolean) newValue);
|
||||
mPrefs.setAccountOutboundProxyEnabled(n, (Boolean) newValue);
|
||||
return true;
|
||||
}
|
||||
};
|
||||
OnPreferenceChangeListener expiresChangedListener = new OnPreferenceChangeListener() {
|
||||
@Override
|
||||
public boolean onPreferenceChange(Preference preference, Object newValue) {
|
||||
LinphonePreferences.instance().setExpires(n, newValue.toString());
|
||||
mPrefs.setExpires(n, newValue.toString());
|
||||
preference.setSummary(newValue.toString());
|
||||
return true;
|
||||
}
|
||||
};
|
||||
OnPreferenceChangeListener prefixChangedListener = new OnPreferenceChangeListener() {
|
||||
@Override
|
||||
public boolean onPreferenceChange(Preference preference, Object newValue) {
|
||||
String value = newValue.toString();
|
||||
preference.setSummary(value);
|
||||
mPrefs.setPrefix(n, value);
|
||||
return true;
|
||||
}
|
||||
};
|
||||
OnPreferenceChangeListener escapeChangedListener = new OnPreferenceChangeListener() {
|
||||
@Override
|
||||
public boolean onPreferenceChange(Preference preference, Object newValue) {
|
||||
boolean value = (Boolean) newValue;
|
||||
mPrefs.setReplacePlusByZeroZero(n, value);
|
||||
return true;
|
||||
}
|
||||
};
|
||||
OnPreferenceChangeListener disableChangedListener = new OnPreferenceChangeListener() {
|
||||
@Override
|
||||
public boolean onPreferenceChange(Preference preference, Object newValue) {
|
||||
LinphonePreferences.instance().setAccountEnabled(n, (Boolean) newValue);
|
||||
mPrefs.setAccountEnabled(n, (Boolean) newValue);
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
@ -124,60 +143,71 @@ public class AccountPreferencesFragment extends PreferencesListFragment {
|
|||
};
|
||||
|
||||
private void manageAccountPreferencesFields(PreferenceScreen parent) {
|
||||
boolean isDefaultAccount = LinphonePreferences.instance().getDefaultAccountIndex() == n;
|
||||
boolean isDefaultAccount = mPrefs.getDefaultAccountIndex() == n;
|
||||
|
||||
PreferenceCategory account = (PreferenceCategory) getPreferenceScreen().getPreference(0);
|
||||
PreferenceCategory account = (PreferenceCategory) getPreferenceScreen().findPreference(getString(R.string.pref_sipaccount_key));
|
||||
EditTextPreference username = (EditTextPreference) account.getPreference(0);
|
||||
username.setText(LinphonePreferences.instance().getAccountUsername(n));
|
||||
username.setText(mPrefs.getAccountUsername(n));
|
||||
username.getEditText().setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_EMAIL_ADDRESS);
|
||||
username.setOnPreferenceChangeListener(usernameChangedListener);
|
||||
username.setSummary(username.getText());
|
||||
|
||||
EditTextPreference userid = (EditTextPreference) account.getPreference(1);
|
||||
userid.setText(LinphonePreferences.instance().getAccountUserId(n));
|
||||
userid.setText(mPrefs.getAccountUserId(n));
|
||||
userid.getEditText().setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_EMAIL_ADDRESS);
|
||||
userid.setOnPreferenceChangeListener(useridChangedListener);
|
||||
userid.setSummary(userid.getText());
|
||||
|
||||
EditTextPreference password = (EditTextPreference) account.getPreference(2);
|
||||
password.setText(LinphonePreferences.instance().getAccountPassword(n));
|
||||
password.setText(mPrefs.getAccountPassword(n));
|
||||
password.getEditText().setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD);
|
||||
password.setOnPreferenceChangeListener(passwordChangedListener);
|
||||
|
||||
EditTextPreference domain = (EditTextPreference) account.getPreference(3);
|
||||
domain.setText(LinphonePreferences.instance().getAccountDomain(n));
|
||||
domain.setText(mPrefs.getAccountDomain(n));
|
||||
domain.getEditText().setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_EMAIL_ADDRESS);
|
||||
domain.setOnPreferenceChangeListener(domainChangedListener);
|
||||
domain.setSummary(domain.getText());
|
||||
|
||||
PreferenceCategory advanced = (PreferenceCategory) getPreferenceScreen().getPreference(1);
|
||||
PreferenceCategory advanced = (PreferenceCategory) getPreferenceScreen().findPreference(getString(R.string.pref_advanced_key));
|
||||
EditTextPreference proxy = (EditTextPreference) advanced.getPreference(0);
|
||||
proxy.setText(LinphonePreferences.instance().getAccountProxy(n));
|
||||
proxy.setText(mPrefs.getAccountProxy(n));
|
||||
proxy.getEditText().setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_EMAIL_ADDRESS);
|
||||
proxy.setOnPreferenceChangeListener(proxyChangedListener);
|
||||
proxy.setSummary("".equals(proxy.getText()) || (proxy.getText() == null) ? getString(R.string.pref_help_proxy) : proxy.getText());
|
||||
|
||||
CheckBoxPreference outboundProxy = (CheckBoxPreference) advanced.getPreference(1);
|
||||
outboundProxy.setChecked(LinphonePreferences.instance().isAccountOutboundProxySet(n));
|
||||
outboundProxy.setChecked(mPrefs.isAccountOutboundProxySet(n));
|
||||
outboundProxy.setOnPreferenceChangeListener(outboundProxyChangedListener);
|
||||
|
||||
EditTextPreference expires = (EditTextPreference) advanced.getPreference(2);
|
||||
expires.setText(LinphonePreferences.instance().getExpires(n));
|
||||
expires.setText(mPrefs.getExpires(n));
|
||||
expires.setOnPreferenceChangeListener(expiresChangedListener);
|
||||
expires.setSummary(LinphonePreferences.instance().getExpires(n));
|
||||
expires.setSummary(mPrefs.getExpires(n));
|
||||
|
||||
final CheckBoxPreference disable = (CheckBoxPreference) advanced.getPreference(3);
|
||||
EditTextPreference prefix = (EditTextPreference) advanced.getPreference(3);
|
||||
String prefixValue = mPrefs.getPrefix(n);
|
||||
prefix.setSummary(prefixValue);
|
||||
prefix.setText(prefixValue);
|
||||
prefix.setOnPreferenceChangeListener(prefixChangedListener);
|
||||
|
||||
CheckBoxPreference escape = (CheckBoxPreference) advanced.getPreference(4);
|
||||
escape.setChecked(mPrefs.getReplacePlusByZeroZero(n));
|
||||
escape.setOnPreferenceChangeListener(escapeChangedListener);
|
||||
|
||||
PreferenceCategory manage = (PreferenceCategory) getPreferenceScreen().findPreference(getString(R.string.pref_manage_key));
|
||||
final CheckBoxPreference disable = (CheckBoxPreference) manage.getPreference(0);
|
||||
disable.setEnabled(true);
|
||||
disable.setChecked(!LinphonePreferences.instance().isAccountEnabled(n));
|
||||
disable.setChecked(!mPrefs.isAccountEnabled(n));
|
||||
disable.setOnPreferenceChangeListener(disableChangedListener);
|
||||
|
||||
CheckBoxPreference mainAccount = (CheckBoxPreference) advanced.getPreference(4);
|
||||
CheckBoxPreference mainAccount = (CheckBoxPreference) manage.getPreference(1);
|
||||
mainAccount.setChecked(isDefaultAccount);
|
||||
mainAccount.setEnabled(!mainAccount.isChecked());
|
||||
mainAccount.setOnPreferenceClickListener(new OnPreferenceClickListener()
|
||||
{
|
||||
public boolean onPreferenceClick(Preference preference) {
|
||||
LinphonePreferences.instance().setDefaultAccount(n);
|
||||
mPrefs.setDefaultAccount(n);
|
||||
disable.setEnabled(false);
|
||||
disable.setChecked(false);
|
||||
preference.setEnabled(false);
|
||||
|
@ -185,11 +215,11 @@ public class AccountPreferencesFragment extends PreferencesListFragment {
|
|||
}
|
||||
});
|
||||
|
||||
final Preference delete = advanced.getPreference(5);
|
||||
final Preference delete = manage.getPreference(2);
|
||||
delete.setEnabled(true);
|
||||
delete.setOnPreferenceClickListener(new OnPreferenceClickListener() {
|
||||
public boolean onPreferenceClick(Preference preference) {
|
||||
LinphonePreferences.instance().deleteAccount(n);
|
||||
mPrefs.deleteAccount(n);
|
||||
LinphoneActivity.instance().displaySettings();
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -287,10 +287,32 @@ public class LinphonePreferences {
|
|||
|
||||
public void setExpires(int n, String expire) {
|
||||
try {
|
||||
getProxyConfig(n).setExpires(Integer.parseInt(expire));
|
||||
LinphoneProxyConfig prxCfg = getProxyConfig(n);
|
||||
prxCfg.setExpires(Integer.parseInt(expire));
|
||||
prxCfg.done();
|
||||
} catch (NumberFormatException nfe) { }
|
||||
}
|
||||
|
||||
public String getPrefix(int n) {
|
||||
return getProxyConfig(n).getDialPrefix();
|
||||
}
|
||||
|
||||
public void setPrefix(int n, String prefix) {
|
||||
LinphoneProxyConfig prxCfg = getProxyConfig(n);
|
||||
prxCfg.setDialPrefix(prefix);
|
||||
prxCfg.done();
|
||||
}
|
||||
|
||||
public boolean getReplacePlusByZeroZero(int n) {
|
||||
return getProxyConfig(n).getDialEscapePlus();
|
||||
}
|
||||
|
||||
public void setReplacePlusByZeroZero(int n, boolean replace) {
|
||||
LinphoneProxyConfig prxCfg = getProxyConfig(n);
|
||||
prxCfg.setDialEscapePlus(replace);
|
||||
prxCfg.done();
|
||||
}
|
||||
|
||||
public void setDefaultAccount(int accountIndex) {
|
||||
LinphoneProxyConfig[] prxCfgs = getLc().getProxyConfigList();
|
||||
if (accountIndex >= 0 && accountIndex < prxCfgs.length)
|
||||
|
@ -592,7 +614,6 @@ public class LinphonePreferences {
|
|||
getLc().setMediaEncryption(menc);
|
||||
}
|
||||
|
||||
// Push Notifications
|
||||
public void setPushNotificationEnabled(boolean enable) {
|
||||
getConfig().setBool("app", "push_notification", enable);
|
||||
}
|
||||
|
@ -608,7 +629,6 @@ public class LinphonePreferences {
|
|||
public String getPushNotificationRegistrationID() {
|
||||
return getConfig().getString("app", "push_notification_regid", null);
|
||||
}
|
||||
// End of Push Notifications
|
||||
|
||||
public void useIpv6(Boolean enable) {
|
||||
getLc().enableIpv6(enable);
|
||||
|
@ -617,7 +637,6 @@ public class LinphonePreferences {
|
|||
public boolean isUsingIpv6() {
|
||||
return getLc().isIpv6Enabled();
|
||||
}
|
||||
|
||||
// End of network settings
|
||||
|
||||
// Advanced settings
|
||||
|
|
|
@ -555,11 +555,6 @@ public class SettingsFragment extends PreferencesListFragment implements EcCalib
|
|||
}
|
||||
|
||||
private void initCallSettings() {
|
||||
/*
|
||||
setPreferenceDefaultValueAndSummary(R.string.pref_prefix_key, mPrefs.getPrefix());
|
||||
((CheckBoxPreference) findPreference(getString(R.string.pref_escape_plus))).setChecked(mPrefs.replacePlusByZeroZero());
|
||||
*/
|
||||
|
||||
CheckBoxPreference rfc2833 = (CheckBoxPreference) findPreference(getString(R.string.pref_rfc2833_dtmf_key));
|
||||
CheckBoxPreference sipInfo = (CheckBoxPreference) findPreference(getString(R.string.pref_sipinfo_dtmf_key));
|
||||
if (mPrefs.useRfc2833Dtmfs()) {
|
||||
|
@ -574,27 +569,6 @@ public class SettingsFragment extends PreferencesListFragment implements EcCalib
|
|||
}
|
||||
|
||||
private void setCallPreferencesListener() {
|
||||
/*
|
||||
findPreference(getString(R.string.pref_prefix_key)).setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
|
||||
@Override
|
||||
public boolean onPreferenceChange(Preference preference, Object newValue) {
|
||||
String value = newValue.toString();
|
||||
preference.setSummary(value);
|
||||
mPrefs.setPrefix(value);
|
||||
return true;
|
||||
}
|
||||
});
|
||||
|
||||
findPreference(getString(R.string.pref_escape_plus)).setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
|
||||
@Override
|
||||
public boolean onPreferenceChange(Preference preference, Object newValue) {
|
||||
boolean value = (Boolean) newValue;
|
||||
mPrefs.setReplacePlusByZeroZero(value);
|
||||
return true;
|
||||
}
|
||||
});
|
||||
*/
|
||||
|
||||
findPreference(getString(R.string.pref_rfc2833_dtmf_key)).setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
|
||||
@Override
|
||||
public boolean onPreferenceChange(Preference preference, Object newValue) {
|
||||
|
|
|
@ -1 +1 @@
|
|||
Subproject commit aaf2c2d0e8f16f7204e3a055d1f04e8645f071eb
|
||||
Subproject commit f04dab8f103d7be12ad9b72bdfef87b37aea458e
|
Loading…
Reference in a new issue