openpencil/crates
Kayshen-X 439ba56f89 fix(desktop): make window close work on linux desktops without zenity
rfd's xdg-portal backend implements message dialogs by shelling out to
zenity, so on zenity-less desktops (e.g. KDE Plasma) every prompt
silently resolved to Cancel — most visibly the unsaved-changes prompt
swallowed the window close and the app could only be exited via kill.

Route all message dialogs through a new message_dialog wrapper: on
linux it probes zenity then kdialog once per process and drives the
tool directly so a runtime failure is detectable, and every call site
applies an explicit safe fallback (the close path saves and proceeds
instead of aborting) when no answer could be obtained. macOS and
Windows keep the stock rfd native dialogs.

Fixes #197
2026-08-04 21:09:35 +08:00
..
op-acp
op-ai
op-ai-skills feat(ai): give the planning corpus a presentation-deck tier 2026-08-02 11:02:33 +08:00
op-auth-bridge fix(panels): scroll the template grid on trackpad, and lay the deck out 2026-08-02 21:21:13 +08:00
op-cli chore(rust): align workspace checks 2026-08-01 16:19:26 +08:00
op-codegen
op-collab chore(rust): align workspace checks 2026-08-01 16:19:26 +08:00
op-collab-policy-file fix(collab): harden p2p collaboration against resource exhaustion 2026-08-01 09:48:23 +08:00
op-collab-relay-client fix(collab): close review follow-ups and align the reauth budget test 2026-08-01 11:42:10 +08:00
op-collab-relay-control-plane refactor(collab): split the control-plane pairing wire tests 2026-08-03 21:05:11 +08:00
op-collab-relay-locator-hsm feat(collab): add isolated PKCS11 locator signer 2026-08-01 16:35:59 +08:00
op-collab-relay-locator-server feat(collab): replace public invites with 10-char region-tagged pairing codes 2026-08-02 08:31:13 +08:00
op-collab-relay-protocol feat(collab): replace public invites with 10-char region-tagged pairing codes 2026-08-02 08:31:13 +08:00
op-collab-relay-server feat(collab): minimize the relay credential and confirm the owner on LAN 2026-08-01 14:24:46 +08:00
op-collab-smoke feat(collab): allow cross-account collaboration 2026-08-01 13:01:24 +08:00
op-collab-transport fix(collab): close a gesture whose release never arrives 2026-08-03 21:15:32 +08:00
op-config-store
op-design-lint fix(agent): repair text that is invisible against its own background 2026-08-02 21:21:13 +08:00
op-editor-core feat(editor): export a deck as a self-contained slideshow html file 2026-08-03 21:30:06 +08:00
op-editor-host-core
op-editor-ui feat(editor): export a deck as a self-contained slideshow html file 2026-08-03 21:30:06 +08:00
op-figma
op-git
op-host-desktop fix(desktop): make window close work on linux desktops without zenity 2026-08-04 21:09:35 +08:00
op-host-native feat(editor): export a deck as a self-contained slideshow html file 2026-08-03 21:30:06 +08:00
op-host-services feat(editor): export a deck as a self-contained slideshow html file 2026-08-03 21:30:06 +08:00
op-host-web feat(editor): export a deck as a self-contained slideshow html file 2026-08-03 21:30:06 +08:00
op-host-web-server
op-html
op-i18n feat(editor): export a deck as a self-contained slideshow html file 2026-08-03 21:30:06 +08:00
op-mcp fix(mcp): tolerate a trailing separator on a program DSL line 2026-07-31 21:00:50 +08:00
op-opmerge
op-orchestrator fix(canvas): attach frame-name labels to the frames they name 2026-08-02 23:43:33 +08:00
op-pen-loader feat(editor): record what a document is for as a scenario tag 2026-08-02 23:44:20 +08:00
op-process-io
op-rpc-transport fix(mcp): authenticate the live endpoint and degrade the bootstrap cache 2026-08-01 12:23:09 +08:00
op-smoke feat(agent): add a fixed-input modify mode to the smoke harness 2026-07-31 21:06:35 +08:00
op-util
op-web-sdk
CLAUDE.md