Cycle tabs with Alt+Up/Down matched by keysym

Ctrl+PageUp/PageDown and Ctrl+Tab are needed by real apps (browser tabs,
terminal scrollback), and a tabbed-wlroots hotkey consumes the combo before
the nested client ever sees it.  Alt+Up/Down is free on both the
GNOME host (no wm/mutter/shell binding) and labwc, so the keys reach the
compositor instead of being grabbed or swallowed. Alt+Up/Down is used in
some apps but in minor ways. I tried to use Alt+PageUp/PageDown but it
fails on some laptops like mine.
This commit is contained in:
Andrew Hamilton 2026-08-14 08:48:28 +10:00
parent a86a21d76e
commit 54c3c99e1d
3 changed files with 90 additions and 30 deletions

View file

@ -87,15 +87,15 @@ Notes:
| Key | Action |
|----------------------------|---------------------------------------------------|
| `Ctrl+PageUp` | Previous tab (hold to keep cycling) |
| `Ctrl+PageDown` | Next tab (hold to keep cycling) |
| `Alt+Up` | Previous tab (hold to keep cycling) |
| `Alt+Down` | Next tab (hold to keep cycling) |
| `F11` | Toggle the host window fullscreen |
| `F9` | Dump composed scene buffer to `/tmp/scene_N.ppm` |
| `F10` | Dump host back buffer to `/tmp/host_N.ppm` |
The tab-cycling hotkey only emits a physical press for the first tab switch;
repeats are synthesized, so holding `Ctrl+PageUp/PageDown` keeps stepping
through tabs while any other key stops it.
repeats are synthesized, so holding `Alt+Up/Down` keeps stepping through
tabs while any other key stops it.
## Logging (`TABBED_LOG`)