Skip to content

Commit 2c51a79

Browse files
committed
Improved InfoListAdapter
* Removed unused code * Cleaned it up * Made code more readable
1 parent fb36202 commit 2c51a79

1 file changed

Lines changed: 12 additions & 58 deletions

File tree

app/src/main/java/org/schabi/newpipe/info_list/InfoListAdapter.java

Lines changed: 12 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -145,43 +145,6 @@ public void addInfoItemList(@Nullable final List<? extends InfoItem> data) {
145145
}
146146
}
147147

148-
public void setInfoItemList(final List<? extends InfoItem> data) {
149-
infoItemList.clear();
150-
infoItemList.addAll(data);
151-
notifyDataSetChanged();
152-
}
153-
154-
public void addInfoItem(@Nullable final InfoItem data) {
155-
if (data == null) {
156-
return;
157-
}
158-
if (DEBUG) {
159-
Log.d(TAG, "addInfoItem() before > infoItemList.size() = "
160-
+ infoItemList.size() + ", thread = " + Thread.currentThread());
161-
}
162-
163-
final int positionInserted = sizeConsideringHeaderOffset();
164-
infoItemList.add(data);
165-
166-
if (DEBUG) {
167-
Log.d(TAG, "addInfoItem() after > position = " + positionInserted + ", "
168-
+ "infoItemList.size() = " + infoItemList.size() + ", "
169-
+ "header = " + header + ", footer = " + footer + ", "
170-
+ "showFooter = " + showFooter);
171-
}
172-
notifyItemInserted(positionInserted);
173-
174-
if (footer != null && showFooter) {
175-
final int footerNow = sizeConsideringHeaderOffset();
176-
notifyItemMoved(positionInserted, footerNow);
177-
178-
if (DEBUG) {
179-
Log.d(TAG, "addInfoItem() footer from " + positionInserted
180-
+ " to " + footerNow);
181-
}
182-
}
183-
}
184-
185148
public void clearStreamItemList() {
186149
if (infoItemList.isEmpty()) {
187150
return;
@@ -226,7 +189,7 @@ private int sizeConsideringHeaderOffset() {
226189
return i;
227190
}
228191

229-
public ArrayList<InfoItem> getItemsList() {
192+
public List<InfoItem> getItemsList() {
230193
return infoItemList;
231194
}
232195

@@ -335,29 +298,23 @@ public void onBindViewHolder(@NonNull final RecyclerView.ViewHolder holder, int
335298
}
336299

337300
((InfoItemHolder) holder).updateFromItem(infoItemList.get(position), recordManager);
338-
} else if (holder instanceof HFHolder && position == 0 && header != null) {
339-
((HFHolder) holder).view = header;
340-
} else if (holder instanceof HFHolder && position == sizeConsideringHeaderOffset()
341-
&& footer != null && showFooter) {
342-
((HFHolder) holder).view = footer;
343301
}
344302
}
345303

346304
@Override
347-
public void onBindViewHolder(@NonNull final RecyclerView.ViewHolder holder, final int position,
305+
public void onBindViewHolder(@NonNull final RecyclerView.ViewHolder holder,
306+
final int position,
348307
@NonNull final List<Object> payloads) {
349-
if (!payloads.isEmpty() && holder instanceof InfoItemHolder) {
350-
for (final Object payload : payloads) {
351-
if (payload instanceof StreamStateEntity) {
352-
((InfoItemHolder) holder).updateState(infoItemList
353-
.get(header == null ? position : position - 1), recordManager);
354-
} else if (payload instanceof Boolean) {
355-
((InfoItemHolder) holder).updateState(infoItemList
356-
.get(header == null ? position : position - 1), recordManager);
357-
}
358-
}
359-
} else {
308+
if (payloads.isEmpty() || !(holder instanceof InfoItemHolder)) {
360309
onBindViewHolder(holder, position);
310+
return;
311+
}
312+
313+
for (final Object payload : payloads) {
314+
if (payload instanceof StreamStateEntity || payload instanceof Boolean) {
315+
((InfoItemHolder) holder).updateState(infoItemList
316+
.get(header == null ? position : position - 1), recordManager);
317+
}
361318
}
362319
}
363320

@@ -372,11 +329,8 @@ public int getSpanSize(final int position) {
372329
}
373330

374331
public static class HFHolder extends RecyclerView.ViewHolder {
375-
public View view;
376-
377332
HFHolder(final View v) {
378333
super(v);
379-
view = v;
380334
}
381335
}
382336
}

0 commit comments

Comments
 (0)