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

github.com/stefan-niedermann/nextcloud-notes.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/app/src
diff options
context:
space:
mode:
authorStefan Niedermann <info@niedermann.it>2020-06-10 14:10:49 +0300
committerStefan Niedermann <info@niedermann.it>2020-06-10 14:10:49 +0300
commit56ab5105e785ca463602c204f59af93938ae0bef (patch)
tree3bef79a12633f2b1aef27da650ec1502183880b0 /app/src
parent6b0e47da8593afbf45eb9e240094647a5106bc84 (diff)
Use stable ids in adapter
Diffstat (limited to 'app/src')
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/model/ItemAdapter.java8
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/model/NoteViewHolder.java3
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/model/SectionViewHolder.java7
3 files changed, 13 insertions, 5 deletions
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/model/ItemAdapter.java b/app/src/main/java/it/niedermann/owncloud/notes/model/ItemAdapter.java
index 05a5bcfb..32fa3f1a 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/model/ItemAdapter.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/model/ItemAdapter.java
@@ -47,6 +47,14 @@ public class ItemAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> i
this.gridView = gridView;
this.mainColor = context.getResources().getColor(R.color.defaultBrand);
this.textColor = Color.WHITE;
+ setHasStableIds(true);
+ }
+
+ @Override
+ public long getItemId(int position) {
+ return getItemViewType(position) == TYPE_SECTION
+ ? ((SectionItem) getItem(position)).getTitle().hashCode()
+ : ((DBNote) getItem(position)).getId();
}
/**
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/model/NoteViewHolder.java b/app/src/main/java/it/niedermann/owncloud/notes/model/NoteViewHolder.java
index db8f39f8..2c6a339a 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/model/NoteViewHolder.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/model/NoteViewHolder.java
@@ -138,7 +138,6 @@ public abstract class NoteViewHolder extends RecyclerView.ViewHolder implements
}
private void bindContent(@NonNull TextView textView, @NonNull CharSequence charSequence) {
- textView.setText(charSequence);
if (renderMarkdown) {
new Thread(() -> {
try {
@@ -148,6 +147,8 @@ public abstract class NoteViewHolder extends RecyclerView.ViewHolder implements
// Workaround for RxMarkdown: https://github.com/stefan-niedermann/nextcloud-notes/issues/668
}
}).start();
+ } else {
+ textView.setText(charSequence);
}
}
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/model/SectionViewHolder.java b/app/src/main/java/it/niedermann/owncloud/notes/model/SectionViewHolder.java
index 45eeb140..801ea822 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/model/SectionViewHolder.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/model/SectionViewHolder.java
@@ -11,13 +11,12 @@ public class SectionViewHolder extends RecyclerView.ViewHolder {
public SectionViewHolder(ItemNotesListSectionItemBinding binding) {
super(binding.getRoot());
this.binding = binding;
-
- if (itemView.getLayoutParams() != null && itemView.getLayoutParams() instanceof StaggeredGridLayoutManager.LayoutParams) {
- ((StaggeredGridLayoutManager.LayoutParams) itemView.getLayoutParams()).setFullSpan(true);
- }
}
public void bind(SectionItem item) {
binding.sectionTitle.setText(item.getTitle());
+ if (itemView.getLayoutParams() != null && itemView.getLayoutParams() instanceof StaggeredGridLayoutManager.LayoutParams) {
+ ((StaggeredGridLayoutManager.LayoutParams) itemView.getLayoutParams()).setFullSpan(true);
+ }
}
} \ No newline at end of file