From 02a44f7d4715bf876aad6b420a0c7c1782965aa0 Mon Sep 17 00:00:00 2001 From: Ken Wakasa Date: Fri, 5 Jul 2013 04:08:36 +0000 Subject: [PATCH] Revert "Stop marking gamepads as keyboards" This reverts commit 74c8fb601ef75d8e12df5221489c41c125e3b846. Change-Id: If8ca4d09b4d52f11d48dabebf2dff2984760cdc0 bug: 8896129 --- services/input/EventHub.cpp | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/services/input/EventHub.cpp b/services/input/EventHub.cpp index a2443e7b380e4..0773afb33a284 100644 --- a/services/input/EventHub.cpp +++ b/services/input/EventHub.cpp @@ -1162,6 +1162,11 @@ status_t EventHub::openDeviceLocked(const char *devicePath) { mBuiltInKeyboardId = device->id; } + // 'Q' key support = cheap test of whether this is an alpha-capable kbd + if (hasKeycodeLocked(device, AKEYCODE_Q)) { + device->classes |= INPUT_DEVICE_CLASS_ALPHAKEY; + } + // See if this device has a DPAD. if (hasKeycodeLocked(device, AKEYCODE_DPAD_UP) && hasKeycodeLocked(device, AKEYCODE_DPAD_DOWN) && @@ -1179,14 +1184,6 @@ status_t EventHub::openDeviceLocked(const char *devicePath) { } } - // 'Q' key support = cheap test of whether this is an alpha-capable kbd. Many gamepads will - // report a broader set of HID usages than they need, however, so we only want to mark this - // device as a keyboard if it is not a gamepad. - if (hasKeycodeLocked(device, AKEYCODE_Q) && - !(device->classes & INPUT_DEVICE_CLASS_GAMEPAD)) { - device->classes |= INPUT_DEVICE_CLASS_ALPHAKEY; - } - // Disable kernel key repeat since we handle it ourselves unsigned int repeatRate[] = {0,0}; if (ioctl(fd, EVIOCSREP, repeatRate)) {