aboutsummaryrefslogtreecommitdiffstats
path: root/OpenPGP-Keychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/ProgressDialogFragment.java
diff options
context:
space:
mode:
authorJessica Yuen <jyuen@ualberta.ca>2014-03-02 17:33:21 -0500
committerJessica Yuen <jyuen@ualberta.ca>2014-03-02 17:33:21 -0500
commit91a2ecb15ce5acd720c8f23c3a09e60aad2baa1a (patch)
treebcb7b527b4e3233889b94b715abfc551241e7a31 /OpenPGP-Keychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/ProgressDialogFragment.java
parent1baae3775e9fe60b39dc30463b0a33bd8d2d14df (diff)
downloadopen-keychain-91a2ecb15ce5acd720c8f23c3a09e60aad2baa1a.tar.gz
open-keychain-91a2ecb15ce5acd720c8f23c3a09e60aad2baa1a.tar.bz2
open-keychain-91a2ecb15ce5acd720c8f23c3a09e60aad2baa1a.zip
#226: Activity no longer closes if progress is canceled for key creation in EditKeyActivity
Diffstat (limited to 'OpenPGP-Keychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/ProgressDialogFragment.java')
-rw-r--r--OpenPGP-Keychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/ProgressDialogFragment.java14
1 files changed, 10 insertions, 4 deletions
diff --git a/OpenPGP-Keychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/ProgressDialogFragment.java b/OpenPGP-Keychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/ProgressDialogFragment.java
index cac257c85..0bfd4185e 100644
--- a/OpenPGP-Keychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/ProgressDialogFragment.java
+++ b/OpenPGP-Keychain/src/main/java/org/sufficientlysecure/keychain/ui/dialog/ProgressDialogFragment.java
@@ -32,6 +32,7 @@ public class ProgressDialogFragment extends DialogFragment {
private static final String ARG_MESSAGE_ID = "message_id";
private static final String ARG_STYLE = "style";
private static final String ARG_CANCELABLE = "cancelable";
+ private static final String ARG_FINISH_ON_CANCEL = "finish_activity_on_cancel";
/**
* Creates new instance of this fragment
@@ -41,13 +42,14 @@ public class ProgressDialogFragment extends DialogFragment {
* @param cancelable
* @return
*/
- public static ProgressDialogFragment newInstance(int messageId, int style,
- boolean cancelable) {
+ public static ProgressDialogFragment newInstance(int messageId, int style, boolean cancelable,
+ boolean finishActivityOnCancel) {
ProgressDialogFragment frag = new ProgressDialogFragment();
Bundle args = new Bundle();
args.putInt(ARG_MESSAGE_ID, messageId);
args.putInt(ARG_STYLE, style);
args.putBoolean(ARG_CANCELABLE, cancelable);
+ args.putBoolean(ARG_FINISH_ON_CANCEL, finishActivityOnCancel);
frag.setArguments(args);
return frag;
@@ -118,8 +120,12 @@ public class ProgressDialogFragment extends DialogFragment {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
- activity.setResult(Activity.RESULT_CANCELED);
- activity.finish();
+
+ boolean finishActivity = getArguments().getBoolean(ARG_FINISH_ON_CANCEL);
+ if (finishActivity) {
+ activity.setResult(Activity.RESULT_CANCELED);
+ activity.finish();
+ }
}
});
}