summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas <tschneider.ac@gmail.com>2023-05-26 12:14:20 +0200
committerThomas <tschneider.ac@gmail.com>2023-05-26 12:14:20 +0200
commit88da62b8e8e5c605c1545340dd8897d5e99d018d (patch)
treecf01430347e5d8f2fa9c65c0b809f5d2bacb516b
parent3858220937f16f0da2843bb86ef17bac9ba1bd37 (diff)
Fix a crash when forwarding tags
-rw-r--r--app/src/main/java/app/fedilab/android/mastodon/ui/drawer/ComposeAdapter.java16
1 files changed, 9 insertions, 7 deletions
diff --git a/app/src/main/java/app/fedilab/android/mastodon/ui/drawer/ComposeAdapter.java b/app/src/main/java/app/fedilab/android/mastodon/ui/drawer/ComposeAdapter.java
index 257adf8ee..8a1c40b44 100644
--- a/app/src/main/java/app/fedilab/android/mastodon/ui/drawer/ComposeAdapter.java
+++ b/app/src/main/java/app/fedilab/android/mastodon/ui/drawer/ComposeAdapter.java
@@ -1646,14 +1646,16 @@ public class ComposeAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder
}
} else if (forwardTag && position > 0 && statusDraft.text != null && statusDraft.text.contains("#") && !statusList.get(position).tagAdded) {
Status status = statusList.get(position - 1).reblog == null ? statusList.get(position - 1) : statusList.get(position - 1).reblog;
- statusList.get(position).tagAdded = true;
- int lenght = 0;
- for (Tag tag : status.tags) {
- lenght += ("#" + tag.name + " ").length();
+ if (status.tags != null && status.tags.size() > 0) {
+ statusList.get(position).tagAdded = true;
+ int lenght = 0;
+ for (Tag tag : status.tags) {
+ lenght += ("#" + tag.name + " ").length();
+ }
+ statusDraft.cursorPosition = statusDraft.text.length() - lenght - 3;
+ statusDraft.setCursorToEnd = false;
+ holder.binding.content.setSelection(statusDraft.text.length() - lenght - 3);
}
- statusDraft.cursorPosition = statusDraft.text.length() - lenght - 3;
- statusDraft.setCursorToEnd = false;
- holder.binding.content.setSelection(statusDraft.text.length() - lenght - 3);
}
if (statusDraft.spoiler_text != null) {