Fixed a FC

This commit is contained in:
Karim Abou Zeid 2016-03-19 14:16:24 +01:00
commit 4fe4e2475c

View file

@ -179,7 +179,10 @@ public class SongFileAdapter extends AbsMultiSelectAdapter<SongFileAdapter.ViewH
menu.setOnClickListener(new View.OnClickListener() { menu.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
callbacks.onFileMenuClicked(dataSet.get(getAdapterPosition())); int position = getAdapterPosition();
if (isPositionInRange(position)) {
callbacks.onFileMenuClicked(dataSet.get(position));
}
} }
}); });
} }
@ -187,18 +190,26 @@ public class SongFileAdapter extends AbsMultiSelectAdapter<SongFileAdapter.ViewH
@Override @Override
public void onClick(View v) { public void onClick(View v) {
int position = getAdapterPosition();
if (isPositionInRange(position)) {
if (isInQuickSelectMode()) { if (isInQuickSelectMode()) {
toggleChecked(getAdapterPosition()); toggleChecked(position);
} else { } else {
if (callbacks != null) { if (callbacks != null) {
callbacks.onFileSelected(dataSet.get(getAdapterPosition())); callbacks.onFileSelected(dataSet.get(position));
}
} }
} }
} }
@Override @Override
public boolean onLongClick(View view) { public boolean onLongClick(View view) {
return toggleChecked(getAdapterPosition()); int position = getAdapterPosition();
return isPositionInRange(position) && toggleChecked(position);
}
private boolean isPositionInRange(int position) {
return position >= 0 && position < dataSet.size();
} }
} }