diff --git a/app/src/main/java/com/nextcloud/talk/chat/MessageInputFragment.kt b/app/src/main/java/com/nextcloud/talk/chat/MessageInputFragment.kt index 14607a210..9039346dc 100644 --- a/app/src/main/java/com/nextcloud/talk/chat/MessageInputFragment.kt +++ b/app/src/main/java/com/nextcloud/talk/chat/MessageInputFragment.kt @@ -366,15 +366,23 @@ class MessageInputFragment : Fragment() { var mentionSpan: Spans.MentionChipSpan for (i in mentionSpans.indices) { mentionSpan = mentionSpans[i] + val start = editable.getSpanStart(mentionSpan) + val end = editable.getSpanEnd(mentionSpan) + Log.d("Julius", "S:$start E:$end") if (start >= editable.getSpanStart(mentionSpan) && start < editable.getSpanEnd(mentionSpan) ) { - if (editable.subSequence( - editable.getSpanStart(mentionSpan), - editable.getSpanEnd(mentionSpan) - ).toString().trim { it <= ' ' } != mentionSpan.label + val what = editable.subSequence( + editable.getSpanStart(mentionSpan), + editable.getSpanEnd(mentionSpan) + ).toString() + + if (what.trim { it <= ' ' } != mentionSpan.label ) { - editable.removeSpan(mentionSpan) + Log.d("Julius", "What: $what") + Log.d("Julius", "MentionSpan removed: $mentionSpan") + // FIXME error here- I knew it I was right, but why? + // editable.removeSpan(mentionSpan) } } } diff --git a/app/src/main/java/com/nextcloud/talk/utils/CharPolicy.java b/app/src/main/java/com/nextcloud/talk/utils/CharPolicy.java index add1d48d7..baedde6d6 100644 --- a/app/src/main/java/com/nextcloud/talk/utils/CharPolicy.java +++ b/app/src/main/java/com/nextcloud/talk/utils/CharPolicy.java @@ -9,12 +9,14 @@ package com.nextcloud.talk.utils; import android.text.Spannable; import android.text.Spanned; -import androidx.annotation.Nullable; + import com.otaliastudios.autocomplete.AutocompletePolicy; import java.util.regex.Matcher; import java.util.regex.Pattern; +import androidx.annotation.Nullable; + public class CharPolicy implements AutocompletePolicy { private final char character;