* Add support to output ts models as interfaces
* Add support to generate enums from golang
* cleanup logs
* add missing documentation
* fix package names for enum. Fix processing enums that are in separate packages
* revert golang 1.21
* Fix spelling
* Add support for simplified version of Enum for typescriptify
* update docs
* removed unused logs
* Add tests. Fix imported enums types in models
---------
Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
* implement MacOS openFile/openFiles events
* wip: windows file association
* fix macro import
* add file icon copy
* try copy icon
* keep only required part of scripts
* update config schema
* fix json
* set fileAssociation for mac via config
* proper iconName handling
* add fileAssociation icon generator
* fix file association icons bundle
* don't break compatibility
* remove mimeType as not supported linux for now
* add documentation
* adjust config schema
* restore formatting
* try implement single instance lock with params passing
* fix focusing
* fix focusing
* formatting
* use channel buffer for second instance events
* handle errors
* add comment
* remove unused option in file association
* wip: linux single instance lock
* wip: linux single instance
* some experiments with making window active
* try to use unminimise
* remove unused
* try present for window
* try present for window
* fix build
* cleanup
* cleanup
* implement single instance lock on mac os
* implement proper show for windows
* proper unmimimise
* get rid of openFiles mac os. change configuration structure
* remove unused channel
* remove unused function
* add documentation for single instance lock
* add PR link
* wip mac os deeplinks
* put custom url listner on top to catch link on app opening
* put custom url listner on top to catch link on app opening
* try add custom url windows
* adjust custom url
* add docs
* merge master
* update documentation
* add comment for darwin
* add PR link
* change naming
* change naming
* change naming
* change naming
* fix formatting
* fix naming
* Fix typo
---------
Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
* implement MacOS openFile/openFiles events
* wip: windows file association
* fix macro import
* add file icon copy
* try copy icon
* keep only required part of scripts
* update config schema
* fix json
* set fileAssociation for mac via config
* proper iconName handling
* add fileAssociation icon generator
* fix file association icons bundle
* don't break compatibility
* remove mimeType as not supported linux for now
* add documentation
* adjust config schema
* restore formatting
* try implement single instance lock with params passing
* fix focusing
* fix focusing
* formatting
* use channel buffer for second instance events
* handle errors
* add comment
* remove unused option in file association
* wip: linux single instance lock
* wip: linux single instance
* some experiments with making window active
* try to use unminimise
* remove unused
* try present for window
* try present for window
* fix build
* cleanup
* cleanup
* implement single instance lock on mac os
* implement proper show for windows
* proper unmimimise
* get rid of openFiles mac os. change configuration structure
* remove unused channel
* remove unused function
* add documentation for single instance lock
* add PR link
* changes after review
* update docs
* changes after review
---------
Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
This implements the golangci-lint workflow to new PRs.
It includes a limited number of enabled linters including:
- errcheck
- errname
- gofmt
- gofumpt
- gosimple
- misspell
Signed-off-by: mikeee <hey@mike.ee>
Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
* add french readme to the projet
* add french link to the other readme
* fix some typo in the table of contents
* fix markdown auto correct
* added change in changelog.mdx
---------
Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
* [v2] Support Enabling/Disabling swipe gestures
* [v2] Update change log
* [v2] Remove old call to PutIsSwipeNavigationEnabled
* Use latest webview2
* Update go-webview2 mod version
* Describe a guide to build an app for all platforms in github actions
* Update changelog, remove tabs from an added guide
---------
Co-authored-by: Denis <denis@Deniss-Mac-mini.fritz.box>
* remove random print statement
* move watcher into loop and implement reloaddirs
* Fixed -reloaddirs for issue #2829
---------
Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
* Init GTK in `NewFrontend`, not `init`
So apps that have a headless / non-gui mode will be able to run, since
they needn't call `NewFrontend` (which is called by `CreateApp`).
Previously, `init` would call `C.gtk_init` regardless of whether
CreateApp was called.
Also change to call `C.gtk_init_check` with a panic, instead of
`C.gtk_init`, since `gtk_init` just exits the process if it fails,
without a sensible error message.
Fixes#2628.
* Update changelog
* [assetserver, darwin] Fix copying request headers by using strdup
* [assetserver, linux] Fake some basic http headers for legacy webkit2 versions to support proxying requests to other servers
This fixes the devserver on v2 for newer vite versions that use the custom
scheme.
* [v2, windows] 304 responses are going to hang the WebView2 so prevent them by removing cache related headers in the request.
* [v2, dev] Now uses the custom schemes `wails://` on macOS and Linux for all Vite versions.
Prevent missing reload after fast multiple savings on Linux and Windows.
* [v2, darwin] Add "Hide, Hide Others, Show All“ to appmenu
This also includes shortcuts support for those commands.
Arrange the menu items in the well known MacOS order.
* [v2, darwin] Add Window menu with well known shortcuts Minimize, Full-Screen and Zoom.
This fixes some long-standing inconsistencies between
dev mode builds and production builds but is a breaking
change. Dev mode uses custom scheme for Vite versions >= 3.0.0
and for older it still behaves in the old way.
* Use json.Marshal instead of strconv.Quote to correctly support unicode
* Add fix to changelog
---------
Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
* v3 parser: add tests for model generation
* v3 parser: use single quotes for got model.ts
* v3 parser: fixes for some failing tests
* v3 parser: misc simplification and cleanup
* v3 parser: fix model tests when no structs returned
* v3 parser: fix last failing test case
* Update contributors list
* v3 parser: update README
* Revert "Update contributors list"
This reverts commit f429d2ba89.
* Changelog: add line about my contribution
* [runtime] Make it possible to restore old drag behaviour on windows with window.wails.flags.deferDragToMouseMove
* [runtime] Use deferDragToMouseMove as new default
This enhanced version should work well in all cases for Windows:
- No lag/delayed start of dragging
- Double-Clicks and Single-Click events still work in JavaScript on elements
* [docs] Add changelog
The old error handling fails on WebView2Runtimes > 110.0.1587.69 and
will show a "connection refused" page and reloads after a short time.
After the reload everything worked as expected again.
* The outputFile was only being set for darwin universal builds. I moved the
variable assignment to a location where it will take place for all builds.
The ProjectData entries are used in generating the .app plist file, so
setting them here ensures that the app will run with the custom binary name.
* Increases the reach of the output flag.
* Updates the changelog with a record of this fix.
This removes the sometime lagging experience when
starting to drag on Windows. But it's still possible to use
double-click events for adding e.g. a WindowToggleMaximise.
This will show a message on the console
"+[CATransaction synchronize] called within transaction"
but there's seem no way to mitigate that. Still everything
works as expected.
* [assets] Improve error message if no `index.html` could be found in the assets
* [assetoptions] Valide options that at least one property has been set
* [assetserver] Move defaultHTML handling for 404 from assethandler to assetserver
* [assetserver] Add support for serving the index.html file when requesting a directory
* [docs] Update changelog
* add tspostfix and tsprefix flags + organise under struct
* postifx -> suffix
* tsPrefix options on bindings struct
* pass prefix and suffix to the executable
* add support for CLI flags for generating module
* method to set TSpref/suff to bindings
* use passed ts prefix for typescriptify
* add brief Readme udpate to include new flags
* create reusable common flags
* use common flags instead of hardcoded text
* support tsprefix & suffix for dev
* add tsPrefix & tsSuffix for build cmd
* take pref & suff in account when gen d.ts
* export colorsful log functions into utils for reuse
* detect and warn the user about usage of reserved keyword
* fmt
* add TrimSpace on fn input
* refactor utils -> logutils
* add bindings -> ts_generation options to wailsjson parse
* use wailsjson for ts generation
* update warning message + extract to func
* remove suff/pref info from readme
* update json schema
* add tests for prefix and suffix case
* rename suffix method
* Update v2/internal/typescriptify/typescriptify.go
Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
* Update website/static/schemas/config.v2.json
Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
* Update website/static/schemas/config.v2.json
Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
* update changelog
* Minor tweaks
Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
* feat(website): add translation progress
* feat(website): add French and Portuguese to language list
Co-authored-by: Lea Anthony <lea.anthony@gmail.com>