Touchkeys
Touchkeys are buttons with minimal or no physical actuation or haptic feedback. They're triggered by a touch on a specific area of the device, usually with a corresponding icon (see examples below). They are usually detected by the same hardware as the touchscreen itself.
App selection button

On Android this button brings up the "recent apps" screen on a short click and splits the screen on a long click. The long click action is configurable. This button should correspond to KEY_APPSELECT
when upstreaming a device.
Limitations
KEY_APPSELECT
has a kernel keycode of 580 (0x244).[1] In xkb library this is keycode 588. Keycodes above 255 are not processed in X11 because X11 uses 8 bit keycodes.[2] Therefore, KEY_APPSELECT
is not available in X11 UIs. Wayland uses 32 bit keycodes and does not have this limitation.[3] However, the key isn't processed properly in Phosh, some parts of software don't handle it correctly. Also in Plasma Mobile the key can't be used for shortcut assignment.
Menu button

This button should correspond to KEY_MENU
when upstreaming a device. This button is usually not configured for any functionality in most DEs.
Back button

This button should correspond to KEY_BACK
when upstreaming a device. This button is usually not configured for any functionality in most DEs.
Confirming touch key mapping
You can confirm the mapping of touch keys using the following tools:
- Kernel key names by command
evtest
(package evtest) - xkb key names by
xev
(package xev) - Wayland key names by
wev
(package wev)
Related
See also Tm2-touchkey.