diff options
| author | Andrew Dolgov <fox@fakecake.org> | 2025-05-14 07:42:18 +0300 |
|---|---|---|
| committer | Andrew Dolgov <fox@fakecake.org> | 2025-05-14 07:42:18 +0300 |
| commit | 8e278d9225bcaa10614f689b61e6bca935e2a043 (patch) | |
| tree | 31d56fa6c268ddf389de721834502cc56266ad1d | |
| parent | 53031bc50daeef1eef30a13ca580bb133738afef (diff) | |
stop refreshing headlines on resume, fix order (diff, update, dispatch) when syncing to shared article list
| -rwxr-xr-x | org.fox.ttrss/src/main/java/org/fox/ttrss/HeadlinesFragment.java | 26 |
1 files changed, 9 insertions, 17 deletions
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 d233e87f..e1d24a7e 100755 --- a/org.fox.ttrss/src/main/java/org/fox/ttrss/HeadlinesFragment.java +++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/HeadlinesFragment.java @@ -350,6 +350,7 @@ public class HeadlinesFragment extends androidx.fragment.app.Fragment implements @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { + Log.d(TAG, "onCreateView"); String headlineMode = m_prefs.getString("headline_mode", "HL_DEFAULT"); @@ -372,13 +373,13 @@ public class HeadlinesFragment extends androidx.fragment.app.Fragment implements m_list.setLayoutManager(m_layoutManager); m_list.setItemAnimator(new DefaultItemAnimator()); - m_articles.clear(); - m_articles.addAll(Application.getArticles()); - m_adapter = new ArticleListAdapter(m_articles); - m_list.setAdapter(m_adapter); + if (savedInstanceState == null && Application.getArticles().isEmpty()) { + refresh(false); + } + if (m_prefs.getBoolean("headlines_swipe_to_dismiss", true) && !m_prefs.getBoolean("headlines_mark_read_scroll", false) ) { ItemTouchHelper swipeHelper = new ItemTouchHelper(new ItemTouchHelper.SimpleCallback(0, ItemTouchHelper.RIGHT) { @@ -520,8 +521,6 @@ public class HeadlinesFragment extends androidx.fragment.app.Fragment implements m_activity.setTitle(m_feed.title); } - Log.d(TAG, "onCreateView, feed=" + m_feed); - return view; } @@ -529,16 +528,9 @@ public class HeadlinesFragment extends androidx.fragment.app.Fragment implements public void onResume() { super.onResume(); - syncToSharedArticles(); + Log.d(TAG, "onResume"); - if (Application.getArticles().getSizeWithoutFooters() == 0) { - refresh(false); - } else { - Article activeArticle = Application.getArticles().getById(m_activeArticleId); - - if (activeArticle != null) - scrollToArticle(activeArticle); - } + syncToSharedArticles(); m_activity.invalidateOptionsMenu(); } @@ -1553,10 +1545,10 @@ public class HeadlinesFragment extends androidx.fragment.app.Fragment implements DiffUtil.DiffResult diffResult = DiffUtil.calculateDiff(new HeadlinesDiffUtilCallback(m_articles, tmp)); - diffResult.dispatchUpdatesTo(m_adapter); - m_articles.clear(); m_articles.addAll(tmp); + + diffResult.dispatchUpdatesTo(m_adapter); } } |