From 6bda014ba4d08688115da25a5a483c0064b30e47 Mon Sep 17 00:00:00 2001 From: M66B Date: Sat, 14 Oct 2023 08:31:49 +0200 Subject: [PATCH] Small improvement --- .../eu/faircode/email/EditTextCompose.java | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/EditTextCompose.java b/app/src/main/java/eu/faircode/email/EditTextCompose.java index 28678155a8..45184cfe28 100644 --- a/app/src/main/java/eu/faircode/email/EditTextCompose.java +++ b/app/src/main/java/eu/faircode/email/EditTextCompose.java @@ -506,19 +506,24 @@ public class EditTextCompose extends FixedEditText { if (selectionListener != null) selectionListener.onSelected(hasSelection()); - if (selStart != lastStart && selEnd != lastEnd) { - lastStart = selStart; - lastEnd = selEnd; - Editable edit = getText(); - if (lastStart >= 0 && edit != null && lt_description) { - SuggestionSpanEx[] suggestions = getText().getSpans(selStart, selEnd, SuggestionSpanEx.class); - if (suggestions != null && suggestions.length > 0) { + int start = -1; + int end = -1; + Editable edit = getText(); + if (lt_description && selStart >= 0 && edit != null) { + SuggestionSpanEx[] suggestions = edit.getSpans(selStart, selEnd, SuggestionSpanEx.class); + if (suggestions != null && suggestions.length > 0) { + start = edit.getSpanStart(suggestions[0]); + end = edit.getSpanEnd(suggestions[0]); + if (start != lastStart && end != lastEnd) { String description = suggestions[0].getDescription(); if (!TextUtils.isEmpty(description)) ToastEx.makeText(getContext(), description, Toast.LENGTH_LONG).show(); } } } + + lastStart = start; + lastEnd = end; } @Override