Пока коллекционирую банальности и изобретаю велосипеды.
Подумал тут: "Если с контроллерами геморно через АПИ, что можно сделать без них?"
Тапы шлем, действительно не слышит: из инпутов есть только разъем наушников, да кнопки питания с громкостью. Тачскрин (INPUT_PROP_DIRECT) как бы тоже есть, но по ивентам судя, он не координатный - "одна большая кнопка".
$ ls -l /dev/input
crw-rw---- 1 root input 13, 64 1970-05-04 21:16 event0
crw-rw---- 1 root input 13, 65 1970-05-04 21:16 event1
crw-rw---- 1 root input 13, 66 1970-05-04 21:16 event2
crw-rw---- 1 root input 13, 67 2024-07-07 09:07 event3
crw-rw---- 1 root input 13, 68 2024-07-08 02:00 event4
$ getevent -lp
add device 1: /dev/input/event4
name: "Device 0x4CBCE9E9E8D710A4"
events:
KEY (0001): KEY_FORWARD
input props:
INPUT_PROP_DIRECT
add device 2: /dev/input/event3
name: "anorak-max98388-snd-card AK4333 Headphone"
events:
SW (0005): SW_HEADPHONE_INSERT SW_LINEOUT_INSERT SW_JACK_PHYSICAL_INS
input props:
<none>
add device 3: /dev/input/event2
name: "pmic_resin"
events:
KEY (0001): KEY_VOLUMEDOWN
input props:
<none>
add device 4: /dev/input/event1
name: "pmic_pwrkey"
events:
KEY (0001): KEY_POWER
input props:
<none>
add device 5: /dev/input/event0
name: "gpio-keys"
events:
KEY (0001): KEY_VOLUMEUP
input props:
<none>
И главное, при снятии шлема окна пропадают, точнее сворачиваются в угол, если правильно понял изменения range.
Пока фантазируется, без АПИ придется победить минимум три вещи:
- включить "безконтроллерный" режим (белая точка и громкость, как "клик"),
- развернутые окна (обмануть, что шлем на голове),
- навести точку на нужное место и кликнуть на громкость.