mirror of
https://github.com/storytold/wordcraft.git
synced 2026-10-13 15:09:10 +00:00
* Open Word documents with WordCraft from the system (#295) Register WordCraft for Word, RTF and ODT files on Windows and Linux without taking over anyone's defaults, and add File > Options > General > "Make WordCraft the default for Word documents..." where the system allows it. - Windows MSI: a ProgId per type (.docx .docm .dotx .dotm .doc .dot .rtf .odt, plus .md and .txt as Open With candidates only) with the app icon and `"wordcraft.exe" "%1"`, OpenWithProgids, Applications\wordcraft.exe SupportedTypes, and Capabilities + RegisteredApplications so WordCraft shows in Settings > Default apps. New component with its own GUID. - Linux: the desktop entry declares the macro-enabled, template and legacy Word types and text/rtf; AppStream lists the media types. deb, rpm, AppImage and both Flatpak manifests use this same file. - macOS: Info.plist also lists legacy .doc. - The Options button runs `ui.makeDefaultApp` through a new Services::make_default_app hook: Windows opens ms-settings:defaultapps on WordCraft's page; Linux and BSD run `xdg-mime default ai.storyteller.wordcraft.desktop <types>` (refused inside Flatpak or without an installed desktop entry); macOS shows the Finder Get Info hint; the web shows nothing. The status bar reports the outcome. Strings translated in every catalog. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Review fixes for #304: keep Make default out of programmatic dispatch ui.makeDefaultApp is refused when run programmatically (control channel, MCP, macros, scripts); only a click on File > Options > General > Make WordCraft the default… reaches the host's hook, so no agent can change the user's system default apps or open system settings. Test: programmatic_calls_cannot_change_the_default_apps. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Default-app strings in the newer catalogs; the button's test looks for a General-pane label --------- Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Brandon Thomas <echelon@gmail.com>