aboutsummaryrefslogtreecommitdiffstats
path: root/java/src/com/android/inputmethod/latin
diff options
context:
space:
mode:
authorTadashi G. Takaoka <takaoka@google.com>2012-07-18 20:31:09 +0900
committerTadashi G. Takaoka <takaoka@google.com>2012-07-19 12:06:00 +0900
commit57f7de0ba664187e13bcea5adff7f5f65eddd823 (patch)
tree58781641ef6d5eb5cfdc625b3c76e2d9c9810741 /java/src/com/android/inputmethod/latin
parent71b772ec585e74aeb7451dbe56f3be4eafa88bd2 (diff)
downloadlatinime-57f7de0ba664187e13bcea5adff7f5f65eddd823.tar.gz
latinime-57f7de0ba664187e13bcea5adff7f5f65eddd823.tar.xz
latinime-57f7de0ba664187e13bcea5adff7f5f65eddd823.zip
Add default capacity parameter to InputPointers' constructor
Change-Id: I02f23096f0682d30effe4dfc1ca57881a1e4aedc
Diffstat (limited to 'java/src/com/android/inputmethod/latin')
-rw-r--r--java/src/com/android/inputmethod/latin/InputPointers.java35
-rw-r--r--java/src/com/android/inputmethod/latin/LastComposedWord.java2
-rw-r--r--java/src/com/android/inputmethod/latin/WordComposer.java2
3 files changed, 24 insertions, 15 deletions
diff --git a/java/src/com/android/inputmethod/latin/InputPointers.java b/java/src/com/android/inputmethod/latin/InputPointers.java
index 298e2b213..febabadf7 100644
--- a/java/src/com/android/inputmethod/latin/InputPointers.java
+++ b/java/src/com/android/inputmethod/latin/InputPointers.java
@@ -20,10 +20,19 @@ import java.util.Arrays;
// TODO: This class is not thread-safe.
public class InputPointers {
- private final ScalableIntArray mXCoordinates = new ScalableIntArray();
- private final ScalableIntArray mYCoordinates = new ScalableIntArray();
- private final ScalableIntArray mPointerIds = new ScalableIntArray();
- private final ScalableIntArray mTimes = new ScalableIntArray();
+ private final int mDefaultCapacity;
+ private final ScalableIntArray mXCoordinates;
+ private final ScalableIntArray mYCoordinates;
+ private final ScalableIntArray mPointerIds;
+ private final ScalableIntArray mTimes;
+
+ public InputPointers(int defaultCapacity) {
+ mDefaultCapacity = defaultCapacity;
+ mXCoordinates = new ScalableIntArray(defaultCapacity);
+ mYCoordinates = new ScalableIntArray(defaultCapacity);
+ mPointerIds = new ScalableIntArray(defaultCapacity);
+ mTimes = new ScalableIntArray(defaultCapacity);
+ }
public void addPointer(int index, int x, int y, int pointerId, int time) {
mXCoordinates.add(index, x);
@@ -70,10 +79,11 @@ public class InputPointers {
}
public void reset() {
- mXCoordinates.reset();
- mYCoordinates.reset();
- mPointerIds.reset();
- mTimes.reset();
+ final int defaultCapacity = mDefaultCapacity;
+ mXCoordinates.reset(defaultCapacity);
+ mYCoordinates.reset(defaultCapacity);
+ mPointerIds.reset(defaultCapacity);
+ mTimes.reset(defaultCapacity);
}
public int getPointerSize() {
@@ -97,12 +107,11 @@ public class InputPointers {
}
private static class ScalableIntArray {
- private static final int DEFAULT_SIZE = BinaryDictionary.MAX_WORD_LENGTH;
private int[] mArray;
private int mLength;
- public ScalableIntArray() {
- reset();
+ public ScalableIntArray(int capacity) {
+ reset(capacity);
}
public void add(int index, int val) {
@@ -136,8 +145,8 @@ public class InputPointers {
return mLength;
}
- public void reset() {
- mArray = new int[DEFAULT_SIZE];
+ public void reset(int capacity) {
+ mArray = new int[capacity];
mLength = 0;
}
diff --git a/java/src/com/android/inputmethod/latin/LastComposedWord.java b/java/src/com/android/inputmethod/latin/LastComposedWord.java
index 974af2584..bb39ce4f7 100644
--- a/java/src/com/android/inputmethod/latin/LastComposedWord.java
+++ b/java/src/com/android/inputmethod/latin/LastComposedWord.java
@@ -45,7 +45,7 @@ public class LastComposedWord {
public final String mCommittedWord;
public final int mSeparatorCode;
public final CharSequence mPrevWord;
- public final InputPointers mInputPointers = new InputPointers();
+ public final InputPointers mInputPointers = new InputPointers(BinaryDictionary.MAX_WORD_LENGTH);
private boolean mActive;
diff --git a/java/src/com/android/inputmethod/latin/WordComposer.java b/java/src/com/android/inputmethod/latin/WordComposer.java
index ca9dbaf05..6d346d179 100644
--- a/java/src/com/android/inputmethod/latin/WordComposer.java
+++ b/java/src/com/android/inputmethod/latin/WordComposer.java
@@ -33,7 +33,7 @@ public class WordComposer {
private static final int N = BinaryDictionary.MAX_WORD_LENGTH;
private int[] mPrimaryKeyCodes;
- private final InputPointers mInputPointers = new InputPointers();
+ private final InputPointers mInputPointers = new InputPointers(N);
private final StringBuilder mTypedWord;
private CharSequence mAutoCorrection;
private boolean mIsResumed;