aboutsummaryrefslogtreecommitdiffstats
path: root/OpenPGP-Keychain/src/main/java/org/sufficientlysecure/keychain/ui/EditKeyActivity.java
diff options
context:
space:
mode:
Diffstat (limited to 'OpenPGP-Keychain/src/main/java/org/sufficientlysecure/keychain/ui/EditKeyActivity.java')
-rw-r--r--OpenPGP-Keychain/src/main/java/org/sufficientlysecure/keychain/ui/EditKeyActivity.java56
1 files changed, 35 insertions, 21 deletions
diff --git a/OpenPGP-Keychain/src/main/java/org/sufficientlysecure/keychain/ui/EditKeyActivity.java b/OpenPGP-Keychain/src/main/java/org/sufficientlysecure/keychain/ui/EditKeyActivity.java
index 73426e32d..898b0e67a 100644
--- a/OpenPGP-Keychain/src/main/java/org/sufficientlysecure/keychain/ui/EditKeyActivity.java
+++ b/OpenPGP-Keychain/src/main/java/org/sufficientlysecure/keychain/ui/EditKeyActivity.java
@@ -44,8 +44,10 @@ import org.sufficientlysecure.keychain.ui.widget.UserIdEditor;
import org.sufficientlysecure.keychain.util.IterableIterator;
import org.sufficientlysecure.keychain.util.Log;
+import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Context;
+import android.content.DialogInterface;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
@@ -90,12 +92,12 @@ public class EditKeyActivity extends ActionBarActivity {
private SectionView mUserIdsView;
private SectionView mKeysView;
- private String mCurrentPassPhrase = null;
+ private String mCurrentPassphrase = null;
private String mNewPassPhrase = null;
private String mSavedNewPassPhrase = null;
private boolean mIsPassPhraseSet;
- private BootstrapButton mChangePassPhrase;
+ private BootstrapButton mChangePassphrase;
private CheckBox mNoPassphrase;
@@ -148,7 +150,7 @@ public class EditKeyActivity extends ActionBarActivity {
Bundle extras = intent.getExtras();
- mCurrentPassPhrase = "";
+ mCurrentPassphrase = "";
if (extras != null) {
// if userId is given, prefill the fields
@@ -163,7 +165,7 @@ public class EditKeyActivity extends ActionBarActivity {
if (noPassphrase) {
// check "no passphrase" checkbox and remove button
mNoPassphrase.setChecked(true);
- mChangePassPhrase.setVisibility(View.GONE);
+ mChangePassphrase.setVisibility(View.GONE);
}
}
@@ -173,19 +175,31 @@ public class EditKeyActivity extends ActionBarActivity {
if (generateDefaultKeys) {
// Send all information needed to service generate keys in other thread
- Intent serviceIntent = new Intent(this, KeychainIntentService.class);
+ final Intent serviceIntent = new Intent(this, KeychainIntentService.class);
serviceIntent.setAction(KeychainIntentService.ACTION_GENERATE_DEFAULT_RSA_KEYS);
// fill values for this action
Bundle data = new Bundle();
data.putString(KeychainIntentService.GENERATE_KEY_SYMMETRIC_PASSPHRASE,
- mCurrentPassPhrase);
+ mCurrentPassphrase);
serviceIntent.putExtra(KeychainIntentService.EXTRA_DATA, data);
// Message is received after generating is done in ApgService
KeychainIntentServiceHandler saveHandler = new KeychainIntentServiceHandler(
- this, R.string.progress_generating, ProgressDialog.STYLE_SPINNER) {
+ this, R.string.progress_generating, ProgressDialog.STYLE_SPINNER, true,
+
+ new DialogInterface.OnCancelListener() {
+ @Override
+ public void onCancel(DialogInterface dialog) {
+ // Stop key generation on cancel
+ stopService(serviceIntent);
+ EditKeyActivity.this.setResult(Activity.RESULT_CANCELED);
+ EditKeyActivity.this.finish();
+ }
+ }) {
+
+ @Override
public void handleMessage(Message message) {
// handle messages by standard ApgHandler first
super.handleMessage(message);
@@ -210,7 +224,7 @@ public class EditKeyActivity extends ActionBarActivity {
buildLayout();
}
- };
+ }
};
// Create a new Messenger for the communication back
@@ -267,9 +281,9 @@ public class EditKeyActivity extends ActionBarActivity {
@Override
public void handleMessage(Message message) {
if (message.what == PassphraseDialogFragment.MESSAGE_OKAY) {
- String passPhrase = PassphraseCacheService.getCachedPassphrase(
+ String passphrase = PassphraseCacheService.getCachedPassphrase(
EditKeyActivity.this, masterKeyId);
- mCurrentPassPhrase = passPhrase;
+ mCurrentPassphrase = passphrase;
finallySaveClicked();
}
}
@@ -359,14 +373,14 @@ public class EditKeyActivity extends ActionBarActivity {
}
}
- mCurrentPassPhrase = "";
+ mCurrentPassphrase = "";
buildLayout();
mIsPassPhraseSet = PassphraseCacheService.hasPassphrase(this, masterKeyId);
if (!mIsPassPhraseSet) {
// check "no passphrase" checkbox and remove button
mNoPassphrase.setChecked(true);
- mChangePassPhrase.setVisibility(View.GONE);
+ mChangePassphrase.setVisibility(View.GONE);
}
}
@@ -396,7 +410,7 @@ public class EditKeyActivity extends ActionBarActivity {
// set title based on isPassphraseSet()
int title = -1;
if (isPassphraseSet()) {
- title = R.string.title_change_pass_phrase;
+ title = R.string.title_change_passphrase;
} else {
title = R.string.title_set_passphrase;
}
@@ -415,7 +429,7 @@ public class EditKeyActivity extends ActionBarActivity {
setContentView(R.layout.edit_key_activity);
// find views
- mChangePassPhrase = (BootstrapButton) findViewById(R.id.edit_key_btn_change_pass_phrase);
+ mChangePassphrase = (BootstrapButton) findViewById(R.id.edit_key_btn_change_passphrase);
mNoPassphrase = (CheckBox) findViewById(R.id.edit_key_no_passphrase);
// Build layout based on given userIds and keys
@@ -435,7 +449,7 @@ public class EditKeyActivity extends ActionBarActivity {
updatePassPhraseButtonText();
- mChangePassPhrase.setOnClickListener(new OnClickListener() {
+ mChangePassphrase.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
showSetPassphraseDialog();
}
@@ -450,10 +464,10 @@ public class EditKeyActivity extends ActionBarActivity {
// remove passphrase
mSavedNewPassPhrase = mNewPassPhrase;
mNewPassPhrase = "";
- mChangePassPhrase.setVisibility(View.GONE);
+ mChangePassphrase.setVisibility(View.GONE);
} else {
mNewPassPhrase = mSavedNewPassPhrase;
- mChangePassPhrase.setVisibility(View.VISIBLE);
+ mChangePassphrase.setVisibility(View.VISIBLE);
}
}
});
@@ -492,7 +506,7 @@ public class EditKeyActivity extends ActionBarActivity {
if (passphrase == null) {
showPassphraseDialog(masterKeyId, masterCanSign);
} else {
- mCurrentPassPhrase = passphrase;
+ mCurrentPassphrase = passphrase;
finallySaveClicked();
}
} catch (PgpGeneralException e) {
@@ -511,7 +525,7 @@ public class EditKeyActivity extends ActionBarActivity {
// fill values for this action
Bundle data = new Bundle();
data.putString(KeychainIntentService.SAVE_KEYRING_CURRENT_PASSPHRASE,
- mCurrentPassPhrase);
+ mCurrentPassphrase);
data.putString(KeychainIntentService.SAVE_KEYRING_NEW_PASSPHRASE, mNewPassPhrase);
data.putStringArrayList(KeychainIntentService.SAVE_KEYRING_USER_IDS,
getUserIds(mUserIdsView));
@@ -547,7 +561,7 @@ public class EditKeyActivity extends ActionBarActivity {
setResult(RESULT_OK, data);
finish();
}
- };
+ }
};
// Create a new Messenger for the communication back
@@ -682,7 +696,7 @@ public class EditKeyActivity extends ActionBarActivity {
}
private void updatePassPhraseButtonText() {
- mChangePassPhrase.setText(isPassphraseSet() ? getString(R.string.btn_change_passphrase)
+ mChangePassphrase.setText(isPassphraseSet() ? getString(R.string.btn_change_passphrase)
: getString(R.string.btn_set_passphrase));
}