diff --git a/app/src/main/java/i2p/bote/android/util/ViewAddressFragment.java b/app/src/main/java/i2p/bote/android/util/ViewAddressFragment.java index 24437b4..111b27f 100644 --- a/app/src/main/java/i2p/bote/android/util/ViewAddressFragment.java +++ b/app/src/main/java/i2p/bote/android/util/ViewAddressFragment.java @@ -2,6 +2,7 @@ package i2p.bote.android.util; import android.app.AlertDialog; import android.app.Dialog; +import android.content.Context; import android.content.DialogInterface; import android.graphics.Bitmap; import android.graphics.Point; @@ -25,6 +26,7 @@ import android.view.animation.AlphaAnimation; import android.view.animation.DecelerateInterpolator; import android.widget.ImageView; import android.widget.TextView; +import android.widget.Toast; import com.nineoldandroids.animation.Animator; import com.nineoldandroids.animation.AnimatorListenerAdapter; @@ -90,6 +92,23 @@ public abstract class ViewAddressFragment extends Fragment { mAddressQrCode = (ImageView) view.findViewById(R.id.email_dest_qr_code); mExpandedQrCode = (ImageView) view.findViewById(R.id.expanded_qr_code); + view.findViewById(R.id.copy_key).setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + Object clipboardService = getActivity().getSystemService(Context.CLIPBOARD_SERVICE); + if (Build.VERSION.SDK_INT < Build.VERSION_CODES.HONEYCOMB) { + android.text.ClipboardManager clipboard = (android.text.ClipboardManager) clipboardService; + clipboard.setText(mAddress); + } else { + android.content.ClipboardManager clipboard = (android.content.ClipboardManager) clipboardService; + android.content.ClipData clip = android.content.ClipData.newPlainText( + getString(R.string.bote_dest_for, getPublicName()), mAddress); + clipboard.setPrimaryClip(clip); + } + Toast.makeText(getActivity(), R.string.copied_to_clipboard, Toast.LENGTH_SHORT).show(); + } + }); + if (mAddress != null) { loadAddress(); } diff --git a/app/src/main/res/drawable-hdpi/ic_content_copy_grey600_24dp.png b/app/src/main/res/drawable-hdpi/ic_content_copy_grey600_24dp.png new file mode 100644 index 0000000..5592d5c Binary files /dev/null and b/app/src/main/res/drawable-hdpi/ic_content_copy_grey600_24dp.png differ diff --git a/app/src/main/res/drawable-mdpi/ic_content_copy_grey600_24dp.png b/app/src/main/res/drawable-mdpi/ic_content_copy_grey600_24dp.png new file mode 100644 index 0000000..bab9b4d Binary files /dev/null and b/app/src/main/res/drawable-mdpi/ic_content_copy_grey600_24dp.png differ diff --git a/app/src/main/res/drawable-xhdpi/ic_content_copy_grey600_24dp.png b/app/src/main/res/drawable-xhdpi/ic_content_copy_grey600_24dp.png new file mode 100644 index 0000000..68ccece Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/ic_content_copy_grey600_24dp.png differ diff --git a/app/src/main/res/drawable-xxhdpi/ic_content_copy_grey600_24dp.png b/app/src/main/res/drawable-xxhdpi/ic_content_copy_grey600_24dp.png new file mode 100644 index 0000000..2fdbbea Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/ic_content_copy_grey600_24dp.png differ diff --git a/app/src/main/res/layout/fragment_view_address.xml b/app/src/main/res/layout/fragment_view_address.xml index 355863f..eaa0df4 100644 --- a/app/src/main/res/layout/fragment_view_address.xml +++ b/app/src/main/res/layout/fragment_view_address.xml @@ -1,8 +1,8 @@ @@ -67,16 +67,16 @@ + android:layout_height="match_parent"> + android:orientation="vertical" + android:paddingBottom="@dimen/activity_vertical_margin" + android:paddingLeft="@dimen/activity_horizontal_margin" + android:paddingRight="@dimen/activity_horizontal_margin" + android:paddingTop="@dimen/activity_vertical_margin"> - + android:gravity="center_vertical" + android:orientation="horizontal"> + + + + + + + No identities were found. Is the file encrypted? Identities imported This field is required + Bote address for %s + Copied to clipboard