summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorAdam Malczewski <[email protected]>2026-06-13 16:06:13 +0900
committerAdam Malczewski <[email protected]>2026-06-13 16:06:13 +0900
commitc378dd00fee61799feaab9c6d84a73d69691d8dc (patch)
treefe7372e9330d02820da6d041ccf116a4c7e279b7
parent9ee2d3ceee93ff0d0afdb47f594ea4fee95455fc (diff)
downloadunbox-c378dd00fee61799feaab9c6d84a73d69691d8dc.tar.gz
unbox-c378dd00fee61799feaab9c6d84a73d69691d8dc.zip
docs: record kernel-hardwired VT switching (plan §2, tasks)
-rw-r--r--notes/plan.md1
-rw-r--r--tasks.md2
2 files changed, 3 insertions, 0 deletions
diff --git a/notes/plan.md b/notes/plan.md
index cc83241..c2d7258 100644
--- a/notes/plan.md
+++ b/notes/plan.md
@@ -65,6 +65,7 @@ solves), and the trigger that would reopen it.
| **touch-mode causes NO visual change** (state + typed notification only; dp-ratio stays 1.0) | User found any automatic scaling jarring on hardware (slice-5 hands-on, three iterations: 1.6→1.25→none); extensions adapt affordances explicitly via `on_touch_mode_changed` | Real-seat ergonomics (slice 9+) show finger targets genuinely too small |
| **Keybindings are config-driven via `unbox.toml`** — ext-keybindings (core) is the first `unbox.toml` consumer/parser; external fuzzel-on-Super stands in for an in-process launcher for now | Fastest path to a usable DE (Super→fuzzel, Alt+Tab); exercises the key_filter + ext-xdg-shell focus contract with no new UI | A bespoke in-process launcher/taskbar lands (slice 6) |
| **Kernel exports `WAYLAND_DISPLAY`** (setenv at startup) so any process an extension spawns connects to unbox, not the session that launched unbox | Spawned clients inherit the process env; without it fuzzel hit the parent labwc (`wayland-0`) → "no monitors" | — |
+| **VT switching (Ctrl+Alt+Fn) is kernel-hardwired** before the key_filter (`wlr_session_change_vt`) | It is the session escape hatch — must work even if an extension throws or greedily consumes keys; not a rebindable feature (user decision) | — |
## 3. Architecture
diff --git a/tasks.md b/tasks.md
index e9993d1..af52c26 100644
--- a/tasks.md
+++ b/tasks.md
@@ -11,6 +11,8 @@ spawn fuzzel, Alt+Tab / Alt+Shift+Tab → stable focus rotation over all topleve
Alt+F1, Ctrl+Alt+Backspace → quit. ext-xdg-shell's hardcoded keybinds migrated
out. Kernel now exports `WAYLAND_DISPLAY` so extension-spawned clients reach unbox
(was the fuzzel "no monitors" root cause). build + build-asan both green.
+Follow-up: Ctrl+Alt+F1..F12 VT switching is now kernel-hardwired (the session
+escape hatch).
**Next action:** Slice 6 — ext-taskbar + ext-launcher (first standard
extensions; prove the ui-substrate contract). Queued into it from