diff --git a/src/io/github/sspanak/tt9/ime/InputFieldHelper.java b/src/io/github/sspanak/tt9/ime/InputFieldHelper.java index faea56e7..55d5881c 100644 --- a/src/io/github/sspanak/tt9/ime/InputFieldHelper.java +++ b/src/io/github/sspanak/tt9/ime/InputFieldHelper.java @@ -157,8 +157,15 @@ class InputFieldHelper { public static String getSurroundingWord(InputConnection currentInputConnection) { + if (currentInputConnection == null) { + return ""; + } + String before = (String) currentInputConnection.getTextBeforeCursor(50, 0); String after = (String) currentInputConnection.getTextAfterCursor(50, 0); + if (before == null || after == null) { + return ""; + } Matcher beforeMatch = Pattern.compile("(\\w+)$").matcher(before); Matcher afterMatch = Pattern.compile("^(\\w+)").matcher(after); diff --git a/src/io/github/sspanak/tt9/ime/TraditionalT9.java b/src/io/github/sspanak/tt9/ime/TraditionalT9.java index a27688f9..9bf4097d 100644 --- a/src/io/github/sspanak/tt9/ime/TraditionalT9.java +++ b/src/io/github/sspanak/tt9/ime/TraditionalT9.java @@ -511,6 +511,10 @@ public class TraditionalT9 extends KeyPadHandler { private void showAddWord() { + if (currentInputConnection == null) { + return; + } + currentInputConnection.finishComposingText(); clearSuggestions();