From f6162a8d722fed16531458e507f36ad1ec964276 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Thu, 1 Jun 2017 19:42:54 +0300 Subject: swipe dismiss: set article back to unread if it was before --- .../main/java/org/fox/ttrss/HeadlinesFragment.java | 34 +++++++++++++++------- 1 file changed, 23 insertions(+), 11 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 10690e43..3a703d72 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 @@ -372,25 +372,37 @@ public class HeadlinesFragment extends Fragment { try { final Article article = getArticleAtPosition(position); + final boolean wasUnread; if (article != null) { if (article.unread) { + wasUnread = true; + article.unread = false; m_activity.saveArticleUnread(article); + } else { + wasUnread = false; } - } - m_articles.remove(position); - m_adapter.notifyDataSetChanged(); + m_articles.remove(position); + m_adapter.notifyDataSetChanged(); - Snackbar.make(m_list, R.string.headline_undo_row_prompt, Snackbar.LENGTH_LONG) - .setAction(getString(R.string.headline_undo_row_button), new OnClickListener() { - @Override - public void onClick(View v) { - m_articles.add(position, article); - m_adapter.notifyDataSetChanged(); - } - }).show(); + Snackbar.make(m_list, R.string.headline_undo_row_prompt, Snackbar.LENGTH_LONG) + .setAction(getString(R.string.headline_undo_row_button), new OnClickListener() { + @Override + public void onClick(View v) { + + if (wasUnread) { + article.unread = true; + m_activity.saveArticleUnread(article); + } + + m_articles.add(position, article); + m_adapter.notifyDataSetChanged(); + } + }).show(); + + } } catch (Exception e) { e.printStackTrace(); -- cgit v1.2.3