aboutsummaryrefslogtreecommitdiff
path: root/app/src/main
diff options
context:
space:
mode:
authorCamil Staps2015-06-10 22:58:20 +0200
committerCamil Staps2015-06-10 22:58:20 +0200
commit0e3c24d59c8b2e455b66a2adc100f70666b7e151 (patch)
treea3736bcdb921ac18bea23da3d1abaa4d1a6f667c /app/src/main
parentworking... (diff)
parentMerge branch 'master' of http://github.com/camilstaps/RSSin (diff)
Merge branch 'master' of github:camilstaps/RSSin
Conflicts: app/src/main/java/org/rssin/android/FeedItemAdapter.java app/src/main/java/org/rssin/rssin/Feed.java
Diffstat (limited to 'app/src/main')
-rwxr-xr-x[-rw-r--r--]app/src/main/java/org/rssin/android/ArticleActivity.java26
-rwxr-xr-x[-rw-r--r--]app/src/main/java/org/rssin/android/FeedItemAdapter.java12
-rwxr-xr-x[-rw-r--r--]app/src/main/java/org/rssin/android/SortedFeedItemContainer.java2
-rwxr-xr-x[-rw-r--r--]app/src/main/java/org/rssin/rssin/FeedLoaderAndSorter.java4
-rw-r--r--app/src/main/res/drawable-hdpi/image1.pngbin776320 -> 0 bytes
-rw-r--r--app/src/main/res/drawable-hdpi/image2.pngbin561697 -> 0 bytes
-rw-r--r--app/src/main/res/drawable-hdpi/image3.pngbin478748 -> 0 bytes
-rw-r--r--app/src/main/res/drawable-hdpi/image4.pngbin75454 -> 0 bytes
-rw-r--r--app/src/main/res/drawable-hdpi/image5.pngbin174967 -> 0 bytes
-rw-r--r--app/src/main/res/drawable-mdpi/image1.pngbin776320 -> 0 bytes
-rw-r--r--app/src/main/res/drawable-mdpi/image2.pngbin561697 -> 0 bytes
-rw-r--r--app/src/main/res/drawable-mdpi/image3.pngbin478748 -> 0 bytes
-rw-r--r--app/src/main/res/drawable-mdpi/image4.pngbin75454 -> 0 bytes
-rw-r--r--app/src/main/res/drawable-mdpi/image5.pngbin174967 -> 0 bytes
-rw-r--r--app/src/main/res/drawable-xhdpi/image1.pngbin776320 -> 0 bytes
-rw-r--r--app/src/main/res/drawable-xhdpi/image2.pngbin561697 -> 0 bytes
-rw-r--r--app/src/main/res/drawable-xhdpi/image3.pngbin478748 -> 0 bytes
-rw-r--r--app/src/main/res/drawable-xhdpi/image4.pngbin75454 -> 0 bytes
-rw-r--r--app/src/main/res/drawable-xhdpi/image5.pngbin174967 -> 0 bytes
-rw-r--r--app/src/main/res/drawable-xxhdpi/image1.pngbin776320 -> 0 bytes
-rw-r--r--app/src/main/res/drawable-xxhdpi/image2.pngbin561697 -> 0 bytes
-rw-r--r--app/src/main/res/drawable-xxhdpi/image3.pngbin478748 -> 0 bytes
-rw-r--r--app/src/main/res/drawable-xxhdpi/image4.pngbin75454 -> 0 bytes
-rw-r--r--app/src/main/res/drawable-xxhdpi/image5.pngbin174967 -> 0 bytes
-rw-r--r--app/src/main/res/drawable-xxxhdpi/image1.pngbin776320 -> 0 bytes
-rw-r--r--app/src/main/res/drawable-xxxhdpi/image2.pngbin561697 -> 0 bytes
-rw-r--r--app/src/main/res/drawable-xxxhdpi/image3.pngbin478748 -> 0 bytes
-rw-r--r--app/src/main/res/drawable-xxxhdpi/image4.pngbin75454 -> 0 bytes
-rw-r--r--app/src/main/res/drawable-xxxhdpi/image5.pngbin174967 -> 0 bytes
-rwxr-xr-x[-rw-r--r--]app/src/main/res/values/feeds.xml5
30 files changed, 39 insertions, 10 deletions
diff --git a/app/src/main/java/org/rssin/android/ArticleActivity.java b/app/src/main/java/org/rssin/android/ArticleActivity.java
index 6c80fb6..0951a48 100644..100755
--- a/app/src/main/java/org/rssin/android/ArticleActivity.java
+++ b/app/src/main/java/org/rssin/android/ArticleActivity.java
@@ -22,6 +22,7 @@ import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.text.Html;
+import android.text.method.LinkMovementMethod;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.TextView;
@@ -32,6 +33,9 @@ import org.rssin.rss.FeedSorterProvider;
import org.rssin.rss.FeedSorterTrainer;
import org.rssin.rssin.R;
+import java.net.MalformedURLException;
+import java.net.URL;
+
import static org.rssin.neurons.Feedback.Dislike;
import static org.rssin.neurons.Feedback.Like;
@@ -55,8 +59,28 @@ public class ArticleActivity extends ActionBarActivity {
title.setText(item.getTitle());
setTitle(item.getTitle());
+ String descriptionStr = item.getDescription();
+
+ try
+ {
+ // Transform <a> tags into absolute URLs.
+ // This may add a double slash after the domain name, but most - if not all - webservers will still
+ // parse the URL the same way.
+ URL url = new URL(item.getLink());
+ descriptionStr = descriptionStr.replaceAll("href=\"(((?!http).)*)\"", "href=\"http://" + url.getHost() + "/$1\"");
+ }catch(MalformedURLException e)
+ {
+ e.printStackTrace();
+ }
+
+ // Remove <img> & <media> tags
+ descriptionStr = descriptionStr.replaceAll("(<img.*\\/>|<img.*><\\/img>|<img.*>)", "");
+ descriptionStr = descriptionStr.replaceAll("(<media.*\\/>|<media.*><\\/media>)", "");
+
TextView description = (TextView) findViewById(R.id.article_description);
- description.setText(Html.fromHtml(item.getDescription()));
+ description.setText(Html.fromHtml(descriptionStr));
+ description.setLinksClickable(true);
+ description.setMovementMethod(LinkMovementMethod.getInstance());
TextView author = (TextView) findViewById(R.id.article_author);
if (item.getAuthor() != null) {
diff --git a/app/src/main/java/org/rssin/android/FeedItemAdapter.java b/app/src/main/java/org/rssin/android/FeedItemAdapter.java
index c8c939a..a927317 100644..100755
--- a/app/src/main/java/org/rssin/android/FeedItemAdapter.java
+++ b/app/src/main/java/org/rssin/android/FeedItemAdapter.java
@@ -20,6 +20,7 @@ package org.rssin.android;
import android.content.Intent;
import android.support.v7.widget.RecyclerView;
+import android.text.Html;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@@ -73,9 +74,14 @@ class FeedItemAdapter extends RecyclerView.Adapter<FeedItemAdapter.FeedItemHolde
FeedItem feedItem = item.getFeeditem();
if (feedItem != null) {
- holder.title.setText(feedItem.getTitle());
- holder.summary.setText(sapInterface.getSummary(feedItem).getText());
- holder.date.setText(feedItem.getPubDate().toString());
+ String summaryText = sapInterface.getSummary(item.getFeeditem()).getText();
+ // Remove img and media tags
+ summaryText = summaryText.replaceAll("(<img.*\\/>|<img.*><\\/img>|<img.*>)", "");
+ summaryText = summaryText.replaceAll("(<media.*\\/>|<media.*><\\/media>)", "");
+ summaryText = summaryText.replace((char) 160, (char) 32).replace((char) 65532, (char) 32).trim();
+
+ holder.summary.setText(Html.fromHtml(summaryText));
+ holder.date.setText(item.getFeeditem().getPubDate().toString());
holder.item = item;
}
}
diff --git a/app/src/main/java/org/rssin/android/SortedFeedItemContainer.java b/app/src/main/java/org/rssin/android/SortedFeedItemContainer.java
index fd2777c..8a5a576 100644..100755
--- a/app/src/main/java/org/rssin/android/SortedFeedItemContainer.java
+++ b/app/src/main/java/org/rssin/android/SortedFeedItemContainer.java
@@ -46,7 +46,7 @@ public class SortedFeedItemContainer implements Comparable<SortedFeedItemContain
}
public boolean hasScore() {
- return score != 0;
+ return score != -1;
}
public long getScore() {
diff --git a/app/src/main/java/org/rssin/rssin/FeedLoaderAndSorter.java b/app/src/main/java/org/rssin/rssin/FeedLoaderAndSorter.java
index 6244d2e..9c4ad2f 100644..100755
--- a/app/src/main/java/org/rssin/rssin/FeedLoaderAndSorter.java
+++ b/app/src/main/java/org/rssin/rssin/FeedLoaderAndSorter.java
@@ -108,7 +108,9 @@ public class FeedLoaderAndSorter {
List<FeedItem> feedItems = loader.getFeed().getPosts();
synchronized (resultingItems) {
for (FeedItem item : feedItems) {
- resultingItems.add(new SortedFeedItemContainer(item));
+ if(item != null) {
+ resultingItems.add(new SortedFeedItemContainer(item));
+ }
}
feedSorter.sortItems(resultingItems);
}
diff --git a/app/src/main/res/drawable-hdpi/image1.png b/app/src/main/res/drawable-hdpi/image1.png
deleted file mode 100644
index a1811d3..0000000
--- a/app/src/main/res/drawable-hdpi/image1.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-hdpi/image2.png b/app/src/main/res/drawable-hdpi/image2.png
deleted file mode 100644
index 243f396..0000000
--- a/app/src/main/res/drawable-hdpi/image2.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-hdpi/image3.png b/app/src/main/res/drawable-hdpi/image3.png
deleted file mode 100644
index 47547ff..0000000
--- a/app/src/main/res/drawable-hdpi/image3.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-hdpi/image4.png b/app/src/main/res/drawable-hdpi/image4.png
deleted file mode 100644
index 77fe64e..0000000
--- a/app/src/main/res/drawable-hdpi/image4.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-hdpi/image5.png b/app/src/main/res/drawable-hdpi/image5.png
deleted file mode 100644
index 0214f5e..0000000
--- a/app/src/main/res/drawable-hdpi/image5.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-mdpi/image1.png b/app/src/main/res/drawable-mdpi/image1.png
deleted file mode 100644
index a1811d3..0000000
--- a/app/src/main/res/drawable-mdpi/image1.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-mdpi/image2.png b/app/src/main/res/drawable-mdpi/image2.png
deleted file mode 100644
index 243f396..0000000
--- a/app/src/main/res/drawable-mdpi/image2.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-mdpi/image3.png b/app/src/main/res/drawable-mdpi/image3.png
deleted file mode 100644
index 47547ff..0000000
--- a/app/src/main/res/drawable-mdpi/image3.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-mdpi/image4.png b/app/src/main/res/drawable-mdpi/image4.png
deleted file mode 100644
index 77fe64e..0000000
--- a/app/src/main/res/drawable-mdpi/image4.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-mdpi/image5.png b/app/src/main/res/drawable-mdpi/image5.png
deleted file mode 100644
index 0214f5e..0000000
--- a/app/src/main/res/drawable-mdpi/image5.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-xhdpi/image1.png b/app/src/main/res/drawable-xhdpi/image1.png
deleted file mode 100644
index a1811d3..0000000
--- a/app/src/main/res/drawable-xhdpi/image1.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-xhdpi/image2.png b/app/src/main/res/drawable-xhdpi/image2.png
deleted file mode 100644
index 243f396..0000000
--- a/app/src/main/res/drawable-xhdpi/image2.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-xhdpi/image3.png b/app/src/main/res/drawable-xhdpi/image3.png
deleted file mode 100644
index 47547ff..0000000
--- a/app/src/main/res/drawable-xhdpi/image3.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-xhdpi/image4.png b/app/src/main/res/drawable-xhdpi/image4.png
deleted file mode 100644
index 77fe64e..0000000
--- a/app/src/main/res/drawable-xhdpi/image4.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-xhdpi/image5.png b/app/src/main/res/drawable-xhdpi/image5.png
deleted file mode 100644
index 0214f5e..0000000
--- a/app/src/main/res/drawable-xhdpi/image5.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-xxhdpi/image1.png b/app/src/main/res/drawable-xxhdpi/image1.png
deleted file mode 100644
index a1811d3..0000000
--- a/app/src/main/res/drawable-xxhdpi/image1.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-xxhdpi/image2.png b/app/src/main/res/drawable-xxhdpi/image2.png
deleted file mode 100644
index 243f396..0000000
--- a/app/src/main/res/drawable-xxhdpi/image2.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-xxhdpi/image3.png b/app/src/main/res/drawable-xxhdpi/image3.png
deleted file mode 100644
index 47547ff..0000000
--- a/app/src/main/res/drawable-xxhdpi/image3.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-xxhdpi/image4.png b/app/src/main/res/drawable-xxhdpi/image4.png
deleted file mode 100644
index 77fe64e..0000000
--- a/app/src/main/res/drawable-xxhdpi/image4.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-xxhdpi/image5.png b/app/src/main/res/drawable-xxhdpi/image5.png
deleted file mode 100644
index 0214f5e..0000000
--- a/app/src/main/res/drawable-xxhdpi/image5.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-xxxhdpi/image1.png b/app/src/main/res/drawable-xxxhdpi/image1.png
deleted file mode 100644
index a1811d3..0000000
--- a/app/src/main/res/drawable-xxxhdpi/image1.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-xxxhdpi/image2.png b/app/src/main/res/drawable-xxxhdpi/image2.png
deleted file mode 100644
index 243f396..0000000
--- a/app/src/main/res/drawable-xxxhdpi/image2.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-xxxhdpi/image3.png b/app/src/main/res/drawable-xxxhdpi/image3.png
deleted file mode 100644
index 47547ff..0000000
--- a/app/src/main/res/drawable-xxxhdpi/image3.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-xxxhdpi/image4.png b/app/src/main/res/drawable-xxxhdpi/image4.png
deleted file mode 100644
index 77fe64e..0000000
--- a/app/src/main/res/drawable-xxxhdpi/image4.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable-xxxhdpi/image5.png b/app/src/main/res/drawable-xxxhdpi/image5.png
deleted file mode 100644
index 0214f5e..0000000
--- a/app/src/main/res/drawable-xxxhdpi/image5.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/values/feeds.xml b/app/src/main/res/values/feeds.xml
index 85e5c7a..720e029 100644..100755
--- a/app/src/main/res/values/feeds.xml
+++ b/app/src/main/res/values/feeds.xml
@@ -24,10 +24,7 @@
<item>http://feeds.bbci.co.uk/news/technology/rss.xml</item>
<item>http://feeds.bbci.co.uk/news/world/rss.xml</item>
<item>http://feeds.bbci.co.uk/sport/0/rss.xml</item>
- <item>http://feeds.foxnews.com/foxnews/politics</item>
- <item>http://feeds.foxnews.com/foxnews/science</item>
- <item>http://feeds.foxnews.com/foxnews/sports</item>
- <item>http://feeds.foxnews.com/foxnews/tech</item>
+ <item>http://pcworld.com/index.rss</item>
<item>http://feeds.reuters.com/reuters/environment</item>
<item>http://feeds.reuters.com/reuters/financialsNews</item>
<item>http://feeds.reuters.com/reuters/worldNews</item>