v1.0.6
Changes
fix: interface not resizing to fill window on linux maximize -
@TRC-Loop in #51
Reported on Fedora: maximizing the Pelton window leaves blank space along the right and bottom edges, as if the interface rendered at the pre-maximize size and never grew to fill the new window bounds. Reproduced regardless of the interface scale setting (100% or otherwise), so it's not specific to the custom css zoom value - it's the underlying layout not recomputing at all against the new window size.
This matches a documented WebKitGTK quirk: a window-manager-driven resize (maximize), as opposed to a user manually dragging an edge, doesn't reliably make the webview recompute layout against the new viewport size.
Fix: reapply the current interface scale (which resets the root's css zoom, forcing a relayout) whenever a resize is detected, via both a window resize listener and a ResizeObserver on the document root (redundant on purpose, since it's unclear which signal reliably fires for a WM-driven maximize on WebKitGTK - either one firing is enough). Debounced via requestAnimationFrame. No-op-looking but effective; harmless on macOS/Windows where resize already reflows correctly on its own.
fix: linux menu-rebuild-on-language-change crashes the app -
@TRC-Loop in #50
Reported on Fedora 44: after going through onboarding (which picks a language, even just confirming the default), every subsequent native menu click - including "Add Mailbox" - crashed the whole app:
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x28 pc=0xf4a320]
github.com/wailsapp/wails/v2/internal/frontend/desktop/linux.handleMenuItemClick(...)
.../wails/v2@v2.13.0/internal/frontend/desktop/linux/gtk.go:53
Root cause: App.RebuildMenu() (added for menu localization, #45) calls wails runtime.MenuSetApplicationMenu whenever the language setting changes, to update the native menu without a restart. On Linux, wails' GTK menu implementation doesn't cleanly replace the previous native menu's click-handler wiring (gtkSignalToMenuItem) when swapping in a new tree - once that's poisoned, every subsequent menu click nil-derefs inside wails' own code, not just the one that triggered the rebuild. Since a language change (even confirming the default during onboarding) happens near the very start of a session, this effectively broke the entire native menu for the rest of the session on Linux.
Fix: skip the live rebuild on Linux specifically (goruntime.GOOS == "linux"). buildMenu() already reads the persisted language fresh on every call, so the menu still comes up correctly translated on the next launch - it just doesn't live-update mid-session on Linux, which is a far better tradeoff than crashing. macOS and Windows are unaffected and keep the live update.
Full Changelog: v1.0.5...v1.0.6