diff --git a/sflphone-android/src/org/sflphone/fragments/GeneralAccountFragment.java b/sflphone-android/src/org/sflphone/fragments/GeneralAccountFragment.java index 1f215fa0b646ed16552eda69e9e6dd2d6fcde9c8..ad5997ff012544213f2235db658bd146ce63b242 100644 --- a/sflphone-android/src/org/sflphone/fragments/GeneralAccountFragment.java +++ b/sflphone-android/src/org/sflphone/fragments/GeneralAccountFragment.java @@ -99,16 +99,16 @@ public class GeneralAccountFragment extends PreferenceFragment { if (!p.isTwoState) { ((EditTextPreference) pref).setText(p.mValue); if (pref instanceof PasswordPreference) { - String tmp = new String(); + String tmp = ""; for (int i = 0; i < p.mValue.length(); ++i) { tmp += "*"; - } pref.setSummary(tmp); } else { pref.setSummary(p.mValue); } } else { + Log.i(TAG, "pref:"+p.mKey); ((CheckBoxPreference) pref).setChecked(p.isChecked()); } } else { diff --git a/sflphone-android/src/org/sflphone/model/account/AccountDetail.java b/sflphone-android/src/org/sflphone/model/account/AccountDetail.java index 8c5dd98bb89fa389f8ead3ca1d93903c54f9c534..e26528767969b025fa76ad276e73b8584ea05af6 100644 --- a/sflphone-android/src/org/sflphone/model/account/AccountDetail.java +++ b/sflphone-android/src/org/sflphone/model/account/AccountDetail.java @@ -47,9 +47,7 @@ public interface AccountDetail { } public boolean isChecked() { - if (mValue.contentEquals("true")) - return true; - return false; + return mValue.contentEquals("true"); } } diff --git a/sflphone-android/src/org/sflphone/model/account/AccountDetailAdvanced.java b/sflphone-android/src/org/sflphone/model/account/AccountDetailAdvanced.java index de45b0db1adf73c12ff87366bd62fbd98f5a1e61..6d23bd10e884662e7d5528757f3ea75d80c27e39 100644 --- a/sflphone-android/src/org/sflphone/model/account/AccountDetailAdvanced.java +++ b/sflphone-android/src/org/sflphone/model/account/AccountDetailAdvanced.java @@ -55,38 +55,20 @@ public class AccountDetailAdvanced implements AccountDetail { private ArrayList<AccountDetail.PreferenceEntry> privateArray; - public static ArrayList<AccountDetail.PreferenceEntry> getPreferenceEntries() { - ArrayList<AccountDetail.PreferenceEntry> preference = new ArrayList<AccountDetail.PreferenceEntry>(); - - preference.add(new PreferenceEntry(CONFIG_ACCOUNT_REGISTRATION_EXPIRE)); - preference.add(new PreferenceEntry(CONFIG_ACCOUNT_REGISTRATION_STATUS)); - preference.add(new PreferenceEntry(CONFIG_ACCOUNT_REGISTRATION_STATE_CODE)); - preference.add(new PreferenceEntry(CONFIG_ACCOUNT_REGISTRATION_STATE_DESC)); - preference.add(new PreferenceEntry(CONFIG_CREDENTIAL_NUMBER)); - preference.add(new PreferenceEntry(CONFIG_ACCOUNT_DTMF_TYPE)); - preference.add(new PreferenceEntry(CONFIG_RINGTONE_PATH)); - preference.add(new PreferenceEntry(CONFIG_RINGTONE_ENABLED, true)); - preference.add(new PreferenceEntry(CONFIG_KEEP_ALIVE_ENABLED, true)); - preference.add(new PreferenceEntry(CONFIG_LOCAL_INTERFACE)); - preference.add(new PreferenceEntry(CONFIG_PUBLISHED_SAMEAS_LOCAL, true)); - preference.add(new PreferenceEntry(CONFIG_LOCAL_PORT)); - preference.add(new PreferenceEntry(CONFIG_PUBLISHED_PORT)); - preference.add(new PreferenceEntry(CONFIG_PUBLISHED_ADDRESS)); - preference.add(new PreferenceEntry(CONFIG_STUN_SERVER)); - preference.add(new PreferenceEntry(CONFIG_STUN_ENABLE, true)); - preference.add(new PreferenceEntry(CONFIG_ACCOUNT_MAILBOX)); - - preference.add(new PreferenceEntry(CONFIG_AUDIO_PORT_MIN)); - preference.add(new PreferenceEntry(CONFIG_AUDIO_PORT_MAX)); - - return preference; - } - public AccountDetailAdvanced(HashMap<String, String> pref) { - privateArray = getPreferenceEntries(); + privateArray = new ArrayList<AccountDetail.PreferenceEntry>(); - for (AccountDetail.PreferenceEntry p : privateArray) { - p.mValue = pref.get(p.mKey); + for (String key : pref.keySet()) { + PreferenceEntry p = new PreferenceEntry(key); + p.mValue = pref.get(key); + + if(key.contentEquals(CONFIG_RINGTONE_ENABLED) || + key.contentEquals(CONFIG_KEEP_ALIVE_ENABLED) || + key.contentEquals(CONFIG_PUBLISHED_SAMEAS_LOCAL) || + key.contentEquals(CONFIG_STUN_ENABLE)) + p.isTwoState = true; + + privateArray.add(p); } } diff --git a/sflphone-android/src/org/sflphone/model/account/AccountDetailBasic.java b/sflphone-android/src/org/sflphone/model/account/AccountDetailBasic.java index 2f0361675e486b591a6b65545abe78f13725db78..662a81ed896d5c7c3fc6bbc4c66d015c40297bb1 100644 --- a/sflphone-android/src/org/sflphone/model/account/AccountDetailBasic.java +++ b/sflphone-android/src/org/sflphone/model/account/AccountDetailBasic.java @@ -46,29 +46,17 @@ public class AccountDetailBasic implements AccountDetail { private ArrayList<AccountDetail.PreferenceEntry> privateArray; - public static ArrayList<AccountDetail.PreferenceEntry> getPreferenceEntries() { - ArrayList<AccountDetail.PreferenceEntry> preference = new ArrayList<AccountDetail.PreferenceEntry>(); - - preference.add(new PreferenceEntry(CONFIG_ACCOUNT_ENABLE, true)); - preference.add(new PreferenceEntry(CONFIG_ACCOUNT_TYPE)); - preference.add(new PreferenceEntry(CONFIG_ACCOUNT_ALIAS)); - preference.add(new PreferenceEntry(CONFIG_ACCOUNT_HOSTNAME)); - preference.add(new PreferenceEntry(CONFIG_ACCOUNT_USERNAME)); - preference.add(new PreferenceEntry(CONFIG_ACCOUNT_ROUTESET)); - preference.add(new PreferenceEntry(CONFIG_ACCOUNT_PASSWORD)); - preference.add(new PreferenceEntry(CONFIG_ACCOUNT_AUTOANSWER, true)); - preference.add(new PreferenceEntry(CONFIG_ACCOUNT_REALM)); - preference.add(new PreferenceEntry(CONFIG_ACCOUNT_USERAGENT)); - preference.add(new PreferenceEntry(CONFIG_PRESENCE_ENABLE)); - - return preference; - } - public AccountDetailBasic(HashMap<String, String> pref) { - privateArray = getPreferenceEntries(); + privateArray = new ArrayList<AccountDetail.PreferenceEntry>(); - for (AccountDetail.PreferenceEntry p : privateArray) { - p.mValue = pref.get(p.mKey); + for (String key : pref.keySet()) { + PreferenceEntry p = new PreferenceEntry(key); + p.mValue = pref.get(key); + + if(key.contentEquals(CONFIG_ACCOUNT_ENABLE) || key.contentEquals(CONFIG_ACCOUNT_AUTOANSWER)) + p.isTwoState = true; + + privateArray.add(p); } } diff --git a/sflphone-android/src/org/sflphone/utils/SwigNativeConverter.java b/sflphone-android/src/org/sflphone/utils/SwigNativeConverter.java index 8014523c6be880003dd672935e36336fcf032508..a6ae2b6a2381e98c95ada85d78003631a5937d0c 100644 --- a/sflphone-android/src/org/sflphone/utils/SwigNativeConverter.java +++ b/sflphone-android/src/org/sflphone/utils/SwigNativeConverter.java @@ -98,11 +98,12 @@ public class SwigNativeConverter { nativemap.put(AccountDetailBasic.CONFIG_ACCOUNT_ENABLE, swigmap.get(AccountDetailBasic.CONFIG_ACCOUNT_ENABLE)); nativemap.put(AccountDetailBasic.CONFIG_ACCOUNT_USERAGENT, swigmap.get(AccountDetailBasic.CONFIG_ACCOUNT_USERAGENT)); nativemap.put(AccountDetailAdvanced.CONFIG_ACCOUNT_MAILBOX, swigmap.get(AccountDetailAdvanced.CONFIG_ACCOUNT_MAILBOX)); + nativemap.put(AccountDetailBasic.CONFIG_ACCOUNT_AUTOANSWER, swigmap.get(AccountDetailBasic.CONFIG_ACCOUNT_AUTOANSWER)); if (swigmap.get(AccountDetailBasic.CONFIG_ACCOUNT_TYPE).equals("SIP")) { - nativemap.put(AccountDetailBasic.CONFIG_ACCOUNT_AUTOANSWER, swigmap.get(AccountDetailBasic.CONFIG_ACCOUNT_AUTOANSWER)); - nativemap.put(AccountDetailBasic.CONFIG_ACCOUNT_ROUTESET, swigmap.get(AccountDetailBasic.CONFIG_ACCOUNT_ROUTESET)); + + nativemap.put(AccountDetailBasic.CONFIG_ACCOUNT_ROUTESET, swigmap.get(AccountDetailBasic.CONFIG_ACCOUNT_ROUTESET)); nativemap .put(AccountDetailAdvanced.CONFIG_ACCOUNT_REGISTRATION_EXPIRE, swigmap.get(AccountDetailAdvanced.CONFIG_ACCOUNT_REGISTRATION_EXPIRE)); nativemap.put(AccountDetailAdvanced.CONFIG_LOCAL_INTERFACE, swigmap.get(AccountDetailAdvanced.CONFIG_LOCAL_INTERFACE));