aboutsummaryrefslogtreecommitdiffstats
path: root/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptTextFragment.java
diff options
context:
space:
mode:
authorDominik Schürmann <dominik@dominikschuermann.de>2015-11-02 19:15:00 +0100
committerDominik Schürmann <dominik@dominikschuermann.de>2015-11-02 19:16:24 +0100
commit8f070e24500616a78ed332fc7659e3d6b10860bb (patch)
treed38f8c28d7b70b8c841cc621ffc0f26ce96b4bcc /OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptTextFragment.java
parent00c972b6a83d1101503ca3ceb28332e9b76dd177 (diff)
downloadopen-keychain-8f070e24500616a78ed332fc7659e3d6b10860bb.tar.gz
open-keychain-8f070e24500616a78ed332fc7659e3d6b10860bb.tar.bz2
open-keychain-8f070e24500616a78ed332fc7659e3d6b10860bb.zip
Support for Android 6 ACTION_PROCESS_TEXT
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptTextFragment.java')
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptTextFragment.java22
1 files changed, 21 insertions, 1 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptTextFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptTextFragment.java
index 4ce241c02..10d88253d 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptTextFragment.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/EncryptTextFragment.java
@@ -56,8 +56,10 @@ public class EncryptTextFragment
public static final String ARG_TEXT = "text";
public static final String ARG_USE_COMPRESSION = "use_compression";
+ public static final String ARG_RETURN_PROCESS_TEXT = "return_process_text";
private boolean mShareAfterEncrypt;
+ private boolean mReturnProcessTextAfterEncrypt;
private boolean mUseCompression;
private boolean mHiddenRecipients = false;
@@ -66,11 +68,12 @@ public class EncryptTextFragment
/**
* Creates new instance of this fragment
*/
- public static EncryptTextFragment newInstance(String text) {
+ public static EncryptTextFragment newInstance(String text, boolean returnProcessTextAfterEncrypt) {
EncryptTextFragment frag = new EncryptTextFragment();
Bundle args = new Bundle();
args.putString(ARG_TEXT, text);
+ args.putBoolean(ARG_RETURN_PROCESS_TEXT, returnProcessTextAfterEncrypt);
frag.setArguments(args);
return frag;
@@ -128,6 +131,7 @@ public class EncryptTextFragment
super.onCreate(savedInstanceState);
if (savedInstanceState == null) {
mMessage = getArguments().getString(ARG_TEXT);
+ mReturnProcessTextAfterEncrypt = getArguments().getBoolean(ARG_RETURN_PROCESS_TEXT, false);
}
Preferences prefs = Preferences.getPreferences(getActivity());
@@ -151,6 +155,12 @@ public class EncryptTextFragment
inflater.inflate(R.menu.encrypt_text_fragment, menu);
menu.findItem(R.id.check_enable_compression).setChecked(mUseCompression);
+
+ if (mReturnProcessTextAfterEncrypt) {
+ menu.findItem(R.id.encrypt_paste).setVisible(true);
+ menu.findItem(R.id.encrypt_copy).setVisible(false);
+ menu.findItem(R.id.encrypt_share).setVisible(false);
+ }
}
@Override
@@ -177,6 +187,11 @@ public class EncryptTextFragment
cryptoOperation(new CryptoInputParcel(new Date()));
break;
}
+ case R.id.encrypt_paste: {
+ hideKeyboard();
+ cryptoOperation(new CryptoInputParcel(new Date()));
+ break;
+ }
default: {
return super.onOptionsItemSelected(item);
}
@@ -328,6 +343,11 @@ public class EncryptTextFragment
// Share encrypted message/file
startActivity(Intent.createChooser(createSendIntent(result.getResultBytes()),
getString(R.string.title_share_message)));
+ } else if (mReturnProcessTextAfterEncrypt) {
+ Intent resultIntent = new Intent();
+ resultIntent.putExtra(Intent.EXTRA_PROCESS_TEXT, new String(result.getResultBytes()));
+ getActivity().setResult(Activity.RESULT_OK, resultIntent);
+ getActivity().finish();
} else {
// Copy to clipboard
copyToClipboard(result);