mirror of
https://github.com/storytold/vectorcraft.git
synced 2026-10-24 09:46:59 -06:00
After the desktop save panel closes, the app adds the file type's extension to a name typed without it (or with one the save does not write). The panel asked only about the name as typed, so on Linux typing `card` with `card.vectorcraft` in the folder wrote over `card.vectorcraft` without a question. On Linux the save panel is the XDG desktop portal, and its GTK and GNOME file choosers return the name as typed. Windows and macOS add the extension themselves only when the panel lists file types, and the panels of Document Info's Save, the presets dialogs' Export…, the CSS Properties export, the swatch and graphic style library saves and the Libraries panel's export list none. When the added extension names a file that exists, Save, Save As, Save a Copy, Save as Template, the exports and the other writes through a save panel now ask "“card.vectorcraft” already exists. Replace it?" first (dialog `replaceFile`). OK runs the write again with the same answer and replaces the file. Cancel writes nothing and shows the dialog it was asked over again. The host reports whether a file exists through a new `Services::exists`. Docs: docs/control-protocol.md, docs/target-app-parity.md.