diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/Constants.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/Constants.java
index 3e6454da5..05a7476fc 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/Constants.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/Constants.java
@@ -148,8 +148,8 @@ public final class Constants {
public static final class Theme {
public static final String AUTO = "auto";
- public static final String LIGHT = "light";
public static final String DARK = "dark";
+ public static final String LIGHT = "light";
public static final String DEFAULT = Constants.Pref.Theme.AUTO;
}
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/input/RequiredInputParcel.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/input/RequiredInputParcel.java
index a149ccc57..faf8f7a27 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/input/RequiredInputParcel.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/service/input/RequiredInputParcel.java
@@ -39,6 +39,20 @@ public class RequiredInputParcel implements Parcelable {
return new String(mInputData[0]);
}
+ public boolean isTextInput() {
+ switch (mType) {
+ case BACKUP_CODE:
+ case NUMERIC_9X4:
+ case NUMERIC_9X4_AUTOCRYPT:
+ case PASSPHRASE:
+ case PASSPHRASE_AUTH:
+ case PASSPHRASE_SYMMETRIC:
+ return true;
+ default:
+ return false;
+ }
+ }
+
public enum RequiredInputType {
PASSPHRASE, PASSPHRASE_SYMMETRIC, PASSPHRASE_AUTH,
BACKUP_CODE, NUMERIC_9X4, NUMERIC_9X4_AUTOCRYPT,
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/PassphraseDialogActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/PassphraseDialogActivity.java
index 9c3f01212..61ee62cdf 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/PassphraseDialogActivity.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/PassphraseDialogActivity.java
@@ -107,7 +107,7 @@ public class PassphraseDialogActivity extends FragmentActivity {
// this activity itself has no content view (see manifest)
RequiredInputParcel requiredInput = getIntent().getParcelableExtra(EXTRA_REQUIRED_INPUT);
- if (requiredInput.mType != RequiredInputType.PASSPHRASE) {
+ if (!requiredInput.isTextInput()) {
return;
}
@@ -115,7 +115,9 @@ public class PassphraseDialogActivity extends FragmentActivity {
try {
KeyRepository keyRepository = KeyRepository.create(this);
// use empty passphrase for empty passphrase
- if (keyRepository.getSecretKeyType(requiredInput.getSubKeyId()) == SecretKeyType.PASSPHRASE_EMPTY) {
+ Long subKeyId = requiredInput.getSubKeyId();
+ if (subKeyId != null &&
+ keyRepository.getSecretKeyType(subKeyId) == SecretKeyType.PASSPHRASE_EMPTY) {
// also return passphrase back to activity
Intent returnIntent = new Intent();
cryptoInputParcel = cryptoInputParcel.withPassphrase(new Passphrase(""), requiredInput.getSubKeyId());
diff --git a/OpenKeychain/src/main/res/values/arrays.xml b/OpenKeychain/src/main/res/values/arrays.xml
index bf43600e6..bbf38d3e2 100644
--- a/OpenKeychain/src/main/res/values/arrays.xml
+++ b/OpenKeychain/src/main/res/values/arrays.xml
@@ -33,8 +33,8 @@
- @string/theme_auto
- - @string/theme_light
- @string/theme_dark
+ - @string/theme_light
- "auto"