A stopped display manager left the box unable to switch sessions, and a translated KWin refusal burned all 8 retries #331

Merged
enricobuehler merged 3 commits from worktree-kwin-vout-failed-permanent into main 2026-08-19 12:33:24 +00:00
3 Commits
Author SHA1 Message Date
enricobuehler b6ca692c13 docs(abi): ex11's summary still stated the pre-2026-08-16 rule its own warning corrects — a format at all sets the hi-res cap
ci / web (pull_request) Successful in 1m53s
ci / rust-arm64 (pull_request) Successful in 2m19s
apple / swift (pull_request) Successful in 2m12s
apple / distribute (pull_request) Skipped
apple / screenshots (pull_request) Skipped
ci / bun-nix (pull_request) Successful in 25s
ci / docs-site (pull_request) Successful in 1m20s
android / android (pull_request) Successful in 5m46s
ci / rust (pull_request) Successful in 6m41s
windows-client / client (arm64, --no-default-features, aarch64-pc-windows-msvc, C:\t-a64) (pull_request) Successful in 2m52s
windows-client / client (x64, , x86_64-pc-windows-msvc, C:\t) (pull_request) Successful in 6m49s
2026-08-19 11:54:45 +02:00
enricobuehler a75ed71428 docs(kde): name the 6.6 change behind the KWin virtual-output failure — the output must now be enabled, not just created 2026-08-19 09:01:12 +02:00
enricobuehler b551f7dae8 fix(host): a translated KWin refusal burned all 8 retries — match our own prefix, not KWin's message
KWin sends the `failed` reason on zkde_screencast localized. The retry
short-circuit matched the English "could not find output", so a pt-BR session
("Não foi possível encontrar saída") fell through to 8 attempts over ~11 s and
then reported "out of retries" — a config fact dressed up as a flaky one.

Match "KWin virtual output failed" instead: our own prefix, never translated.
Every `failed` KWin sends on this path is a backend/config fact (unsupported
compositing type, a backend without createVirtualOutput, an output the
workspace declined to enable), none of which a retry 500 ms later changes.

The message itself now says what KWin's untranslatable reason means, and the
KDE docs gain the KWin 6.6+ shape of it: KWin creates the output, leaves it
disabled, and workspace()->findOutput() returns null — reported identically to
a backend that cannot create one at all.
2026-08-19 08:54:02 +02:00