5
0
mirror of https://github.com/wailsapp/wails.git synced 2025-05-03 21:30:39 +08:00
Commit Graph

384 Commits

Author SHA1 Message Date
Andrey Pshenkin
b9de31e38e
Add support for interface generation and enums (#3047)
* 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>
2023-11-26 06:50:49 +11:00
Lea Anthony
9ce0ddb4f8 [chore] lint fixes 2023-11-12 12:30:49 +11:00
Denis Bernard
08e12de2a0
linux: workaround for #2977 (#3027)
In NewWindow, set options.Linux.WebviewGpuPolicy to WebviewGpuPolicyNever
if options.Linux is nil, disabling GPU acceleration by default on linux
until the upstream bugs https://bugs.webkit.org/show_bug.cgi?id=228268
and https://bugs.webkit.org/show_bug.cgi?id=261874 are fixed.
2023-11-04 18:03:12 +11:00
Andrey Pshenkin
ae688aa07d
Implement custom protocol association support (#3000)
* 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>
2023-11-02 20:26:05 +11:00
Andrey Pshenkin
c24bd5e3e8
Implement Single instance lock feature with passing arguments to initial instance (#2951)
* 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>
2023-10-23 21:31:56 +11:00
stffabi
30d17a760d
[assetserver] Inject runtime/IPC into all index html files (#2203)
It will also be injected into all html files returned when requesting a folder path.
2023-10-23 20:35:18 +11:00
Andrey Pshenkin
6c46f6b41c
Implement file association Open a file from Finder/Explorer (#2918)
* 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

* remove unused option in file association

* get rid of openFiles mac os. change configuration structure

* remove unused channel

* fix documentation

* fix typo

---------

Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
2023-10-22 06:44:38 +11:00
Fadi Khadra
f6c82dcaba
[v2 mac] add fullscreen option to preference (#2953)
* [v2 mac] add fullscreen option to preference

* update changelog

* replace space by tabs
2023-10-02 07:05:25 +11:00
Mohamed Gharib
3f9067c815
[v2] Devtools tag doesn't enable default context-menu (#2923)
* Devtools tag doesn't enable default context-menu

* Update changelog
2023-09-26 07:43:18 +10:00
Fadi Khadra
05eddc65b1
[v2 mac] Allow to specify webview preferences (#2937)
* [mac] allow to specify webview preferences
2023-09-25 08:15:55 +10:00
stffabi
e9519269ca
[v2] Bump go-webview2 to 1.0.7 (#2929) 2023-09-21 06:43:28 +10:00
stffabi
d370f72ede
[v2, windows] Support async request processing on AssetServer (#2926) 2023-09-20 19:28:18 +02:00
Lea Anthony
3369327ad2
[v2] Support Enabling/Disabling swipe gestures (#2878)
* [v2] Support Enabling/Disabling swipe gestures

* [v2] Update change log

* [v2] Remove old call to PutIsSwipeNavigationEnabled

* Use latest webview2

* Update go-webview2 mod version
2023-09-20 08:23:38 +10:00
Lea Anthony
6aa6762f12
Devtools hotkey (#2915)
* Add Ctrl/Cmd+Shift+F12 Hotkey to open devtools when `-devtools` flag used.
2023-09-19 05:56:14 +10:00
Lea Anthony
acf8dea170
[chore] Big tidy up. Fix bullet point output. 2023-09-06 19:27:29 +10:00
Andreas Christou
886bcc7b47
Add print functionality to v2 (#2822)
* Add print functionality to v2

* Update changelog

* Update runtime docs

---------

Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
2023-09-06 07:55:36 +10:00
Nobleman
4ad4d7c7e3
postbuild hook fix (#2839)
postbuildhook should only run if application was built
2023-08-29 18:47:14 +10:00
Nobleman
93a616ceef
[bugfix] build hook command parsing (#2836)
* fix build hook command parsing

use `shlex`, rather than `strings` package, to split build command

* fix compiler error
2023-08-28 08:50:13 +10:00
Zámbó, Levente
e72e4aa179
add new programName option to linux options (#2817)
* add new programName option to linux options

* modify changelog

* free program name string
2023-08-10 07:48:09 +10:00
guangwu
150dac9ead
chore: slice replace loop (#2757)
Signed-off-by: guoguangwu <guoguangwu@magic-shield.com>
2023-07-13 23:13:47 +10:00
Ethan Reesor
22cfcbd5a1
Override error formatting (#2717) 2023-07-13 20:40:22 +10:00
Lea Anthony
61f7b10f36
[v2 templates] Add explicit style import (#2721)
* [v2 templates] Add explicit style import

* [v2] Remove style import
2023-07-10 21:27:41 +02:00
stffabi
8fd16d4be3
[assetServer] Make WebView request URL and RequestURI RFC and Go docs compliant (#2722)
* [v2 dev] Improve logging of external AssetHandler

* [assetServer] Make WebView request URL and RequestURI RFC and Go docs conforme
2023-06-20 08:06:42 +02:00
Mohamed Gharib
4162f097f1
[v2, options] Add EnableDefaultContextMenu option (#2733)
* [v2, options] Add EnableDefaultContextMenu option

* Update changelog & docs

* go mod tidy (./v2)

---------

Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
2023-06-20 06:31:47 +10:00
Mohamed Gharib
fa851f29c5
[v2] Add -devtools production build flag (#2725)
* [v2] Add devtools production build flag

* Update changelog

* Fix changelog spacing

---------

Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
2023-06-19 06:45:01 +10:00
5aaee9
6d857bf61a
windows/nsis: add hidpi support for nsis installer (#2694)
* feat(windows/nsis): add hidpi support for nsis installer

* website: add changelog
2023-06-04 07:26:24 +10:00
stffabi
496461920f
[v2] DevServer improvements and fixes (#2664)
* [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.
2023-05-16 09:35:48 +02:00
stffabi
3853d2d1bf
[v2, windows] Handle webview2 process crashes and add DisableWebViewRendererCodeIntegrity flag (#2627)
* Add flag to disable webview RendererCodeIntegrity checks
* Handle webview2 process crashes
2023-04-27 23:03:26 +02:00
stffabi
0bf41090b0
[v2, darwin] Add some missing default shortcuts (#2586)
* [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.
2023-04-20 12:38:32 +02:00
stffabi
529ec569f7
[v2, dev] Use custom schemes for in-app dev mode (#2610)
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.
2023-04-20 12:37:40 +02:00
stffabi
7c1490a8b1
[assetServer] Improve release/close handling of webview requests (#2612) 2023-04-20 12:06:37 +02:00
stffabi
39a7ab5856
[assetserver, linux] Add support for WebKit2GTK 2.40+ features (#2592) 2023-04-14 11:16:27 +02:00
Misite Bao
eddc949295
fix: fix console printing (#2483) 2023-04-01 18:22:27 +11:00
stffabi
db527c0fc2
[assetserver] Add linux platform implementation (#2543) 2023-03-31 10:08:31 +02:00
Lea Anthony
5949e305ea
Reorder startup sequence
Add plugin scripts to asset server
Add InjectJS support in plugins
2023-03-24 08:43:00 +11:00
stffabi
d7a8406640
[options] Mergo doesn't play well with reference types (#2452)
Remove mergo and just use a simple hardcoded defaults approach.
2023-03-07 07:04:37 +01:00
Lea Anthony
bcde850bac Revert changes to file output 2023-02-26 15:11:24 +11:00
Lea Anthony
76371fcb27
Refactor recent mac updates (#2419) 2023-02-25 20:28:27 +11:00
Gwyn
017ce1e33e
The outputFile was only being set for darwin universal builds. I move… (#2358)
* 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.
2023-02-25 06:13:27 +11:00
stffabi
cccd708b2b
[assetserver] Add more builtin mimetypes by extension (#2391) 2023-02-21 18:20:01 +11:00
stffabi
260fd061f6
[nsis] Adjust template to install shortcuts for all users (#2373) 2023-02-13 18:40:42 +11:00
Lea Anthony
5dbda4aead
Feature: AssetServer Runtime (#2335)
* Tidy up runtime JS

* Initial implementation of runtime over http

* Update runtime deps. Fix test task.

* Support Clipboard.
Message Processor refactor.

* Add `Window.Screen()`
Clipboard `GetText` -> `Text`

* Support most dialogs
Better JS->Go object mapping
Implement Go->JS callback mechanism
Rename `window.runtime` -> `window.wails` to better reflect the Go API

* Support SaveFile dialog

* Remove go.work

* Tidy up

* Event->CustomEvent to prevent potential clash with native JS Event object
Support Eventing

* Support application calls

* Support logging

* Support named windows
Remove debug info

* Update v3 changes
2023-02-06 20:50:11 +11:00
Sebastian Bauer
180eef34a2
Remove all systray related for v2. (#2329)
Possible fix for #2265. Close systray separately after the application ran.
2023-01-26 18:11:31 +11:00
stffabi
caa0b6c804
[assetServer, darwin] Use AssetServer native WKWebView request handling (#2283) 2023-01-16 13:02:18 +01:00
stffabi
8f92cf1074
[assetHandler] Allow middleware to set the content-type for an assets file (#2286) 2023-01-16 21:05:25 +11:00
Gwyn
8c7fa4cf4c
Updates all default gitignore templates to be newline terminated. (#2306)
This allows echoing new patterns to the end of the file without
causing a string concatenation error.
2023-01-16 21:02:52 +11:00
Lea Anthony
54ca6c7059
Refactor assetserver into pkg (#2260) 2023-01-08 11:25:21 +01:00
Zámbó, Levente
add10df5ff
fix missing bin dir on build hook (#2273)
* fix missing bin dir on build hook

* add fix to changelog
2023-01-07 06:51:01 +11:00
stffabi
284e20a290
Add EnableFraudulentWebsiteDetection to options (#2269)
This allows to explicitly opt-in to scan services for fraudulent
content, such as malware or phishing attempts.
2023-01-06 00:06:26 +11:00
Zámbó, Levente
0a32c1124e
Add common text clipboard support (#2228) 2023-01-05 16:41:07 +11:00