diff options
author | Vincent Breitmoser <valodim@mugenguild.com> | 2015-07-07 17:16:07 +0200 |
---|---|---|
committer | Vincent Breitmoser <valodim@mugenguild.com> | 2015-07-07 17:16:12 +0200 |
commit | 64cec07b163f3673423b12c8cdf600300086fe08 (patch) | |
tree | 31481cc9b22277930223c90fc6bf50ee62f9413a /OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/base | |
parent | a320affe862a7ff38ae60bd65f7c73ac8ddcc337 (diff) | |
download | open-keychain-64cec07b163f3673423b12c8cdf600300086fe08.tar.gz open-keychain-64cec07b163f3673423b12c8cdf600300086fe08.tar.bz2 open-keychain-64cec07b163f3673423b12c8cdf600300086fe08.zip |
fix handling of progress dialog creation in CryptoOperationFragment (fixes #1407)
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/base')
3 files changed, 12 insertions, 25 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/base/CachingCryptoOperationFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/base/CachingCryptoOperationFragment.java index 95bc4adcb..38b7075f2 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/base/CachingCryptoOperationFragment.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/base/CachingCryptoOperationFragment.java @@ -4,6 +4,7 @@ package org.sufficientlysecure.keychain.ui.base; import android.os.Bundle; import android.os.Parcelable; +import org.sufficientlysecure.keychain.R; import org.sufficientlysecure.keychain.operations.results.OperationResult; diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/base/CryptoOperationFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/base/CryptoOperationFragment.java index 2ab0d5fac..bb0af5830 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/base/CryptoOperationFragment.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/base/CryptoOperationFragment.java @@ -23,6 +23,7 @@ import android.os.Parcelable; import android.support.annotation.Nullable; import android.support.v4.app.Fragment; +import org.sufficientlysecure.keychain.R; import org.sufficientlysecure.keychain.operations.results.OperationResult; import org.sufficientlysecure.keychain.service.KeychainService; import org.sufficientlysecure.keychain.service.input.CryptoInputParcel; @@ -50,9 +51,12 @@ public abstract class CryptoOperationFragment<T extends Parcelable, S extends Op final private CryptoOperationHelper<T, S> mOperationHelper; - public CryptoOperationFragment() { + public CryptoOperationFragment(Integer initialProgressMsg) { + mOperationHelper = new CryptoOperationHelper<>(this, this, initialProgressMsg); + } - mOperationHelper = new CryptoOperationHelper<>(this, this); + public CryptoOperationFragment() { + mOperationHelper = new CryptoOperationHelper<>(this, this, R.string.progress_processing); } @Override @@ -76,10 +80,6 @@ public abstract class CryptoOperationFragment<T extends Parcelable, S extends Op mOperationHelper.cryptoOperation(cryptoInput); } - protected void cryptoOperation(CryptoInputParcel cryptoInput, boolean showProgress) { - mOperationHelper.cryptoOperation(cryptoInput, showProgress); - } - @Override @Nullable /** Creates input for the crypto operation. Called internally after the * crypto operation is started by a call to cryptoOperation(). Silently diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/base/CryptoOperationHelper.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/base/CryptoOperationHelper.java index 8d141ea5d..0db46a585 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/base/CryptoOperationHelper.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/base/CryptoOperationHelper.java @@ -74,7 +74,7 @@ public class CryptoOperationHelper<T extends Parcelable, S extends OperationResu // otherwise all CryptoOperationHandlers may respond to the same onActivityResult private int mRequestedCode = -1; - private int mProgressMessageResource; + private Integer mProgressMessageResource; private FragmentActivity mActivity; private Fragment mFragment; @@ -85,7 +85,7 @@ public class CryptoOperationHelper<T extends Parcelable, S extends OperationResu /** * If OperationHelper is being integrated into an activity */ - public CryptoOperationHelper(FragmentActivity activity, Callback<T, S> callback, int progressMessageString) { + public CryptoOperationHelper(FragmentActivity activity, Callback<T, S> callback, Integer progressMessageString) { mActivity = activity; mUseFragment = false; mCallback = callback; @@ -95,23 +95,13 @@ public class CryptoOperationHelper<T extends Parcelable, S extends OperationResu /** * if OperationHelper is being integrated into a fragment */ - public CryptoOperationHelper(Fragment fragment, Callback<T, S> callback, int progressMessageString) { + public CryptoOperationHelper(Fragment fragment, Callback<T, S> callback, Integer progressMessageString) { mFragment = fragment; mUseFragment = true; mProgressMessageResource = progressMessageString; mCallback = callback; } - /** - * if OperationHelper is being integrated into a fragment with default message for the progress dialog - */ - public CryptoOperationHelper(Fragment fragment, Callback<T, S> callback) { - mFragment = fragment; - mUseFragment = true; - mProgressMessageResource = R.string.progress_building_key; - mCallback = callback; - } - public void setProgressMessageResource(int id) { mProgressMessageResource = id; } @@ -248,7 +238,7 @@ public class CryptoOperationHelper<T extends Parcelable, S extends OperationResu } - public void cryptoOperation(final CryptoInputParcel cryptoInput, boolean showProgress) { + public void cryptoOperation(final CryptoInputParcel cryptoInput) { FragmentActivity activity = mUseFragment ? mFragment.getActivity() : mActivity; @@ -297,7 +287,7 @@ public class CryptoOperationHelper<T extends Parcelable, S extends OperationResu Messenger messenger = new Messenger(saveHandler); intent.putExtra(KeychainService.EXTRA_MESSENGER, messenger); - if (showProgress) { + if (mProgressMessageResource != null) { saveHandler.showProgressDialog( activity.getString(mProgressMessageResource), ProgressDialog.STYLE_HORIZONTAL, false); @@ -306,10 +296,6 @@ public class CryptoOperationHelper<T extends Parcelable, S extends OperationResu activity.startService(intent); } - public void cryptoOperation(CryptoInputParcel cryptoInputParcel) { - cryptoOperation(cryptoInputParcel, true); - } - public void cryptoOperation() { cryptoOperation(new CryptoInputParcel()); } |