diff options
-rw-r--r-- | res/menu/headlines_context_menu.xml | 4 | ||||
-rw-r--r-- | res/values/strings.xml | 1 | ||||
-rw-r--r-- | src/org/fox/ttrss/HeadlinesFragment.java | 17 |
3 files changed, 22 insertions, 0 deletions
diff --git a/res/menu/headlines_context_menu.xml b/res/menu/headlines_context_menu.xml index 2a445216..d50fac1d 100644 --- a/res/menu/headlines_context_menu.xml +++ b/res/menu/headlines_context_menu.xml @@ -19,6 +19,10 @@ android:showAsAction="" android:title="@string/share_article"/> <item + android:id="@+id/headlines_article_link_open" + android:showAsAction="" + android:title="@string/open_article_in_web_browser"/> + <item android:id="@+id/headlines_article_link_copy" android:showAsAction="" android:title="@string/article_link_copy"/> diff --git a/res/values/strings.xml b/res/values/strings.xml index a6ec2eb7..3ab84958 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -216,4 +216,5 @@ <string name="unsubscribe">Unsubscribe</string> <string name="unsubscribe_from_prompt">Unsubscribe from %1$s?</string> <string name="toggle_sidebar">Toggle sidebar</string> + <string name="open_article_in_web_browser">Open in web browser</string> </resources> diff --git a/src/org/fox/ttrss/HeadlinesFragment.java b/src/org/fox/ttrss/HeadlinesFragment.java index 7145f51b..84051cd5 100644 --- a/src/org/fox/ttrss/HeadlinesFragment.java +++ b/src/org/fox/ttrss/HeadlinesFragment.java @@ -17,11 +17,13 @@ import uk.co.senab.actionbarpulltorefresh.library.PullToRefreshAttacher.OnRefres import android.app.Activity; import android.content.Context; +import android.content.Intent; import android.content.SharedPreferences; import android.content.res.Resources.Theme; import android.graphics.Paint; import android.graphics.drawable.BitmapDrawable; import android.graphics.drawable.Drawable; +import android.net.Uri; import android.os.Bundle; import android.preference.PreferenceManager; import android.support.v4.app.Fragment; @@ -135,6 +137,21 @@ public class HeadlinesFragment extends Fragment implements OnItemClickListener, } } return true; + case R.id.headlines_article_link_open: + if (true) { + Article article = getArticleAtPosition(info.position); + + if (article != null) { + Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(article.link)); + startActivity(browserIntent); + + if (article.unread) { + article.unread = false; + m_activity.saveArticleUnread(article); + } + } + } + return true; case R.id.selection_toggle_marked: if (true) { ArticleList selected = getSelectedArticles(); |