aboutsummaryrefslogtreecommitdiffstats
path: root/java/src/com/android/inputmethod
diff options
context:
space:
mode:
authoralanv <alanv@google.com>2012-05-19 00:05:13 -0700
committeralanv <alanv@google.com>2012-05-19 00:05:13 -0700
commit282adf733093b41a31514746825ea05fc90fb3ee (patch)
tree22fca511bf1bc67811f60828097e0d70b17df323 /java/src/com/android/inputmethod
parente1128687b101e6bda47e8dc2b8fcb5a3519a8ccf (diff)
downloadlatinime-282adf733093b41a31514746825ea05fc90fb3ee.tar.gz
latinime-282adf733093b41a31514746825ea05fc90fb3ee.tar.xz
latinime-282adf733093b41a31514746825ea05fc90fb3ee.zip
Pass IME accessibility events directly to the AccessibilityManager.
Bug: 6523554 Change-Id: I44bceb7b068ff1ac0c799f4a93d5dcd8026f1e4b
Diffstat (limited to 'java/src/com/android/inputmethod')
-rw-r--r--java/src/com/android/inputmethod/accessibility/AccessibilityEntityProvider.java7
-rw-r--r--java/src/com/android/inputmethod/accessibility/AccessibilityUtils.java12
2 files changed, 18 insertions, 1 deletions
diff --git a/java/src/com/android/inputmethod/accessibility/AccessibilityEntityProvider.java b/java/src/com/android/inputmethod/accessibility/AccessibilityEntityProvider.java
index 67e21b10c..3cfef972a 100644
--- a/java/src/com/android/inputmethod/accessibility/AccessibilityEntityProvider.java
+++ b/java/src/com/android/inputmethod/accessibility/AccessibilityEntityProvider.java
@@ -282,7 +282,12 @@ public class AccessibilityEntityProvider extends AccessibilityNodeProviderCompat
return;
}
- parent.requestSendAccessibilityEvent(mKeyboardView, event);
+ if (!parent.requestSendAccessibilityEvent(mKeyboardView, event)) {
+ // TODO: Remove this line after the top-level view for the IME
+ // window is fixed to be non-null and requestSendAccessibilityEvent
+ // can return true.
+ mAccessibilityUtils.requestSendAccessibilityEvent(event);
+ }
}
/**
diff --git a/java/src/com/android/inputmethod/accessibility/AccessibilityUtils.java b/java/src/com/android/inputmethod/accessibility/AccessibilityUtils.java
index 2ea7d83e4..616b1c6d7 100644
--- a/java/src/com/android/inputmethod/accessibility/AccessibilityUtils.java
+++ b/java/src/com/android/inputmethod/accessibility/AccessibilityUtils.java
@@ -174,4 +174,16 @@ public class AccessibilityUtils {
speak(text);
}
}
+
+ /**
+ * Sends the specified {@link AccessibilityEvent} if accessibility is
+ * enabled. No operation if accessibility is disabled.
+ *
+ * @param event The event to send.
+ */
+ public void requestSendAccessibilityEvent(AccessibilityEvent event) {
+ if (mAccessibilityManager.isEnabled()) {
+ mAccessibilityManager.sendAccessibilityEvent(event);
+ }
+ }
}