diff options
author | Andrew Dolgov <[email protected]> | 2012-10-08 12:35:43 +0400 |
---|---|---|
committer | Andrew Dolgov <[email protected]> | 2012-10-08 12:35:43 +0400 |
commit | bc7a0a1c0d2d1f2490aa896338fa85ad9cefea72 (patch) | |
tree | 5fc0847ca9c7ceb0979dcd7bde9970a147cb101f /src | |
parent | b7069370759e8358ce7cc1b68fd13f703267dd4e (diff) |
add option to show oldest articles first in offline mode (closes #504)
Diffstat (limited to 'src')
-rw-r--r-- | src/org/fox/ttrss/offline/OfflineArticlePager.java | 14 | ||||
-rw-r--r-- | src/org/fox/ttrss/offline/OfflineHeadlinesFragment.java | 6 |
2 files changed, 15 insertions, 5 deletions
diff --git a/src/org/fox/ttrss/offline/OfflineArticlePager.java b/src/org/fox/ttrss/offline/OfflineArticlePager.java index ac98646e..7e9384ca 100644 --- a/src/org/fox/ttrss/offline/OfflineArticlePager.java +++ b/src/org/fox/ttrss/offline/OfflineArticlePager.java @@ -4,8 +4,10 @@ import org.fox.ttrss.R; import org.fox.ttrss.types.Article;
import android.app.Activity;
+import android.content.SharedPreferences;
import android.database.Cursor;
import android.os.Bundle;
+import android.preference.PreferenceManager;
import android.provider.BaseColumns;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
@@ -27,6 +29,7 @@ public class OfflineArticlePager extends Fragment { private int m_articleId;
private String m_searchQuery = "";
private Cursor m_cursor;
+ private SharedPreferences m_prefs;
public int getFeedId() {
return m_feedId;
@@ -45,15 +48,17 @@ public class OfflineArticlePager extends Fragment { feedClause = "feed_id = ?";
}
+ String orderBy = (m_prefs.getBoolean("offline_oldest_first", false)) ? "updated" : "updated DESC";
+
if (m_searchQuery == null || m_searchQuery.equals("")) {
return m_activity.getReadableDb().query("articles LEFT JOIN feeds ON (feed_id = feeds."+BaseColumns._ID+")",
new String[] { "articles."+BaseColumns._ID, "feeds.title AS feed_title" }, feedClause,
- new String[] { String.valueOf(m_feedId) }, null, null, "updated DESC");
+ new String[] { String.valueOf(m_feedId) }, null, null, orderBy);
} else {
return m_activity.getReadableDb().query("articles LEFT JOIN feeds ON (feed_id = feeds."+BaseColumns._ID+")",
new String[] { "articles."+BaseColumns._ID },
feedClause + " AND (articles.title LIKE '%' || ? || '%' OR content LIKE '%' || ? || '%')",
- new String[] { String.valueOf(m_feedId), m_searchQuery, m_searchQuery }, null, null, "updated DESC");
+ new String[] { String.valueOf(m_feedId), m_searchQuery, m_searchQuery }, null, null, orderBy);
}
}
@@ -172,8 +177,11 @@ public class OfflineArticlePager extends Fragment { m_activity = (OfflineActivity)activity;
m_listener = (OfflineHeadlinesEventListener)activity;
- m_cursor = createCursor();
+ m_prefs = PreferenceManager.getDefaultSharedPreferences(getActivity().getApplicationContext());
+
+ m_cursor = createCursor();
+
}
public void refresh() {
diff --git a/src/org/fox/ttrss/offline/OfflineHeadlinesFragment.java b/src/org/fox/ttrss/offline/OfflineHeadlinesFragment.java index 37e35718..f49e634d 100644 --- a/src/org/fox/ttrss/offline/OfflineHeadlinesFragment.java +++ b/src/org/fox/ttrss/offline/OfflineHeadlinesFragment.java @@ -303,15 +303,17 @@ public class OfflineHeadlinesFragment extends Fragment implements OnItemClickLis feedClause = "feed_id = ?";
}
+ String orderBy = (m_prefs.getBoolean("offline_oldest_first", false)) ? "updated" : "updated DESC";
+
if (m_searchQuery == null || m_searchQuery.equals("")) {
return m_activity.getReadableDb().query("articles LEFT JOIN feeds ON (feed_id = feeds."+BaseColumns._ID+")",
new String[] { "articles.*", "feeds.title AS feed_title" }, feedClause,
- new String[] { String.valueOf(m_feedId) }, null, null, "updated DESC");
+ new String[] { String.valueOf(m_feedId) }, null, null, orderBy);
} else {
return m_activity.getReadableDb().query("articles LEFT JOIN feeds ON (feed_id = feeds."+BaseColumns._ID+")",
new String[] { "articles.*", "feeds.title AS feed_title" },
feedClause + " AND (articles.title LIKE '%' || ? || '%' OR content LIKE '%' || ? || '%')",
- new String[] { String.valueOf(m_feedId), m_searchQuery, m_searchQuery }, null, null, "updated DESC");
+ new String[] { String.valueOf(m_feedId), m_searchQuery, m_searchQuery }, null, null, orderBy);
}
}
|