diff options
author | Dominik Schürmann <dominik@dominikschuermann.de> | 2015-03-16 14:26:47 +0100 |
---|---|---|
committer | Dominik Schürmann <dominik@dominikschuermann.de> | 2015-03-16 14:26:47 +0100 |
commit | d10df1d40f23475445d0abca217683e911ffa0a0 (patch) | |
tree | e7a2d40f39fec69535c701334b6e41cdc9613dfe /src/main | |
parent | 57a7da59bd6d2a8b4e0d81d82abeb154215d920f (diff) | |
download | openpgp-api-d10df1d40f23475445d0abca217683e911ffa0a0.tar.gz openpgp-api-d10df1d40f23475445d0abca217683e911ffa0a0.tar.bz2 openpgp-api-d10df1d40f23475445d0abca217683e911ffa0a0.zip |
More fixes for AppPreference
Diffstat (limited to 'src/main')
-rw-r--r-- | src/main/java/org/openintents/openpgp/util/OpenPgpAppPreference.java | 24 |
1 files changed, 17 insertions, 7 deletions
diff --git a/src/main/java/org/openintents/openpgp/util/OpenPgpAppPreference.java b/src/main/java/org/openintents/openpgp/util/OpenPgpAppPreference.java index 3e1cbf9..6e8ddad 100644 --- a/src/main/java/org/openintents/openpgp/util/OpenPgpAppPreference.java +++ b/src/main/java/org/openintents/openpgp/util/OpenPgpAppPreference.java @@ -25,6 +25,7 @@ import android.content.res.TypedArray; import android.graphics.drawable.Drawable; import android.net.Uri; import android.preference.DialogPreference; +import android.text.TextUtils; import android.util.AttributeSet; import android.util.Log; import android.view.View; @@ -176,9 +177,18 @@ public class OpenPgpAppPreference extends DialogPreference { notifyChanged(); // also update summary with selected provider - setSummary(getEntry()); + updateSummary(mSelectedPackage); } + private void updateSummary(String packageName) { + String summary = getEntryByValue(packageName); + setSummary(summary); + } + + @Override + public CharSequence getSummary() { + return getEntryByValue(mSelectedPackage); + } private int getIndexOfProviderList(String packageName) { for (OpenPgpProviderEntry app : mList) { @@ -187,7 +197,8 @@ public class OpenPgpAppPreference extends DialogPreference { } } - return -1; + // default is "none" + return 0; } public String getEntry() { @@ -199,7 +210,7 @@ public class OpenPgpAppPreference extends DialogPreference { } public void setValue(String packageName) { - setAndPersist(mSelectedPackage); + setAndPersist(packageName); } @Override @@ -211,13 +222,12 @@ public class OpenPgpAppPreference extends DialogPreference { protected void onSetInitialValue(boolean restoreValue, Object defaultValue) { if (restoreValue) { // Restore state - Log.d(OpenPgpApi.TAG, "restore: mSelectedPackage " + mSelectedPackage); mSelectedPackage = getPersistedString(mSelectedPackage); - setSummary(getEntry()); + updateSummary(mSelectedPackage); } else { - // Set state String value = (String) defaultValue; setAndPersist(value); + updateSummary(value); } } @@ -228,7 +238,7 @@ public class OpenPgpAppPreference extends DialogPreference { } } - return null; + return getContext().getString(R.string.openpgp_list_preference_none); } private void populateAppList() { |