diff options
author | 2011-04-06 11:14:20 +0900 | |
---|---|---|
committer | 2011-04-08 15:24:55 +0900 | |
commit | b5d17e52fcda39d540822e615bfb7ed5074e0034 (patch) | |
tree | 080e9a7be7204b34104412c42351219acae99a57 /java/src/com/android/inputmethod/latin/Utils.java | |
parent | 50cce07f592a3d2525a1a103d17cd5c4d189b5f2 (diff) | |
download | latinime-b5d17e52fcda39d540822e615bfb7ed5074e0034.tar.gz latinime-b5d17e52fcda39d540822e615bfb7ed5074e0034.tar.xz latinime-b5d17e52fcda39d540822e615bfb7ed5074e0034.zip |
Add logOnSeparator
This is a supplement for I9abb8141f23100d
Change-Id: I529d2a78f4fe630611db4cba830d933370c8c34f
Diffstat (limited to 'java/src/com/android/inputmethod/latin/Utils.java')
-rw-r--r-- | java/src/com/android/inputmethod/latin/Utils.java | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/java/src/com/android/inputmethod/latin/Utils.java b/java/src/com/android/inputmethod/latin/Utils.java index 3e092d938..7b334ac0a 100644 --- a/java/src/com/android/inputmethod/latin/Utils.java +++ b/java/src/com/android/inputmethod/latin/Utils.java @@ -209,11 +209,11 @@ public class Utils { return mCharBuf[mEnd]; } } - public char getLastChar() { - if (mLength < 1) { + public char getBackwardNthChar(int n) { + if (mLength <= n || n < 0) { return PLACEHOLDER_DELIMITER_CHAR; } else { - return mCharBuf[normalize(mEnd - 1)]; + return mCharBuf[normalize(mEnd - n - 1)]; } } public int getPreviousX(char c, int back) { @@ -234,9 +234,16 @@ public class Utils { return mYBuf[index]; } } - public String getLastString() { + public String getLastWord(int ignoreCharCount) { StringBuilder sb = new StringBuilder(); - for (int i = 0; i < mLength; ++i) { + int i = ignoreCharCount; + for (; i < mLength; ++i) { + char c = mCharBuf[normalize(mEnd - 1 - i)]; + if (!((LatinIME)mContext).isWordSeparator(c)) { + break; + } + } + for (; i < mLength; ++i) { char c = mCharBuf[normalize(mEnd - 1 - i)]; if (!((LatinIME)mContext).isWordSeparator(c)) { sb.append(c); |