diff options
author | Martin Fietz <Martin.Fietz@gmail.com> | 2015-11-23 23:31:38 +0100 |
---|---|---|
committer | Martin Fietz <Martin.Fietz@gmail.com> | 2015-11-23 23:31:38 +0100 |
commit | 58813db55300ad742e5fe91be180d7ca80d55af0 (patch) | |
tree | 2804896a940e21b8d8ddbfaea729e84a5b70d470 | |
parent | f12362c776826bf27347ed968de8087fc7733811 (diff) | |
download | AntennaPod-58813db55300ad742e5fe91be180d7ca80d55af0.zip |
Save position before refreshing, handle top/bottom moving and notify adapter
-rw-r--r-- | app/src/main/java/de/danoeh/antennapod/fragment/QueueFragment.java | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/QueueFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/QueueFragment.java index 802802ec9..433e72778 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/QueueFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/QueueFragment.java @@ -162,8 +162,9 @@ public class QueueFragment extends Fragment { recyclerAdapter.notifyDataSetChanged(); break; case MOVED: - break; + return; } + saveScrollPosition(); onFragmentLoaded(); } @@ -325,9 +326,15 @@ public class QueueFragment extends Fragment { switch(item.getItemId()) { case R.id.move_to_top_item: + int position = FeedItemUtil.indexOfItemWithId(queue, selectedItem.getId()); + queue.add(0, queue.remove(position)); + recyclerAdapter.notifyItemMoved(position, 0); DBWriter.moveQueueItemToTop(selectedItem.getId(), true); return true; case R.id.move_to_bottom_item: + position = FeedItemUtil.indexOfItemWithId(queue, selectedItem.getId()); + queue.add(queue.size()-1, queue.remove(position)); + recyclerAdapter.notifyItemMoved(position, queue.size()-1); DBWriter.moveQueueItemToBottom(selectedItem.getId(), true); return true; default: |