v0.10.0 d5d679d

2026-10-19

d5d679dMerge branch 'main' into fix/release-review merge GPG Verifiedtag v0.10.02/2brice
e11014etest(screencast): make cast and pending-table tests deterministic (!6) SSH Verified1/1brice
4cf5ef0Merge branch 'fix/review-outbox' into fix/release-review merge GPG Verified1/1brice
9a6eff8refactor(core): remove SlotsPending command GPG Verifiedbrice
48fe6adMerge branch 'fix/review-hints' into fix/release-review merge GPG Verifiedbrice
91f7d4aMerge branch 'fix/review-dnd' into fix/release-review merge GPG Verifiedbrice
638a799fix(hints): reject stale geometry and bound scan discovery GPG Verifiedbrice
ef7b51cfix(dnd): keep target lifetime and negotiation consistent GPG Verifiedbrice
cbbf1eefix(stats): sample stalled command queue occupancy each period GPG Verifiedbrice
d2670dafix(wayland): read placement tokens independently of command drain GPG Verifiedbrice
353b4e3feat(hints): add experimental keyboard hint mode (#149) GPG Unverified1/1bnema
9793569fix(core): cross to the neighbor screen past the vertical workspace edge GPG Verified2/2brice
01e6d9afix(core): focus the neighbor workspace before the neighbor screen at the column edge GPG Verifiedbrice
e8a5ba6fix(core): flash the output when an action moves focus to another screen GPG Verified2/2brice
2117e03perf(vulkan): limit focus flash damage to its rect GPG Verified2/2brice
97aa477fix(core): skip focus flash on edge workspace switches GPG Verifiedbrice
ad49c58fix(core): cancel stale focus flashes and track cooldown per target GPG Verifiedbrice
3b72e8efeat(vulkan): draw focus flash as inner border GPG Verifiedbrice
4e6e449feat(core): add focus flash on window, column and output changes GPG Verifiedbrice
ade9e82refactor(core): remove focus pulse and add focus flash contracts GPG Verifiedbrice

2026-10-18

dc5dff6Merge pull request 'fix(drm): stop pointer moves from stuttering video; decouple output, command and input streams' (#62) from refactor/output-commit-scheduling into main merge SSH Unverifiedbnema
7c51167fix(stats): time each queued command and keep stall periods in the log GPG Verifiedbrice
97393eefeat(stats): log command, routing and state commit latency every 10 s GPG Verifiedbrice
c0f82f3perf(core): reuse the outbox progress signal and skip doomed direct sends GPG Verifiedbrice
011648ffix(core): deliver SlotsPending before its spawn and bound the outbox GPG Verifiedbrice
d7dc4d5refactor(core): queue client commands in an outbox instead of blocking GPG Verifiedbrice
b5629dctest(wayland): release stalled displays before server shutdown on failure GPG Verifiedbrice
90639c0refactor(app): route scenes, cursor and captures from a dedicated goroutine GPG Verifiedbrice
9784d35refactor(wayland): forward client commands through a ring, not a display round trip GPG Verifiedbrice
89b78d7fix(drm): defer state-only commits to just before the next vblank GPG Verifiedbrice

2026-10-17

71aa990Merge pull request 'feat: drag and drop between Wayland clients' (#61) from feat/data-dnd into main merge SSH Unverifiedbnema
e05cb15fix(dnd): tie data drags to the implicit grab button and follow target moves GPG Verifiedfeat/data-dnd brice
3a8fe0cfix(wayland): validate drag grabs and finish drops like wlroots GPG Verifiedbrice
45d51dafix(core): reroute data drags on layout changes and keep swipes and switcher Escape out GPG Verifiedbrice
a976009feat(wayland): implement wl_data_device drag and drop GPG Verifiedbrice
4634bd8feat(core): route data drags to the surface under the pointer GPG Verifiedbrice
c2603dafeat(ports): add data drag and drop messages GPG Verifiedbrice

2026-10-16

458251fMerge pull request 'feat(core): keep cascade bands explicit' (#60) from feat/cascade-explicit-bands into main merge SSH Unverifiedtag v0.9.0bnema
f4b2d68fix(core): push the far-end cascade column on cycle-column-width GPG Verifiedbrice
1b76e21fix(core): leave a pushed cascade column that moved away in place GPG Verifiedbrice
d4c54abfix(core): find a pushed cascade column by its windows in order GPG Verifiedbrice
efa1a9ffix(core): restore pushed cascade columns by first window, in order GPG Verifiedbrice
0e73719fix(core): keep cascade band placement and push memory consistent GPG Verifiedbrice
a978937feat(core): keep cascade bands explicit GPG Verifiedbrice
ef6bf5dMerge pull request 'perf: cut hot-path allocations in app, overview, wayland and vulkan' (#59) from perf/hot-path-allocs into main merge SSH Unverifiedbnema
4a9b1d1test(wayland,vulkan): cover relocation tail clearing and mixed deferred frees GPG Verifiedbrice
dff8f48test(vulkan): keep one alloc of headroom in the dmabuf frame budget GPG Verifiedbrice
5d1d4d1refactor(wayland): reset the fired frame queue after the loop GPG Verifiedbrice
7898c05perf(core): filter empty named rows once and cover the named overview budget GPG Verifiedbrice
08c5e16test(perf): run the new allocation budgets in perf-check GPG Verifiedbrice

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 25

Tags 10

↑↓ moveenter openesc close