aboutsummaryrefslogtreecommitdiffstats
path: root/OpenKeychain
diff options
context:
space:
mode:
authorVincent Breitmoser <valodim@mugenguild.com>2014-05-07 02:27:51 +0200
committerVincent Breitmoser <valodim@mugenguild.com>2014-05-07 02:27:51 +0200
commit873b1be75dc7296ce60b6f11cd63e6707080db49 (patch)
treee22560b2885ab517d45c3cde06e3e90fbba61e2b /OpenKeychain
parent0bb11be749cd2af71fc905d930ac1d9e3b9b22be (diff)
downloadopen-keychain-873b1be75dc7296ce60b6f11cd63e6707080db49.tar.gz
open-keychain-873b1be75dc7296ce60b6f11cd63e6707080db49.tar.bz2
open-keychain-873b1be75dc7296ce60b6f11cd63e6707080db49.zip
display AppMsg warning when no encryption subkey is available
Diffstat (limited to 'OpenKeychain')
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyMainFragment.java12
-rw-r--r--OpenKeychain/src/main/res/values/strings.xml1
2 files changed, 13 insertions, 0 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyMainFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyMainFragment.java
index 389455a9a..b30c9aaec 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyMainFragment.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyMainFragment.java
@@ -32,6 +32,8 @@ import android.view.ViewGroup;
import android.widget.LinearLayout;
import android.widget.ListView;
+import com.devspark.appmsg.AppMsg;
+
import org.sufficientlysecure.keychain.Constants;
import org.sufficientlysecure.keychain.R;import org.sufficientlysecure.keychain.provider.KeychainContract;
import org.sufficientlysecure.keychain.provider.KeychainContract.KeyRings;
@@ -60,6 +62,9 @@ public class ViewKeyMainFragment extends Fragment implements
private static final int LOADER_ID_UNIFIED = 0;
private static final int LOADER_ID_USER_IDS = 1;
+ // conservative attitude
+ private boolean mHasEncrypt = true;
+
private ViewKeyUserIdsAdapter mUserIdsAdapter;
private Uri mDataUri;
@@ -203,6 +208,8 @@ public class ViewKeyMainFragment extends Fragment implements
}
}
+ mHasEncrypt = data.getInt(INDEX_UNIFIED_HAS_ENCRYPT) != 0;
+
break;
}
}
@@ -229,6 +236,11 @@ public class ViewKeyMainFragment extends Fragment implements
}
private void encrypt(Uri dataUri) {
+ // If there is no encryption key, don't bother.
+ if (!mHasEncrypt) {
+ AppMsg.makeText(getActivity(), R.string.error_no_encrypt_subkey, AppMsg.STYLE_ALERT).show();
+ return;
+ }
try {
long keyId = new ProviderHelper(getActivity()).extractOrGetMasterKeyId(dataUri);
long[] encryptionKeyIds = new long[]{keyId};
diff --git a/OpenKeychain/src/main/res/values/strings.xml b/OpenKeychain/src/main/res/values/strings.xml
index 2109476c3..2277261ee 100644
--- a/OpenKeychain/src/main/res/values/strings.xml
+++ b/OpenKeychain/src/main/res/values/strings.xml
@@ -513,5 +513,6 @@
<string name="title_view_cert">View Certificate Details</string>
<string name="unknown_algorithm">unknown</string>
<string name="can_sign_not">cannot sign</string>
+ <string name="error_no_encrypt_subkey">No encryption subkey available!</string>
</resources>