Files
effectcraft/crates
vangel76 e7047d92e6 File dialogs: a dialog that can't be created is an error, not a crash (#3084)
On macOS rfd makes its panel with +[NSOpenPanel openPanel], and objc2's binding
panics when AppKit returns nil. The commands' dialogs open at the end of the
frame, outside the engine's command guard, so the panic unwound into winit's
AppKit callback and the app quit.

Every rfd call in the desktop app now goes through file_dialogs::guarded: on the
main thread only, with a panic while the dialog is made turned into an error.
The commands' dialogs answer DialogDone with Err and the status line says why;
the panels' blocking pickers count as cancelled and report through the status
line too.
2026-11-08 15:25:06 +01:00
..