summaryrefslogtreecommitdiff
path: root/app/src/main/java/de/danoeh/antennapod/adapter
diff options
context:
space:
mode:
authorByteHamster <info@bytehamster.com>2022-08-28 16:52:29 +0200
committerByteHamster <info@bytehamster.com>2022-08-30 18:45:41 +0200
commitc42ed1d1874142f52385ad1c7ce45bffa17e4981 (patch)
tree185a38860db52271ca1c7f533cf01fb8687fe1a6 /app/src/main/java/de/danoeh/antennapod/adapter
parent4c88a1aa69b698284ab0f70e55f059bcd514e654 (diff)
downloadAntennaPod-c42ed1d1874142f52385ad1c7ce45bffa17e4981.zip
Use dummy items instead of loading progress bar
Diffstat (limited to 'app/src/main/java/de/danoeh/antennapod/adapter')
-rw-r--r--app/src/main/java/de/danoeh/antennapod/adapter/SubscriptionsRecyclerAdapter.java26
1 files changed, 25 insertions, 1 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/adapter/SubscriptionsRecyclerAdapter.java b/app/src/main/java/de/danoeh/antennapod/adapter/SubscriptionsRecyclerAdapter.java
index 4ebfcff5b..385360790 100644
--- a/app/src/main/java/de/danoeh/antennapod/adapter/SubscriptionsRecyclerAdapter.java
+++ b/app/src/main/java/de/danoeh/antennapod/adapter/SubscriptionsRecyclerAdapter.java
@@ -52,6 +52,7 @@ public class SubscriptionsRecyclerAdapter extends SelectableAdapter<Subscription
private List<NavDrawerData.DrawerItem> listItems;
private NavDrawerData.DrawerItem selectedItem = null;
int longPressedPosition = 0; // used to init actionMode
+ private int dummyViews = 0;
public SubscriptionsRecyclerAdapter(MainActivity mainActivity) {
super(mainActivity);
@@ -95,6 +96,11 @@ public class SubscriptionsRecyclerAdapter extends SelectableAdapter<Subscription
@Override
public void onBindViewHolder(@NonNull SubscriptionViewHolder holder, int position) {
+ if (position >= listItems.size()) {
+ holder.selectView.setVisibility(View.GONE);
+ holder.bindDummy();
+ return;
+ }
NavDrawerData.DrawerItem drawerItem = listItems.get(position);
boolean isFeed = drawerItem.type == NavDrawerData.DrawerItem.Type.FEED;
holder.bind(drawerItem);
@@ -157,11 +163,14 @@ public class SubscriptionsRecyclerAdapter extends SelectableAdapter<Subscription
@Override
public int getItemCount() {
- return listItems.size();
+ return listItems.size() + dummyViews;
}
@Override
public long getItemId(int position) {
+ if (position >= listItems.size()) {
+ return RecyclerView.NO_ID; // Dummy views
+ }
return listItems.get(position).id;
}
@@ -202,6 +211,10 @@ public class SubscriptionsRecyclerAdapter extends SelectableAdapter<Subscription
return items;
}
+ public void setDummyViews(int dummyViews) {
+ this.dummyViews = dummyViews;
+ }
+
public void setItems(List<NavDrawerData.DrawerItem> listItems) {
this.listItems = listItems;
}
@@ -270,6 +283,17 @@ public class SubscriptionsRecyclerAdapter extends SelectableAdapter<Subscription
.load();
}
}
+
+ public void bindDummy() {
+ feedTitle.setText("███████");
+ feedTitle.setVisibility(View.VISIBLE);
+ count.setVisibility(View.GONE);
+ new CoverLoader(mainActivityRef.get())
+ .withResource(android.R.color.transparent)
+ .withPlaceholderView(feedTitle, false)
+ .withCoverView(imageView)
+ .load();
+ }
}
public static float convertDpToPixel(Context context, float dp) {