From 4fe4ec114bcb578ab9a4e985d16961d79bb74a23 Mon Sep 17 00:00:00 2001 From: Christian Schneppe Date: Sat, 14 May 2016 22:17:08 +0200 Subject: add share contact to ContactDetails --- .../siacs/conversations/ui/ContactDetailsActivity.java | 18 ++++++++++++++++++ src/main/res/menu/contact_details.xml | 16 +++++++++++++--- 2 files changed, 31 insertions(+), 3 deletions(-) diff --git a/src/main/java/eu/siacs/conversations/ui/ContactDetailsActivity.java b/src/main/java/eu/siacs/conversations/ui/ContactDetailsActivity.java index 33de0f685..339adc28f 100644 --- a/src/main/java/eu/siacs/conversations/ui/ContactDetailsActivity.java +++ b/src/main/java/eu/siacs/conversations/ui/ContactDetailsActivity.java @@ -2,6 +2,7 @@ package eu.siacs.conversations.ui; import android.app.AlertDialog; import android.app.PendingIntent; +import android.content.ActivityNotFoundException; import android.content.Context; import android.content.DialogInterface; import android.content.Intent; @@ -41,6 +42,7 @@ import eu.siacs.conversations.crypto.axolotl.AxolotlService; import eu.siacs.conversations.crypto.axolotl.XmppAxolotlSession; import eu.siacs.conversations.entities.Account; import eu.siacs.conversations.entities.Contact; +import eu.siacs.conversations.entities.Conversation; import eu.siacs.conversations.entities.ListItem; import eu.siacs.conversations.entities.Presence; import eu.siacs.conversations.services.XmppConnectionService.OnAccountUpdate; @@ -56,6 +58,7 @@ import eu.siacs.conversations.xmpp.jid.Jid; public class ContactDetailsActivity extends XmppActivity implements OnAccountUpdate, OnRosterUpdate, OnUpdateBlocklist, OnKeyStatusUpdated { public static final String ACTION_VIEW_CONTACT = "view_contact"; + private Conversation mConversation; private Contact contact; private DialogInterface.OnClickListener removeFromRoster = new DialogInterface.OnClickListener() { @@ -225,6 +228,18 @@ public class ContactDetailsActivity extends XmppActivity implements OnAccountUpd this.showDynamicTags = preferences.getBoolean("show_dynamic_tags",false); } + private void share() { + Intent shareIntent = new Intent(); + shareIntent.setAction(Intent.ACTION_SEND); + shareIntent.putExtra(Intent.EXTRA_TEXT, getShareableUri()); + shareIntent.setType("text/plain"); + try { + startActivity(Intent.createChooser(shareIntent, getText(R.string.share_uri_with))); + } catch (ActivityNotFoundException e) { + Toast.makeText(this, R.string.no_application_to_share_uri, Toast.LENGTH_SHORT).show(); + } + } + @Override public boolean onOptionsItemSelected(final MenuItem menuItem) { final AlertDialog.Builder builder = new AlertDialog.Builder(this); @@ -263,6 +278,9 @@ public class ContactDetailsActivity extends XmppActivity implements OnAccountUpd startActivity(intent); } break; + case R.id.action_share: + share(); + break; case R.id.action_block: BlockContactDialog.show(this, xmppConnectionService, contact); break; diff --git a/src/main/res/menu/contact_details.xml b/src/main/res/menu/contact_details.xml index 43ccc7927..7879eaea1 100644 --- a/src/main/res/menu/contact_details.xml +++ b/src/main/res/menu/contact_details.xml @@ -7,11 +7,19 @@ android:orderInCategory="10" android:showAsAction="always" android:title="@string/action_edit_contact"/> + + + \ No newline at end of file -- cgit v1.2.3