* [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
* 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>
* [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
* 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>
* 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>
* 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>
* 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>
* 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>
* Fix appimage file sourcing
Add findGTKFiles to source webkit files for appimage generation
s
* Update refresh version to fix CPU usage
s
* update changelong
* 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.
* 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
* Add JS Window API example
* Add ToggleMaximise button to Window API example
* Restore ToggleMaximise method in Window interface
* Update docs and changelog
* 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
* 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>