From 8ea702c2e2087055038210be1146c1c65d8eca6a Mon Sep 17 00:00:00 2001 From: sspanak Date: Tue, 11 Mar 2025 14:24:12 +0200 Subject: [PATCH] fixed ZWJ and ZWNJ sometimes being displayed incorrectly --- .../io/github/sspanak/tt9/ui/tray/SuggestionsBar.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/io/github/sspanak/tt9/ui/tray/SuggestionsBar.java b/app/src/main/java/io/github/sspanak/tt9/ui/tray/SuggestionsBar.java index e2ad0758..48a46705 100644 --- a/app/src/main/java/io/github/sspanak/tt9/ui/tray/SuggestionsBar.java +++ b/app/src/main/java/io/github/sspanak/tt9/ui/tray/SuggestionsBar.java @@ -142,13 +142,19 @@ public class SuggestionsBar { String suggestion = suggestions.get(id); - if (Characters.ZWJ_GRAPHIC.equals(suggestion)) return Characters.ZWJ; - if (Characters.ZWNJ_GRAPHIC.equals(suggestion)) return Characters.ZWNJ; + // single char if (suggestion.equals(Characters.NEW_LINE)) return "\n"; + suggestion = suggestion.replace(Characters.ZWNJ_GRAPHIC, Characters.ZWNJ); + suggestion = suggestion.replace(Characters.ZWJ_GRAPHIC, Characters.ZWJ); + if (suggestion.length() == 1) return suggestion; + + + // combined with "... +" int endIndex = suggestion.indexOf(STEM_SUFFIX); endIndex = endIndex == -1 ? suggestion.length() : endIndex; + // "..." prefix int startIndex = 0; String[] prefixes = {STEM_VARIATION_PREFIX, STEM_PUNCTUATION_VARIATION_PREFIX, Characters.COMBINING_ZERO_BASE}; for (String prefix : prefixes) {