diff --git a/library/src/net/saik0/android/unifiedpreference/UnifiedPreferenceUtils.java b/library/src/net/saik0/android/unifiedpreference/UnifiedPreferenceUtils.java index a377356..e2a6646 100644 --- a/library/src/net/saik0/android/unifiedpreference/UnifiedPreferenceUtils.java +++ b/library/src/net/saik0/android/unifiedpreference/UnifiedPreferenceUtils.java @@ -23,12 +23,15 @@ import android.net.Uri; import android.os.Build; import android.preference.CheckBoxPreference; +import android.preference.EditTextPreference; import android.preference.ListPreference; import android.preference.Preference; import android.preference.PreferenceScreen; import android.preference.RingtonePreference; import android.preference.TwoStatePreference; +import android.text.InputType; import android.text.TextUtils; +import android.widget.EditText; public final class UnifiedPreferenceUtils { @@ -84,6 +87,15 @@ public boolean onPreferenceChange(Preference preference, Object value) { preference.setSummary(name); } } + } else if (preference instanceof EditTextPreference) { + EditText internalEditText = ((EditTextPreference) preference).getEditText(); + int inputType = internalEditText.getInputType(); + if (((inputType & InputType.TYPE_NUMBER_VARIATION_PASSWORD) != 0) || + ((inputType & InputType.TYPE_TEXT_VARIATION_PASSWORD) != 0)) { + // do not change summaries for passwords + } else { + preference.setSummary(stringValue); + } } else { // For all other preferences, set the summary to the value's