Skip to content

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 to application package by ansxuman and leaanthony in #3823
  • Added GeneralAutofillEnabled and PasswordAutosaveEnabled 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 include ID not Id by etesam913 in #3778
  • Update go.mod.tmpl wails version to support application.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 and OnRightClick implementation by @atterpac in #3886
  • Fixed AlwaysOnTop not working on Mac by leaanthony in #3841
  • [darwin] Fixed application.NewEditMenu including a duplicate PasteAndMatchStyle 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 Events OnWindowEvent -> 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/ or v3- 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 in Window 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 the Window 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 variable WAILS_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 multiple GetStartURL invocations when FRONTEND_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() to Position() 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 the window.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 new WML.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 becomes GetScreen; GetZoomLevel/SetZoomLevel become GetZoom/SetZoom; GetZoom, Width and Height 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 to application.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

Removed#

Deprecated#

Security#