5
0
mirror of https://github.com/wailsapp/wails.git synced 2025-05-15 16:39:32 +08:00
Commit Graph

384 Commits

Author SHA1 Message Date
Zámbó, Levente
ef5f547d27
Support GPU acceleration settings on Windows & Linux (#2266)
* support GPU acceleration settings Window & Linux

* fix linux empty option crash

* fix change linux gpu policy switch case

* add PR to changelog
2023-01-02 09:38:53 +11:00
stffabi
006b0c65b4
[webview2loader] Add missing windows build constraint (#2201) 2022-12-13 13:51:01 +01:00
stffabi
4aab1e6b93
[webview2loader] Promote go loader from experimental to stable (#2199)
Default webview2loader is now the go loader
2022-12-13 23:27:50 +11:00
stffabi
eb2d929824
[bindings] Pass ts_generation flags as env variable (#2194)
Otherwise this will clash if an app also uses flags internally
2022-12-11 07:38:06 +11:00
Lea Anthony
b84a2e5255
Windows tray menus (#2181)
* Add example

* Add windows systray

* Add gitkeep

* use windows.GUID
2022-12-06 20:55:56 +11:00
Travis McLane
d2339de5ff
chore: remove unreachable code (#2182)
pkg/menu/styledlabel.go:255:2: unreachable code
2022-12-06 08:27:48 +11:00
Misite Bao
f70d9de366
fix: fix go test errors (#2169)
* fix: fix go test errors

* Add flags to mac test

* Run on all branches

* Update PR workflow

Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
2022-12-06 06:45:06 +11:00
stffabi
5cc012d763
[darwin] Inspector tools should also be included into a debug build (#2162) 2022-12-01 09:20:18 +01:00
Lea Anthony
ea6aee91f1
Refactored build command (#2123)
* Refactored build command

* Update v2/cmd/wails/build.go

Co-authored-by: stffabi <stffabi@users.noreply.github.com>

* WIP

* Refactor `wails doctor`

* Refactor `wails dev`

* Refactor `wails dev`

* Fix merge conflict

* Fix test

* Update build_and_test.yml

Co-authored-by: stffabi <stffabi@users.noreply.github.com>
2022-12-01 18:18:02 +11:00
stffabi
5418b879c4
[linux] Add support for WebKit2GTK 2.36+ features (#2151) 2022-11-30 11:04:12 +01:00
stffabi
993f87af97
[assetserver] Add support for serving the index.html file when requesting a directory (#2110)
* [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
2022-11-29 09:29:08 +01:00
Oleg Gulevskyy
ca8a1fab36
Ability to define prefix / suffix for TS module (#2101)
* 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>
2022-11-24 21:33:58 +11:00
Dieter Zhu
011d8e3094
Supplement the missing WindowSetAlwaysOnTop in runtime.d.ts and runtime.js (#2128) 2022-11-24 06:08:15 +11:00
Oleg Gulevskyy
b3d7682efc
Fix multiple nested build/bin folders in dev mode (#2103)
* stop circular assigning to OutputFilename

* update changelog

Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
2022-11-19 10:04:46 +11:00
stffabi
f6e46ac1c3
[debug] Introducing debug options for debug builds to allow opening the inspector on startup (#2080) 2022-11-12 19:51:54 +11:00
Lea Anthony
18b2d315dd
Modularize wails (#2009)
Co-authored-by: stffabi <stffabi@users.noreply.github.com>
2022-11-03 21:21:40 +11:00
stffabi
638caf72f0
[assetserver] Introduce middleware and extract options (#2016)
* [assetserver] Add support for HTTP Middlewares

* [dev] Disable frontend DevServer if no Assets has been defined and inform user

* [dev] Consistent WebSocket behaviour in dev and prod mode for assets handler and middleware

In prod mode we can't support WebSockets so make sure the
assets handler and middleware never see WebSockets in dev mode.

* [templates] Migrate to new AssetServer option

* [docs] Add assetserver.Options to the reference
2022-10-29 23:15:15 +02:00
Joshua Hull
9f751d66e0
Add single listener deregistration (#1969)
* Add single listener deregistration

* Return function to stop listening, updates types

* Add missing returns, improve documentation

* Duplicate interface in go

* Define eventName

* Use lo instead for filtering

* Move logger to Interface. Add sample test.

* Add vite test for events

* Add js test workflow

* Add corresponding go method to remove all events

* Update documentation

Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
2022-10-23 09:03:37 +11:00
Binyamin Aron Green
4bff4af2b0
Add JSON schema for config file (#1864)
* Add JSON schema for config file

* Fix typo in wails config schema

* Update wails.tmpl.json

* Update wails.tmpl.json

* Add reference to schema in docs

Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
2022-10-22 21:07:37 +11:00
stffabi
0a20c8db96
[webview2loader] Add full featured go implementation (#1974)
* [webview2loader] Add full featured go implementation

The new go loader can be activated with the exp_gowebview2loader build tag.

* [build] Add information for using the new webvie2loader
2022-10-22 00:29:16 +11:00
Lea Anthony
a5fba5b218
Release/v2.1.0 (#1988)
* Add changelog. Fix zoom docs. Add Info.dev.plist info

* Update build assets README.md

* Update changelog

* actions/checkout@v2 => v3

* Docs
2022-10-18 07:21:07 +11:00
Lea Anthony
96fa18846c
Feature/static analysis (#1983)
* Support parsing embed directives from package

* Validate `embed` directives on build

* `.gitkeep` -> `gitkeep`

* Make step silent. Fix for `wails dev`
2022-10-16 23:08:34 +11:00
Pierre Joye
f4adff1cb3
#1057 expose ZoomFactor get/set and add the respective windows only options (#1463)
* #1057 expose ZoomFactor get/set and add the respective windows only options

* Remove debug log, use IsZoomControlEnabled as well

* use math.float to/from 64bits functions instead

* Add new windows options ZoomFactor and IsZoomControlEnabled doc

* Grammar

* Update options.mdx

Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
2022-10-14 08:46:14 +11:00
Lea Anthony
7effede62b
Add support for Info.dev.plist (#1960) 2022-10-14 07:58:43 +11:00
Lea Anthony
eee6797907
Add WindowExecJS method (#1927)
* Add WindowExecJS

* [devserver] Embed the base frontend into the DevServer struct

* Update docs

Co-authored-by: stffabi <stffabi@users.noreply.github.com>
2022-10-05 08:44:23 +11:00
Zámbó, Levente
2690250378
Add window transparency for linux (#1926) 2022-10-01 15:44:38 +10:00
Lea Anthony
b2069c871d
Refactor app (#1909)
* Application refactor

* [windows] refactor out main loop. Create new application struct. Refactor assethandler/assetserver signatures.

* Refactor darwin app

* Refactor app for linux

* Update v2/internal/frontend/assetserver/assethandler.go

Co-authored-by: stffabi <stffabi@users.noreply.github.com>

* Update v2/internal/frontend/assetserver/assethandler.go

Co-authored-by: stffabi <stffabi@users.noreply.github.com>

* Update v2/internal/frontend/assetserver/assetserver.go

Co-authored-by: stffabi <stffabi@users.noreply.github.com>

* Update v2/internal/frontend/assetserver/assetserver.go

Co-authored-by: stffabi <stffabi@users.noreply.github.com>

Co-authored-by: stffabi <stffabi@users.noreply.github.com>
2022-09-29 18:43:35 +10:00
Lea Anthony
1571b10b84
Quote command arguments if they have a space (#1892) 2022-09-25 22:20:01 +10:00
Lea Anthony
74133c9ae3
v2.0.0 2022-09-22 11:00:57 +10:00
Lea Anthony
b93cdcd942
Releasetest/release workflow (#1869)
* Test release workflow

* Update release.yml

* Update release.yml

* add linux deps

* Update release.yml

* Update release.yml

* Update release.yml

* Update release.yml

* Update release.yml

* Update release.yml

* Update release.yml

* Update release.yml

* Update release.yml

* Fix: Misc tests

* Fix: Misc tests + linux build tags

* Fix: Bindings tests + move templates to pkg. Add json schema for templates

* Fix: template tests

* Add tests to release workflow. Test for go 1.18 + go 1.19
Fix: ignore .m files for non darwin builds. Fix watcher test. Fix warning in clilogger.

* Fix release pipeline

* Matrix for tests

* Rename templates to make tests work

* Update template test

* Debug template test

* Debug template test

* Debug template test

* Fix gitignore

* Update release.yml
2022-09-18 08:55:21 +10:00
stffabi
f97f5bb602
[build] Fix buildtags parsing if only one tag is specified (#1858)
* [build] Fix buildtags parsing if only one tag is specified
Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
2022-09-15 17:04:00 +10:00
Lea Anthony
052b9222c1
Add garble support (#1793)
Co-authored-by: AlbinoDrought <sean@albinodrought.com>
Co-authored-by: stffabi <stffabi@users.noreply.github.com>
2022-09-13 10:05:37 +10:00
imgbot[bot]
eef99ee577
[ImgBot] Optimize images (#1812)
*Total -- 5,696.04kb -> 5,003.34kb (12.16%)

/v2/pkg/commands/build/internal/packager/icon32.png -- 7.95kb -> 2.95kb (62.83%)
/v2/internal/frontend/desktop/windows/winc/dock_topbottom.png -- 4.27kb -> 1.82kb (57.31%)
/assets/images/jetbrains-grayscale.png -- 102.85kb -> 52.29kb (49.16%)
/v2/internal/frontend/desktop/windows/winc/dock_topleft.png -- 3.47kb -> 1.88kb (45.81%)
/cmd/templates/svelte/frontend/public/favicon.png -- 3.05kb -> 1.91kb (37.45%)
/website/static/img/icon-windows-dark.svg -- 0.63kb -> 0.45kb (28.35%)
/v2/pkg/buildassets/build/appicon.png -- 174.74kb -> 129.52kb (25.88%)
/website/static/img/favicon.svg -- 0.99kb -> 0.76kb (23.37%)
/website/static/img/go_js.svg -- 4.49kb -> 3.45kb (23.14%)
/website/static/img/go_js_dark.svg -- 4.54kb -> 3.50kb (22.97%)
/cmd/templates/vuetify2-basic/frontend/src/assets/images/logo.png -- 300.95kb -> 234.35kb (22.13%)
/cmd/templates/vuetify-basic/frontend/src/assets/images/logo.png -- 300.95kb -> 234.35kb (22.13%)
/cmd/templates/create-react-app/frontend/src/logo.png -- 300.95kb -> 234.35kb (22.13%)
/cmd/templates/vuebasic/frontend/src/assets/images/logo.png -- 300.95kb -> 234.35kb (22.13%)
/cmd/templates/svelte/frontend/src/logo.png -- 300.95kb -> 234.35kb (22.13%)
/website/static/img/architecture.svg -- 3.83kb -> 3.04kb (20.6%)
/website/static/img/Terminal-icon-dark.svg -- 0.99kb -> 0.79kb (20.37%)
/website/static/img/Terminal-icon.svg -- 0.99kb -> 0.79kb (19.84%)
/website/static/img/wails-logo-textless.svg -- 4.11kb -> 3.40kb (17.31%)
/assets/images/pace.jpeg -- 3.06kb -> 2.55kb (16.57%)
/website/static/img/icon-apple-dark.svg -- 1.10kb -> 0.92kb (16.33%)
/website/static/img/Go_Logo_Blue.svg -- 2.20kb -> 1.86kb (15.21%)
/website/static/img/logo-dark.svg -- 7.19kb -> 6.18kb (14.12%)
/website/static/img/wails-logo-horizontal-dark.svg -- 6.29kb -> 5.41kb (14.02%)
/website/static/img/logo-light.svg -- 7.12kb -> 6.13kb (14%)
/website/static/img/wails-logo-horizontal.svg -- 6.22kb -> 5.36kb (13.87%)
/website/static/img/icon-windows.svg -- 0.42kb -> 0.39kb (8.14%)
/v2/cmd/wails/internal/commands/generate/template/base/frontend/dist/assets/images/logo-universal.png -- 146.83kb -> 136.42kb (7.09%)
/v2/cmd/wails/internal/commands/initialise/templates/templates/vue-ts/frontend/src/assets/images/logo-universal.png -- 146.83kb -> 136.42kb (7.09%)
/v2/cmd/wails/internal/commands/initialise/templates/templates/plain/frontend/src/assets/images/logo-universal.png -- 146.83kb -> 136.42kb (7.09%)
/assets/images/logo-universal.png -- 146.83kb -> 136.42kb (7.09%)
/v2/cmd/wails/internal/commands/initialise/templates/generate/assets/lit/frontend/src/assets/images/logo-universal.png -- 146.83kb -> 136.42kb (7.09%)
/v2/cmd/wails/internal/commands/initialise/templates/templates/react-ts/frontend/src/assets/images/logo-universal.png -- 146.83kb -> 136.42kb (7.09%)
/v2/cmd/wails/internal/commands/initialise/templates/generate/assets/common/frontend/src/assets/images/logo-universal.png -- 146.83kb -> 136.42kb (7.09%)
/v2/cmd/wails/internal/commands/initialise/templates/templates/lit-ts/frontend/src/assets/images/logo-universal.png -- 146.83kb -> 136.42kb (7.09%)
/v2/cmd/wails/internal/commands/initialise/templates/templates/svelte-ts/frontend/src/assets/images/logo-universal.png -- 146.83kb -> 136.42kb (7.09%)
/v2/cmd/wails/internal/commands/initialise/templates/templates/lit/frontend/src/assets/images/logo-universal.png -- 146.83kb -> 136.42kb (7.09%)
/v2/cmd/wails/internal/commands/initialise/templates/templates/svelte/frontend/src/assets/images/logo-universal.png -- 146.83kb -> 136.42kb (7.09%)
/v2/cmd/wails/internal/commands/initialise/templates/templates/preact/frontend/src/assets/images/logo-universal.png -- 146.83kb -> 136.42kb (7.09%)
/v2/cmd/wails/internal/commands/initialise/templates/generate/assets/preact/frontend/src/assets/images/logo-universal.png -- 146.83kb -> 136.42kb (7.09%)
/v2/cmd/wails/internal/commands/initialise/templates/generate/plain/frontend/src/assets/images/logo-universal.png -- 146.83kb -> 136.42kb (7.09%)
/v2/cmd/wails/internal/commands/initialise/templates/templates/react/frontend/src/assets/images/logo-universal.png -- 146.83kb -> 136.42kb (7.09%)
/v2/cmd/wails/internal/commands/initialise/templates/templates/vanilla/frontend/src/assets/images/logo-universal.png -- 146.83kb -> 136.42kb (7.09%)
/v2/cmd/wails/internal/commands/initialise/templates/templates/vue/frontend/src/assets/images/logo-universal.png -- 146.83kb -> 136.42kb (7.09%)
/v2/cmd/wails/internal/commands/initialise/templates/generate/assets/react/frontend/src/assets/images/logo-universal.png -- 146.83kb -> 136.42kb (7.09%)
/v2/cmd/wails/internal/commands/initialise/templates/templates/vanilla-ts/frontend/src/assets/images/logo-universal.png -- 146.83kb -> 136.42kb (7.09%)
/v2/cmd/wails/internal/commands/initialise/templates/templates/preact-ts/frontend/src/assets/images/logo-universal.png -- 146.83kb -> 136.42kb (7.09%)
/v2/cmd/wails/internal/commands/initialise/templates/generate/assets/vue/frontend/src/assets/images/logo-universal.png -- 146.83kb -> 136.42kb (7.09%)
/cmd/templates/vue3-js/frontend/src/assets/logo.png -- 6.69kb -> 6.33kb (5.4%)
/v2/cmd/wails/internal/commands/initialise/templates/templates/preact/frontend/src/assets/preact.svg -- 1.57kb -> 1.49kb (4.99%)
/website/static/img/icon-apple.svg -- 0.76kb -> 0.72kb (4.52%)
/website/static/img/desktop-application-app-dark.svg -- 4.56kb -> 4.37kb (4.34%)
/website/static/img/desktop-application-app.svg -- 4.54kb -> 4.35kb (4.34%)
/website/static/img/logo.svg -- 6.55kb -> 6.29kb (4.05%)
/website/static/img/vitejs.svg -- 3.76kb -> 3.62kb (3.79%)
/cmd/templates/create-react-app/frontend/public/logo512.png -- 175.92kb -> 169.55kb (3.62%)
/v2/pkg/commands/build/internal/packager/icon128.png -- 16.10kb -> 15.52kb (3.58%)
/cmd/templates/vue3-full/frontend/src/assets/appicon.png -- 105.56kb -> 101.81kb (3.56%)
/cmd/packages/darwin/icon.png -- 105.56kb -> 101.81kb (3.56%)
/cmd/templates/vue3-js/frontend/src/assets/appicon.png -- 105.56kb -> 101.81kb (3.56%)
/cmd/packages/windows/icon.png -- 105.56kb -> 101.81kb (3.56%)
/cmd/templates/create-react-app/frontend/public/logo192.png -- 37.41kb -> 36.24kb (3.14%)
/cmd/templates/vuebasic/frontend/src/assets/fonts/roboto/roboto-v18-latin-regular.svg -- 47.83kb -> 46.81kb (2.13%)
/v2/pkg/commands/build/internal/packager/icon256.png -- 26.46kb -> 25.99kb (1.79%)
/website/static/img/icon-linux.svg -- 2.94kb -> 2.92kb (0.4%)

Signed-off-by: ImgBotApp <ImgBotHelp@gmail.com>

Signed-off-by: ImgBotApp <ImgBotHelp@gmail.com>
Co-authored-by: ImgBotApp <ImgBotHelp@gmail.com>
Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
2022-09-12 21:57:07 +10:00
Lea Anthony
d23108a49e
Make draggable CSS property customisable (#1828)
Co-authored-by: stffabi <stffabi@users.noreply.github.com>
2022-09-10 14:33:35 +10:00
Zámbó, Levente
7816b0b67f
[v2] feature: make EventsOff capable of removing multiple listeners (#1822)
[v2] feature: add missing wrapper
2022-09-02 07:34:59 +10:00
ZanderCodes
70c484f603
Add Some WindowState (#1349)
* Add Check for WindowState IsMaximised, IsMinimized, IsNormal and IsFullscreen

Solve conflicts

# Conflicts:
#	v2/internal/frontend/desktop/darwin/WailsContext.m
#	v2/internal/frontend/desktop/darwin/frontend.go
#	v2/internal/frontend/desktop/linux/window.go
#	v2/internal/frontend/desktop/windows/window.go

* Add Check for WindowState IsMaximised, IsMinimized, IsNormal and IsFullscreen

Solve conflict
# Conflicts:
#	v2/pkg/runtime/window.go

* Forgot some function to use it

# Conflicts:
#	v2/internal/frontend/desktop/darwin/WailsContext.h
#	v2/internal/frontend/desktop/windows/win32/consts.go
#	v2/internal/frontend/desktop/windows/win32/window.go

* Modify the instructions

# Conflicts:
#	v2/internal/frontend/devserver/devserver.go

* Add Functions to DevServer

# Conflicts:
#	v2/internal/frontend/dispatcher/systemcalls.go
#	v2/internal/frontend/runtime/desktop/window.js
#	v2/internal/frontend/runtime/package-lock.json
#	v2/internal/frontend/runtime/runtime_prod_desktop.js
#	v2/internal/frontend/runtime/wrapper/runtime.d.ts
#	v2/internal/frontend/runtime/wrapper/runtime.js

* Add Callback and JavaScript Functions

# Conflicts:
#	v2/cmd/wails/internal/commands/initialise/templates/generate/assets/common/frontend/wailsjs/runtime/runtime.js
#	v2/internal/frontend/runtime/package-lock.json
#	v2/internal/frontend/runtime/runtime_dev_desktop.js

* Remove Merge lines

* Fix IsMaximised

* Add WindowState Docs

* Update docs

Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
2022-08-30 06:52:01 +10:00
Lea Anthony
f2568f1899
Experimental support for CSS Drag detection (#1750)
* Support CSS Drag

* Support CSS Drag as experimental option
2022-08-18 20:39:05 +10:00
Lea Anthony
57c9158551
Chore/tidy up (#1713)
* Tidy up dev mode output

* Rename `appng` package to `app`

* Remove `crypto`,`parse`,`messagedispatcher`,`servicebus`,`runtime`,`subsystem`,`ffenestri` packages and `.vscode` dir

* Remove misc `fs` functions

* Remove `str` package

* Fix redundant alias
2022-08-09 07:42:11 +10:00
stffabi
501f7a129e
[v2, dev] Build frontend only before starting the dev watcher command (#1694)
* [v2, dev] Improve logging of dev watcher command during stop

* [v2, dev] Build frontend only before starting the dev watcher command

Breaking Change: Ignore flags take precedence over Force flag.
2022-08-05 20:01:47 +10:00
LGiki
b33211495e
Change frontend:dev to frontend:dev:build (#1691) 2022-08-03 21:19:06 +10:00
stffabi
42ef125fb4
[v2, build] gcflags don't need to be quoted (#1689)
This seemed to work for Go < 1.19 but since 1.19 this gives
an error.
2022-08-03 17:15:56 +10:00
LGiki
568015972a
Add frontend:dev:install configuration (#1666)
* Add frontend:dev:install configuration

* When building the frontend in dev mode, use `frontend:dev:install` (if it has been defined) to install the dependencies

* Simplified logic for determining installation command

Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
2022-08-03 17:15:22 +10:00
Lea Anthony
57f506fa66
Better "context is nil" errors 2022-07-30 09:20:18 +10:00
Lea Anthony
7ea6f6d28e
Fix BackgroundColour documentation. Update changelog. Move contributors into website. Create changelog link. 2022-07-25 20:11:04 +10:00
Lea Anthony
5a3d45b535
Override platform with GOOS and GOARCH (#1618)
* Override platform with GOOS and GOARCH

* Update v2/cmd/wails/internal/commands/build/build.go

Co-authored-by: stffabi <stffabi@users.noreply.github.com>

* Only use GOOS and GOARCH env vars for default target

* Update docs. Add dryrun flag for testing

* Update v2/cmd/wails/internal/commands/build/build.go

Co-authored-by: stffabi <stffabi@users.noreply.github.com>

* Fix scenario where no arch specified

* Fixed banner

Co-authored-by: stffabi <stffabi@users.noreply.github.com>
2022-07-21 21:25:57 +10:00
Lea Anthony
29912785fa
Add Show() and Hide() to runtime to show/hide application (#1599)
* Add Show() and Hide() to runtime to show/hide application

* Fix devserver

* Update API docs
2022-07-20 20:59:49 +10:00
Lea Anthony
f46e825d24
Add pre-build hooks. Print command output when verbosity flag set. (#1578)
* Add pre-build hooks. Print command output when verbosity flag set.

* Refactor build hooks
2022-07-17 22:08:55 +10:00
skamensky
04d35410de
Expose screen dimensions (#1519)
* get dimensions working for linux

* Cleaning up some GTK code

I was getting the following errors due to some bad casts.

Gdk-CRITICAL **: 18:58:51.943: gdk_monitor_get_geometry: assertion 'GDK_IS_MONITOR (monitor)' failed
Gdk-CRITICAL **: 18:58:51.943: gdk_display_get_monitor_at_window: assertion 'GDK_IS_DISPLAY (display)' failed

This commit fixes these errors

* Adding Screen namespace along with linux implementation

* moving ScreenGetAll into a more appropriate place

* Fixing typescript definition mistake, documentation, ordering of functions, and formatting

* add ScreenGetAll to more templates

* moving screen into its own javascript file

* fixing bug where screen objects are not returned from the runtime function

* rebuilding frontend wrapper package

* adding windows implementation of ScreenGetAll

* adding screen get all implementation for darwin

* reverting a change that is unrelated to the work on expose-dimensions

* removing duplicate comparison

* changing GetNthScreen in screen API on macos

To use frame instead of visibleframe to keep into account the space the the dock takes up
We want to include that space in the calculation in order to keep the sizes of screens consistent across platforms

* Correcting screen jsdoc

It used to say it returned a single screen object. Now it says that it returns an array of screen objects

* Fixing typo in function name

* reverting pointless spacing change

* reverting pointless spacing change

Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
Co-authored-by: shmuel.kamensky <shmuel.kamensky@shutterfly.com>
2022-07-16 12:33:37 +10:00
Lea Anthony
f068c33dcf
Add support for production log levels (#1555) 2022-07-14 21:45:13 +10:00
Lea Anthony
39cebffa87
Fix: use correct json value for buildtype 2022-07-08 10:58:38 +10:00
Lea Anthony
4726b72708
feature: Add -windowsconsole flag 2022-07-04 22:52:50 +10:00
Lea Anthony
3e42d2da05
Rename WindowSetRGBA -> WindowSetBackgroundColour (#1506)
* Rename WindowSetRGBA -> WindowSetBackgroundColour

* Fix Typos
2022-06-29 22:31:49 +10:00
Nan0
2065600096
Feature: set browser path (#1448)
* Added option to specify webview2 path

* Added `manual` webview strategy

* Update documentation

* Fixed build with manual tag

* Check for browser directory existence

* Added version check for manually specified webview, removed fallback for installed webview in manual strategy

* Update WebviewBrowserPath documentation

* Replaced deprecated StringToUTF16Ptr

* Return on error

* Removed manual strategy, return error in wv2installer for fixed runtime

* Removed manual strategy from CLI
2022-06-25 07:49:00 +10:00
chenxiao
072929689c
feature: add runtime func WindowSetAlwaysOnTop (#1442)
* feature: add runtime func WindowSetAlwaysOnTop

* add runtime WindowSetUnalwaysOnTop

* add  JavaScript runtime method  ,  docs update

* WindowSetAlwaysOnTop(b bool)

* Add AlwaysOnTop for MacOS

Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
2022-06-22 20:55:02 +10:00
Lea Anthony
381909696b
[Windows] Add Suspend/Resume callback support (#1474)
* Add Suspend/Resume callback support

* Fix comment
2022-06-22 06:37:18 +10:00
Lea Anthony
c477100374
Add BackgroundColour and deprecate RGBA (#1475) 2022-06-21 19:47:05 +10:00
Lea Anthony
cb169611b1
Set Window Background colour if provided + debounce redraw option (#1466)
* Set Window Background colour if provided. Added debounce option for Webview2 redraw on resize

* [windows] Workaround resize flickering in frameless mode

Co-authored-by: stffabi <stffabi@users.noreply.github.com>
2022-06-20 17:47:13 +10:00
Zámbó, Levente
f6425a64a6
feature - add race detector to build & dev (#1426) 2022-05-27 19:07:39 -10:00
Lea Anthony
953bc09343
Merge pull request #1400 from wailsapp/feature/native-translucency
Initial support for new native translucency in Windows Preview
2022-05-18 18:52:45 +10:00
Lea Anthony
41f9c07c88 Fixes #1343 2022-04-27 21:29:54 +10:00
Lea Anthony
e7aa74905a
Initial commit (#1352) 2022-04-27 19:10:20 +10:00
Lea Anthony
f6257d3d31 Add Environment and WindowReloadApp calls to runtime. Updated default templates. 2022-04-20 20:28:41 +10:00
Lea Anthony
4e03c84fbb
Feature/default templates (#1334) 2022-04-15 20:30:10 +10:00
stffabi
6d09a45a30
[v2] Add support for AssetsHandler (#1325)
* [website] Fix devserver default value doc

* [v2] Add support for AssetsHandler

AssetsHandler is a http.Handler delegate, which gets called
as a fallback for all Non-GET requests and for GET requests
for which the Assets didn’t find the file.

Known Limitations on Linux:
- All requests are GET requests
- No request headers
- No request body
- No response status code, only StatusOK will be returned
- No response headers

Known Limitations on Windows:
-  Request body is leaking memory. Seems to be a bug in
    WebView2, investigation angoing.

Most of these limitations on Linux will be fixed in the future with
adding support for Webkit2Gtk 2.36.0+.

* [v2, linux] Add response streaming support

The complete response won’t be held anymore in memory and will
be streamed to WebKit2.

Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
2022-04-12 20:18:27 +10:00
Lea Anthony
3fbe4f71c4 Ensure there's a default wailsJS dir 2022-04-12 20:13:05 +10:00
Lea Anthony
ebf4cf13f2
Feature: Add menu helpers 2022-04-09 20:36:48 +10:00
Lea Anthony
dce5fd442f fix: i18n messages/bug + docs bug. 2022-04-05 21:41:49 +10:00
Lea Anthony
8e8b88ef48 Translations refactor 2022-04-03 17:22:37 +10:00
Lea Anthony
4a20655b29 Translations + Tidy Up 2022-04-03 17:18:36 +10:00
Lea Anthony
7af39e4819 Feature: Go logger "f" equivalents 2022-04-01 12:27:40 +11:00
Sebastian Bauer
7dd3f96915 [Feature/1149] Dark mode: functions for manually switching theme (#1291)
* [Feature/1149] Dark mode: functions for manually switching theme
2022-04-01 08:21:37 +11:00
Lea Anthony
2376062008 Update NSIS guide. Backport docs to .34. Fix references. Fix titles. 2022-03-31 12:23:28 +11:00
bearsh
d8bcf7ac70
v2: linux: add icon to linux specific app option and load it during w… (#1272)
* v2: linux: add icon to linux specific app option and load it during window creation

Signed-off-by: Martin Gysel <me@bearsh.org>

* doc: linux specific option: icon
2022-03-30 18:15:58 +11:00
Lea Anthony
1da68cfc7c Remove unused directories + tidy up 2022-03-29 21:47:26 +11:00
Lea Anthony
a5bf76b30f Fix up dev. Pull in go-webview and winc 2022-03-29 21:45:16 +11:00
Lea Anthony
48254b73e5
[Feature/1149] Dark mode (#1281)
* Add Windows version helper

* Initial theme support

* Support custom themes

* Update docs

* Honour HighContrast theme. Remove import "C". Refactor

* Small refactor

* Support inactive theme

* Update Docs
2022-03-27 22:57:45 +11:00
Lea Anthony
9c5600d8f3 Ensure default icon is generated regardless of icon.ico availability 2022-03-14 22:35:21 +11:00
fengweiqiang
f4d1d02ded
Build added win32 compatibility (#1238) 2022-03-12 17:29:25 +11:00
stffabi
c5c0617c89
[v2, nsis] Seems like / as path separator works only for some directives in a cross platform way (#1227)
Especially the File directive seems not to work with a `/` on
Windows. Whereas `\` works for all directives and on all platforms.
So the `\` in NSIS can be used also on Linux and MacOS.
2022-03-08 20:35:16 +11:00
stffabi
b02dbfaddf
[v2] NSIS installer support for Windows (#1184)
* [v2] Add support for post build hooks

Currently only supports build-level hooks

* [v2] Improve build assets handling and use single source for manifest generation

The manifest asset files are now a go template and data will be
resolved before they are included into the build output.

Breaking Change: Windows manifest file must be named
“wails.exe.manifest” and doesn’t depend on the project name
anymore.

* [v2, windows] NSIS installer generation
2022-03-02 19:44:31 +11:00
Lea Anthony
93491eb2eb
Feature/align api (#1161)
* Fix WindowSetRGBA API

* Change WindowUnFullscreen -> WindowUnfullscreen for consistency
RGBA bugfix
2022-02-19 20:29:55 +11:00
Lea Anthony
f059c35d9e
Feature: WindowToggleMaximise (#1159)
* [windows] Add WindowToggleMaximise

* Add mac support

* Update docs

* [linux] Toggle Maximise
2022-02-18 20:28:16 +11:00
stffabi
a750d2d507
[v2, windows] Invert the frameless border flag and rename it (#1157)
This is a breaking change for all users of the flag.
2022-02-16 20:28:46 +11:00
Valentin Trinqué
e6424dc8ab
Update icon.ico file mode (#1154)
* Add os.O_WRONLY to icon.ico to avoid bad file descriptor error

* Wrap errors coming from winres.LoadICO()

If the file exists but is empty, a blunt "Unexpected EOF" is returned, and propagated as is.

This is not super helpful when trying to pin point what's going on.

Wrapping the error helps to locate the problem.
2022-02-16 06:02:45 +11:00
Lea Anthony
f923a431f7 Try to provide help when old xcode tools installed. #1142 2022-02-12 21:12:17 +11:00
Lea Anthony
eb0f22b4ee
Fix appicon bug on Mac. Fixes #1143 2022-02-12 20:48:43 +11:00
Lea Anthony
771594519f
[mac] Better support for multi-builds 2022-02-10 21:41:40 +11:00
Lea Anthony
ec44ca58f1 Better output for build 2022-02-10 21:25:43 +11:00
Lea Anthony
28e31c46c6 Fix output filename for windows builds 2022-02-10 21:11:32 +11:00
Lea Anthony
c2fa4b6103 Support multiple targets for windows 2022-02-10 19:55:04 +11:00
Lea Anthony
082af614ff Add GetEnvironment() - Fixes #1126 2022-02-04 07:52:45 +11:00
Lea Anthony
0971857e7e
Fix position runtime (#1123)
* [linux] Move SetTitle and startDrag to main thread

* [linux] Move SetPosition, Center, Fullscreen and UnFullscreen to main thread

* Fix runtime Window Get/Set Position signatures

* Fix vanilla template keyboard handling
2022-02-03 21:42:14 +11:00
Lea Anthony
4d0b0947d2 Fixes #1070 2022-02-01 19:47:46 +11:00
stffabi
b1c2065dfb [v2, windows] Add WebviewUserDataPath to windows options 2022-01-25 21:42:01 +01:00
Lea Anthony
e96410e714 Support -debug for wails build 2022-01-17 21:14:07 +11:00
Lea\Anthony
c16bb9715f Fix for bad default directories in dialog options. Fixes #1052 2021-12-30 17:34:06 +11:00
Lea\Anthony
3c6ed12637 New build flag: -debug 2021-12-29 06:54:52 +11:00
Lea\Anthony
5c357f012d [v2] Update context error 2021-12-22 06:28:47 +11:00
Dario Emerson
44035637f7 Add flag to skip mod tidy 2021-12-12 15:01:16 +01:00
Lea Anthony
008a5c70b9
[mac] Fix linking issue. Removed warnings. 2021-12-11 20:06:42 +11:00