Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/stefan-niedermann/nextcloud-deck.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Niedermann <info@niedermann.it>2020-07-21 21:21:55 +0300
committerNiedermann IT-Dienstleistungen <stefan-niedermann@users.noreply.github.com>2020-07-21 21:22:40 +0300
commit1dfaaec61195863232140b58f2f7617b14e40592 (patch)
treed8e53a79ac6f3a53d143f2c7f42a67e2248ab273 /app/src/main/java/it/niedermann/nextcloud/deck/ui/filter
parent7399bae2743e7fba984369006c372b2f808d19c6 (diff)
#615 Add filter "No tags"
Diffstat (limited to 'app/src/main/java/it/niedermann/nextcloud/deck/ui/filter')
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/ui/filter/FilterDialogFragment.java2
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/ui/filter/FilterLabelsAdapter.java21
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/ui/filter/FilterUserAdapter.java3
3 files changed, 11 insertions, 15 deletions
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/ui/filter/FilterDialogFragment.java b/app/src/main/java/it/niedermann/nextcloud/deck/ui/filter/FilterDialogFragment.java
index b3bba2f05..ce1643084 100644
--- a/app/src/main/java/it/niedermann/nextcloud/deck/ui/filter/FilterDialogFragment.java
+++ b/app/src/main/java/it/niedermann/nextcloud/deck/ui/filter/FilterDialogFragment.java
@@ -63,7 +63,7 @@ public class FilterDialogFragment extends BrandedDialogFragment {
filterInformationDraft.observe(this, (draft) -> {
switch (position) {
case 0:
- tab.setIcon(draft.getLabels().size() > 0 ? indicator : null);
+ tab.setIcon(draft.getLabels().size() > 0 || draft.isNoAssignedLabel() ? indicator : null);
break;
case 1:
tab.setIcon(draft.getUsers().size() > 0 || draft.isNoAssignedUser() ? indicator : null);
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/ui/filter/FilterLabelsAdapter.java b/app/src/main/java/it/niedermann/nextcloud/deck/ui/filter/FilterLabelsAdapter.java
index 17d3599e7..93f8e837f 100644
--- a/app/src/main/java/it/niedermann/nextcloud/deck/ui/filter/FilterLabelsAdapter.java
+++ b/app/src/main/java/it/niedermann/nextcloud/deck/ui/filter/FilterLabelsAdapter.java
@@ -31,6 +31,7 @@ public class FilterLabelsAdapter extends RecyclerView.Adapter<FilterLabelsAdapte
public FilterLabelsAdapter(@NonNull List<Label> labels, @NonNull List<Label> selectedLabels, boolean noAssignedLabel, @Nullable SelectionListener<Label> selectionListener) {
super();
+ this.labels.add(NOT_ASSIGNED);
this.labels.addAll(labels);
if (noAssignedLabel) {
this.selectedLabels.add(NOT_ASSIGNED);
@@ -43,7 +44,8 @@ public class FilterLabelsAdapter extends RecyclerView.Adapter<FilterLabelsAdapte
@Override
public long getItemId(int position) {
- return labels.get(position).getLocalId();
+ @Nullable final Label label = labels.get(position);
+ return label == null ? -1L : label.getLocalId();
}
@NonNull
@@ -54,12 +56,10 @@ public class FilterLabelsAdapter extends RecyclerView.Adapter<FilterLabelsAdapte
@Override
public void onBindViewHolder(@NonNull LabelViewHolder viewHolder, int position) {
- final Label label = labels.get(position);
- viewHolder.bind(labels.get(position));
if (position == 0) {
- viewHolder.bindNotAssigned(label);
+ viewHolder.bindNotAssigned();
} else {
- viewHolder.bind(label);
+ viewHolder.bind(labels.get(position));
}
}
@@ -68,10 +68,6 @@ public class FilterLabelsAdapter extends RecyclerView.Adapter<FilterLabelsAdapte
return labels.size();
}
- public List<Label> getSelected() {
- return selectedLabels;
- }
-
class LabelViewHolder extends RecyclerView.ViewHolder {
private ItemFilterLabelBinding binding;
@@ -90,13 +86,14 @@ public class FilterLabelsAdapter extends RecyclerView.Adapter<FilterLabelsAdapte
bindClickListener(label);
}
- public void bindNotAssigned(Label label) {
+ public void bindNotAssigned() {
binding.label.setText(itemView.getContext().getString(R.string.no_assigned_label));
binding.label.setTextColor(ColorStateList.valueOf(ContextCompat.getColor(itemView.getContext(), R.color.accent)));
binding.label.setChipIcon(ContextCompat.getDrawable(itemView.getContext(), R.drawable.ic_baseline_block_24));
- binding.label.setChipBackgroundColor(ColorStateList.valueOf(ContextCompat.getColor(itemView.getContext(), android.R.color.transparent)));
+ binding.label.setChipBackgroundColor(ColorStateList.valueOf(ContextCompat.getColor(itemView.getContext(), R.color.primary)));
binding.label.setRippleColor(null);
- bindClickListener(label);
+ itemView.setSelected(selectedLabels.contains(NOT_ASSIGNED));
+ bindClickListener(NOT_ASSIGNED);
}
private void bindClickListener(@Nullable Label label) {
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/ui/filter/FilterUserAdapter.java b/app/src/main/java/it/niedermann/nextcloud/deck/ui/filter/FilterUserAdapter.java
index 7d5252267..82230060c 100644
--- a/app/src/main/java/it/niedermann/nextcloud/deck/ui/filter/FilterUserAdapter.java
+++ b/app/src/main/java/it/niedermann/nextcloud/deck/ui/filter/FilterUserAdapter.java
@@ -63,11 +63,10 @@ public class FilterUserAdapter extends RecyclerView.Adapter<FilterUserAdapter.Us
@Override
public void onBindViewHolder(@NonNull UserViewHolder viewHolder, int position) {
- final User user = users.get(position);
if (position == 0) {
viewHolder.bindNotAssigned();
} else {
- viewHolder.bind(user);
+ viewHolder.bind(users.get(position));
}
}