Wails v3 Alpha Release - v3.0.0-alpha.91
Changed
- Update sponsors SVG in PR by @github-actions[bot]
- BREAKING (macOS): Normalise the macOS coordinate system so
GetScreens,Position, andSetPositionall use the same space — logical points, Y-down, with(0,0)at the top-left of the primary screen. This matches Windows, GTK and the public APIs of Electron and the web. Screens physically above the primary now report negativeBounds.Y(previously positive), andPosition()/SetPosition()values are now in logical points instead ofpoints × primaryScale. Round-trippingPosition()→SetPosition()is preserved; absolute values logged from earlier alpha builds or hand-computed workarounds (e.g. multiplying byprimaryScaleor flipping Y against a screen height) will need to be updated. Resolves #5117.
Fixed
- Defensively validate DBus signal name and body length to prevent panics in PR by @leaanthony
- Fix memory safety issue in GTK menu handling on Linux in PR by @leaanthony
- Detect NVIDIA GPUs and disable DMA-BUF renderer on Linux in PR by @leaanthony
- Fix
SetPositioncross-screen Y conversion on macOS: use primary screen height as global reference so windows land at the correct position on monitors that are vertically offset from the primary display in #5117 - Fix git PR template to point to the correct feedback URL in PR by @wayneforrest
- Fix a family of Windows systray
SetMenucrashes caused by a brokenDestroyMenusyscall that was passing four arguments instead of one, so every call returned FALSE and freed nothing. Also release HMENU and HBITMAP handles (including those allocated at runtime viaMenuItem.SetBitmap) on menu rebuilds, reset stale checkbox/radio maps inWin32Menu.Update, and drop a redundantUpdate()call insystemtray.updateMenuthat doubled allocations. Long-running systray apps no longer leak GDI/USER objects on each menu rebuild.
🤖 This is an automated nightly release generated from the latest changes on master.
Installation:
go install github.com/wailsapp/wails/v3/cmd/wails3@v3.0.0-alpha.91⚠️ Alpha Warning: This is pre-release software and may contain bugs or incomplete features.