diff options
author | 2012-06-08 04:26:24 -0700 | |
---|---|---|
committer | 2012-06-08 04:26:24 -0700 | |
commit | aa564e336e6f2562ac05e384e06ed66c6b162c45 (patch) | |
tree | de71186730959359de70b60b7899546c2295a579 /java/src/com/android/inputmethod/latin/RichInputConnection.java | |
parent | 730b49fffc58db8ead14e8fd46e899c8c35fff21 (diff) | |
parent | bbbdab12be748cdc2158f0e04bbb5478052ecd89 (diff) | |
download | latinime-aa564e336e6f2562ac05e384e06ed66c6b162c45.tar.gz latinime-aa564e336e6f2562ac05e384e06ed66c6b162c45.tar.xz latinime-aa564e336e6f2562ac05e384e06ed66c6b162c45.zip |
Merge "Move some editing methods to RichInputConnection."
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); + } + } + } + } |