diff options
Diffstat (limited to 'services')
| -rw-r--r-- | services/java/com/android/server/input/InputManagerService.java | 8 | ||||
| -rwxr-xr-x | services/java/com/android/server/wm/WindowManagerService.java | 7 |
2 files changed, 5 insertions, 10 deletions
diff --git a/services/java/com/android/server/input/InputManagerService.java b/services/java/com/android/server/input/InputManagerService.java index d85facc..bdd0aa4 100644 --- a/services/java/com/android/server/input/InputManagerService.java +++ b/services/java/com/android/server/input/InputManagerService.java @@ -592,7 +592,7 @@ public class InputManagerService extends IInputManager.Stub implements Watchdog. deviceIdAndGeneration[i * 2] = inputDevice.getId(); deviceIdAndGeneration[i * 2 + 1] = inputDevice.getGeneration(); - if (isFullKeyboard(inputDevice)) { + if (!inputDevice.isVirtual() && inputDevice.isFullKeyboard()) { if (!containsInputDeviceWithDescriptor(oldInputDevices, inputDevice.getDescriptor())) { mTempFullKeyboards.add(numFullKeyboardsAdded++, inputDevice); @@ -695,12 +695,6 @@ public class InputManagerService extends IInputManager.Stub implements Watchdog. reloadKeyboardLayouts(); } - private static boolean isFullKeyboard(InputDevice inputDevice) { - return !inputDevice.isVirtual() - && (inputDevice.getSources() & InputDevice.SOURCE_KEYBOARD) != 0 - && inputDevice.getKeyboardType() == InputDevice.KEYBOARD_TYPE_ALPHABETIC; - } - private static boolean containsInputDeviceWithDescriptor(InputDevice[] inputDevices, String descriptor) { final int numDevices = inputDevices.length; diff --git a/services/java/com/android/server/wm/WindowManagerService.java b/services/java/com/android/server/wm/WindowManagerService.java index 4ce8c97..10919f2 100755 --- a/services/java/com/android/server/wm/WindowManagerService.java +++ b/services/java/com/android/server/wm/WindowManagerService.java @@ -6466,17 +6466,18 @@ public class WindowManagerService extends IWindowManager.Stub WindowManagerPolicy.PRESENCE_INTERNAL; if (mIsTouchDevice) { - if ((sources & InputDevice.SOURCE_TOUCHSCREEN) != 0) { + if ((sources & InputDevice.SOURCE_TOUCHSCREEN) == + InputDevice.SOURCE_TOUCHSCREEN) { config.touchscreen = Configuration.TOUCHSCREEN_FINGER; } } else { config.touchscreen = Configuration.TOUCHSCREEN_NOTOUCH; } - if ((sources & InputDevice.SOURCE_TRACKBALL) != 0) { + if ((sources & InputDevice.SOURCE_TRACKBALL) == InputDevice.SOURCE_TRACKBALL) { config.navigation = Configuration.NAVIGATION_TRACKBALL; navigationPresence |= presenceFlag; - } else if ((sources & InputDevice.SOURCE_DPAD) != 0 + } else if ((sources & InputDevice.SOURCE_DPAD) == InputDevice.SOURCE_DPAD && config.navigation == Configuration.NAVIGATION_NONAV) { config.navigation = Configuration.NAVIGATION_DPAD; navigationPresence |= presenceFlag; |
