Loading java/src/com/android/inputmethod/accessibility/AccessibilityEntityProvider.java +4 −2 Original line number Diff line number Diff line Loading @@ -36,6 +36,7 @@ import com.android.inputmethod.keyboard.Key; import com.android.inputmethod.keyboard.Keyboard; import com.android.inputmethod.keyboard.KeyboardView; import com.android.inputmethod.latin.CollectionUtils; import com.android.inputmethod.latin.CoordinateUtils; /** * Exposes a virtual view sub-tree for {@link KeyboardView} and generates Loading @@ -62,7 +63,7 @@ public final class AccessibilityEntityProvider extends AccessibilityNodeProvider private final Rect mTempBoundsInScreen = new Rect(); /** The parent view's cached on-screen location. */ private final int[] mParentLocation = new int[2]; private final int[] mParentLocation = CoordinateUtils.newInstance(); /** The virtual view identifier for the focused node. */ private int mAccessibilityFocusedView = UNDEFINED; Loading Loading @@ -180,7 +181,8 @@ public final class AccessibilityEntityProvider extends AccessibilityNodeProvider // Calculate the key's in-screen bounds. mTempBoundsInScreen.set(boundsInParent); mTempBoundsInScreen.offset(mParentLocation[0], mParentLocation[1]); mTempBoundsInScreen.offset( CoordinateUtils.x(mParentLocation), CoordinateUtils.y(mParentLocation)); final Rect boundsInScreen = mTempBoundsInScreen; Loading java/src/com/android/inputmethod/keyboard/KeyboardView.java +10 −6 Original line number Diff line number Diff line Loading @@ -45,6 +45,7 @@ import com.android.inputmethod.keyboard.internal.KeyVisualAttributes; import com.android.inputmethod.keyboard.internal.PreviewPlacerView; import com.android.inputmethod.latin.CollectionUtils; import com.android.inputmethod.latin.Constants; import com.android.inputmethod.latin.CoordinateUtils; import com.android.inputmethod.latin.LatinImeLogger; import com.android.inputmethod.latin.R; import com.android.inputmethod.latin.StaticInnerHandlerWrapper; Loading Loading @@ -134,7 +135,7 @@ public class KeyboardView extends View implements PointerTracker.DrawingProxy { // Preview placer view private final PreviewPlacerView mPreviewPlacerView; private final int[] mCoordinates = new int[2]; private final int[] mCoordinates = CoordinateUtils.newInstance(); // Key preview private static final int PREVIEW_ALPHA = 240; Loading Loading @@ -832,10 +833,10 @@ public class KeyboardView extends View implements PointerTracker.DrawingProxy { // In transient state. return; } final int[] viewOrigin = new int[2]; final int[] viewOrigin = CoordinateUtils.newInstance(); getLocationInWindow(viewOrigin); final DisplayMetrics dm = getResources().getDisplayMetrics(); if (viewOrigin[1] < dm.heightPixels / 4) { if (CoordinateUtils.y(viewOrigin) < dm.heightPixels / 4) { // In transient state. return; } Loading @@ -850,7 +851,8 @@ public class KeyboardView extends View implements PointerTracker.DrawingProxy { Log.w(TAG, "Cannot find android.R.id.content view to add PreviewPlacerView"); } else { windowContentView.addView(mPreviewPlacerView); mPreviewPlacerView.setKeyboardViewGeometry(viewOrigin[0], viewOrigin[1], width, height); mPreviewPlacerView.setKeyboardViewGeometry( CoordinateUtils.x(viewOrigin), CoordinateUtils.y(viewOrigin), width, height); } } Loading Loading @@ -940,7 +942,8 @@ public class KeyboardView extends View implements PointerTracker.DrawingProxy { // parent key. If it doesn't fit in this {@link KeyboardView}, it is moved inward to fit and // the left/right background is used if such background is specified. final int statePosition; int previewX = key.getDrawX() - (previewWidth - keyDrawWidth) / 2 + mCoordinates[0]; int previewX = key.getDrawX() - (previewWidth - keyDrawWidth) / 2 + CoordinateUtils.x(mCoordinates); if (previewX < 0) { previewX = 0; statePosition = STATE_LEFT; Loading @@ -952,7 +955,8 @@ public class KeyboardView extends View implements PointerTracker.DrawingProxy { } // The key preview is placed vertically above the top edge of the parent key with an // arbitrary offset. final int previewY = key.mY - previewHeight + mPreviewOffset + mCoordinates[1]; final int previewY = key.mY - previewHeight + mPreviewOffset + CoordinateUtils.y(mCoordinates); if (background != null) { final int hasMoreKeys = (key.mMoreKeys != null) ? STATE_HAS_MOREKEYS : STATE_NORMAL; Loading java/src/com/android/inputmethod/keyboard/MoreKeysKeyboardView.java +3 −2 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ import android.widget.PopupWindow; import com.android.inputmethod.keyboard.PointerTracker.DrawingProxy; import com.android.inputmethod.keyboard.PointerTracker.TimerProxy; import com.android.inputmethod.latin.Constants; import com.android.inputmethod.latin.CoordinateUtils; import com.android.inputmethod.latin.InputPointers; import com.android.inputmethod.latin.R; Loading @@ -34,7 +35,7 @@ import com.android.inputmethod.latin.R; * detecting key presses and touch movements. */ public final class MoreKeysKeyboardView extends KeyboardView implements MoreKeysPanel { private final int[] mCoordinates = new int[2]; private final int[] mCoordinates = CoordinateUtils.newInstance(); private final KeyDetector mKeyDetector; Loading Loading @@ -169,7 +170,7 @@ public final class MoreKeysKeyboardView extends KeyboardView implements MoreKeys window.setHeight(container.getMeasuredHeight()); parentView.getLocationInWindow(mCoordinates); window.showAtLocation(parentView, Gravity.NO_GRAVITY, x + mCoordinates[0], y + mCoordinates[1]); x + CoordinateUtils.x(mCoordinates), y + CoordinateUtils.y(mCoordinates)); mOriginX = x + container.getPaddingLeft(); mOriginY = y + container.getPaddingTop(); Loading java/src/com/android/inputmethod/latin/CoordinateUtils.java 0 → 100644 +39 −0 Original line number Diff line number Diff line /* * Copyright (C) 2012 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.latin; public final class CoordinateUtils { private static final int INDEX_X = 0; private static final int INDEX_Y = 1; private static final int ARRAY_SIZE = INDEX_Y + 1; private CoordinateUtils() { // This utility class is not publicly instantiable. } public static int[] newInstance() { return new int[ARRAY_SIZE]; } public static int x(final int[] coords) { return coords[INDEX_X]; } public static int y(final int[] coords) { return coords[INDEX_Y]; } } java/src/com/android/inputmethod/latin/suggestions/MoreSuggestionsView.java +3 −2 Original line number Diff line number Diff line Loading @@ -34,6 +34,7 @@ import com.android.inputmethod.keyboard.PointerTracker; import com.android.inputmethod.keyboard.PointerTracker.DrawingProxy; import com.android.inputmethod.keyboard.PointerTracker.KeyEventHandler; import com.android.inputmethod.keyboard.PointerTracker.TimerProxy; import com.android.inputmethod.latin.CoordinateUtils; import com.android.inputmethod.latin.R; /** Loading @@ -41,7 +42,7 @@ import com.android.inputmethod.latin.R; * key presses and touch movements. */ public final class MoreSuggestionsView extends KeyboardView implements MoreKeysPanel { private final int[] mCoordinates = new int[2]; private final int[] mCoordinates = CoordinateUtils.newInstance(); final KeyDetector mModalPanelKeyDetector; private final KeyDetector mSlidingPanelKeyDetector; Loading Loading @@ -163,7 +164,7 @@ public final class MoreSuggestionsView extends KeyboardView implements MoreKeysP window.setHeight(container.getMeasuredHeight()); parentView.getLocationInWindow(mCoordinates); window.showAtLocation(parentView, Gravity.NO_GRAVITY, x + mCoordinates[0], y + mCoordinates[1]); x + CoordinateUtils.x(mCoordinates), y + CoordinateUtils.y(mCoordinates)); mOriginX = x + container.getPaddingLeft(); mOriginY = y + container.getPaddingTop(); Loading Loading
java/src/com/android/inputmethod/accessibility/AccessibilityEntityProvider.java +4 −2 Original line number Diff line number Diff line Loading @@ -36,6 +36,7 @@ import com.android.inputmethod.keyboard.Key; import com.android.inputmethod.keyboard.Keyboard; import com.android.inputmethod.keyboard.KeyboardView; import com.android.inputmethod.latin.CollectionUtils; import com.android.inputmethod.latin.CoordinateUtils; /** * Exposes a virtual view sub-tree for {@link KeyboardView} and generates Loading @@ -62,7 +63,7 @@ public final class AccessibilityEntityProvider extends AccessibilityNodeProvider private final Rect mTempBoundsInScreen = new Rect(); /** The parent view's cached on-screen location. */ private final int[] mParentLocation = new int[2]; private final int[] mParentLocation = CoordinateUtils.newInstance(); /** The virtual view identifier for the focused node. */ private int mAccessibilityFocusedView = UNDEFINED; Loading Loading @@ -180,7 +181,8 @@ public final class AccessibilityEntityProvider extends AccessibilityNodeProvider // Calculate the key's in-screen bounds. mTempBoundsInScreen.set(boundsInParent); mTempBoundsInScreen.offset(mParentLocation[0], mParentLocation[1]); mTempBoundsInScreen.offset( CoordinateUtils.x(mParentLocation), CoordinateUtils.y(mParentLocation)); final Rect boundsInScreen = mTempBoundsInScreen; Loading
java/src/com/android/inputmethod/keyboard/KeyboardView.java +10 −6 Original line number Diff line number Diff line Loading @@ -45,6 +45,7 @@ import com.android.inputmethod.keyboard.internal.KeyVisualAttributes; import com.android.inputmethod.keyboard.internal.PreviewPlacerView; import com.android.inputmethod.latin.CollectionUtils; import com.android.inputmethod.latin.Constants; import com.android.inputmethod.latin.CoordinateUtils; import com.android.inputmethod.latin.LatinImeLogger; import com.android.inputmethod.latin.R; import com.android.inputmethod.latin.StaticInnerHandlerWrapper; Loading Loading @@ -134,7 +135,7 @@ public class KeyboardView extends View implements PointerTracker.DrawingProxy { // Preview placer view private final PreviewPlacerView mPreviewPlacerView; private final int[] mCoordinates = new int[2]; private final int[] mCoordinates = CoordinateUtils.newInstance(); // Key preview private static final int PREVIEW_ALPHA = 240; Loading Loading @@ -832,10 +833,10 @@ public class KeyboardView extends View implements PointerTracker.DrawingProxy { // In transient state. return; } final int[] viewOrigin = new int[2]; final int[] viewOrigin = CoordinateUtils.newInstance(); getLocationInWindow(viewOrigin); final DisplayMetrics dm = getResources().getDisplayMetrics(); if (viewOrigin[1] < dm.heightPixels / 4) { if (CoordinateUtils.y(viewOrigin) < dm.heightPixels / 4) { // In transient state. return; } Loading @@ -850,7 +851,8 @@ public class KeyboardView extends View implements PointerTracker.DrawingProxy { Log.w(TAG, "Cannot find android.R.id.content view to add PreviewPlacerView"); } else { windowContentView.addView(mPreviewPlacerView); mPreviewPlacerView.setKeyboardViewGeometry(viewOrigin[0], viewOrigin[1], width, height); mPreviewPlacerView.setKeyboardViewGeometry( CoordinateUtils.x(viewOrigin), CoordinateUtils.y(viewOrigin), width, height); } } Loading Loading @@ -940,7 +942,8 @@ public class KeyboardView extends View implements PointerTracker.DrawingProxy { // parent key. If it doesn't fit in this {@link KeyboardView}, it is moved inward to fit and // the left/right background is used if such background is specified. final int statePosition; int previewX = key.getDrawX() - (previewWidth - keyDrawWidth) / 2 + mCoordinates[0]; int previewX = key.getDrawX() - (previewWidth - keyDrawWidth) / 2 + CoordinateUtils.x(mCoordinates); if (previewX < 0) { previewX = 0; statePosition = STATE_LEFT; Loading @@ -952,7 +955,8 @@ public class KeyboardView extends View implements PointerTracker.DrawingProxy { } // The key preview is placed vertically above the top edge of the parent key with an // arbitrary offset. final int previewY = key.mY - previewHeight + mPreviewOffset + mCoordinates[1]; final int previewY = key.mY - previewHeight + mPreviewOffset + CoordinateUtils.y(mCoordinates); if (background != null) { final int hasMoreKeys = (key.mMoreKeys != null) ? STATE_HAS_MOREKEYS : STATE_NORMAL; Loading
java/src/com/android/inputmethod/keyboard/MoreKeysKeyboardView.java +3 −2 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ import android.widget.PopupWindow; import com.android.inputmethod.keyboard.PointerTracker.DrawingProxy; import com.android.inputmethod.keyboard.PointerTracker.TimerProxy; import com.android.inputmethod.latin.Constants; import com.android.inputmethod.latin.CoordinateUtils; import com.android.inputmethod.latin.InputPointers; import com.android.inputmethod.latin.R; Loading @@ -34,7 +35,7 @@ import com.android.inputmethod.latin.R; * detecting key presses and touch movements. */ public final class MoreKeysKeyboardView extends KeyboardView implements MoreKeysPanel { private final int[] mCoordinates = new int[2]; private final int[] mCoordinates = CoordinateUtils.newInstance(); private final KeyDetector mKeyDetector; Loading Loading @@ -169,7 +170,7 @@ public final class MoreKeysKeyboardView extends KeyboardView implements MoreKeys window.setHeight(container.getMeasuredHeight()); parentView.getLocationInWindow(mCoordinates); window.showAtLocation(parentView, Gravity.NO_GRAVITY, x + mCoordinates[0], y + mCoordinates[1]); x + CoordinateUtils.x(mCoordinates), y + CoordinateUtils.y(mCoordinates)); mOriginX = x + container.getPaddingLeft(); mOriginY = y + container.getPaddingTop(); Loading
java/src/com/android/inputmethod/latin/CoordinateUtils.java 0 → 100644 +39 −0 Original line number Diff line number Diff line /* * Copyright (C) 2012 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.latin; public final class CoordinateUtils { private static final int INDEX_X = 0; private static final int INDEX_Y = 1; private static final int ARRAY_SIZE = INDEX_Y + 1; private CoordinateUtils() { // This utility class is not publicly instantiable. } public static int[] newInstance() { return new int[ARRAY_SIZE]; } public static int x(final int[] coords) { return coords[INDEX_X]; } public static int y(final int[] coords) { return coords[INDEX_Y]; } }
java/src/com/android/inputmethod/latin/suggestions/MoreSuggestionsView.java +3 −2 Original line number Diff line number Diff line Loading @@ -34,6 +34,7 @@ import com.android.inputmethod.keyboard.PointerTracker; import com.android.inputmethod.keyboard.PointerTracker.DrawingProxy; import com.android.inputmethod.keyboard.PointerTracker.KeyEventHandler; import com.android.inputmethod.keyboard.PointerTracker.TimerProxy; import com.android.inputmethod.latin.CoordinateUtils; import com.android.inputmethod.latin.R; /** Loading @@ -41,7 +42,7 @@ import com.android.inputmethod.latin.R; * key presses and touch movements. */ public final class MoreSuggestionsView extends KeyboardView implements MoreKeysPanel { private final int[] mCoordinates = new int[2]; private final int[] mCoordinates = CoordinateUtils.newInstance(); final KeyDetector mModalPanelKeyDetector; private final KeyDetector mSlidingPanelKeyDetector; Loading Loading @@ -163,7 +164,7 @@ public final class MoreSuggestionsView extends KeyboardView implements MoreKeysP window.setHeight(container.getMeasuredHeight()); parentView.getLocationInWindow(mCoordinates); window.showAtLocation(parentView, Gravity.NO_GRAVITY, x + mCoordinates[0], y + mCoordinates[1]); x + CoordinateUtils.x(mCoordinates), y + CoordinateUtils.y(mCoordinates)); mOriginX = x + container.getPaddingLeft(); mOriginY = y + container.getPaddingTop(); Loading