From 9e169dc3aa7c7e30c11d7d3d1bbc4bc66fa39760 Mon Sep 17 00:00:00 2001 From: defkev Date: Sat, 20 May 2023 14:39:26 +0200 Subject: Add hostname of link to article fragment * only if link hostname differs from comment_link hostname * omit www. prefix if present --- .../src/main/java/org/fox/ttrss/ArticleFragment.java | 14 ++++++++++++++ org.fox.ttrss/src/main/res/layout/fragment_article.xml | 14 ++++++++++++++ 2 files changed, 28 insertions(+) diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/ArticleFragment.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/ArticleFragment.java index beff9a1f..bf89e324 100755 --- a/org.fox.ttrss/src/main/java/org/fox/ttrss/ArticleFragment.java +++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/ArticleFragment.java @@ -335,6 +335,20 @@ public class ArticleFragment extends StateSavedFragment { } } + TextView host = view.findViewById(R.id.host); + if (host != null) { + try { + URL inurl = new URL(m_article.comments_link); /* This could be improved if /tt-rss/api:getArticle returned feed_url */ + URL outurl = new URL(m_article.link); + String inhost = inurl.getHost(); + String outhost = outurl.getHost(); + if (!inhost.equals(outhost)) { + host.setVisibility(View.VISIBLE); + host.setText(outhost.replaceFirst("^www\\.", "")); + } + } catch (MalformedURLException ignored) {} + } + TextView note = view.findViewById(R.id.note); if (note != null) { diff --git a/org.fox.ttrss/src/main/res/layout/fragment_article.xml b/org.fox.ttrss/src/main/res/layout/fragment_article.xml index 013b898c..61215a40 100755 --- a/org.fox.ttrss/src/main/res/layout/fragment_article.xml +++ b/org.fox.ttrss/src/main/res/layout/fragment_article.xml @@ -97,6 +97,20 @@ android:textColor="?headlineSecondaryTextColor" android:textSize="12sp" /> + + Date: Sun, 21 May 2023 04:56:25 +0200 Subject: Use site_url instead of comments_link requires tt-rss API 21+ --- org.fox.ttrss/src/main/java/org/fox/ttrss/ArticleFragment.java | 2 +- org.fox.ttrss/src/main/java/org/fox/ttrss/types/Article.java | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/ArticleFragment.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/ArticleFragment.java index bf89e324..04d5889f 100755 --- a/org.fox.ttrss/src/main/java/org/fox/ttrss/ArticleFragment.java +++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/ArticleFragment.java @@ -338,7 +338,7 @@ public class ArticleFragment extends StateSavedFragment { TextView host = view.findViewById(R.id.host); if (host != null) { try { - URL inurl = new URL(m_article.comments_link); /* This could be improved if /tt-rss/api:getArticle returned feed_url */ + URL inurl = new URL(m_article.site_url != null ? m_article.site_url : m_article.comments_link); URL outurl = new URL(m_article.link); String inhost = inurl.getHost(); String outhost = outurl.getHost(); diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/types/Article.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/types/Article.java index 2daaba49..dbfe8a72 100755 --- a/org.fox.ttrss/src/main/java/org/fox/ttrss/types/Article.java +++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/types/Article.java @@ -49,6 +49,7 @@ public class Article implements Parcelable { public String flavor_image; public String flavor_stream; public int flavor_kind; + public String site_url; /* not serialized */ transient public Document articleDoc; @@ -213,6 +214,7 @@ public class Article implements Parcelable { out.writeString(author); out.writeString(note); out.writeInt(selected ? 1 : 0); + out.writeString(site_url); } public void readFromParcel(Parcel in) { @@ -244,6 +246,7 @@ public class Article implements Parcelable { author = in.readString(); note = in.readString(); selected = in.readInt() == 1; + site_url = in.readString(); } @SuppressWarnings("rawtypes") -- cgit v1.2.3