aboutsummaryrefslogtreecommitdiffstats
path: root/java
diff options
context:
space:
mode:
Diffstat (limited to 'java')
-rw-r--r--java/res/layout/more_keys_keyboard.xml1
-rw-r--r--java/res/layout/more_suggestions.xml1
-rw-r--r--java/src/com/android/inputmethod/keyboard/MoreKeysKeyboardView.java33
-rw-r--r--java/src/com/android/inputmethod/latin/suggestions/MoreSuggestionsView.java32
4 files changed, 22 insertions, 45 deletions
diff --git a/java/res/layout/more_keys_keyboard.xml b/java/res/layout/more_keys_keyboard.xml
index 89161c6b4..6b2464b99 100644
--- a/java/res/layout/more_keys_keyboard.xml
+++ b/java/res/layout/more_keys_keyboard.xml
@@ -27,7 +27,6 @@
<com.android.inputmethod.keyboard.MoreKeysKeyboardView
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
android:id="@+id/more_keys_keyboard_view"
- android:layout_alignParentBottom="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
diff --git a/java/res/layout/more_suggestions.xml b/java/res/layout/more_suggestions.xml
index 34f54f974..49a00c6b5 100644
--- a/java/res/layout/more_suggestions.xml
+++ b/java/res/layout/more_suggestions.xml
@@ -27,7 +27,6 @@
<com.android.inputmethod.latin.suggestions.MoreSuggestionsView
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
android:id="@+id/more_suggestions_view"
- android:layout_alignParentBottom="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
latin:keyLabelSize="@dimen/suggestion_text_size"
diff --git a/java/src/com/android/inputmethod/keyboard/MoreKeysKeyboardView.java b/java/src/com/android/inputmethod/keyboard/MoreKeysKeyboardView.java
index 9970d1d0b..2495b5472 100644
--- a/java/src/com/android/inputmethod/keyboard/MoreKeysKeyboardView.java
+++ b/java/src/com/android/inputmethod/keyboard/MoreKeysKeyboardView.java
@@ -136,34 +136,23 @@ public class MoreKeysKeyboardView extends KeyboardView implements MoreKeysPanel
mController = controller;
mListener = listener;
final View container = (View)getParent();
- final MoreKeysKeyboard moreKeysKeyboard = (MoreKeysKeyboard)getKeyboard();
-
- parentView.getLocationInWindow(mCoordinates);
- final int moreKeysKeyboardLeft = pointX - moreKeysKeyboard.getDefaultCoordX()
+ final MoreKeysKeyboard pane = (MoreKeysKeyboard)getKeyboard();
+ final int defaultCoordX = pane.getDefaultCoordX();
+ // The coordinates of panel's left-top corner in parentView's coordinate system.
+ final int x = pointX - defaultCoordX - container.getPaddingLeft()
+ parentView.getPaddingLeft();
- final int x = wrapUp(Math.max(0, Math.min(moreKeysKeyboardLeft,
- parentView.getWidth() - moreKeysKeyboard.mOccupiedWidth))
- - container.getPaddingLeft() + mCoordinates[0],
- container.getMeasuredWidth(), 0, parentView.getWidth());
- final int y = pointY
- - (container.getMeasuredHeight() - container.getPaddingBottom())
- + parentView.getPaddingTop() + mCoordinates[1];
+ final int y = pointY - container.getMeasuredHeight() + container.getPaddingBottom()
+ + parentView.getPaddingTop();
window.setContentView(container);
window.setWidth(container.getMeasuredWidth());
window.setHeight(container.getMeasuredHeight());
- window.showAtLocation(parentView, Gravity.NO_GRAVITY, x, y);
-
- mOriginX = x + container.getPaddingLeft() - mCoordinates[0];
- mOriginY = y + container.getPaddingTop() - mCoordinates[1];
- }
+ parentView.getLocationInWindow(mCoordinates);
+ window.showAtLocation(parentView, Gravity.NO_GRAVITY,
+ x + mCoordinates[0], y + mCoordinates[1]);
- private static int wrapUp(int x, int width, int left, int right) {
- if (x < left)
- return left;
- if (x + width > right)
- return right - width;
- return x;
+ mOriginX = x + container.getPaddingLeft();
+ mOriginY = y + container.getPaddingTop();
}
private boolean mIsDismissing;
diff --git a/java/src/com/android/inputmethod/latin/suggestions/MoreSuggestionsView.java b/java/src/com/android/inputmethod/latin/suggestions/MoreSuggestionsView.java
index 1f7214777..f11b1a4c1 100644
--- a/java/src/com/android/inputmethod/latin/suggestions/MoreSuggestionsView.java
+++ b/java/src/com/android/inputmethod/latin/suggestions/MoreSuggestionsView.java
@@ -147,32 +147,22 @@ public class MoreSuggestionsView extends KeyboardView implements MoreKeysPanel {
mListener = listener;
final View container = (View)getParent();
final MoreSuggestions pane = (MoreSuggestions)getKeyboard();
-
- parentView.getLocationInWindow(mCoordinates);
- final int paneLeft = pointX - (pane.mOccupiedWidth / 2) + parentView.getPaddingLeft();
- final int x = wrapUp(Math.max(0, Math.min(paneLeft,
- parentView.getWidth() - pane.mOccupiedWidth))
- - container.getPaddingLeft() + mCoordinates[0],
- container.getMeasuredWidth(), 0, parentView.getWidth());
- final int y = pointY
- - (container.getMeasuredHeight() - container.getPaddingBottom())
- + parentView.getPaddingTop() + mCoordinates[1];
+ final int defaultCoordX = pane.mOccupiedWidth / 2;
+ // The coordinates of panel's left-top corner in parentView's coordinate system.
+ final int x = pointX - defaultCoordX - container.getPaddingLeft()
+ + parentView.getPaddingLeft();
+ final int y = pointY - container.getMeasuredHeight() + container.getPaddingBottom()
+ + parentView.getPaddingTop();
window.setContentView(container);
window.setWidth(container.getMeasuredWidth());
window.setHeight(container.getMeasuredHeight());
- window.showAtLocation(parentView, Gravity.NO_GRAVITY, x, y);
-
- mOriginX = x + container.getPaddingLeft() - mCoordinates[0];
- mOriginY = y + container.getPaddingTop() - mCoordinates[1];
- }
+ parentView.getLocationInWindow(mCoordinates);
+ window.showAtLocation(parentView, Gravity.NO_GRAVITY,
+ x + mCoordinates[0], y + mCoordinates[1]);
- private static int wrapUp(int x, int width, int left, int right) {
- if (x < left)
- return left;
- if (x + width > right)
- return right - width;
- return x;
+ mOriginX = x + container.getPaddingLeft();
+ mOriginY = y + container.getPaddingTop();
}
private boolean mIsDismissing;