diff options
author | Dominik Schürmann <dominik@dominikschuermann.de> | 2015-10-21 22:33:46 +0200 |
---|---|---|
committer | Dominik Schürmann <dominik@dominikschuermann.de> | 2015-10-21 22:33:46 +0200 |
commit | 477a189c3f11e4863bc771ab7cbe9e39f8ae154b (patch) | |
tree | 4b04729e11d81982b1c438223657868bd68a8153 /OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptListFragment.java | |
parent | 97ca5091c237ff185a1a5651ff54752a3e49adc3 (diff) | |
parent | 7eb9f5d5cfb3e735076ea019013f89ca60ed5804 (diff) | |
download | open-keychain-477a189c3f11e4863bc771ab7cbe9e39f8ae154b.tar.gz open-keychain-477a189c3f11e4863bc771ab7cbe9e39f8ae154b.tar.bz2 open-keychain-477a189c3f11e4863bc771ab7cbe9e39f8ae154b.zip |
Merge branch 'master' of github.com:open-keychain/open-keychain
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptListFragment.java')
-rw-r--r-- | OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptListFragment.java | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptListFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptListFragment.java index a5f9dc885..c7ad4bd65 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptListFragment.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptListFragment.java @@ -322,6 +322,29 @@ public class DecryptListFragment Uri uri = mCurrentInputUri; mCurrentInputUri = null; + Activity activity = getActivity(); + + boolean isSingleInput = mInputDataResults.isEmpty() && mPendingInputUris.isEmpty(); + if (isSingleInput) { + + // there is always at least one mMetadata object, so we know this is >= 1 already + boolean isSingleMetadata = result.mMetadata.size() == 1; + OpenPgpMetadata metadata = result.mMetadata.get(0); + boolean isText = "text/plain".equals(metadata.getMimeType()); + boolean isOverSized = metadata.getOriginalSize() > Constants.TEXT_LENGTH_LIMIT; + + if (isSingleMetadata && isText && !isOverSized) { + Intent displayTextIntent = new Intent(activity, DisplayTextActivity.class) + .setDataAndType(result.mOutputUris.get(0), "text/plain") + .putExtra(DisplayTextActivity.EXTRA_RESULT, result.mDecryptVerifyResult) + .putExtra(DisplayTextActivity.EXTRA_METADATA, metadata); + activity.startActivity(displayTextIntent); + activity.finish(); + return; + } + + } + mInputDataResults.put(uri, result); processResult(uri); |