diff options
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptTextActivity.java')
-rw-r--r-- | OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptTextActivity.java | 23 |
1 files changed, 18 insertions, 5 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptTextActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptTextActivity.java index bc0d3d387..6e6e52562 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptTextActivity.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptTextActivity.java @@ -409,16 +409,29 @@ public class EncryptTextActivity extends DrawerActivity implements EncryptActivi private void handleActions(Intent intent) { String action = intent.getAction(); Bundle extras = intent.getExtras(); - // Should always be text/plain - // String type = intent.getType(); - ArrayList<Uri> uris = new ArrayList<Uri>(); + String type = intent.getType(); if (extras == null) { extras = new Bundle(); } - if (intent.getData() != null) { - uris.add(intent.getData()); + /* + * Android's Action + */ + + // When sending to OpenKeychain Encrypt via share menu + if (Intent.ACTION_SEND.equals(action) && type != null) { + // When sending to OpenKeychain Encrypt via share menu + if ("text/plain".equals(type)) { + String sharedText = intent.getStringExtra(Intent.EXTRA_TEXT); + if (sharedText != null) { + // handle like normal text encryption, override action and extras to later + // executeServiceMethod ACTION_ENCRYPT_TEXT in main actions + extras.putString(EXTRA_TEXT, sharedText); + action = ACTION_ENCRYPT_TEXT; + } + + } } String textData = extras.getString(EXTRA_TEXT); |