aboutsummaryrefslogtreecommitdiffstats
path: root/java/src
diff options
context:
space:
mode:
Diffstat (limited to 'java/src')
-rw-r--r--java/src/com/android/inputmethod/accessibility/AccessibilityUtils.java5
-rw-r--r--java/src/com/android/inputmethod/accessibility/AccessibleInputMethodServiceProxy.java4
-rw-r--r--java/src/com/android/inputmethod/compat/AccessibilityEventCompatUtils.java17
-rw-r--r--java/src/com/android/inputmethod/compat/AccessibilityManagerCompatWrapper.java14
-rw-r--r--java/src/com/android/inputmethod/keyboard/KeyboardView.java4
5 files changed, 11 insertions, 33 deletions
diff --git a/java/src/com/android/inputmethod/accessibility/AccessibilityUtils.java b/java/src/com/android/inputmethod/accessibility/AccessibilityUtils.java
index ae614b7e0..7e71b5f36 100644
--- a/java/src/com/android/inputmethod/accessibility/AccessibilityUtils.java
+++ b/java/src/com/android/inputmethod/accessibility/AccessibilityUtils.java
@@ -16,7 +16,6 @@
package com.android.inputmethod.accessibility;
-import android.accessibilityservice.AccessibilityServiceInfo;
import android.content.Context;
import android.content.SharedPreferences;
import android.inputmethodservice.InputMethodService;
@@ -82,10 +81,8 @@ public class AccessibilityUtils {
*/
public boolean isTouchExplorationEnabled() {
return ENABLE_ACCESSIBILITY
- && AccessibilityEventCompatUtils.supportsTouchExploration()
&& mAccessibilityManager.isEnabled()
- && !mCompatManager.getEnabledAccessibilityServiceList(
- AccessibilityServiceInfo.FEEDBACK_SPOKEN).isEmpty();
+ && mCompatManager.isTouchExplorationEnabled();
}
/**
diff --git a/java/src/com/android/inputmethod/accessibility/AccessibleInputMethodServiceProxy.java b/java/src/com/android/inputmethod/accessibility/AccessibleInputMethodServiceProxy.java
index 89adc15f2..4ab9cb898 100644
--- a/java/src/com/android/inputmethod/accessibility/AccessibleInputMethodServiceProxy.java
+++ b/java/src/com/android/inputmethod/accessibility/AccessibleInputMethodServiceProxy.java
@@ -47,6 +47,8 @@ public class AccessibleInputMethodServiceProxy implements AccessibleKeyboardActi
*/
private static final long VIBRATE_KEY_CLICK = 50;
+ private static final float FX_VOLUME = -1.0f;
+
private InputMethodService mInputMethod;
private Vibrator mVibrator;
private AudioManager mAudioManager;
@@ -143,7 +145,7 @@ public class AccessibleInputMethodServiceProxy implements AccessibleKeyboardActi
*/
private void sendDownUpKeyEvents(int keyCode) {
mVibrator.vibrate(VIBRATE_KEY_CLICK);
- mAudioManager.playSoundEffect(AudioManager.FX_KEY_CLICK);
+ mAudioManager.playSoundEffect(AudioManager.FX_KEYPRESS_STANDARD, FX_VOLUME);
mInputMethod.sendDownUpKeyEvents(keyCode);
}
diff --git a/java/src/com/android/inputmethod/compat/AccessibilityEventCompatUtils.java b/java/src/com/android/inputmethod/compat/AccessibilityEventCompatUtils.java
index 50057727a..2fa9d87d8 100644
--- a/java/src/com/android/inputmethod/compat/AccessibilityEventCompatUtils.java
+++ b/java/src/com/android/inputmethod/compat/AccessibilityEventCompatUtils.java
@@ -16,24 +16,7 @@
package com.android.inputmethod.compat;
-import android.view.accessibility.AccessibilityEvent;
-
-import java.lang.reflect.Field;
-
public class AccessibilityEventCompatUtils {
public static final int TYPE_VIEW_HOVER_ENTER = 0x80;
public static final int TYPE_VIEW_HOVER_EXIT = 0x100;
-
- private static final Field FIELD_TYPE_VIEW_HOVER_ENTER = CompatUtils.getField(
- AccessibilityEvent.class, "TYPE_VIEW_HOVER_ENTER");
- private static final Field FIELD_TYPE_VIEW_HOVER_EXIT = CompatUtils.getField(
- AccessibilityEvent.class, "TYPE_VIEW_HOVER_EXIT");
- private static final Integer OBJ_TYPE_VIEW_HOVER_ENTER = (Integer) CompatUtils
- .getFieldValue(null, null, FIELD_TYPE_VIEW_HOVER_ENTER);
- private static final Integer OBJ_TYPE_VIEW_HOVER_EXIT = (Integer) CompatUtils
- .getFieldValue(null, null, FIELD_TYPE_VIEW_HOVER_EXIT);
-
- public static boolean supportsTouchExploration() {
- return OBJ_TYPE_VIEW_HOVER_ENTER != null && OBJ_TYPE_VIEW_HOVER_EXIT != null;
- }
}
diff --git a/java/src/com/android/inputmethod/compat/AccessibilityManagerCompatWrapper.java b/java/src/com/android/inputmethod/compat/AccessibilityManagerCompatWrapper.java
index 4db1c7a24..a30af0faf 100644
--- a/java/src/com/android/inputmethod/compat/AccessibilityManagerCompatWrapper.java
+++ b/java/src/com/android/inputmethod/compat/AccessibilityManagerCompatWrapper.java
@@ -16,16 +16,13 @@
package com.android.inputmethod.compat;
-import android.accessibilityservice.AccessibilityServiceInfo;
import android.view.accessibility.AccessibilityManager;
import java.lang.reflect.Method;
-import java.util.Collections;
-import java.util.List;
public class AccessibilityManagerCompatWrapper {
- private static final Method METHOD_getEnabledAccessibilityServiceList = CompatUtils.getMethod(
- AccessibilityManager.class, "getEnabledAccessibilityServiceList", int.class);
+ private static final Method METHOD_isTouchExplorationEnabled = CompatUtils.getMethod(
+ AccessibilityManager.class, "isTouchExplorationEnabled");
private final AccessibilityManager mManager;
@@ -33,10 +30,7 @@ public class AccessibilityManagerCompatWrapper {
mManager = manager;
}
- @SuppressWarnings("unchecked")
- public List<AccessibilityServiceInfo> getEnabledAccessibilityServiceList(int feedbackType) {
- return (List<AccessibilityServiceInfo>) CompatUtils.invoke(mManager,
- Collections.<AccessibilityServiceInfo>emptyList(),
- METHOD_getEnabledAccessibilityServiceList, feedbackType);
+ public boolean isTouchExplorationEnabled() {
+ return (Boolean) CompatUtils.invoke(mManager, false, METHOD_isTouchExplorationEnabled);
}
}
diff --git a/java/src/com/android/inputmethod/keyboard/KeyboardView.java b/java/src/com/android/inputmethod/keyboard/KeyboardView.java
index d23b8ff0e..1641dc4a5 100644
--- a/java/src/com/android/inputmethod/keyboard/KeyboardView.java
+++ b/java/src/com/android/inputmethod/keyboard/KeyboardView.java
@@ -136,6 +136,7 @@ public class KeyboardView extends View implements PointerTracker.DrawingProxy {
@Override
public void handleMessage(Message msg) {
final KeyboardView keyboardView = getOuterInstance();
+ if (keyboardView == null) return;
final PointerTracker tracker = (PointerTracker) msg.obj;
switch (msg.what) {
case MSG_SHOW_KEY_PREVIEW:
@@ -150,8 +151,9 @@ public class KeyboardView extends View implements PointerTracker.DrawingProxy {
}
public void showKeyPreview(long delay, int keyIndex, PointerTracker tracker) {
- final KeyboardView keyboardView = getOuterInstance();
removeMessages(MSG_SHOW_KEY_PREVIEW);
+ final KeyboardView keyboardView = getOuterInstance();
+ if (keyboardView == null) return;
if (keyboardView.mPreviewText.getVisibility() == VISIBLE || delay == 0) {
// Show right away, if it's already visible and finger is moving around
keyboardView.showKey(keyIndex, tracker);