fix: Export works on desktop -- native save dialog; browser download kept for server mode - #220
Merged
Conversation
…view Every Export button's Blob + synthetic-anchor-click download was silently inert on the installed desktop build: the Wails webview supplies no download handler for a synthetic anchor click, despite downloadJSON.ts's own header comment claiming webview parity. Server mode (a real browser tab) was never affected. downloadJSON now routes by runtime: desktop calls the new SettingsService.SaveTextFile binding (a native OS save dialog, backed by Wails3's own Dialog manager) and writes the chosen path directly; server mode keeps the existing Blob + anchor path unchanged. CompositionView's separate inline copy of the same broken mechanism is retrofitted onto the shared helper instead of carrying its own fix. Also fixes lefthook.yml's golangci-lint job to pass --build-tags=server, matching ci.yml's own args -- without it the local hook lints a wider (desktop-tag) file set than CI's job ever compiles, so it can fail on pre-existing findings CI's real gate never sees. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01FW5GkkAG8du7tNdYLk2zSd
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Owner-hit on the installed build: every Export button silently no-op'd — the Wails webview has no download handler for a synthetic anchor click (the helper's own comment claimed otherwise; corrected). New
SettingsService.SaveTextFileopens the native save panel and writes the chosen path;downloadJSONroutes by the build's Server flag, so server-mode e2e (24 tests) keeps the browser path unchanged. CompositionView's inline copy retrofitted onto the shared helper. Desktop dialog is the registered manual check. Rider: lefthook's golangci-lint job gains--build-tags=serverto match CI's own flags (pre-existing drift).🤖 Generated with Claude Code
https://claude.ai/code/session_01FW5GkkAG8du7tNdYLk2zSd