summaryrefslogtreecommitdiff
path: root/org.fox.ttrss
diff options
context:
space:
mode:
authorAndrew Dolgov <fox@fakecake.org>2024-11-26 17:01:40 +0300
committerAndrew Dolgov <fox@fakecake.org>2024-11-26 17:01:40 +0300
commitc3c8bf01d915be9ae835eeead5ab6dc4101ea552 (patch)
tree90cbf4b7929e32b32d660b90a156056c66264db6 /org.fox.ttrss
parentbe224b2e3e7a05f06e85ceab64ce99f136b6c896 (diff)
allow switching display mode (compact, normal, etc) from overflow menu
Diffstat (limited to 'org.fox.ttrss')
-rwxr-xr-xorg.fox.ttrss/src/main/AndroidManifest.xml4
-rwxr-xr-xorg.fox.ttrss/src/main/java/org/fox/ttrss/OnlineActivity.java36
-rwxr-xr-xorg.fox.ttrss/src/main/res/menu/activity_main.xml6
-rwxr-xr-xorg.fox.ttrss/src/main/res/values/strings.xml1
4 files changed, 45 insertions, 2 deletions
diff --git a/org.fox.ttrss/src/main/AndroidManifest.xml b/org.fox.ttrss/src/main/AndroidManifest.xml
index ecd70627..63cf6b00 100755
--- 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="548"
- android:versionName="1.314">
+ android:versionCode="549"
+ android:versionName="1.315">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
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 7704e307..73c0e635 100755
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/OnlineActivity.java
+++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/OnlineActivity.java
@@ -49,6 +49,7 @@ import org.fox.ttrss.types.Label;
import org.fox.ttrss.util.ImageCacheService;
import java.lang.reflect.Type;
+import java.util.Arrays;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.List;
@@ -622,6 +623,41 @@ public class OnlineActivity extends CommonActivity {
}
}
return true;
+ case R.id.headlines_display_mode:
+ if (hf != null) {
+ Dialog dialog = new Dialog(this);
+
+ String headlineMode = m_prefs.getString("headline_mode", "HL_DEFAULT");
+ String[] headlineModeNames = getResources().getStringArray(R.array.headline_mode_names);
+ final String[] headlineModeValues = getResources().getStringArray(R.array.headline_mode_values);
+
+ int selectedIndex = Arrays.asList(headlineModeValues).indexOf(headlineMode);
+
+ AlertDialog.Builder builder = new AlertDialog.Builder(this)
+ .setTitle(R.string.headlines_set_view_mode)
+ .setSingleChoiceItems(headlineModeNames,
+ selectedIndex, new DialogInterface.OnClickListener() {
+ @Override
+ public void onClick(DialogInterface dialog,
+ int which) {
+ dialog.cancel();
+
+ SharedPreferences.Editor editor = m_prefs.edit();
+ editor.putString("headline_mode", headlineModeValues[which]);
+ editor.apply();
+
+ finish();
+ startActivity(getIntent());
+ overridePendingTransition(0, 0);
+
+ }
+ });
+
+ dialog = builder.create();
+ dialog.show();
+
+ }
+ return true;
case R.id.headlines_view_mode:
if (hf != null) {
Dialog dialog = new Dialog(this);
diff --git a/org.fox.ttrss/src/main/res/menu/activity_main.xml b/org.fox.ttrss/src/main/res/menu/activity_main.xml
index df66fe75..d2ef27a0 100755
--- a/org.fox.ttrss/src/main/res/menu/activity_main.xml
+++ b/org.fox.ttrss/src/main/res/menu/activity_main.xml
@@ -35,6 +35,12 @@
android:id="@+id/headlines_view_mode"
app:showAsAction=""
android:title="@string/headlines_view_mode"/>
+
+ <item
+ android:id="@+id/headlines_display_mode"
+ app:showAsAction=""
+ android:title="@string/headlines_display_mode"/>
+
</group>
<group android:id="@+id/menu_group_article" >
<item
diff --git a/org.fox.ttrss/src/main/res/values/strings.xml b/org.fox.ttrss/src/main/res/values/strings.xml
index 41806fdb..0de65e12 100755
--- a/org.fox.ttrss/src/main/res/values/strings.xml
+++ b/org.fox.ttrss/src/main/res/values/strings.xml
@@ -158,6 +158,7 @@
<!-- <string name="error_url_contains_multiple_feeds">Error: URL contains multiple feeds</string> -->
<string name="error_could_not_download_url">Error: Could not download URL</string>
<string name="headlines_view_mode">Set view mode</string>
+ <string name="headlines_display_mode">Set display mode</string>
<string name="headlines_set_view_mode">Set view mode</string>
<string name="headlines_adaptive">Adaptive</string>
<string name="headlines_all_articles">All articles</string>