diff options
Diffstat (limited to 'OpenKeychain/src')
| -rw-r--r-- | OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyMainFragment.java | 12 | ||||
| -rw-r--r-- | OpenKeychain/src/main/res/values/strings.xml | 1 | 
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> | 
