From b6400139ae6edf83dd529fdb8cde053407bf971e Mon Sep 17 00:00:00 2001 From: YuviPanda Date: Sat, 23 Feb 2013 16:26:33 +0530 Subject: [PATCH] Add 'view in browser' action to detail page --- commons/res/menu/fragment_image_detail.xml | 5 +++++ commons/res/values/strings.xml | 1 + .../commons/media/MediaDetailPagerFragment.java | 11 +++++++++-- 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/commons/res/menu/fragment_image_detail.xml b/commons/res/menu/fragment_image_detail.xml index 62ea7445b..4425559c8 100644 --- a/commons/res/menu/fragment_image_detail.xml +++ b/commons/res/menu/fragment_image_detail.xml @@ -6,5 +6,10 @@ android:icon="@android:drawable/ic_menu_share" android:title="@string/menu_share" /> + \ No newline at end of file diff --git a/commons/res/values/strings.xml b/commons/res/values/strings.xml index 2bcc27f2d..5949c4cc7 100644 --- a/commons/res/values/strings.xml +++ b/commons/res/values/strings.xml @@ -35,6 +35,7 @@ My uploads Share + View in Browser No uploads yet diff --git a/commons/src/main/java/org/wikimedia/commons/media/MediaDetailPagerFragment.java b/commons/src/main/java/org/wikimedia/commons/media/MediaDetailPagerFragment.java index 5f7015af0..22ce16b90 100644 --- a/commons/src/main/java/org/wikimedia/commons/media/MediaDetailPagerFragment.java +++ b/commons/src/main/java/org/wikimedia/commons/media/MediaDetailPagerFragment.java @@ -2,6 +2,7 @@ package org.wikimedia.commons.media; import android.app.Activity; import android.content.Intent; +import android.net.Uri; import android.os.Bundle; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; @@ -62,16 +63,22 @@ public class MediaDetailPagerFragment extends SherlockFragment { @Override public boolean onOptionsItemSelected(MenuItem item) { + MediaDetailProvider provider = (MediaDetailProvider)getSherlockActivity(); + Media m = provider.getItem(pager.getCurrentItem()); switch(item.getItemId()) { case R.id.menu_share_current_image: Intent shareIntent = new Intent(); shareIntent.setAction(Intent.ACTION_SEND); shareIntent.setType("text/plain"); - MediaDetailProvider provider = (MediaDetailProvider)getSherlockActivity(); - Media m = provider.getItem(pager.getCurrentItem()); shareIntent.putExtra(Intent.EXTRA_TEXT, m.getDisplayTitle() + " " + m.getDescriptionUrl()); startActivity(shareIntent); return true; + case R.id.menu_browser_current_image: + Intent viewIntent = new Intent(); + viewIntent.setAction(Intent.ACTION_VIEW); + viewIntent.setData(Uri.parse(m.getDescriptionUrl())); + startActivity(viewIntent); + return true; default: return super.onOptionsItemSelected(item); }