5
0
mirror of https://github.com/wailsapp/wails.git synced 2025-05-04 13:41:50 +08:00
Commit Graph

112 Commits

Author SHA1 Message Date
Lea O'Anthony
2c55110776
Improved menus.
Fixed warning on windows quit.
2024-09-17 21:19:00 +10:00
stendler
56494d8d1a
[v3] actions improvements & run actions on more branches and in forks (#3747)
* [v3] actions: run in forks and also build v3/* or v3-* branches

* [v3] actions: don't fail fast in test build actions

* [v3] actions: update actions to node20

* [v3] actions: specify cache dependency path for setup-go

to get rid of warnings
2024-09-15 07:14:22 +10:00
Etesam
b30cea0de0
[V3] fix drag n drop example not running (#3742)
* Replaced customEventProcessor with EmitEvent

* 📝 Added bug fix entry to changelog
2024-09-13 05:41:06 +10:00
Lea O'Anthony
6787ce9c40
Significant updates to mac menu items. More roles. More fixes to come. 2024-09-12 20:51:07 +10:00
Lea Anthony
ef8c886b10
Ignore internal service methods when binding (#3720)
* Ignore internal service methods when binding

* Updated changelog.md
2024-09-09 08:36:19 +10:00
Lea Anthony
1c574e79e8 [mac] events updates 2024-09-08 20:25:00 +10:00
Lea Anthony
7fafee8a6c [mac] events updates 2024-09-08 20:14:45 +10:00
Atterpac
5004aac259
[V3] Refactor linux ignore mouse events (#3721)
refactor linux ignore mouse events

changelog.md
2024-09-06 08:10:05 +10:00
DeltaLaboratory
2460b570fe
retry when shellnotifyicon fails (#3710)
* add retry mechanism for create shell notification icon

* add retry mechanism for create shell notification icon

* adjust delay and attempts

* added changelog

* Use application fatal handler instead of panic

---------

Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
2024-09-02 19:33:17 +10:00
Atterpac
e316cd0719
[V3] Plugins implemenations (#3570)
* plugin handler and lifecycle

* rebase

* remove reflect

s

* remove Config and NewPlugin from plugin template

* Remove plugin manager, generation of plugin interface

* implement http handlers for services

remove log

trim path

prefix wails/services

* update plugine example

* Misc updates

* Ported plugins to services, rewritten example

* Added fileserver

* Update OnStartup and use a context for the application

* Rename PathPrefix to Route. Create docs.

* Use service config copy. Add Name to Service Options. Improve service generation.

* Use service config copy. Add Name to Service Options. Improve service generation. Update README

* Remove rogue db

* Update changelog.md

---------

Co-authored-by: Lea O'Anthony <lea.anthony@gmail.com>
2024-09-01 17:26:22 +10:00
stendler
88c9017fdc
[v3,linux] fix: enable to run natively in wayland (#3614)
fix: enable to run natively in wayland

Incorporated from this v2 change:
https://github.com/wailsapp/wails/pull/1811
2024-08-25 21:39:22 +10:00
Windom
46dbbb3b84
[v3] Make Windows window class configurable (#3682) 2024-08-20 18:20:44 +10:00
Oleg Gulevskyy
b756bce67f
Set MacOS window levels (NSWindow) (#3674)
* set nswindow levels via mac options

* add changelog description

* update changelog to conform with others
2024-08-20 18:06:45 +10:00
bruxaodev
1ed6966cbe
Fix: Ensure Window Frame is Applied on First Call in setFrameless Function (#3691)
* fix: force update window frame

* Update changelog.md
2024-08-20 18:01:31 +10:00
bruxaodev
fbcce0b20c
[windows] Add support for click-through overlay window (#3667)
* [windows] Add support for click-through overlay window

* update changelog

* setIgnoreMouseEvents - exemple

* fix - remove unused import

* Add macOS+Linux support. Update example.

* Fix SetIgnoreMouseEvents before window created.

---------

Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
2024-08-18 20:50:22 +10:00
Atterpac
cfab21bc81
fix syso icon generation (#3675)
update changelog.md
2024-08-10 07:26:37 +10:00
Lea O'Anthony
5a61e1007f
Fix module dependencies 2024-07-30 22:10:44 +10:00
Lea O'Anthony
c88f02c5a5
Add build info tool 2024-07-30 22:03:01 +10:00
Miklos Gabor
6c7cd651da Fix systemTray.setIcon crashing on Linux (#3636) 2024-07-25 12:34:10 -05:00
Lea Anthony
f94ecaba84
Fix random crash on linux 2024-07-20 08:40:52 +10:00
Lea Anthony
d7e103de59
Fix nsis install 2024-07-16 06:25:05 +10:00
Mohamed Gharib
d5e289880f
[v3] Rename AbsolutePosition() to Position() (#3611) 2024-07-15 19:27:21 +10:00
Atterpac
62b795d472
fix resize messaging (#3606)
changelog.md
2024-07-14 16:47:18 +10:00
DeltaLaboratory
749c433ca6
feat: disable spinner in ci or non terminal (#3574)
* added nospinner flag to disable spinner in ci environment

Signed-off-by: delta <delta@deltalab.dev>

* deduplicated result message

Signed-off-by: delta <delta@deltalab.dev>

* removed flag and added terminal check

Signed-off-by: delta <delta@deltalab.dev>

* added changelog entry

Signed-off-by: delta <delta@deltalab.dev>

---------

Signed-off-by: delta <delta@deltalab.dev>
2024-07-02 18:35:39 +10:00
Travis McLane
cfe2424f4d
WindowDidMove / WindowDidResize events for Linux and Windows
* [linux] emit system specific event for theme change

Code was incorrectly emitting the `events.Common.ThemeChanged` event
instead of the OS Specific `events.Linux.SystemThemeChanged` event.
It is the reponsibility of the code in events_common_linux.go to map
it to the common variety.

* [linux] implement WindowDidMove

* [linux] implement debounce for WindowDidMove

* [example] listen for events.Common.WindowDidMove

* [windows] move WindowDidMove mapper outside of DnD guard

* WindowDidResize implementation

* windows: WindowDidResize

* chore: changelog update

* events.Common.WindowDidMove and events.Common.WindowDidResize
2024-06-30 16:11:45 -05:00
Travis McLane
45195d5bd6
linux: theme handling bugfix (#3515)
* linux: theme handling bugfix

* update changelog
2024-05-28 11:06:30 -05:00
Atterpac
940d0f1906
fix windows cross volume init (#3512)
changelog
2024-05-25 16:20:42 +10:00
Fabio Massaioli
90b7ea944d
[v3] New binding generator (#3468)
* Support variadic arguments and slice, pointer types

* Fix computation of type namespaces

* Improve comments and general formatting

* Set default values correctly for composite types

* Add templates for bindings

Additionally:
* fixes generation of tuple return type
* improves imports and namespacing in JS mode
* general cleanup of generated code

* Simplify import list construction

* Refactor type generation code

Improves support for unknown types (encoded as any) and maps (using
Typescript index signatures)

* Support slices with pointer elements

* Match encoding/json behaviour in struct parser

* Update tests and example

* Add tests for complex method signatures and json tag parsing

* Add test `function_multiple_files`

* Attempt looking up idents with missing denotation

* Update test data

* fix quoted bool field

* Test quoted booleans

* Delete old parser code

* Remove old test data

* Update bindgen flags

* Makes call by ID the default

* Add package loading code

* Add static analyser

* Temporarily ignore binding generation code

* Add complex slice expressions test

* Fix variable reference analysis

* Unwrap casts to interface types

* Complete code comments

* Refactor static analyser

* Restrict options struct usage

* Update tests

* Fix method selector sink and source processing

* Improve Set API

* Add package info collector

* Rename analyser package to analyse

* Improve template functions

* Add index file templates

* Add glue code for binding generation

* Refactor collection and rendering code

* Implement binding generator

* Implement global index generation

* Improve marshaler and alias handling

* Use package path in binding calls by name

* Implement model collection and rendering

* Fix wrong exit condition in analyser

* Fix enum rendering

* Generate shortcuts for all packages.

* Implement generator tests

* Ignore non-pointer bound types

* Treat main package specially

* Compute stats

* Plug new API into generate command

* Support all named types

* Update JS runtime

* Report dual role types

* Remove go1.22 syntax

* Fix type assertion in TS bindings

* encoding/json compliance for arrays and slices

* Ignore got files in testdata

* Cleanup type rendering mechanism

* Update JS runtime

* Implement generic models

* Add missing field in renderer initialisation

* Improve generic creation code

* Add generic model test

* Add error reporting infrastructure

* Support configurable file names

* Detect file naming collisions

* Print final error report

* New shortcut file structure + collision detection

* Update test layout and data

* Autoconfiguration for analyser tests

* Live progress reporting

* Update code comments

* Fix model doc rendering

* Simplify name resolution

* Add test for out of tree types

* Fix generic creation code

* Fix potential collisions between methods and models

* Fix generic class alias rendering

* Report model discovery in debug mode

* Add interface mode for JS

* Collect interface method comments

* Add interface methods test

* Unwrap generic instantiations in method receivers

* Fix rendering of nullable types in interface mode

* Fix rendering of class aliases

* Expose promise cancel method to typescript

* Update test data

* Update binding example

* Fix rendering of aliased quoted type params

* Move to strongly typed bindings

* Implement lightweight analyser

* Update test cases

* Update binding example

* Add complex instantiation test

* Load full dependency tree

* Rewrite collector

* Update renderer to match new collector

* Update generator to match new collector

* Update test data

* Update binding example

* Configure includes and injections by language

* Improve system path resolution

* Support rich conditions in inject/include directives

* Fix error handling in Generator.Generate

* Retrieve compiled go file paths from fileset

* Do not rely on struct info in struct flattening algorithm

* Fix doc comment for findDeclaraion

* Fix bugs in embedded field handling

* Fix bugs and comments in package collection

* Remove useless fields from ServiceInfo

* Fix empty line at the beginning of TS indexes

* Remove global index and shortcuts

* Remove generation tests for individual packages

* Enforce lower-case file names

* Update test data

* Improve error reporting

* Update binding example

* Reintroduce go1.22 syntax

* Improve relative import path computation

* Improve alias support

* Add alias test

* Update test data

* Remove no services error

* Rename global analyser test

* Add workaround and test for bug in typeutil.Map

* Update test data

* Do not split fully qualified names

* Update typeutil package and remove workaround

* Unify alias/named type handling

* Fix rendering of generic named class aliases

* Fix rendering of array types

* Minor tweaks and cleanups

* Rmove namespaced export construct

* Update test data

* Update binding example

* Break type cycles

* Fix typo in comment

* Fix creation code for cyclic types

* Fix type of variadic params in interface mode

* Update test data

* Fix bad whitespace

* Refactor type assertions inside bound methods

* Update test data

* Rename field application.Options.Bind to Services

* Rename parser package to generator

* Update binding example

* Update test data

* Update generator readme

* Add typescript test harness

* Move test output to new subfolder

* Fix code generation bugs

* Use .js extensions in TS mode imports

* Update test data

* Revert default generator output dir to frontend/bindings

* Bump runtime package version

* Update templates

* Update changelog

* Improve newline handling

---------

Co-authored-by: Andreas Bichinger <andreas.bichinger@gmail.com>
2024-05-19 20:40:44 +10:00
Atterpac
9c4b412aea
fix react template css (#3477)
changelog
2024-05-14 06:39:20 +10:00
Atterpac
71b2edc0fe
[V3-Linux] Upgrade to Webkitgtk4.1 (#3461)
* webkitgtk4.0->webkitgtk4.1

changelog

* Update mkdocs-website/docs/en/changelog.md

* Update deps in pipeline

* Update deps in pipeline

* Install 4.1 only when v3

* Install 4.1 only when v3

---------

Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
2024-05-08 18:08:14 +10:00
Mike D Pilsbury
0833a6d6d3
[v3] Correct detection of npm with acceptable version (#3458)
* Correct detection of npm with acceptable version

* Update changelog
2024-05-06 08:29:28 +10:00
Harry Fox
b384bb885b
add missing map init from application.init() (#3426)
* add missing map init from `application.init()`

* add changelog entry for #3426

---------

Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
2024-05-02 21:57:51 +10:00
abichinger
2255af1c45
[v3] Add port flag to dev command (#3429)
* Add `port` flag to dev command, ...

Add support for environment variable WAILS_VITE_PORT

* Check if port is already in use

* Update changelog

---------

Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
2024-05-02 21:48:50 +10:00
Fabio Massaioli
f55b781d86
[v3] Binding runtime fixes (#3431)
* Unmarshal arguments to appropriate type in binding calls

* Marshal multiple return values to arrays in binding calls

* Improve logging of remote method calls

* Add tests for `BoundMethod.Call`

* Fix return value if error is nil

* Update changelog

---------

Co-authored-by: Andreas Bichinger <andreas.bichinger@gmail.com>
2024-05-02 21:46:07 +10:00
Harry Fox
81aba310d0
update Taskfile.tmpl.yml to include darwin run task (#3417)
* update Taskfile.tmpl.yml to include darwin run task

* add changelog line for #3417
2024-04-23 18:19:25 +10:00
abichinger
9ca1b30da1
[v3 alpha] Fix drag-n-drop on some linux distros (#3346)
* Fix drag and drop on linux

- Move C code

* Use GTK_DEST_DEFAULT_DROP

* Update changelog

* Move C code back into `linux_cgo.go`
2024-04-15 10:05:23 -05:00
abichinger
a7208f5262
Update changelog (#3389) 2024-04-11 23:50:04 +10:00
Calle Gustafsson
675f502802
wails3 alpha windows: fix crash when systray icon is clicked without an attached window (#3271)
* Fix: #3270

removes an unnessecary check which returned a double nil wich in turned causes a crash if systray doesn't have an attached window.

* Add iconIsInFlyout method to systray_windows

and use it to determine if the icon is in the
flyout or not when positioning an attached window.

* optimize the windows systray window positioning

we only need to get the systray bounds if
the icon is in the flyout area.

* Use correct behavior for placing the window

if the systray icon is visible in the taskbar the
window should be centered on the systray icon
otherwise the icon is in a flyout are and the
window should be placed in the corner.

Added comments to explain placement logic

* consistent placing of systray menu on right vs left click

* add PR info in changelog

---------

Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
2024-03-24 17:04:40 +11:00
abichinger
db5553ec75
[linux] fix closing of custom context menu #3329 (#3330)
* [linux] fix closing of custom context menu

* Update changelog

---------

Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
2024-03-24 16:51:45 +11:00
Fabio Massaioli
45b2681dfc
[v3] Fix binding generator output and import paths (#3334)
* Fix relative import path computation

* Fix models output path

* Add option to generate bindings using bundled runtime

* Update binding example

* Fix testdata

* Update changelog

---------

Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
2024-03-22 21:18:04 +11:00
Fabio Massaioli
2b9891da2c
[v3] Update and fix runtime JS API (#3295)
* Cleanup bundled runtime entry point

* Fix JS representation of Screen struct

* Expose IsFocused method in Window interface

* Update JS window API

* Fix cleanup of WML listeners

* Bundle runtime as ES module

* Update runtime dependencies

* Update runtime types and events

* Update bundled runtime

* Update changelog

---------

Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
2024-03-20 20:30:14 +11:00
Lea Anthony
aa8e74539c Rebuild docs 2024-03-20 07:52:31 +11:00
Lea Anthony
bf3bdadd90 Update changelog 2024-03-19 21:07:14 +11:00
atterpac
75c0236a04
[v3] Fix Dev mode <defunct> processes (#3320)
* Fix appimage file sourcing

Add findGTKFiles to source webkit files for appimage generation

s

* Update refresh version to fix CPU usage

s

* update changelong
2024-03-17 14:17:21 +11:00
Josh Drake
f38532bcf5
Correctly compute 'startURL' when using a frontend development server. (#3299)
* Fix computing 'startURL' when 'FRONTEND_DEVSERVER_URL' is present.

* Respect provided URL when computing 'startURL' and 'FRONTEND_DEVSERVER_URL' is present.

* Update changelog.

* Correctly produce absolute URI in 'GetStartURL' when input is provided.
2024-03-08 18:06:14 +11:00
Fabio Massaioli
7e687750b2
[v3] Add option for showing the toolbar in fullscreen mode on macOS (#3282)
* Add option for showing the toolbar in fullscreen mode on macOS

* Add an example demonstrating the ShowToolbarWhenFullscreen option

* Update docs

* Add changelog entry

* Run go mod tidy
2024-03-02 20:10:25 +11:00
Fabio Massaioli
0c3025d695
[v3] Fix ordering of if branches in WebviewWindow.Restore method (#3279)
* Add JS Window API example

* Fix ordering of if branches in Window.Restore method

* Add changelog entry
2024-03-02 16:04:02 +11:00
5aaee9
a9c22f0588
fix: wrong baseURL if open window twice (#3273) 2024-02-29 08:47:25 +11:00
Fabio Massaioli
b8537d1c96
[v3] Restore ToggleMaximise method in Window interface (#3281)
* Add JS Window API example

* Add ToggleMaximise button to Window API example

* Restore ToggleMaximise method in Window interface

* Update docs and changelog
2024-02-29 08:42:57 +11:00
Thomas Sénéchal
23c1a7d1d8
[v3/Windows] Fix failing Windows build due to undefined options (#3208)
* Fix failing Windows build due to undefined options

* Update changelog
2024-01-18 05:33:51 +11:00
Thomas Sénéchal
44bbce125b
[V3/macos] Fix systray click handling when no attached window (#3207)
* Fix systray click handling

* Open Menu if no window is attached in defaultClickHandler()

* Remove systemTraySetMenu function

* Fix a crash in hide-window example

* Update changelog
2024-01-17 22:36:22 +11:00
ALMAS
3cd26a2220
[v3] Improve OnShutdown (#3190)
* [v3] Improve OnShutdown

* add change log
2024-01-10 23:28:15 +11:00
Lea Anthony
0974a3ad18
Use relative paths in go.mod for replace line. 2023-12-28 19:33:37 +11:00
ALMAS
e0b8da86ed
[v3] export SetIcon method (#3147)
* export `SetIcon` method

* add change log
2023-12-19 23:43:28 +11:00
ALMAS
51afac4f22
[v3/windows] Fix dpi scaling on start up (#3145)
* [v3/windows] Fix dpi scaling on start up

* add change log
2023-12-19 19:31:38 +11:00
Marcus Crane
daed4141f5
(v3/linux): Add Taskfile template entry for run:linux (#3146)
* Add Taskfile entry for run:linux, used by task dev

Signed-off-by: Marcus Crane <marcus@utf9k.net>

* Add updated CHANGELOG entry

Signed-off-by: Marcus Crane <marcus@utf9k.net>

* Correct CHANGELOG entry

---------

Signed-off-by: Marcus Crane <marcus@utf9k.net>
2023-12-19 19:29:46 +11:00
Lea Anthony
157c5e91fc
Move v3 updates into v3 changelog 2023-12-19 05:58:31 +11:00
Lea Anthony
2b3c96ab3d
Fix hex keys5 (#3140)
* [v3 darwin] change hex values for arrow keys pulled from "Key Codes" app

* Update changelog

---------

Co-authored-by: Josh <josh@nerdy.co.nz>
2023-12-18 08:54:55 +11:00
atterpac
f122db2e7b Linux Keybinds
- Adds getKeyboardState into linux_cgo to parse keypress event and transfer it into
  an accelerator for the handleKeyEvent using GDK keycodes
2023-11-06 10:49:11 -06:00
Lea Anthony
36a3e90b1d
Small doc fixes 2023-11-05 19:34:22 +11:00
Lea Anthony
857bf40072
Update parser and bindings generation
Update tests
2023-11-05 18:06:11 +11:00
Lea Anthony
f28c9515ad
Update installation instructions 2023-11-02 20:53:59 +11:00