aboutsummaryrefslogtreecommitdiffstats
path: root/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/widget/KeySpinner.java
diff options
context:
space:
mode:
authorVincent Breitmoser <valodim@mugenguild.com>2014-08-31 00:19:59 +0200
committerVincent Breitmoser <valodim@mugenguild.com>2014-08-31 00:19:59 +0200
commita73abf57f1a5ace000aca8f218e45ff737ae8b1c (patch)
tree718621bf813ebf3fc936e01b93c0fab94a0764b2 /OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/widget/KeySpinner.java
parent0738a38bbebe6e0e93301de4b7cc085070bfa5eb (diff)
downloadopen-keychain-a73abf57f1a5ace000aca8f218e45ff737ae8b1c.tar.gz
open-keychain-a73abf57f1a5ace000aca8f218e45ff737ae8b1c.tar.bz2
open-keychain-a73abf57f1a5ace000aca8f218e45ff737ae8b1c.zip
if there is only one private key, use it fo certification by default
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/widget/KeySpinner.java')
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/widget/KeySpinner.java39
1 files changed, 16 insertions, 23 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/widget/KeySpinner.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/widget/KeySpinner.java
index 3a31fc9f4..2c198d4bf 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/widget/KeySpinner.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/widget/KeySpinner.java
@@ -40,14 +40,14 @@ import org.sufficientlysecure.keychain.pgp.PgpKeyHelper;
import org.sufficientlysecure.keychain.provider.KeychainContract;
import org.sufficientlysecure.keychain.util.Log;
-public abstract class KeySpinner extends Spinner {
+public abstract class KeySpinner extends Spinner implements LoaderManager.LoaderCallbacks<Cursor> {
public interface OnKeyChangedListener {
public void onKeyChanged(long masterKeyId);
}
- private long mSelectedKeyId;
- private SelectKeyAdapter mAdapter = new SelectKeyAdapter();
- private OnKeyChangedListener mListener;
+ protected long mSelectedKeyId;
+ protected SelectKeyAdapter mAdapter = new SelectKeyAdapter();
+ protected OnKeyChangedListener mListener;
public KeySpinner(Context context) {
super(context);
@@ -83,8 +83,6 @@ public abstract class KeySpinner extends Spinner {
});
}
- public abstract Loader<Cursor> onCreateLoader();
-
@Override
public void setOnItemSelectedListener(OnItemSelectedListener listener) {
throw new UnsupportedOperationException();
@@ -102,27 +100,22 @@ public abstract class KeySpinner extends Spinner {
public void reload() {
if (getContext() instanceof FragmentActivity) {
- ((FragmentActivity) getContext()).getSupportLoaderManager().restartLoader(hashCode(), null, new LoaderManager.LoaderCallbacks<Cursor>() {
- @Override
- public Loader<Cursor> onCreateLoader(int id, Bundle args) {
- return KeySpinner.this.onCreateLoader();
- }
-
- @Override
- public void onLoadFinished(Loader<Cursor> loader, Cursor data) {
- mAdapter.swapCursor(data);
- }
-
- @Override
- public void onLoaderReset(Loader<Cursor> loader) {
- mAdapter.swapCursor(null);
- }
- });
+ ((FragmentActivity) getContext()).getSupportLoaderManager().restartLoader(0, null, this);
} else {
Log.e(Constants.TAG, "KeySpinner must be attached to FragmentActivity, this is " + getContext().getClass());
}
}
+ @Override
+ public void onLoadFinished(Loader<Cursor> loader, Cursor data) {
+ mAdapter.swapCursor(data);
+ }
+
+ @Override
+ public void onLoaderReset(Loader<Cursor> loader) {
+ mAdapter.swapCursor(null);
+ }
+
public long getSelectedKeyId() {
return mSelectedKeyId;
}
@@ -131,7 +124,7 @@ public abstract class KeySpinner extends Spinner {
this.mSelectedKeyId = selectedKeyId;
}
- private class SelectKeyAdapter extends BaseAdapter implements SpinnerAdapter {
+ protected class SelectKeyAdapter extends BaseAdapter implements SpinnerAdapter {
private CursorAdapter inner;
private int mIndexUserId;
private int mIndexKeyId;