From 22d949f83cbb0c77aa42d7fb13be1043cd3580a8 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Fri, 7 Jun 2013 12:51:52 +0400 Subject: sort feeds and cats case-insensitively bump version --- src/org/fox/ttrss/FeedCategoriesFragment.java | 10 +++++++--- src/org/fox/ttrss/FeedsFragment.java | 14 +++++++++----- 2 files changed, 16 insertions(+), 8 deletions(-) (limited to 'src') diff --git a/src/org/fox/ttrss/FeedCategoriesFragment.java b/src/org/fox/ttrss/FeedCategoriesFragment.java index 144ea7c8..34b21922 100644 --- a/src/org/fox/ttrss/FeedCategoriesFragment.java +++ b/src/org/fox/ttrss/FeedCategoriesFragment.java @@ -11,6 +11,7 @@ import org.fox.ttrss.types.Feed; import org.fox.ttrss.types.FeedCategory; import org.fox.ttrss.types.FeedCategoryList; +import android.annotation.SuppressLint; import android.app.Activity; import android.content.Context; import android.content.SharedPreferences; @@ -48,29 +49,32 @@ public class FeedCategoriesFragment extends Fragment implements OnItemClickListe private FeedCategory m_selectedCat; private FeedsActivity m_activity; + @SuppressLint("DefaultLocale") class CatUnreadComparator implements Comparator { @Override public int compare(FeedCategory a, FeedCategory b) { if (a.unread != b.unread) return b.unread - a.unread; else - return a.title.compareTo(b.title); + return a.title.toUpperCase().compareTo(b.title.toUpperCase()); } } + @SuppressLint("DefaultLocale") class CatTitleComparator implements Comparator { @Override public int compare(FeedCategory a, FeedCategory b) { if (a.id >= 0 && b.id >= 0) - return a.title.compareTo(b.title); + return a.title.toUpperCase().compareTo(b.title.toUpperCase()); else return a.id - b.id; } } + @SuppressLint("DefaultLocale") class CatOrderComparator implements Comparator { @Override @@ -79,7 +83,7 @@ public class FeedCategoriesFragment extends Fragment implements OnItemClickListe if (a.order_id != 0 && b.order_id != 0) return a.order_id - b.order_id; else - return a.title.compareTo(b.title); + return a.title.toUpperCase().compareTo(b.title.toUpperCase()); else return a.id - b.id; } diff --git a/src/org/fox/ttrss/FeedsFragment.java b/src/org/fox/ttrss/FeedsFragment.java index dafbd26d..cc7e213e 100644 --- a/src/org/fox/ttrss/FeedsFragment.java +++ b/src/org/fox/ttrss/FeedsFragment.java @@ -17,6 +17,7 @@ import org.fox.ttrss.types.Feed; import org.fox.ttrss.types.FeedCategory; import org.fox.ttrss.types.FeedList; +import android.annotation.SuppressLint; import android.app.Activity; import android.content.Context; import android.content.SharedPreferences; @@ -69,6 +70,7 @@ public class FeedsFragment extends Fragment implements OnItemClickListener, OnSh m_activeCategory = cat; } + @SuppressLint("DefaultLocale") class FeedUnreadComparator implements Comparator { @Override @@ -76,37 +78,39 @@ public class FeedsFragment extends Fragment implements OnItemClickListener, OnSh if (a.unread != b.unread) return b.unread - a.unread; else - return a.title.compareTo(b.title); + return a.title.toUpperCase().compareTo(b.title.toUpperCase()); } } + @SuppressLint("DefaultLocale") class FeedTitleComparator implements Comparator { @Override public int compare(Feed a, Feed b) { if (a.is_cat && b.is_cat) - return a.title.compareTo(b.title); + return a.title.toUpperCase().compareTo(b.title.toUpperCase()); else if (a.is_cat && !b.is_cat) return -1; else if (!a.is_cat && b.is_cat) return 1; else if (a.id >= 0 && b.id >= 0) - return a.title.compareTo(b.title); + return a.title.toUpperCase().compareTo(b.title.toUpperCase()); else return a.id - b.id; } } + @SuppressLint("DefaultLocale") class FeedOrderComparator implements Comparator { @Override public int compare(Feed a, Feed b) { if (a.id >= 0 && b.id >= 0) if (a.is_cat && b.is_cat) - return a.title.compareTo(b.title); + return a.title.toUpperCase().compareTo(b.title.toUpperCase()); else if (a.is_cat && !b.is_cat) return -1; else if (!a.is_cat && b.is_cat) @@ -114,7 +118,7 @@ public class FeedsFragment extends Fragment implements OnItemClickListener, OnSh else if (a.order_id != 0 && b.order_id != 0) return a.order_id - b.order_id; else - return a.title.compareTo(b.title); + return a.title.toUpperCase().compareTo(b.title.toUpperCase()); else return a.id - b.id; } -- cgit v1.2.3-54-g00ecf From fae361370d5956c5b5798a54901c5195fb817058 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Fri, 7 Jun 2013 12:53:00 +0400 Subject: onArticleSelected: bail out if article is null --- src/org/fox/ttrss/HeadlinesActivity.java | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src') diff --git a/src/org/fox/ttrss/HeadlinesActivity.java b/src/org/fox/ttrss/HeadlinesActivity.java index 6d0af32b..0bd5cabc 100644 --- a/src/org/fox/ttrss/HeadlinesActivity.java +++ b/src/org/fox/ttrss/HeadlinesActivity.java @@ -179,6 +179,8 @@ public class HeadlinesActivity extends OnlineActivity implements HeadlinesEventL @Override public void onArticleSelected(Article article, boolean open) { + if (article == null) return; + if (article.unread) { article.unread = false; saveArticleUnread(article); -- cgit v1.2.3-54-g00ecf