Fixed download status update in NewEpisodesFragment
This commit is contained in:
parent
1593a06077
commit
f2306d2950
@ -414,20 +414,26 @@ public class AllEpisodesFragment extends Fragment {
|
|||||||
|
|
||||||
public void onEventMainThread(FeedItemEvent event) {
|
public void onEventMainThread(FeedItemEvent event) {
|
||||||
Log.d(TAG, "onEventMainThread() called with: " + "event = [" + event + "]");
|
Log.d(TAG, "onEventMainThread() called with: " + "event = [" + event + "]");
|
||||||
if(episodes == null || listAdapter == null) {
|
if (episodes == null || listAdapter == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
for(int i=0, size = event.items.size(); i < size; i++) {
|
for (FeedItem item : event.items) {
|
||||||
FeedItem item = event.items.get(i);
|
|
||||||
int pos = FeedItemUtil.indexOfItemWithId(episodes, item.getId());
|
int pos = FeedItemUtil.indexOfItemWithId(episodes, item.getId());
|
||||||
if(pos >= 0) {
|
if (pos >= 0) {
|
||||||
episodes.remove(pos);
|
episodes.remove(pos);
|
||||||
episodes.add(pos, item);
|
if (shouldUpdatedItemRemainInList(item)) {
|
||||||
listAdapter.notifyItemChanged(pos);
|
episodes.add(pos, item);
|
||||||
|
listAdapter.notifyItemChanged(pos);
|
||||||
|
} else {
|
||||||
|
listAdapter.notifyItemRemoved(pos);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected boolean shouldUpdatedItemRemainInList(FeedItem item) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
public void onEventMainThread(DownloadEvent event) {
|
public void onEventMainThread(DownloadEvent event) {
|
||||||
Log.d(TAG, "onEventMainThread() called with: " + "event = [" + event + "]");
|
Log.d(TAG, "onEventMainThread() called with: " + "event = [" + event + "]");
|
||||||
|
@ -41,18 +41,8 @@ public class NewEpisodesFragment extends AllEpisodesFragment {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onEventMainThread(FeedItemEvent event) {
|
protected boolean shouldUpdatedItemRemainInList(FeedItem item) {
|
||||||
Log.d(TAG, "onEventMainThread() called with: " + "event = [" + event + "]");
|
return item.isNew();
|
||||||
if(episodes == null) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
for(FeedItem item : event.items) {
|
|
||||||
int pos = FeedItemUtil.indexOfItemWithId(episodes, item.getId());
|
|
||||||
if(pos >= 0 && item.isTagged(FeedItem.TAG_QUEUE)) {
|
|
||||||
episodes.remove(pos);
|
|
||||||
listAdapter.notifyItemRemoved(pos);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
Loading…
x
Reference in New Issue
Block a user