diff --git a/app/src/main/java/com/zeapo/pwdstore/crypto/PgpHandler.java b/app/src/main/java/com/zeapo/pwdstore/crypto/PgpHandler.java
index 399564a1..60599d6d 100644
--- a/app/src/main/java/com/zeapo/pwdstore/crypto/PgpHandler.java
+++ b/app/src/main/java/com/zeapo/pwdstore/crypto/PgpHandler.java
@@ -147,6 +147,9 @@ public class PgpHandler extends AppCompatActivity implements OpenPgpServiceConne
case R.id.copy_password:
copyToClipBoard();
break;
+ case R.id.share_password_as_plaintext:
+ shareAsPlaintext();
+ break;
case R.id.edit_password:
editPassword();
break;
@@ -200,12 +203,35 @@ public class PgpHandler extends AppCompatActivity implements OpenPgpServiceConne
invalidateOptionsMenu();
}
+ public void shareAsPlaintext() {
+
+ if (findViewById(R.id.share_password_as_plaintext) == null)
+ return;
+
+ final TextView cryptoPasswordShow = (TextView) findViewById(R.id.crypto_password_show);
+ if (cryptoPasswordShow == null) {
+ return;
+ }
+ final CharSequence text = cryptoPasswordShow.getText();
+
+ Intent sendIntent = new Intent();
+ sendIntent.setAction(Intent.ACTION_SEND);
+ sendIntent.putExtra(Intent.EXTRA_TEXT, text);
+ sendIntent.setType("text/plain");
+ startActivity(Intent.createChooser(sendIntent, getResources().getText(R.string.send_plaintext_password_to)));//Always show a picker to give the user a chance to cancel
+ }
+
public void copyToClipBoard() {
if (findViewById(R.id.crypto_password_show) == null)
return;
- ClipData clip = ClipData.newPlainText("pgp_handler_result_pm", ((TextView) findViewById(R.id.crypto_password_show)).getText());
+ final TextView cryptoPasswordShow = (TextView) findViewById(R.id.crypto_password_show);
+ if (cryptoPasswordShow == null) {
+ return;
+ }
+
+ ClipData clip = ClipData.newPlainText("pgp_handler_result_pm", cryptoPasswordShow.getText());
clipboard.setPrimaryClip(clip);
try {
showToast(this.getResources().getString(R.string.clipboard_beginning_toast_text)
diff --git a/app/src/main/res/drawable-hdpi/ic_share_white_24dp.png b/app/src/main/res/drawable-hdpi/ic_share_white_24dp.png
new file mode 100644
index 00000000..b09a6926
Binary files /dev/null and b/app/src/main/res/drawable-hdpi/ic_share_white_24dp.png differ
diff --git a/app/src/main/res/drawable-mdpi/ic_share_white_24dp.png b/app/src/main/res/drawable-mdpi/ic_share_white_24dp.png
new file mode 100644
index 00000000..e944fd70
Binary files /dev/null and b/app/src/main/res/drawable-mdpi/ic_share_white_24dp.png differ
diff --git a/app/src/main/res/drawable-xhdpi/ic_share_white_24dp.png b/app/src/main/res/drawable-xhdpi/ic_share_white_24dp.png
new file mode 100644
index 00000000..22a8783e
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/ic_share_white_24dp.png differ
diff --git a/app/src/main/res/drawable-xxhdpi/ic_share_white_24dp.png b/app/src/main/res/drawable-xxhdpi/ic_share_white_24dp.png
new file mode 100644
index 00000000..a35b3cd1
Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/ic_share_white_24dp.png differ
diff --git a/app/src/main/res/drawable-xxxhdpi/ic_share_white_24dp.png b/app/src/main/res/drawable-xxxhdpi/ic_share_white_24dp.png
new file mode 100644
index 00000000..e351c7be
Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/ic_share_white_24dp.png differ
diff --git a/app/src/main/res/menu/pgp_handler.xml b/app/src/main/res/menu/pgp_handler.xml
index fbdef0c2..10cb42fd 100644
--- a/app/src/main/res/menu/pgp_handler.xml
+++ b/app/src/main/res/menu/pgp_handler.xml
@@ -2,6 +2,11 @@
xmlns:tools="http://schemas.android.com/tools"
xmlns:pwstore="http://schemas.android.com/apk/res-auto"
tools:context="com.zeapo.pwdstore.crypto.PgpHandler" >
+
- Settings
No external repository selected
No external repository selected
+ Send password as plaintext using…