aboutsummaryrefslogtreecommitdiffstats
path: root/java
diff options
context:
space:
mode:
authorRyan Lin <ryanlwlin@google.com>2019-12-04 09:08:50 -0800
committerandroid-build-merger <android-build-merger@google.com>2019-12-04 09:08:50 -0800
commitfc2bc1053014d88a1052fcec9b206845bcf5ab4e (patch)
treec422d2c92c07c4e138fccc77143f5e55a49f68bd /java
parentddcf0935053138d42df0da5c69324e85ae6f4aa1 (diff)
parent3721623175bf6f7122a131eea42613a9e818800c (diff)
downloadlatinime-fc2bc1053014d88a1052fcec9b206845bcf5ab4e.tar.gz
latinime-fc2bc1053014d88a1052fcec9b206845bcf5ab4e.tar.xz
latinime-fc2bc1053014d88a1052fcec9b206845bcf5ab4e.zip
Merge "Implement text entry key API for accessibility services in AOSP Keyboard" am: c3eafcb756
am: 3721623175 Change-Id: If0a82009caced6174e86eeb0d4bdf1a5080d9779
Diffstat (limited to 'java')
-rw-r--r--java/src/com/android/inputmethod/accessibility/KeyboardAccessibilityDelegate.java1
-rw-r--r--java/src/com/android/inputmethod/accessibility/KeyboardAccessibilityNodeProvider.java11
-rw-r--r--java/src/com/android/inputmethod/accessibility/MainKeyboardAccessibilityDelegate.java8
3 files changed, 4 insertions, 16 deletions
diff --git a/java/src/com/android/inputmethod/accessibility/KeyboardAccessibilityDelegate.java b/java/src/com/android/inputmethod/accessibility/KeyboardAccessibilityDelegate.java
index f7a11639d..5c03d26a9 100644
--- a/java/src/com/android/inputmethod/accessibility/KeyboardAccessibilityDelegate.java
+++ b/java/src/com/android/inputmethod/accessibility/KeyboardAccessibilityDelegate.java
@@ -243,7 +243,6 @@ public class KeyboardAccessibilityDelegate<KV extends KeyboardView>
// Make sure we're not getting an EXIT event because the user slid
// off the keyboard area, then force a key press.
if (key != null) {
- performClickOn(key);
onHoverExitFrom(key);
}
setLastHoverKey(null);
diff --git a/java/src/com/android/inputmethod/accessibility/KeyboardAccessibilityNodeProvider.java b/java/src/com/android/inputmethod/accessibility/KeyboardAccessibilityNodeProvider.java
index a3511c63f..7266aa88a 100644
--- a/java/src/com/android/inputmethod/accessibility/KeyboardAccessibilityNodeProvider.java
+++ b/java/src/com/android/inputmethod/accessibility/KeyboardAccessibilityNodeProvider.java
@@ -236,6 +236,7 @@ final class KeyboardAccessibilityNodeProvider<KV extends KeyboardView>
// Obtain and initialize an AccessibilityNodeInfo with information about the virtual view.
final AccessibilityNodeInfoCompat info = AccessibilityNodeInfoCompat.obtain();
info.setPackageName(mKeyboardView.getContext().getPackageName());
+ info.setTextEntryKey(true);
info.setClassName(key.getClass().getName());
info.setContentDescription(keyDescription);
info.setBoundsInParent(boundsInParent);
@@ -244,13 +245,9 @@ final class KeyboardAccessibilityNodeProvider<KV extends KeyboardView>
info.setSource(mKeyboardView, virtualViewId);
info.setEnabled(key.isEnabled());
info.setVisibleToUser(true);
- // Don't add ACTION_CLICK and ACTION_LONG_CLOCK actions while hovering on the key.
- // See {@link #onHoverEnterTo(Key)} and {@link #onHoverExitFrom(Key)}.
- if (virtualViewId != mHoveringNodeId) {
- info.addAction(AccessibilityNodeInfoCompat.ACTION_CLICK);
- if (key.isLongPressEnabled()) {
- info.addAction(AccessibilityNodeInfoCompat.ACTION_LONG_CLICK);
- }
+ info.addAction(AccessibilityNodeInfoCompat.ACTION_CLICK);
+ if (key.isLongPressEnabled()) {
+ info.addAction(AccessibilityNodeInfoCompat.ACTION_LONG_CLICK);
}
if (mAccessibilityFocusedView == virtualViewId) {
diff --git a/java/src/com/android/inputmethod/accessibility/MainKeyboardAccessibilityDelegate.java b/java/src/com/android/inputmethod/accessibility/MainKeyboardAccessibilityDelegate.java
index edda32d52..3234993cf 100644
--- a/java/src/com/android/inputmethod/accessibility/MainKeyboardAccessibilityDelegate.java
+++ b/java/src/com/android/inputmethod/accessibility/MainKeyboardAccessibilityDelegate.java
@@ -62,13 +62,10 @@ public final class MainKeyboardAccessibilityDelegate
// The rectangle region to ignore hover events.
private final Rect mBoundsToIgnoreHoverEvent = new Rect();
- private final AccessibilityLongPressTimer mAccessibilityLongPressTimer;
public MainKeyboardAccessibilityDelegate(final MainKeyboardView mainKeyboardView,
final KeyDetector keyDetector) {
super(mainKeyboardView, keyDetector);
- mAccessibilityLongPressTimer = new AccessibilityLongPressTimer(
- this /* callback */, mainKeyboardView.getContext());
}
/**
@@ -233,7 +230,6 @@ public final class MainKeyboardAccessibilityDelegate
Log.d(TAG, "onHoverEnterTo: key=" + key
+ " inIgnoreBounds=" + mBoundsToIgnoreHoverEvent.contains(x, y));
}
- mAccessibilityLongPressTimer.cancelLongPress();
if (mBoundsToIgnoreHoverEvent.contains(x, y)) {
return;
}
@@ -241,9 +237,6 @@ public final class MainKeyboardAccessibilityDelegate
// Further hover events should be handled.
mBoundsToIgnoreHoverEvent.setEmpty();
super.onHoverEnterTo(key);
- if (key.isLongPressEnabled()) {
- mAccessibilityLongPressTimer.startLongPress(key);
- }
}
@Override
@@ -254,7 +247,6 @@ public final class MainKeyboardAccessibilityDelegate
Log.d(TAG, "onHoverExitFrom: key=" + key
+ " inIgnoreBounds=" + mBoundsToIgnoreHoverEvent.contains(x, y));
}
- mAccessibilityLongPressTimer.cancelLongPress();
super.onHoverExitFrom(key);
}