summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSiarhei Vishniakou <svv@google.com>2019-09-11 22:03:01 +0100
committerandroid-build-team Robot <android-build-team-robot@google.com>2019-09-20 04:04:47 +0000
commitec01463242d4ba9a376d69fc34729cf8cb8fb7b0 (patch)
treefda0e3af2bee3aa15623b1978adfb313b989ac2c
parent4b47b293593674ca69ff4f984df0f8a6b86c6dd5 (diff)
downloadandroid_frameworks_base-ec01463242d4ba9a376d69fc34729cf8cb8fb7b0.tar.gz
android_frameworks_base-ec01463242d4ba9a376d69fc34729cf8cb8fb7b0.tar.bz2
android_frameworks_base-ec01463242d4ba9a376d69fc34729cf8cb8fb7b0.zip
Add keylayout for original xbox controller
We are still missing a key layout for the original xbox controller with product id 02dd. Add the missing layout here. Bug: 140808513 Test: manual test by plugging in the actual joystick and using the custom tester app Change-Id: Ib84e3ac04ff58f890ce7743423cc9b869af347db (cherry picked from commit 0c1c820d9dcf66a86aaf393e97646082c522f543)
-rw-r--r--data/keyboards/Vendor_045e_Product_02dd.kl57
1 files changed, 57 insertions, 0 deletions
diff --git a/data/keyboards/Vendor_045e_Product_02dd.kl b/data/keyboards/Vendor_045e_Product_02dd.kl
new file mode 100644
index 00000000000..3975cec24fc
--- /dev/null
+++ b/data/keyboards/Vendor_045e_Product_02dd.kl
@@ -0,0 +1,57 @@
+# Copyright (C) 2019 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+#
+# XBox One Controller - Model 1697 - USB
+#
+
+# Mapping according to https://developer.android.com/training/game-controllers/controller-input.html
+
+key 304 BUTTON_A
+key 305 BUTTON_B
+key 307 BUTTON_X
+key 308 BUTTON_Y
+
+key 310 BUTTON_L1
+key 311 BUTTON_R1
+
+# Triggers.
+axis 0x02 LTRIGGER
+axis 0x05 RTRIGGER
+
+# Left and right stick.
+# The reported value for flat is 128 out of a range from -32767 to 32768, which is absurd.
+# This confuses applications that rely on the flat value because the joystick actually
+# settles in a flat range of +/- 4096 or so.
+axis 0x00 X flat 4096
+axis 0x01 Y flat 4096
+axis 0x03 Z flat 4096
+axis 0x04 RZ flat 4096
+
+key 317 BUTTON_THUMBL
+key 318 BUTTON_THUMBR
+
+# Hat.
+axis 0x10 HAT_X
+axis 0x11 HAT_Y
+
+
+# Mapping according to https://www.kernel.org/doc/Documentation/input/gamepad.txt
+# Two overlapping rectangles
+key 314 BUTTON_SELECT
+# Hamburger - 3 parallel lines
+key 315 BUTTON_START
+
+# Xbox key
+key 316 BUTTON_MODE