Changelog#
[Unreleased]#
Added#
- Events documentation to the mkdocs webite by atterpac in #3867
- Templates for sveltekit and sveltekit-ts that are set for non-SSR development by atterpac in #3829
- Update build assets using new
wails3 update build-assets
command by leaanthony - Example to test the HTML Drag and Drop API by FerroO2000 in #3856
- File Association support by leaanthony in #3873
- New
wails3 generate runtime
command by leaanthony - New
InitialPosition
option to specify if the window should be centered or positioned at the given X/Y location by leaanthony in #3885 - Add
Path
&Paths
methods toapplication
package by ansxuman and leaanthony in #3823 - Added
GeneralAutofillEnabled
andPasswordAutosaveEnabled
Windows options by leaanthony in #3766 - Added the ability to retrieve the window calling a service method by leaanthony in #3888
Changed#
- Asset embed to include
all:frontend/dist
to support frameworks that generate subfolders by @atterpac in #3887 - Taskfile refactor by leaanthony in #3748
- Upgrade to
go-webview2
v1.0.16 by leaanthony - Fixed
Screen
type to includeID
notId
by etesam913 in #3778 - Update
go.mod.tmpl
wails version to supportapplication.ServiceOptions
by northes in #3836 - Fixed service name determination by windom in #3827
- mkdocs serve now uses docker by leaanthony
- Consolidated dev config into
config.yml
by leaanthony
Fixed#
- Fixed Linux systray
OnClick
andOnRightClick
implementation by @atterpac in #3886 - Fixed
AlwaysOnTop
not working on Mac by leaanthony in #3841 - [darwin] Fixed
application.NewEditMenu
including a duplicatePasteAndMatchStyle
role in the edit menu on Darwin by johnmccabe in #3839 - [linux] Fixed aarch64 compilation #3840 in #3854 by kodflow
v3.0.0-alpha.7 - 2024-09-18#
Added#
- [windows] New DIP system for Enhanced High DPI Monitor Support by mmghv in #3665
- [windows] Window class name option by windom in #3682
- Services have been expanded to provide plugin functionality. By atterpac and leaanthony in #3570
Changed#
- Events API change:
On
/Emit
-> user events,OnApplicationEvent
-> Application EventsOnWindowEvent
-> Window Events, by leaanthony - Fix for Events API on Linux by TheGB0077 in #3734
- [CI] improvements to actions & enable to run actions also in forks and branches prefixed with
v3/
orv3-
by stendler in #3747
Fixed#
- Fixed bug with usage of customEventProcessor in drag-n-drop example by etesam913 in #3742
- [linux] Fixed linux compile error introduced by IgnoreMouseEvents addition by atterpac in #3721
- [windows] Fixed syso icon file generation bug by atterpac in #3675
- [linux] Fix to run natively in wayland incorporated from #1811 in #3614 by @stendler
- Do not bind internal service methods in #3720 by leaanthony
- [windows] Fixed system tray startup panic in #3693 by @DeltaLaboratory
- Do not bind internal service methods in #3720 by leaanthony
- [windows] Fixed system tray startup panic in #3693 by @DeltaLaboratory
- Major menu item refactor and event handling. Mainly improves macOS for now. By leaanthony
- Fix tests after plugins and event refactor in #3746 by @stendler
- [windows] Fixed
Failed to unregister class Chrome_WidgetWin_0
warning. By leaanthony
v3.0.0-alpha.6 - 2024-07-30#
Fixed#
- Module issues
v3.0.0-alpha.5 - 2024-07-30#
Added#
- [linux] WindowDidMove / WindowDidResize events in #3580
- [windows] WindowDidResize event in (https://github.com/wailsapp/wails/pull/3580)
- [darwin] add Event ApplicationShouldHandleReopen to be able to handle dock icon click by @5aaee9 in #2991
- [darwin] add getPrimaryScreen/getScreens to impl by @tmclane in #2618
- [darwin] add option for showing the toolbar in fullscreen mode on macOS by @fbbdev in #3282
- [linux] add onKeyPress logic to convert linux keypress into an accelerator @Atterpac in#3022
- [linux] add task
run:linux
by @marcus-crane in #3146 - Export
SetIcon
method by @almas1992 in PR - Improve
OnShutdown
by @almas1992 in PR - Restore
ToggleMaximise
method inWindow
interface by @fbbdev in #3281 - Added more information to
Environment()
. By @leaanthony in aba82cc based on PR by @Mai-Lapyst - Expose the
WebviewWindow.IsFocused
method on theWindow
interface by @fbbdev in #3295 - Support multiple space-separated trigger events in the WML system by @fbbdev in #3295
- Add ESM exports from the bundled JS runtime script by @fbbdev in #3295
- Add binding generator flag for using the bundled JS runtime script instead of the npm package by @fbbdev in #3334
- Implement
setIcon
on linux by @abichinger in #3354 - Add flag
-port
to dev command and support environment variableWAILS_VITE_PORT
by @abichinger in #3429 - Add tests for bound method calls by @abichinger in #3431
- [windows] add
SetIgnoreMouseEvents
for already created window by @bruxaodev in #3667 - [darwin] Add ability to set a window's stacking level (order) by @OlegGulevskyy in #3674
Fixed#
- Fixed resize event messaging by atterpac in #3606
- [linux] Fixed theme handling error on NixOS by tmclane in [#3515)(https://github.com/wailsapp/wails/pull/3515)
- Fixed cross volume project install for windows by atterpac in #3512
- Fixed react template css to show footer by atterpac in #3477
- Fixed zombie processes when working in devmode by updating to latest refresh by Atterpac in #3320.
- Fixed appimage webkit file sourcing by Atterpac in #3306.
- Fixed Doctor apt package verify by Atterpac in #2972.
- Fixed application frozen when quit (Darwin) by @5aaee9 in #2982
- Fixed background colours of examples on Windows by mmghv in #2750.
- Fixed default context menus by mmghv in #2753.
- Fixed hex values for arrow keys on Darwin by jaybeecave in #3052.
- Set drag-n-drop for windows to working. Added by @pylotlight in PR
- Fixed bug for linux in doctor in the event user doesn't have proper drivers installed. Added by @pylotlight in PR
- Fix dpi scaling on start up (windows). Changed by @almas1992 in PR
- Fix replace line in
go.mod
to use relative paths. Fixes Windows paths with spaces - @leaanthony. - Fix MacOS systray click handling when no attached window by thomas-senechal in PR #3207
- Fix failing Windows build due to unknown option by thomas-senechal in PR #3208
- Fix crash on windows left clicking the systray icon when not having an attached window tw1nk in PR #3271
- Fix wrong baseURL when open window twice by @5aaee9 in PR #3273
- Fix ordering of if branches in
WebviewWindow.Restore
method by @fbbdev in #3279 - Correctly compute
startURL
across multipleGetStartURL
invocations whenFRONTEND_DEVSERVER_URL
is present. #3299 - Fix the JS type of the
Screen
struct to match its Go counterpart by @fbbdev in #3295 - Fix the
WML.Reload
method to ensure proper cleanup of registered event listeners by @fbbdev in #3295 - Fix custom context menu closing immediately on linux by @abichinger in #3330
- Fix the output path and extension of model files produced by the binding generator by @fbbdev in #3334
- Fix the import paths of model files in JS code produced by the binding generator by @fbbdev in #3334
- Fix drag-n-drop on some linux distros by @abichinger in #3346
- Fix missing task for macOS when using
wails3 task dev
by @hfoxy in #3417 - Fix registering events causing a nil map assignment by @hfoxy in #3426
- Fix unmarshaling of bound method parameters by @fbbdev in #3431
- Fix handling of multiple return values from bound methods by @fbbdev in #3431
- Fix doctor detection of npm that is not installed with system package manager by @pekim in #3458
- Fix missing MicrosoftEdgeWebview2Setup.exe. Thanks to @robin-samuel.
- Fix random crash on linux due to window ID handling by @leaanthony. Based on PR #3466 by @5aaee9.
- Fix systemTray.setIcon crashing on Linux by @windom in #3636.
- Fix Ensure Window Frame is Applied on First Call in
setFrameless
Function on Windows by @bruxaodev in #3691.
Changed#
- Renamed
AbsolutePosition()
toPosition()
by mmghv in #3611 - Update linux webkit dependency to webkit2gtk-4.1 over webkitgtk2-4.0 to support Ubuntu 24.04 LTS by atterpac in #3461
- The bundled JS runtime script is now an ESM module: script tags importing it must have the
type="module"
attribute. By @fbbdev in #3295 - The
@wailsio/runtime
package does not publish its API on thewindow.wails
object, and does not start the WML system. This has been done to improve encapsulation. The WML system can be started manually if desired by calling the newWML.Enable
method. The bundled JS runtime script still performs both operations automatically. By @fbbdev in #3295 - The Window API module
@wailsio/runtime/src/window
now exposes the containing window object as a default export. It is not possible anymore to import individual methods through ESM named or namespace import syntax. - The JS window API has been updated to match the current Go
WebviewWindow
API. Some methods have changed name or prototype, specifically:Screen
becomesGetScreen
;GetZoomLevel
/SetZoomLevel
becomeGetZoom
/SetZoom
;GetZoom
,Width
andHeight
now return values directly instead of wrapping them within objects. By @fbbdev in #3295 - The binding generator now uses calls by ID by default. The
-id
CLI option has been removed. Use the-names
CLI option to switch back to calls by name. By @fbbdev in #3468 - New binding code layout: output files were previously organised in folders named after their containing package; now full Go import paths are used, including the module path. By @fbbdev in #3468
- The struct field
application.Options.Bind
has been renamed toapplication.Options.Services
. By @fbbdev in #3468 - New syntax for binding services: service instances must now be wrapped in a call to
application.NewService
. By @fbbdev in #3468 - Disable spinner on Non-Terminal or CI Environment by @DeltaLaboratory in #3574