Revert "Stop marking gamepads as keyboards"

This reverts commit 74c8fb601ef75d8e12df5221489c41c125e3b846.

Change-Id: If8ca4d09b4d52f11d48dabebf2dff2984760cdc0
bug: 8896129
diff --git a/services/input/EventHub.cpp b/services/input/EventHub.cpp
index 376de96..f4e1cec 100644
--- a/services/input/EventHub.cpp
+++ b/services/input/EventHub.cpp
@@ -1188,6 +1188,11 @@
             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) &&
@@ -1205,14 +1210,6 @@
             }
         }
 
-        // '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)) {