Merge "Adjust accessibility edge slop." into jb-mr1-dev
This commit is contained in:
commit
78527e4dbb
2 changed files with 14 additions and 5 deletions
|
@ -101,4 +101,7 @@
|
|||
<dimen name="gesture_floating_preview_text_shadow_border">17.5dp</dimen>
|
||||
<dimen name="gesture_floating_preview_text_shading_border">7.5dp</dimen>
|
||||
<dimen name="gesture_floating_preview_text_connector_width">1.0dp</dimen>
|
||||
|
||||
<!-- Inset used in Accessibility mode to avoid accidental key presses when a finger slides off the screen. -->
|
||||
<dimen name="accessibility_edge_slop">8dp</dimen>
|
||||
</resources>
|
||||
|
|
|
@ -24,7 +24,6 @@ import android.support.v4.view.accessibility.AccessibilityEventCompat;
|
|||
import android.support.v4.view.accessibility.AccessibilityNodeInfoCompat;
|
||||
import android.view.MotionEvent;
|
||||
import android.view.View;
|
||||
import android.view.ViewConfiguration;
|
||||
|
||||
import com.android.inputmethod.keyboard.Key;
|
||||
import com.android.inputmethod.keyboard.Keyboard;
|
||||
|
@ -44,7 +43,7 @@ public class AccessibleKeyboardViewProxy extends AccessibilityDelegateCompat {
|
|||
|
||||
/**
|
||||
* Inset in pixels to look for keys when the user's finger exits the
|
||||
* keyboard area. See {@link ViewConfiguration#getScaledEdgeSlop()}.
|
||||
* keyboard area.
|
||||
*/
|
||||
private int mEdgeSlop;
|
||||
|
||||
|
@ -62,7 +61,8 @@ public class AccessibleKeyboardViewProxy extends AccessibilityDelegateCompat {
|
|||
|
||||
private void initInternal(InputMethodService inputMethod) {
|
||||
mInputMethod = inputMethod;
|
||||
mEdgeSlop = ViewConfiguration.get(inputMethod).getScaledEdgeSlop();
|
||||
mEdgeSlop = inputMethod.getResources().getDimensionPixelSize(
|
||||
R.dimen.accessibility_edge_slop);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -114,8 +114,14 @@ public class AccessibleKeyboardViewProxy extends AccessibilityDelegateCompat {
|
|||
public boolean dispatchHoverEvent(MotionEvent event, PointerTracker tracker) {
|
||||
final int x = (int) event.getX();
|
||||
final int y = (int) event.getY();
|
||||
final Key key = tracker.getKeyOn(x, y);
|
||||
final Key previousKey = mLastHoverKey;
|
||||
final Key key;
|
||||
|
||||
if (pointInView(x, y)) {
|
||||
key = tracker.getKeyOn(x, y);
|
||||
} else {
|
||||
key = null;
|
||||
}
|
||||
|
||||
mLastHoverKey = key;
|
||||
|
||||
|
@ -123,7 +129,7 @@ public class AccessibleKeyboardViewProxy extends AccessibilityDelegateCompat {
|
|||
case MotionEvent.ACTION_HOVER_EXIT:
|
||||
// Make sure we're not getting an EXIT event because the user slid
|
||||
// off the keyboard area, then force a key press.
|
||||
if (pointInView(x, y) && (key != null)) {
|
||||
if (key != null) {
|
||||
getAccessibilityNodeProvider().simulateKeyPress(key);
|
||||
}
|
||||
//$FALL-THROUGH$
|
||||
|
|
Loading…
Reference in a new issue