From 50ef8ede653dab9a3e089d9c45f4c145788cc0f2 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Fri, 16 May 2025 09:40:06 +0300 Subject: cleaner implementation for shared preference change listener / unread toggling --- org.fox.ttrss/src/main/java/org/fox/ttrss/CommonActivity.java | 2 +- org.fox.ttrss/src/main/java/org/fox/ttrss/FeedsFragment.java | 9 ++++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/CommonActivity.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/CommonActivity.java index 096eb75a..d5d593ae 100755 --- a/org.fox.ttrss/src/main/java/org/fox/ttrss/CommonActivity.java +++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/CommonActivity.java @@ -310,7 +310,7 @@ public class CommonActivity extends AppCompatActivity implements SharedPreferenc setAppTheme(sharedPreferences); } - String[] filter = new String[] { "browse_cats_like_feeds", "headline_mode", "widget_update_interval", + String[] filter = new String[] { "headline_mode", "widget_update_interval", "headlines_swipe_to_dismiss", "headlines_mark_read_scroll", "headlines_request_size", "force_phone_layout", "open_on_startup"}; 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 f17e392c..5ff66eff 100755 --- a/org.fox.ttrss/src/main/java/org/fox/ttrss/FeedsFragment.java +++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/FeedsFragment.java @@ -498,7 +498,6 @@ public class FeedsFragment extends Fragment implements OnSharedPreferenceChangeL holder.rowSwitch.setOnCheckedChangeListener((button, isChecked) -> { m_activity.setUnreadOnly(isChecked); - refresh(); }); } @@ -618,8 +617,12 @@ public class FeedsFragment extends Fragment implements OnSharedPreferenceChangeL String key) { // Can't access ViewModels from detached fragment (= backstack) - if (isAdded()) - refresh(); + if (isAdded()) { + String[] filter = new String[] { "sort_feeds_by_unread", "show_unread_only" }; + + if (Arrays.asList(filter).contains(key)) + refresh(); + } } public void setSelectedFeed(Feed feed) { -- cgit v1.2.3-54-g00ecf