diff options
author | Andrew Dolgov <[email protected]> | 2017-02-18 14:00:00 +0300 |
---|---|---|
committer | Andrew Dolgov <[email protected]> | 2017-02-18 14:00:00 +0300 |
commit | 49152f188c76c5b6b2e85fe42298eaaa730ba60d (patch) | |
tree | ff537cf8341ebf8c392b35c99ff5e4fb6cb80d5c /org.fox.ttrss/src/main/java | |
parent | b761914e0f16a352a79b5495c401f8c1a6273bd9 (diff) |
fix swipe to dismiss crashing on swiping footers and other random crap which is not article
Diffstat (limited to 'org.fox.ttrss/src/main/java')
-rwxr-xr-x | org.fox.ttrss/src/main/java/org/fox/ttrss/HeadlinesFragment.java | 14 |
1 files changed, 14 insertions, 0 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 3650e3c8..880bf384 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 @@ -61,6 +61,7 @@ import com.google.gson.JsonElement; import com.nhaarman.listviewanimations.appearance.AnimationAdapter; import com.nhaarman.listviewanimations.appearance.simple.SwingBottomInAnimationAdapter; import com.nhaarman.listviewanimations.itemmanipulation.DynamicListView; +import com.nhaarman.listviewanimations.itemmanipulation.swipedismiss.DismissableManager; import com.nhaarman.listviewanimations.itemmanipulation.swipedismiss.OnDismissCallback; import com.nhaarman.listviewanimations.itemmanipulation.swipedismiss.undo.SimpleSwipeUndoAdapter; import com.nhaarman.listviewanimations.itemmanipulation.swipedismiss.undo.TimedUndoAdapter; @@ -560,6 +561,19 @@ public class HeadlinesFragment extends Fragment implements OnItemClickListener, swipeUndoAdapter.setAbsListView(m_list); m_list.setAdapter(swipeUndoAdapter); m_list.enableSimpleSwipeUndo(); + m_list.setDismissableManager(new DismissableManager() { + @Override + public boolean isDismissable(long id, int position) { + try { + Article article = m_adapter.getItem(position); + + return article != null; + } catch (Exception e) { + // index out of bounds == footer or w/e + return false; + } + } + }); } |