diff options
Diffstat (limited to 'src/main')
-rw-r--r-- | src/main/java/de/pixart/messenger/ui/StartConversationActivity.java | 21 | ||||
-rw-r--r-- | src/main/res/menu/conference_context.xml | 3 |
2 files changed, 24 insertions, 0 deletions
diff --git a/src/main/java/de/pixart/messenger/ui/StartConversationActivity.java b/src/main/java/de/pixart/messenger/ui/StartConversationActivity.java index 30d7d20a0..2d24a27c9 100644 --- a/src/main/java/de/pixart/messenger/ui/StartConversationActivity.java +++ b/src/main/java/de/pixart/messenger/ui/StartConversationActivity.java @@ -13,6 +13,7 @@ import android.app.FragmentManager; import android.app.FragmentTransaction; import android.app.ListFragment; import android.app.PendingIntent; +import android.content.ActivityNotFoundException; import android.content.Context; import android.content.DialogInterface; import android.content.DialogInterface.OnClickListener; @@ -339,6 +340,23 @@ public class StartConversationActivity extends XmppActivity implements OnRosterU openConversationsForBookmark(bookmark); } + protected void shareBookmarkUri() { + shareBookmarkUri(conference_context_id); + } + + protected void shareBookmarkUri(int position) { + Bookmark bookmark = (Bookmark) conferences.get(position); + Intent shareIntent = new Intent(); + shareIntent.setAction(Intent.ACTION_SEND); + shareIntent.putExtra(Intent.EXTRA_TEXT, "xmpp:" + bookmark.getJid().toBareJid().toString() + "?join"); + 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(); + } + } + protected void openConversationsForBookmark(Bookmark bookmark) { Jid jid = bookmark.getJid(); if (jid == null) { @@ -1064,6 +1082,9 @@ public class StartConversationActivity extends XmppActivity implements OnRosterU case R.id.context_join_conference: activity.openConversationForBookmark(); break; + case R.id.context_share_uri: + activity.shareBookmarkUri(); + break; case R.id.context_delete_conference: activity.deleteConference(); } diff --git a/src/main/res/menu/conference_context.xml b/src/main/res/menu/conference_context.xml index 6a6eb92d2..051a468d4 100644 --- a/src/main/res/menu/conference_context.xml +++ b/src/main/res/menu/conference_context.xml @@ -7,5 +7,8 @@ <item android:id="@+id/context_delete_conference" android:title="@string/delete_bookmark" /> + <item + android:id="@+id/context_share_uri" + android:title="@string/share_uri_with" /> </menu>
\ No newline at end of file |