diff --git a/app/src/main/java/fr/mobdev/goblim/MultiLinkAdapter.java b/app/src/main/java/fr/mobdev/goblim/MultiLinkAdapter.java index b5fc26a..df43c71 100644 --- a/app/src/main/java/fr/mobdev/goblim/MultiLinkAdapter.java +++ b/app/src/main/java/fr/mobdev/goblim/MultiLinkAdapter.java @@ -69,9 +69,9 @@ public class MultiLinkAdapter extends RecyclerView.Adapter{ box = (CheckBox) v.findViewById(R.id.selected); } if(box.isChecked() && !selecteds.contains(holder.index)) { - selecteds.add(holder.index); - } else { - selecteds.remove(holder.index); + selecteds.set(holder.index,holder.index); + } else if (!box.isChecked() && selecteds.contains(holder.index)) { + selecteds.set(holder.index,-1); } selectionListener.onSelectionChanged(); } @@ -95,7 +95,9 @@ public class MultiLinkAdapter extends RecyclerView.Adapter{ holder.progress.setVisibility(View.VISIBLE); holder.thumb.setVisibility(View.GONE); } - holder.box.setChecked(selecteds.contains(position)); + + holder.box.setChecked(selecteds.get(position) != -1); + holder.index = position; } @Override diff --git a/app/src/main/java/fr/mobdev/goblim/activity/MultiLinkActivity.java b/app/src/main/java/fr/mobdev/goblim/activity/MultiLinkActivity.java index daa055b..f7a56f5 100644 --- a/app/src/main/java/fr/mobdev/goblim/activity/MultiLinkActivity.java +++ b/app/src/main/java/fr/mobdev/goblim/activity/MultiLinkActivity.java @@ -210,7 +210,8 @@ public class MultiLinkActivity extends AppCompatActivity { List selected = adapter.getSelecteds(); List urls = new ArrayList<>(); for(Integer index : selected) { - urls.add(deleteUrls.get(index)); + if(index != -1) + urls.add(deleteUrls.get(index)); } NetworkManager.getInstance(listener).deleteMultiple(MultiLinkActivity.this, urls); } @@ -230,7 +231,8 @@ public class MultiLinkActivity extends AppCompatActivity { List selected = adapter.getSelecteds(); String output = baseUrl; for(Integer index : selected) { - output += sharedHashs.get(index)+","; + if(index != -1) + output += sharedHashs.get(index)+","; } return output; } diff --git a/app/src/main/res/layout/link_item.xml b/app/src/main/res/layout/link_item.xml index 9c29d17..e5d997a 100644 --- a/app/src/main/res/layout/link_item.xml +++ b/app/src/main/res/layout/link_item.xml @@ -5,14 +5,6 @@ android:layout_margin="5dp" > - - + + + \ No newline at end of file