summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--org.fox.ttrss/src/main/AndroidManifest.xml4
-rw-r--r--org.fox.ttrss/src/main/java/org/fox/ttrss/ArticlePager.java4
-rw-r--r--org.fox.ttrss/src/main/java/org/fox/ttrss/FeedCategoriesFragment.java2
-rw-r--r--org.fox.ttrss/src/main/java/org/fox/ttrss/FeedsActivity.java76
-rw-r--r--org.fox.ttrss/src/main/java/org/fox/ttrss/FeedsFragment.java4
-rw-r--r--org.fox.ttrss/src/main/java/org/fox/ttrss/HeadlinesActivity.java6
-rw-r--r--org.fox.ttrss/src/main/java/org/fox/ttrss/HeadlinesFragment.java4
-rw-r--r--org.fox.ttrss/src/main/java/org/fox/ttrss/OnlineActivity.java34
-rw-r--r--org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineActivity.java22
-rw-r--r--org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineFeedsActivity.java70
-rw-r--r--org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineFeedsFragment.java2
-rw-r--r--org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineHeadlinesActivity.java4
-rw-r--r--org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineHeadlinesFragment.java4
-rw-r--r--org.fox.ttrss/src/main/res/drawable-hdpi/ic_action_sort_by_size.pngbin0 -> 183 bytes
-rw-r--r--org.fox.ttrss/src/main/res/drawable-xhdpi/ic_action_sort_by_size.pngbin0 -> 261 bytes
-rw-r--r--org.fox.ttrss/src/main/res/menu/main_menu.xml8
-rw-r--r--org.fox.ttrss/src/main/res/menu/offline_menu.xml10
-rw-r--r--org.fox.ttrss/src/main/res/values/strings.xml6
-rw-r--r--org.fox.ttrss/src/main/res/xml/preferences.xml9
19 files changed, 207 insertions, 62 deletions
diff --git a/org.fox.ttrss/src/main/AndroidManifest.xml b/org.fox.ttrss/src/main/AndroidManifest.xml
index 0db6432f..370e1f71 100644
--- a/org.fox.ttrss/src/main/AndroidManifest.xml
+++ b/org.fox.ttrss/src/main/AndroidManifest.xml
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="org.fox.ttrss"
- android:versionCode="264"
- android:versionName="1.59" >
+ android:versionCode="267"
+ android:versionName="1.62" >
<uses-sdk
android:minSdkVersion="9"
diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/ArticlePager.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/ArticlePager.java
index 6f45432b..3015eec0 100644
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/ArticlePager.java
+++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/ArticlePager.java
@@ -233,7 +233,7 @@ public class ArticlePager extends Fragment {
put("view_mode", m_activity.getViewMode());
put("skip", String.valueOf(fskip));
put("include_nested", "true");
- put("order_by", m_prefs.getBoolean("oldest_first", false) ? "date_reverse" : "");
+ put("order_by", m_activity.getSortMode());
if (feed.is_cat) put("is_cat", "true");
@@ -279,7 +279,7 @@ public class ArticlePager extends Fragment {
GlobalState.getInstance().m_activeFeed = m_feed;
}
- m_activity.initMenu();
+ m_activity.invalidateOptionsMenu();
if (!m_activity.isCompatMode() && m_prefs.getBoolean("dim_status_bar", false)) {
getView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LOW_PROFILE);
diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/FeedCategoriesFragment.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/FeedCategoriesFragment.java
index 5ec0ba60..740d43b9 100644
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/FeedCategoriesFragment.java
+++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/FeedCategoriesFragment.java
@@ -257,7 +257,7 @@ public class FeedCategoriesFragment extends Fragment implements OnItemClickListe
refresh(false);
- m_activity.initMenu();
+ m_activity.invalidateOptionsMenu();
}
@Override
diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/FeedsActivity.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/FeedsActivity.java
index 622fdda3..49c482ab 100644
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/FeedsActivity.java
+++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/FeedsActivity.java
@@ -2,6 +2,9 @@ package org.fox.ttrss;
import android.annotation.SuppressLint;
+import android.app.AlertDialog;
+import android.app.Dialog;
+import android.content.DialogInterface;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
@@ -294,11 +297,63 @@ public class FeedsActivity extends OnlineActivity implements HeadlinesEventListe
switch (item.getItemId()) {
case android.R.id.home:
- onBackPressed();
+ //getSupportFragmentManager().popBackStack();
return true;
- case R.id.show_feeds:
+ case R.id.headlines_toggle_sort_order:
+ Dialog dialog = new Dialog(this);
+
+ String sortMode = getSortMode();
+
+ int selectedIndex = 0;
+
+ if (sortMode.equals("feed_dates")) {
+ selectedIndex = 1;
+ } else if (sortMode.equals("date_reverse")) {
+ selectedIndex = 2;
+ } else if (sortMode.equals("title")) {
+ selectedIndex = 3;
+ }
+
+ AlertDialog.Builder builder = new AlertDialog.Builder(this)
+ .setTitle(getString(R.string.headlines_sort_articles_title))
+ .setSingleChoiceItems(
+ new String[] {
+ getString(R.string.headlines_sort_default),
+ getString(R.string.headlines_sort_newest_first),
+ getString(R.string.headlines_sort_oldest_first),
+ getString(R.string.headlines_sort_title)
+ },
+ selectedIndex, new DialogInterface.OnClickListener() {
+ @Override
+ public void onClick(DialogInterface dialog,
+ int which) {
+ switch (which) {
+ case 0:
+ setSortMode("default");
+ break;
+ case 1:
+ setSortMode("feed_dates");
+ break;
+ case 2:
+ setSortMode("date_reverse");
+ break;
+ case 3:
+ setSortMode("title");
+ break;
+ }
+ dialog.cancel();
+
+ refresh();
+ }
+ });
+
+ dialog = builder.create();
+ dialog.show();
+
+ return true;
+ case R.id.show_feeds:
setUnreadOnly(!getUnreadOnly());
- initMenu();
+ invalidateOptionsMenu();
refresh();
return true;
case R.id.update_feeds:
@@ -310,10 +365,15 @@ public class FeedsActivity extends OnlineActivity implements HeadlinesEventListe
return super.onOptionsItemSelected(item);
}
}
-
+
+ @Override
+ public void onBackPressed() {
+ finish();
+ }
+
@Override
protected void loginSuccess(boolean refresh) {
- initMenu();
+ invalidateOptionsMenu();
if (refresh) refresh();
}
@@ -330,12 +390,12 @@ public class FeedsActivity extends OnlineActivity implements HeadlinesEventListe
@Override
public void onResume() {
super.onResume();
- initMenu();
+ invalidateOptionsMenu();
}
@Override
public void onArticleListSelectionChange(ArticleList m_selectedArticles) {
- initMenu();
+ invalidateOptionsMenu();
}
public void openFeedArticles(Feed feed) {
@@ -368,7 +428,7 @@ public class FeedsActivity extends OnlineActivity implements HeadlinesEventListe
overridePendingTransition(R.anim.right_slide_in, 0);
} else {
- initMenu();
+ invalidateOptionsMenu();
}
}
diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/FeedsFragment.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/FeedsFragment.java
index ab54c698..a5b0a37a 100644
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/FeedsFragment.java
+++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/FeedsFragment.java
@@ -304,7 +304,7 @@ public class FeedsFragment extends Fragment implements OnItemClickListener, OnSh
parentBtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view) {
- m_activity.onBackPressed();
+ m_activity.getSupportFragmentManager().popBackStack();
}
});
} else {
@@ -350,7 +350,7 @@ public class FeedsFragment extends Fragment implements OnItemClickListener, OnSh
refresh(false);
- m_activity.initMenu();
+ m_activity.invalidateOptionsMenu();
}
@Override
diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/HeadlinesActivity.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/HeadlinesActivity.java
index 4a04526f..fb68247d 100644
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/HeadlinesActivity.java
+++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/HeadlinesActivity.java
@@ -151,7 +151,7 @@ public class HeadlinesActivity extends OnlineActivity implements HeadlinesEventL
protected void loginSuccess(boolean refresh) {
Log.d(TAG, "loginSuccess");
- initMenu();
+ invalidateOptionsMenu();
if (refresh) refresh();
}
@@ -221,7 +221,7 @@ public class HeadlinesActivity extends OnlineActivity implements HeadlinesEventL
@Override
public void onArticleListSelectionChange(ArticleList m_selectedArticles) {
- initMenu();
+ invalidateOptionsMenu();
}
@Override
@@ -267,7 +267,7 @@ public class HeadlinesActivity extends OnlineActivity implements HeadlinesEventL
GlobalState.getInstance().m_activeArticle = article;
- initMenu();
+ invalidateOptionsMenu();
}
diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/HeadlinesFragment.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/HeadlinesFragment.java
index 69d6033a..646ac11e 100644
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/HeadlinesFragment.java
+++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/HeadlinesFragment.java
@@ -377,7 +377,7 @@ public class HeadlinesFragment extends Fragment implements OnItemClickListener,
notifyUpdated();
}
- m_activity.initMenu();
+ m_activity.invalidateOptionsMenu();
}
@Override
@@ -541,7 +541,7 @@ public class HeadlinesFragment extends Fragment implements OnItemClickListener,
put("offset", String.valueOf(0));
put("skip", String.valueOf(fskip));
put("include_nested", "true");
- put("order_by", m_prefs.getBoolean("oldest_first", false) ? "date_reverse" : "");
+ put("order_by", m_activity.getSortMode());
if (isCat) put("is_cat", "true");
diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/OnlineActivity.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/OnlineActivity.java
index 244f40a4..2d1a0a84 100644
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/OnlineActivity.java
+++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/OnlineActivity.java
@@ -113,7 +113,7 @@ public class OnlineActivity extends CommonActivity {
ArticleList selected = hf.getSelectedArticles();
if (selected.size() > 0) {
selected.clear();
- initMenu();
+ invalidateOptionsMenu();
hf.notifyUpdated();
}
}
@@ -908,7 +908,7 @@ public class OnlineActivity extends CommonActivity {
break;
}
dialog.cancel();
- initMenu();
+ invalidateOptionsMenu();
}
});
@@ -934,7 +934,7 @@ public class OnlineActivity extends CommonActivity {
ArticleList selected = hf.getSelectedArticles();
if (selected.size() > 0) {
selected.clear();
- initMenu();
+ invalidateOptionsMenu();
hf.notifyUpdated();
}
}
@@ -949,7 +949,7 @@ public class OnlineActivity extends CommonActivity {
toggleArticlesUnread(selected);
hf.notifyUpdated();
- initMenu();
+ invalidateOptionsMenu();
}
}
return true;
@@ -963,7 +963,7 @@ public class OnlineActivity extends CommonActivity {
toggleArticlesMarked(selected);
hf.notifyUpdated();
- initMenu();
+ invalidateOptionsMenu();
}
}
return true;
@@ -977,7 +977,7 @@ public class OnlineActivity extends CommonActivity {
toggleArticlesPublished(selected);
hf.notifyUpdated();
- initMenu();
+ invalidateOptionsMenu();
}
}
return true;
@@ -1008,7 +1008,7 @@ public class OnlineActivity extends CommonActivity {
if (tmp.size() > 0) {
toggleArticlesUnread(tmp);
hf.notifyUpdated();
- initMenu();
+ invalidateOptionsMenu();
}
}
}
@@ -1331,7 +1331,7 @@ public class OnlineActivity extends CommonActivity {
ApiRequest req = new ApiRequest(getApplicationContext()) {
protected void onPostExecute(JsonElement result) {
//toast(article.marked ? R.string.notify_article_marked : R.string.notify_article_unmarked);
- initMenu();
+ invalidateOptionsMenu();
}
};
@@ -1354,7 +1354,7 @@ public class OnlineActivity extends CommonActivity {
ApiRequest req = new ApiRequest(getApplicationContext()) {
protected void onPostExecute(JsonElement result) {
//toast(article.published ? R.string.notify_article_published : R.string.notify_article_unpublished);
- initMenu();
+ invalidateOptionsMenu();
}
};
@@ -1723,13 +1723,23 @@ public class OnlineActivity extends CommonActivity {
}
- public void setViewMode(String viewMode) {
+ public String getSortMode() {
+ return m_prefs.getString("headlines_sort_mode", "default");
+ }
+
+ public void setSortMode(String sortMode) {
+ SharedPreferences.Editor editor = m_prefs.edit();
+ editor.putString("headlines_sort_mode", sortMode);
+ editor.commit();
+ }
+
+ public void setViewMode(String viewMode) {
SharedPreferences.Editor editor = m_prefs.edit();
editor.putString("view_mode", viewMode);
editor.commit();
}
-
- public String getViewMode() {
+
+ public String getViewMode() {
return m_prefs.getString("view_mode", "adaptive");
}
diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineActivity.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineActivity.java
index 6059bf2f..56e95400 100644
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineActivity.java
+++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineActivity.java
@@ -171,7 +171,7 @@ public class OfflineActivity extends CommonActivity {
setContentView(R.layout.login);
- initMenu();
+ invalidateOptionsMenu();
Intent intent = getIntent();
@@ -389,7 +389,7 @@ public class OfflineActivity extends CommonActivity {
int which) {
selectArticles(ohf.getFeedId(), ohf.getFeedIsCat(), which);
- initMenu();
+ invalidateOptionsMenu();
refresh();
dialog.cancel();
@@ -788,7 +788,7 @@ public class OfflineActivity extends CommonActivity {
ohf.refresh();
}
- initMenu();
+ invalidateOptionsMenu();
}
public void catchupFeed(int feedId, boolean isCat) {
@@ -823,7 +823,21 @@ public class OfflineActivity extends CommonActivity {
editor.putString("offline_view_mode", viewMode);
editor.commit();
}
-
+
+ /* public boolean getOldestFirst() {
+ return getSortMode().equals("oldest_first");
+ }
+
+ public String getSortMode() {
+ return m_prefs.getString("offline_headlines_sort_mode", "default");
+ }
+
+ public void setSortMode(String sortMode) {
+ SharedPreferences.Editor editor = m_prefs.edit();
+ editor.putString("offline_headlines_sort_mode", sortMode);
+ editor.commit();
+ } */
+
public String getViewMode() {
return m_prefs.getString("offline_view_mode", "adaptive");
}
diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineFeedsActivity.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineFeedsActivity.java
index 7decee7b..b82f2486 100644
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineFeedsActivity.java
+++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineFeedsActivity.java
@@ -1,7 +1,11 @@
package org.fox.ttrss.offline;
import android.annotation.SuppressLint;
+import android.app.AlertDialog;
+import android.app.Dialog;
+import android.content.DialogInterface;
import android.content.Intent;
+import android.content.SharedPreferences;
import android.database.sqlite.SQLiteStatement;
import android.os.Bundle;
import android.os.Handler;
@@ -100,8 +104,6 @@ public class OfflineFeedsActivity extends OfflineActivity implements OfflineHead
ft.commit();
}
-
- initMenu();
}
protected void onPostCreate(Bundle savedInstanceState) {
@@ -129,11 +131,58 @@ public class OfflineFeedsActivity extends OfflineActivity implements OfflineHead
switch (item.getItemId()) {
case android.R.id.home:
- onBackPressed();
+ //getSupportFragmentManager().popBackStack();
return true;
+ case R.id.headlines_toggle_sort_order:
+ /* SharedPreferences.Editor editor = m_prefs.edit();
+ editor.putBoolean("offline_oldest_first", !m_prefs.getBoolean("offline_oldest_first", false));
+ editor.commit();
+ refresh(); */
+
+ Dialog dialog = new Dialog(this);
+
+ int selectedIndex = m_prefs.getBoolean("offline_oldest_first", false) ? 1 : 0;
+
+ AlertDialog.Builder builder = new AlertDialog.Builder(this)
+ .setTitle(getString(R.string.headlines_sort_articles_title))
+ .setSingleChoiceItems(
+ new String[] {
+ getString(R.string.headlines_sort_default),
+ getString(R.string.headlines_sort_oldest_first)
+ },
+ selectedIndex, new DialogInterface.OnClickListener() {
+ @Override
+ public void onClick(DialogInterface dialog,
+ int which) {
+ switch (which) {
+ case 0:
+ if (true) {
+ SharedPreferences.Editor editor = m_prefs.edit();
+ editor.putBoolean("offline_oldest_first", false);
+ editor.commit();
+ }
+ break;
+ case 1:
+ if (true) {
+ SharedPreferences.Editor editor = m_prefs.edit();
+ editor.putBoolean("offline_oldest_first", true);
+ editor.commit();
+ }
+ break;
+ }
+ dialog.cancel();
+
+ refresh();
+ }
+ });
+
+ dialog = builder.create();
+ dialog.show();
+
+ return true;
case R.id.show_feeds:
setUnreadOnly(!getUnreadOnly());
- initMenu();
+ invalidateOptionsMenu();
refresh();
return true;
default:
@@ -215,8 +264,13 @@ public class OfflineFeedsActivity extends OfflineActivity implements OfflineHead
ft.commit();
}
}
-
- public void onFeedSelected(int feedId) {
+
+ @Override
+ public void onBackPressed() {
+ finish();
+ }
+
+ public void onFeedSelected(int feedId) {
onFeedSelected(feedId, false, true);
}
@@ -267,7 +321,7 @@ public class OfflineFeedsActivity extends OfflineActivity implements OfflineHead
stmt.close();
}
- initMenu();
+ invalidateOptionsMenu();
if (open) {
OfflineHeadlinesFragment hf = (OfflineHeadlinesFragment) getSupportFragmentManager().findFragmentByTag(FRAG_HEADLINES);
@@ -284,8 +338,6 @@ public class OfflineFeedsActivity extends OfflineActivity implements OfflineHead
} else {
refresh();
}
-
- initMenu();
}
diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineFeedsFragment.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineFeedsFragment.java
index 65f34398..ea6e59e3 100644
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineFeedsFragment.java
+++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineFeedsFragment.java
@@ -179,7 +179,7 @@ public class OfflineFeedsFragment extends Fragment implements OnItemClickListene
parentBtn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view) {
- m_activity.onBackPressed();
+ m_activity.getSupportFragmentManager().popBackStack();
}
});
} else {
diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineHeadlinesActivity.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineHeadlinesActivity.java
index 18bf63cd..51cfefeb 100644
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineHeadlinesActivity.java
+++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineHeadlinesActivity.java
@@ -116,8 +116,6 @@ public class OfflineHeadlinesActivity extends OfflineActivity implements Offline
}
}
-
- initMenu();
}
protected void onPostCreate(Bundle savedInstanceState) {
@@ -172,7 +170,7 @@ public class OfflineHeadlinesActivity extends OfflineActivity implements Offline
GlobalState.getInstance().m_selectedArticleId = articleId;
- initMenu();
+ invalidateOptionsMenu();
refresh();
}
diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineHeadlinesFragment.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineHeadlinesFragment.java
index 245be57b..324f57fb 100644
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineHeadlinesFragment.java
+++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineHeadlinesFragment.java
@@ -245,7 +245,7 @@ public class OfflineHeadlinesFragment extends Fragment implements OnItemClickLis
refresh();
- m_activity.initMenu();
+ m_activity.invalidateOptionsMenu();
}
public void refresh() {
@@ -658,7 +658,7 @@ public class OfflineHeadlinesFragment extends Fragment implements OnItemClickLis
refresh();
- m_activity.initMenu();
+ m_activity.invalidateOptionsMenu();
}
});
diff --git a/org.fox.ttrss/src/main/res/drawable-hdpi/ic_action_sort_by_size.png b/org.fox.ttrss/src/main/res/drawable-hdpi/ic_action_sort_by_size.png
new file mode 100644
index 00000000..d4404a37
--- /dev/null
+++ b/org.fox.ttrss/src/main/res/drawable-hdpi/ic_action_sort_by_size.png
Binary files differ
diff --git a/org.fox.ttrss/src/main/res/drawable-xhdpi/ic_action_sort_by_size.png b/org.fox.ttrss/src/main/res/drawable-xhdpi/ic_action_sort_by_size.png
new file mode 100644
index 00000000..700b9763
--- /dev/null
+++ b/org.fox.ttrss/src/main/res/drawable-xhdpi/ic_action_sort_by_size.png
Binary files differ
diff --git a/org.fox.ttrss/src/main/res/menu/main_menu.xml b/org.fox.ttrss/src/main/res/menu/main_menu.xml
index 673435b8..2bb72bc9 100644
--- a/org.fox.ttrss/src/main/res/menu/main_menu.xml
+++ b/org.fox.ttrss/src/main/res/menu/main_menu.xml
@@ -55,11 +55,17 @@
android:title="@string/headlines_mark_as_read"/>
<item
android:id="@+id/headlines_select"
- app:showAsAction="ifRoom"
+ app:showAsAction=""
android:icon="@drawable/ic_select_all_light"
android:title="@string/headlines_select"/>
<item
+ android:id="@+id/headlines_toggle_sort_order"
+ android:icon="@drawable/ic_action_sort_by_size"
+ app:showAsAction="ifRoom"
+ android:title="@string/toggle_sort_order"/>
+
+ <item
android:id="@+id/headlines_view_mode"
app:showAsAction=""
android:title="@string/headlines_view_mode"/>
diff --git a/org.fox.ttrss/src/main/res/menu/offline_menu.xml b/org.fox.ttrss/src/main/res/menu/offline_menu.xml
index cebeaf09..6f576cdd 100644
--- a/org.fox.ttrss/src/main/res/menu/offline_menu.xml
+++ b/org.fox.ttrss/src/main/res/menu/offline_menu.xml
@@ -16,6 +16,7 @@
<group android:id="@+id/menu_group_headlines" >
<item
android:id="@+id/search"
+ app:showAsAction="ifRoom"
android:icon="@drawable/ic_search_light"
android:title="@string/search"/>
<item
@@ -26,8 +27,15 @@
<item
android:id="@+id/headlines_select"
android:icon="@drawable/ic_select_all_light"
- app:showAsAction="ifRoom"
+ app:showAsAction=""
android:title="@string/headlines_select"/>
+
+ <item
+ android:id="@+id/headlines_toggle_sort_order"
+ android:icon="@drawable/ic_action_sort_by_size"
+ app:showAsAction="ifRoom"
+ android:title="@string/toggle_sort_order"/>
+
<item
android:id="@+id/headlines_view_mode"
app:showAsAction=""
diff --git a/org.fox.ttrss/src/main/res/values/strings.xml b/org.fox.ttrss/src/main/res/values/strings.xml
index b271472b..35d13b58 100644
--- a/org.fox.ttrss/src/main/res/values/strings.xml
+++ b/org.fox.ttrss/src/main/res/values/strings.xml
@@ -242,5 +242,11 @@
<string name="action_settings">Settings</string>
<string name="error_loading_image">Error loading image.</string>
<string name="open_parent">Open parent</string>
+ <string name="toggle_sort_order">Toggle oldest first</string>
+ <string name="headlines_sort_default">Default</string>
+ <string name="headlines_sort_newest_first">Newest first</string>
+ <string name="headlines_sort_oldest_first">Oldest first</string>
+ <string name="headlines_sort_title">Title</string>
+ <string name="headlines_sort_articles_title">Sort articles</string>
</resources>
diff --git a/org.fox.ttrss/src/main/res/xml/preferences.xml b/org.fox.ttrss/src/main/res/xml/preferences.xml
index 7ee21f84..ec1c6418 100644
--- a/org.fox.ttrss/src/main/res/xml/preferences.xml
+++ b/org.fox.ttrss/src/main/res/xml/preferences.xml
@@ -106,11 +106,6 @@
<CheckBoxPreference
android:defaultValue="false"
- android:key="oldest_first"
- android:summary="@string/requires_api5"
- android:title="@string/offline_oldest_first" />
- <CheckBoxPreference
- android:defaultValue="false"
android:key="headlines_mark_read_scroll"
android:summary="@string/pref_headlines_mark_read_scroll_long"
android:title="@string/pref_headlines_mark_read_scroll" />
@@ -171,10 +166,6 @@
android:key="offline_image_cache_enabled"
android:summary="@string/offline_image_cache_enabled_summary"
android:title="@string/offline_image_cache_enabled" />
- <CheckBoxPreference
- android:defaultValue="false"
- android:key="offline_oldest_first"
- android:title="@string/offline_oldest_first" />
</PreferenceCategory>
<PreferenceCategory android:title="@string/debugging" >
<CheckBoxPreference