diff options
| author | Andrew Dolgov <fox@fakecake.org> | 2012-03-08 18:29:27 +0300 |
|---|---|---|
| committer | Andrew Dolgov <fox@fakecake.org> | 2012-03-08 18:29:27 +0300 |
| commit | 14769a40191078d96c8637cdede508c470595885 (patch) | |
| tree | 1ffc069bbfefff45b13c8620855d8f04aa7fc9d9 /src/org/fox/ttrss/FeedsFragment.java | |
| parent | 1945fa6317c46019028254701f218692cefcfc9a (diff) | |
on API 3, sort feeds and categories using order configured in tt-rss
properly unmark Uncategorized on closeCategory()
Diffstat (limited to 'src/org/fox/ttrss/FeedsFragment.java')
| -rw-r--r-- | src/org/fox/ttrss/FeedsFragment.java | 23 |
1 files changed, 21 insertions, 2 deletions
diff --git a/src/org/fox/ttrss/FeedsFragment.java b/src/org/fox/ttrss/FeedsFragment.java index 07682586..836a5b0c 100644 --- a/src/org/fox/ttrss/FeedsFragment.java +++ b/src/org/fox/ttrss/FeedsFragment.java @@ -92,7 +92,22 @@ public class FeedsFragment extends Fragment implements OnItemClickListener, OnSh }
}
-
+
+ class FeedOrderComparator implements Comparator<Feed> {
+
+ @Override
+ public int compare(Feed a, Feed b) {
+ if (a.id >= 0 && b.id >= 0)
+ if (a.order_id != 0 && b.order_id != 0)
+ return a.order_id - b.order_id;
+ else
+ return a.title.compareTo(b.title);
+ else
+ return a.id - b.id;
+ }
+
+ }
+
@Override
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo) {
@@ -424,7 +439,11 @@ public class FeedsFragment extends Fragment implements OnItemClickListener, OnSh if (m_prefs.getBoolean("sort_feeds_by_unread", false)) {
cmp = new FeedUnreadComparator();
} else {
- cmp = new FeedTitleComparator();
+ if (m_onlineServices.getApiLevel() >= 3) {
+ cmp = new FeedOrderComparator();
+ } else {
+ cmp = new FeedTitleComparator();
+ }
}
Collections.sort(m_feeds, cmp);
|