From 4701a1d9136e9f7368513a4fdcddc1f87d5ac2b0 Mon Sep 17 00:00:00 2001 From: eranl <1707552+eranl@users.noreply.github.com> Date: Thu, 20 Nov 2025 03:34:10 +0200 Subject: [PATCH] Cancel inline emoji search in `startInput`; add defensive null check. --- .../helium314/keyboard/latin/inputlogic/InputLogic.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/helium314/keyboard/latin/inputlogic/InputLogic.java b/app/src/main/java/helium314/keyboard/latin/inputlogic/InputLogic.java index 6026d5a226..ab63636047 100644 --- a/app/src/main/java/helium314/keyboard/latin/inputlogic/InputLogic.java +++ b/app/src/main/java/helium314/keyboard/latin/inputlogic/InputLogic.java @@ -166,6 +166,7 @@ public void startInput(final String combiningSpec, final SettingsValues settings cancelDoubleSpacePeriodCountdown(); mInputLogicHandler.reset(); mConnection.requestCursorUpdates(true, true); + setInlineEmojiSearchAction(false); } /** @@ -2659,7 +2660,12 @@ private void searchForEmojiInline(int sequenceNumber, OnGetSuggestedWordsCallbac private void deleteTextReplacedByEmoji() { mConnection.finishComposingText(); - mConnection.deleteTextBeforeCursor(getInlineEmojiSearchString().length() + 1); + var inlineEmojiSearchString = getInlineEmojiSearchString(); + if (inlineEmojiSearchString != null) { + mConnection.deleteTextBeforeCursor(inlineEmojiSearchString.length() + 1); + } else { + Log.e("inlineEmojiSearch", "Inconsistent state - inlineEmojiSearchString is null"); + } } private String getInlineEmojiSearchString() {