diff options
| author | Andrew Dolgov <fox@fakecake.org> | 2025-05-13 11:08:18 +0300 |
|---|---|---|
| committer | Andrew Dolgov <fox@fakecake.org> | 2025-05-13 11:08:18 +0300 |
| commit | cbc8ab1cfb4ae8100dae7d2690209971a7574a09 (patch) | |
| tree | 5c37261ac26caeba0c5c214925c2d4f87fdf8cc0 | |
| parent | 09d65139099e240fc16ab82ff657262e9b471394 (diff) | |
stop notifying entire dataset changed on catchup above
| -rwxr-xr-x | org.fox.ttrss/src/main/java/org/fox/ttrss/HeadlinesFragment.java | 9 |
1 files changed, 7 insertions, 2 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 d813faa8..80735817 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 @@ -253,19 +253,24 @@ public class HeadlinesFragment extends androidx.fragment.app.Fragment implements private void catchupAbove(Article article) { ArticleList tmp = new ArticleList(); - for (Article a : Application.getArticles()) { + ArticleList articles = Application.getArticles(); + for (Article a : articles) { if (article.equalsById(a)) break; if (a.unread) { a.unread = false; tmp.add(a); + + int position = articles.getPositionById(a.id); + + if (position != -1) + m_adapter.notifyItemChanged(position); } } if (!tmp.isEmpty()) { m_activity.setArticlesUnread(tmp, Article.UPDATE_SET_FALSE); - m_adapter.notifyDataSetChanged(); } } |