aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKen Wakasa <kwakasa@google.com>2012-03-31 18:32:48 +0900
committerKen Wakasa <kwakasa@google.com>2012-03-31 19:04:38 +0900
commit96fdc4dd8426a078500ce1d8a104bde7201bf9b5 (patch)
tree714282160aefe2f5c08548075826689b9a928c52
parent697033f93f50fb9641faa0e82d2e4e2b834a03bf (diff)
downloadlatinime-96fdc4dd8426a078500ce1d8a104bde7201bf9b5.tar.gz
latinime-96fdc4dd8426a078500ce1d8a104bde7201bf9b5.tar.xz
latinime-96fdc4dd8426a078500ce1d8a104bde7201bf9b5.zip
Remove InputConnectionCompatUtils
Also, small cleanup in proguard.flags bug: 6129704 Change-Id: If4cc694dbe74b26b1d0da301bbc321ee7afc0211
-rw-r--r--java/proguard.flags21
-rw-r--r--java/src/com/android/inputmethod/compat/InputConnectionCompatUtils.java80
-rw-r--r--java/src/com/android/inputmethod/latin/EditingUtils.java17
-rw-r--r--java/src/com/android/inputmethod/latin/LatinIME.java6
4 files changed, 15 insertions, 109 deletions
diff --git a/java/proguard.flags b/java/proguard.flags
index e33706c47..a0010f961 100644
--- a/java/proguard.flags
+++ b/java/proguard.flags
@@ -1,6 +1,10 @@
-keep class com.android.inputmethod.latin.BinaryDictionary {
int mDictLength;
- <init>(...);
+ <init>(...);
+}
+
+-keep class com.android.inputmethod.latin.Flag {
+ *;
}
-keep class com.android.inputmethod.latin.Suggest {
@@ -8,13 +12,6 @@
com.android.inputmethod.latin.SuggestedWords getSuggestions(...);
}
--keep class com.android.inputmethod.latin.UserBigramDictionary {
- void setDatabaseMax(int);
- void setDatabaseDelete(int);
- void waitUntilUpdateDBDone();
- void waitForDictionaryLoading();
-}
-
-keep class com.android.inputmethod.latin.AutoCorrection {
java.lang.CharSequence getAutoCorrectionWord();
}
@@ -23,18 +20,10 @@
boolean equalsIgnoreCase(...);
}
--keep class com.android.inputmethod.latin.spellcheck.SpellChecker {
- *;
-}
-
-keep class com.android.inputmethod.latin.spellcheck.SpellCheckerSettingsFragment {
*;
}
--keep class com.android.inputmethod.latin.SettingsActivity {
- *;
-}
-
-keep class com.android.inputmethod.keyboard.LatinKeyboardView {
# Keep getter/setter methods for ObjectAnimator
int getLanguageOnSpacebarAnimAlpha();
diff --git a/java/src/com/android/inputmethod/compat/InputConnectionCompatUtils.java b/java/src/com/android/inputmethod/compat/InputConnectionCompatUtils.java
deleted file mode 100644
index 7d00b6007..000000000
--- a/java/src/com/android/inputmethod/compat/InputConnectionCompatUtils.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * Copyright (C) 2011 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.inputmethod.compat;
-
-import com.android.inputmethod.latin.EditingUtils.SelectedWord;
-
-import android.view.inputmethod.InputConnection;
-
-import java.lang.reflect.Constructor;
-import java.lang.reflect.Method;
-
-public class InputConnectionCompatUtils {
- private static final Class<?> CLASS_CorrectionInfo = CompatUtils
- .getClass("android.view.inputmethod.CorrectionInfo");
- private static final Class<?>[] INPUT_TYPE_CorrectionInfo = new Class<?>[] { int.class,
- CharSequence.class, CharSequence.class };
- private static final Constructor<?> CONSTRUCTOR_CorrectionInfo = CompatUtils
- .getConstructor(CLASS_CorrectionInfo, INPUT_TYPE_CorrectionInfo);
- private static final Method METHOD_InputConnection_commitCorrection = CompatUtils
- .getMethod(InputConnection.class, "commitCorrection", CLASS_CorrectionInfo);
- private static final Method METHOD_getSelectedText = CompatUtils
- .getMethod(InputConnection.class, "getSelectedText", int.class);
- private static final Method METHOD_setComposingRegion = CompatUtils
- .getMethod(InputConnection.class, "setComposingRegion", int.class, int.class);
- public static final boolean RECORRECTION_SUPPORTED;
-
- static {
- RECORRECTION_SUPPORTED = METHOD_getSelectedText != null
- && METHOD_setComposingRegion != null;
- }
-
- public static void commitCorrection(InputConnection ic, int offset, CharSequence oldText,
- CharSequence newText) {
- if (ic == null || CONSTRUCTOR_CorrectionInfo == null
- || METHOD_InputConnection_commitCorrection == null) {
- return;
- }
- Object[] args = { offset, oldText, newText };
- Object correctionInfo = CompatUtils.newInstance(CONSTRUCTOR_CorrectionInfo, args);
- if (correctionInfo != null) {
- CompatUtils.invoke(ic, null, METHOD_InputConnection_commitCorrection,
- correctionInfo);
- }
- }
-
-
- /**
- * Returns the selected text between the selStart and selEnd positions.
- */
- public static CharSequence getSelectedText(InputConnection ic, int selStart, int selEnd) {
- // Use reflection, for backward compatibility
- return (CharSequence) CompatUtils.invoke(
- ic, null, METHOD_getSelectedText, 0);
- }
-
- /**
- * Tries to set the text into composition mode if there is support for it in the framework.
- */
- public static void underlineWord(InputConnection ic, SelectedWord word) {
- // Use reflection, for backward compatibility
- // If method not found, there's nothing we can do. It still works but just wont underline
- // the word.
- CompatUtils.invoke(
- ic, null, METHOD_setComposingRegion, word.mStart, word.mEnd);
- }
-}
diff --git a/java/src/com/android/inputmethod/latin/EditingUtils.java b/java/src/com/android/inputmethod/latin/EditingUtils.java
index 1e8ad1840..b3f613bae 100644
--- a/java/src/com/android/inputmethod/latin/EditingUtils.java
+++ b/java/src/com/android/inputmethod/latin/EditingUtils.java
@@ -1,12 +1,12 @@
/*
* Copyright (C) 2009 The Android Open Source Project
- *
+ *
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
@@ -16,8 +16,6 @@
package com.android.inputmethod.latin;
-import com.android.inputmethod.compat.InputConnectionCompatUtils;
-
import android.text.TextUtils;
import android.view.inputmethod.ExtractedText;
import android.view.inputmethod.ExtractedTextRequest;
@@ -246,7 +244,7 @@ public class EditingUtils {
if (selStart == selEnd) {
// There is just a cursor, so get the word at the cursor
// getWordRangeAtCursor returns null if the connection is null
- EditingUtils.Range range = getWordRangeAtCursor(ic, wordSeparators);
+ final EditingUtils.Range range = getWordRangeAtCursor(ic, wordSeparators);
if (range != null && !TextUtils.isEmpty(range.mWord)) {
return new SelectedWord(selStart - range.mCharsBefore, selEnd + range.mCharsAfter,
range.mWord);
@@ -254,20 +252,19 @@ public class EditingUtils {
} else {
if (null == ic) return null;
// Is the previous character empty or a word separator? If not, return null.
- CharSequence charsBefore = ic.getTextBeforeCursor(1, 0);
+ final CharSequence charsBefore = ic.getTextBeforeCursor(1, 0);
if (!isWordBoundary(charsBefore, wordSeparators)) {
return null;
}
// Is the next character empty or a word separator? If not, return null.
- CharSequence charsAfter = ic.getTextAfterCursor(1, 0);
+ final CharSequence charsAfter = ic.getTextAfterCursor(1, 0);
if (!isWordBoundary(charsAfter, wordSeparators)) {
return null;
}
// Extract the selection alone
- CharSequence touching = InputConnectionCompatUtils.getSelectedText(
- ic, selStart, selEnd);
+ final CharSequence touching = ic.getSelectedText(0);
if (TextUtils.isEmpty(touching)) return null;
// Is any part of the selection a separator? If so, return null.
final int length = touching.length();
diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java
index f5909a692..363494b7d 100644
--- a/java/src/com/android/inputmethod/latin/LatinIME.java
+++ b/java/src/com/android/inputmethod/latin/LatinIME.java
@@ -46,6 +46,7 @@ import android.view.ViewGroup;
import android.view.ViewGroup.LayoutParams;
import android.view.ViewParent;
import android.view.inputmethod.CompletionInfo;
+import android.view.inputmethod.CorrectionInfo;
import android.view.inputmethod.EditorInfo;
import android.view.inputmethod.ExtractedText;
import android.view.inputmethod.InputConnection;
@@ -54,7 +55,6 @@ import com.android.inputmethod.accessibility.AccessibilityUtils;
import com.android.inputmethod.accessibility.AccessibleKeyboardViewProxy;
import com.android.inputmethod.compat.CompatUtils;
import com.android.inputmethod.compat.EditorInfoCompatUtils;
-import com.android.inputmethod.compat.InputConnectionCompatUtils;
import com.android.inputmethod.compat.InputMethodManagerCompatWrapper;
import com.android.inputmethod.compat.InputMethodServiceCompatWrapper;
import com.android.inputmethod.compat.InputMethodSubtypeCompatWrapper;
@@ -1787,8 +1787,8 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
if (!typedWord.equals(autoCorrection) && null != ic) {
// This will make the correction flash for a short while as a visual clue
// to the user that auto-correction happened.
- InputConnectionCompatUtils.commitCorrection(ic,
- mLastSelectionEnd - typedWord.length(), typedWord, autoCorrection);
+ ic.commitCorrection(new CorrectionInfo(mLastSelectionEnd - typedWord.length(),
+ typedWord, autoCorrection));
}
}
}