Skip to content
Snippets Groups Projects
Commit 2c0c1cc6 authored by Tadashi G. Takaoka's avatar Tadashi G. Takaoka Committed by Android (Google) Code Review
Browse files

Merge "Fix key info reported by keyboard accessibility node provider." into jb-mr1-dev

parents 1a397ece 26b424b6
No related branches found
No related tags found
No related merge requests found
......@@ -196,8 +196,7 @@ public class AccessibilityEntityProvider extends AccessibilityNodeProviderCompat
info.setSource(mKeyboardView, virtualViewId);
info.setBoundsInScreen(boundsInScreen);
info.setEnabled(true);
info.setClickable(true);
info.addAction(AccessibilityNodeInfoCompat.ACTION_CLICK);
info.setVisibleToUser(true);
if (mAccessibilityFocusedView == virtualViewId) {
info.addAction(AccessibilityNodeInfoCompat.ACTION_CLEAR_ACCESSIBILITY_FOCUS);
......@@ -226,6 +225,9 @@ public class AccessibilityEntityProvider extends AccessibilityNodeProviderCompat
mKeyboardView.onTouchEvent(downEvent);
mKeyboardView.onTouchEvent(upEvent);
downEvent.recycle();
upEvent.recycle();
}
@Override
......@@ -252,9 +254,6 @@ public class AccessibilityEntityProvider extends AccessibilityNodeProviderCompat
final int virtualViewId = generateVirtualViewIdForKey(key);
switch (action) {
case AccessibilityNodeInfoCompat.ACTION_CLICK:
simulateKeyPress(key);
return true;
case AccessibilityNodeInfoCompat.ACTION_ACCESSIBILITY_FOCUS:
if (mAccessibilityFocusedView == virtualViewId) {
return false;
......
......@@ -105,8 +105,21 @@ public class AccessibleKeyboardViewProxy extends AccessibilityDelegateCompat {
}
/**
* Receives hover events when accessibility is turned on in SDK versions ICS
* and higher.
* Receives motion events when touch exploration is turned on in SDK
* versions ICS and higher.
*
* @param event The motion event.
* @return {@code true} if the event is handled
*/
public boolean onTouchEvent(MotionEvent event) {
// To avoid accidental key presses during touch exploration, always drop
// non-hover touch events.
return false;
}
/**
* Receives hover events when touch exploration is turned on in SDK versions
* ICS and higher.
*
* @param event The hover event.
* @return {@code true} if the event is handled
......
......@@ -665,6 +665,9 @@ public class MainKeyboardView extends KeyboardView implements PointerTracker.Key
if (getKeyboard() == null) {
return false;
}
if (AccessibilityUtils.getInstance().isTouchExplorationEnabled()) {
return AccessibleKeyboardViewProxy.getInstance().onTouchEvent(me);
}
return mTouchScreenRegulator.onTouchEvent(me);
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment