summaryrefslogtreecommitdiff
path: root/java/src/com/android/inputmethod/keyboard/MoreKeysKeyboardView.java
diff options
context:
space:
mode:
authorTadashi G. Takaoka <takaoka@google.com>2014-06-07 23:28:13 +0900
committerTadashi G. Takaoka <takaoka@google.com>2014-06-08 22:12:52 +0900
commitdec599d1723f4ff52f066bd2dd1a4457d30cd33c (patch)
treed1df0440da5029231047d93320393c8fd3b9ee81 /java/src/com/android/inputmethod/keyboard/MoreKeysKeyboardView.java
parent86a28db7f954dd7a1b158c7f1d7e9ae88258155a (diff)
Fix overwriting accessibility delegate in setKeyboard
A keyboard accessibility delegate object should be a singleton for each keyboard view. Bug: 15437933 Bug: 15419386 Change-Id: Ia70853c644d950ea6130c1f209b89929b1cb1ee5
Diffstat (limited to 'java/src/com/android/inputmethod/keyboard/MoreKeysKeyboardView.java')
-rw-r--r--java/src/com/android/inputmethod/keyboard/MoreKeysKeyboardView.java11
1 files changed, 7 insertions, 4 deletions
diff --git a/java/src/com/android/inputmethod/keyboard/MoreKeysKeyboardView.java b/java/src/com/android/inputmethod/keyboard/MoreKeysKeyboardView.java
index 4ca4abec6..0f575d30c 100644
--- a/java/src/com/android/inputmethod/keyboard/MoreKeysKeyboardView.java
+++ b/java/src/com/android/inputmethod/keyboard/MoreKeysKeyboardView.java
@@ -77,10 +77,13 @@ public class MoreKeysKeyboardView extends KeyboardView implements MoreKeysPanel
// discarded at {@link InputView#dispatchHoverEvent(MotionEvent)}. Because only a hover
// event that is on this view is dispatched by the platform, we should use a
// {@link KeyDetector} that has no sliding allowance and no hysteresis.
- mKeyDetector = new KeyDetector();
- mAccessibilityDelegate = new MoreKeysKeyboardAccessibilityDelegate(this, mKeyDetector);
- mAccessibilityDelegate.setOpenAnnounce(R.string.spoken_open_more_keys_keyboard);
- mAccessibilityDelegate.setCloseAnnounce(R.string.spoken_close_more_keys_keyboard);
+ if (mAccessibilityDelegate == null) {
+ mKeyDetector = new KeyDetector();
+ mAccessibilityDelegate = new MoreKeysKeyboardAccessibilityDelegate(
+ this, mKeyDetector);
+ mAccessibilityDelegate.setOpenAnnounce(R.string.spoken_open_more_keys_keyboard);
+ mAccessibilityDelegate.setCloseAnnounce(R.string.spoken_close_more_keys_keyboard);
+ }
mAccessibilityDelegate.setKeyboard(keyboard);
} else {
mKeyDetector = new MoreKeysDetector(getResources().getDimension(