diff options
author | Daniël van den Berg <danielvandenberg95@gmail.com> | 2016-08-27 15:21:21 +0200 |
---|---|---|
committer | Mohamed Zenadi <zeapo@users.noreply.github.com> | 2016-08-27 15:21:21 +0200 |
commit | 86083f03f5a60074cddb7496bff157b31ce8c2a3 (patch) | |
tree | 6ab7109fc184a33b6e8c443ae6bff918bbb9a194 | |
parent | 4075fddd6005e5bd516e2a5ec43ed28804e8a318 (diff) |
Added the ability to share a password as plaintext using any app, including ones like BluetoothToPc. (#213)
-rw-r--r-- | app/src/main/java/com/zeapo/pwdstore/crypto/PgpHandler.java | 28 | ||||
-rw-r--r-- | app/src/main/res/drawable-hdpi/ic_share_white_24dp.png | bin | 0 -> 397 bytes | |||
-rw-r--r-- | app/src/main/res/drawable-mdpi/ic_share_white_24dp.png | bin | 0 -> 268 bytes | |||
-rw-r--r-- | app/src/main/res/drawable-xhdpi/ic_share_white_24dp.png | bin | 0 -> 496 bytes | |||
-rw-r--r-- | app/src/main/res/drawable-xxhdpi/ic_share_white_24dp.png | bin | 0 -> 698 bytes | |||
-rw-r--r-- | app/src/main/res/drawable-xxxhdpi/ic_share_white_24dp.png | bin | 0 -> 938 bytes | |||
-rw-r--r-- | app/src/main/res/menu/pgp_handler.xml | 5 | ||||
-rw-r--r-- | app/src/main/res/values/strings.xml | 1 |
8 files changed, 33 insertions, 1 deletions
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 Binary files differnew file mode 100644 index 00000000..b09a6926 --- /dev/null +++ b/app/src/main/res/drawable-hdpi/ic_share_white_24dp.png 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 Binary files differnew file mode 100644 index 00000000..e944fd70 --- /dev/null +++ b/app/src/main/res/drawable-mdpi/ic_share_white_24dp.png 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 Binary files differnew file mode 100644 index 00000000..22a8783e --- /dev/null +++ b/app/src/main/res/drawable-xhdpi/ic_share_white_24dp.png 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 Binary files differnew file mode 100644 index 00000000..a35b3cd1 --- /dev/null +++ b/app/src/main/res/drawable-xxhdpi/ic_share_white_24dp.png 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 Binary files differnew file mode 100644 index 00000000..e351c7be --- /dev/null +++ b/app/src/main/res/drawable-xxxhdpi/ic_share_white_24dp.png 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" > + <item android:title="Share as plaintext" + android:icon="@drawable/ic_share_white_24dp" + pwstore:showAsAction="ifRoom" + android:id="@+id/share_password_as_plaintext" + /> <item android:title="Copy password" android:icon="@drawable/ic_content_copy_white_24dp" pwstore:showAsAction="ifRoom" diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 6cd2120f..5359cd77 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -181,4 +181,5 @@ <string name="settings">Settings</string> <string name="no_repo_selected">No external repository selected</string> <string name="no_repo_selected2">No external repository selected</string> + <string name="send_plaintext_password_to">Send password as plaintext using…</string> </resources> |