summaryrefslogtreecommitdiff
path: root/org.fox.ttrss/src
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2017-06-01 19:29:04 +0300
committerAndrew Dolgov <[email protected]>2017-06-01 19:29:04 +0300
commitb043d6acb726fc44180f6d8efee91490d0da03ce (patch)
treeec9ba9f12ad0c727ac0ad41921b7cf951f83c63a /org.fox.ttrss/src
parent5d3f580de4c0803e2319cba9a8e04b46191131a5 (diff)
snackbar-based undo for swipe to dismiss
Diffstat (limited to 'org.fox.ttrss/src')
-rwxr-xr-xorg.fox.ttrss/src/main/java/org/fox/ttrss/HeadlinesFragment.java16
1 files changed, 14 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 d500b215..10690e43 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
@@ -16,7 +16,9 @@ import android.media.MediaPlayer;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
+import android.os.Handler;
import android.preference.PreferenceManager;
+import android.support.design.widget.Snackbar;
import android.support.v4.app.ActivityCompat;
import android.support.v4.app.ActivityOptionsCompat;
import android.support.v4.app.Fragment;
@@ -366,10 +368,10 @@ public class HeadlinesFragment extends Fragment {
@Override
public void onSwiped(RecyclerView.ViewHolder viewHolder, int direction) {
- int position = viewHolder.getAdapterPosition() - m_adapter.getHeaderCount();
+ final int position = viewHolder.getAdapterPosition() - m_adapter.getHeaderCount();
try {
- Article article = getArticleAtPosition(position);
+ final Article article = getArticleAtPosition(position);
if (article != null) {
if (article.unread) {
@@ -380,6 +382,16 @@ public class HeadlinesFragment extends Fragment {
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();
+
} catch (Exception e) {
e.printStackTrace();
}