diff options
author | 2012-06-08 20:23:13 +0900 | |
---|---|---|
committer | 2012-06-08 20:23:13 +0900 | |
commit | bbbdab12be748cdc2158f0e04bbb5478052ecd89 (patch) | |
tree | 1eca8ad0c09b6ff95adffdda8e34647f2accb2e9 /java/src/com/android/inputmethod/latin/RichInputConnection.java | |
parent | e091982868476845acbcc8eff2ae3cad6de8776c (diff) | |
download | latinime-bbbdab12be748cdc2158f0e04bbb5478052ecd89.tar.gz latinime-bbbdab12be748cdc2158f0e04bbb5478052ecd89.tar.xz latinime-bbbdab12be748cdc2158f0e04bbb5478052ecd89.zip |
Move some editing methods to RichInputConnection.
Change-Id: I8527776a4bd8236a85bb77f9791f9b76977ad181
Diffstat (limited to 'java/src/com/android/inputmethod/latin/RichInputConnection.java')
-rw-r--r-- | java/src/com/android/inputmethod/latin/RichInputConnection.java | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/java/src/com/android/inputmethod/latin/RichInputConnection.java b/java/src/com/android/inputmethod/latin/RichInputConnection.java index c9ee09396..d7ed36d34 100644 --- a/java/src/com/android/inputmethod/latin/RichInputConnection.java +++ b/java/src/com/android/inputmethod/latin/RichInputConnection.java @@ -16,6 +16,7 @@ package com.android.inputmethod.latin; +import android.text.TextUtils; import android.util.Log; import android.view.KeyEvent; import android.view.inputmethod.CompletionInfo; @@ -24,6 +25,9 @@ import android.view.inputmethod.ExtractedText; import android.view.inputmethod.ExtractedTextRequest; import android.view.inputmethod.InputConnection; +import com.android.inputmethod.keyboard.Keyboard; +import com.android.inputmethod.latin.define.ProductionFlag; + import java.util.regex.Pattern; /** @@ -297,4 +301,29 @@ public class RichInputConnection { return null; } + public boolean isCursorTouchingWord(final SettingsValues settingsValues) { + CharSequence before = getTextBeforeCursor(1, 0); + CharSequence after = getTextAfterCursor(1, 0); + if (!TextUtils.isEmpty(before) && !settingsValues.isWordSeparator(before.charAt(0)) + && !settingsValues.isSymbolExcludedFromWordSeparators(before.charAt(0))) { + return true; + } + if (!TextUtils.isEmpty(after) && !settingsValues.isWordSeparator(after.charAt(0)) + && !settingsValues.isSymbolExcludedFromWordSeparators(after.charAt(0))) { + return true; + } + return false; + } + + public void removeTrailingSpace() { + final CharSequence lastOne = getTextBeforeCursor(1, 0); + if (lastOne != null && lastOne.length() == 1 + && lastOne.charAt(0) == Keyboard.CODE_SPACE) { + deleteSurroundingText(1, 0); + if (ProductionFlag.IS_EXPERIMENTAL) { + ResearchLogger.latinIME_deleteSurroundingText(1); + } + } + } + } |