Support linux systrays, of sorts...

This commit is contained in:
Lea Anthony 2024-02-12 22:01:52 +11:00 committed by Travis McLane
commit 161444107a
26 changed files with 662 additions and 503 deletions

View file

@ -1,6 +1,8 @@
module github.com/wailsapp/wails/v2
go 1.20
go 1.21
toolchain go1.22.0
require (
github.com/Masterminds/semver v1.5.0

View file

@ -39,11 +39,11 @@ require (
github.com/wailsapp/go-webview2 v1.0.9 // indirect
github.com/wailsapp/mimetype v1.4.1 // indirect
github.com/xanzy/ssh-agent v0.3.3 // indirect
golang.org/x/crypto v0.16.0 // indirect
golang.org/x/crypto v0.19.0 // indirect
golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df // indirect
golang.org/x/mod v0.12.0 // indirect
golang.org/x/net v0.19.0 // indirect
golang.org/x/sys v0.15.0 // indirect
golang.org/x/sys v0.17.0 // indirect
golang.org/x/tools v0.13.0 // indirect
gopkg.in/warnings.v0 v0.1.2 // indirect
)

View file

@ -110,8 +110,8 @@ golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5y
golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.3.1-0.20221117191849-2c476679df9a/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4=
golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU=
golang.org/x/crypto v0.16.0 h1:mMMrFzRSCF0GvB7Ne27XVtVAaXLrPmgPC7/v0tkwHaY=
golang.org/x/crypto v0.16.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4=
golang.org/x/crypto v0.19.0 h1:ENy+Az/9Y1vSrlrvBSyna3PITt4tiZLf7sgCjZBX7Wo=
golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU=
golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df h1:UA2aFVmmsIlefxMk29Dp2juaUSth8Pyn3Tq5Y5mJGME=
golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df/go.mod h1:FXUEEKJgO7OQYeo8N01OfiKP8RXMtf6e8aTskBGqWdc=
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
@ -150,15 +150,15 @@ golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.3.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.15.0 h1:h48lPFYpsTvQJZF4EKyI4aLHaev3CxivZmv7yZig9pc=
golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.17.0 h1:25cE3gD+tdBA7lp7QfhuV+rJiE9YXTcS3VG1SqssI/Y=
golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc=
golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
golang.org/x/term v0.6.0/go.mod h1:m6U89DPEgQRMq3DNkDClhWw02AUbt2daBVO4cn4Hv9U=
golang.org/x/term v0.15.0 h1:y/Oo/a/q3IXu26lQgl04j/gjuBDOBlx7X6Om1j2CPW4=
golang.org/x/term v0.15.0/go.mod h1:BDl952bC7+uMoWR75FIrCDx79TPU9oHkTZ9yRbYOrX0=
golang.org/x/term v0.17.0 h1:mkTF7LCd6WGJNL3K1Ad7kwxNfYAW6a8a8QqtMblp/4U=
golang.org/x/term v0.17.0/go.mod h1:lLRBjIVuehSbZlaOtGMbcMncT+aqLLLmKrsjNrUguwk=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=

View file

@ -40,10 +40,10 @@ require (
github.com/wailsapp/go-webview2 v1.0.9 // indirect
github.com/wailsapp/mimetype v1.4.1 // indirect
github.com/xanzy/ssh-agent v0.3.3 // indirect
golang.org/x/crypto v0.16.0 // indirect
golang.org/x/crypto v0.19.0 // indirect
golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df // indirect
golang.org/x/net v0.19.0 // indirect
golang.org/x/sys v0.15.0 // indirect
golang.org/x/sys v0.17.0 // indirect
gopkg.in/warnings.v0 v0.1.2 // indirect
)

View file

@ -130,6 +130,7 @@ golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0
golang.org/x/crypto v0.9.0 h1:LF6fAI+IutBocDJ2OT0Q1g8plpYljMZ4+lty+dsqw3g=
golang.org/x/crypto v0.9.0/go.mod h1:yrmDGqONDYtNj3tH8X9dzUun2m2lzPa9ngI6/RUPGR0=
golang.org/x/crypto v0.16.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4=
golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU=
golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df h1:UA2aFVmmsIlefxMk29Dp2juaUSth8Pyn3Tq5Y5mJGME=
golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df/go.mod h1:FXUEEKJgO7OQYeo8N01OfiKP8RXMtf6e8aTskBGqWdc=
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
@ -158,6 +159,7 @@ golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.13.0 h1:Af8nKPmuFypiUBjVoU9V20FiaFXOcuZI21p0ycVYYGE=
golang.org/x/sys v0.13.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.13.0 h1:bb+I9cTfFazGW51MZqBVmZy7+JEJMouUHTUSKVQLBek=
golang.org/x/term v0.13.0/go.mod h1:LTmsnFJwVN6bCy1rVCoS+qHT1HhALEFxKncY3WNNh4U=

View file

@ -39,11 +39,11 @@ require (
github.com/wailsapp/go-webview2 v1.0.9 // indirect
github.com/wailsapp/mimetype v1.4.1 // indirect
github.com/xanzy/ssh-agent v0.3.3 // indirect
golang.org/x/crypto v0.16.0 // indirect
golang.org/x/crypto v0.19.0 // indirect
golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df // indirect
golang.org/x/mod v0.12.0 // indirect
golang.org/x/net v0.19.0 // indirect
golang.org/x/sys v0.15.0 // indirect
golang.org/x/sys v0.17.0 // indirect
golang.org/x/tools v0.13.0 // indirect
gopkg.in/warnings.v0 v0.1.2 // indirect
)

View file

@ -112,6 +112,7 @@ golang.org/x/crypto v0.3.1-0.20221117191849-2c476679df9a/go.mod h1:hebNnKkNXi2Uz
golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU=
golang.org/x/crypto v0.16.0 h1:mMMrFzRSCF0GvB7Ne27XVtVAaXLrPmgPC7/v0tkwHaY=
golang.org/x/crypto v0.16.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4=
golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU=
golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df h1:UA2aFVmmsIlefxMk29Dp2juaUSth8Pyn3Tq5Y5mJGME=
golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df/go.mod h1:FXUEEKJgO7OQYeo8N01OfiKP8RXMtf6e8aTskBGqWdc=
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
@ -152,6 +153,7 @@ golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.15.0 h1:h48lPFYpsTvQJZF4EKyI4aLHaev3CxivZmv7yZig9pc=
golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc=

View file

@ -44,11 +44,11 @@ require (
github.com/wailsapp/go-webview2 v1.0.9 // indirect
github.com/wailsapp/mimetype v1.4.1 // indirect
github.com/xanzy/ssh-agent v0.3.3 // indirect
golang.org/x/crypto v0.16.0 // indirect
golang.org/x/crypto v0.19.0 // indirect
golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df // indirect
golang.org/x/mod v0.12.0 // indirect
golang.org/x/net v0.19.0 // indirect
golang.org/x/sys v0.15.0 // indirect
golang.org/x/sys v0.17.0 // indirect
golang.org/x/tools v0.13.0 // indirect
gopkg.in/warnings.v0 v0.1.2 // indirect
lukechampine.com/uint128 v1.2.0 // indirect

View file

@ -141,6 +141,7 @@ golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0
golang.org/x/crypto v0.9.0 h1:LF6fAI+IutBocDJ2OT0Q1g8plpYljMZ4+lty+dsqw3g=
golang.org/x/crypto v0.9.0/go.mod h1:yrmDGqONDYtNj3tH8X9dzUun2m2lzPa9ngI6/RUPGR0=
golang.org/x/crypto v0.16.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4=
golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU=
golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df h1:UA2aFVmmsIlefxMk29Dp2juaUSth8Pyn3Tq5Y5mJGME=
golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df/go.mod h1:FXUEEKJgO7OQYeo8N01OfiKP8RXMtf6e8aTskBGqWdc=
golang.org/x/mod v0.12.0 h1:rmsUpXtvNzj340zd98LZ4KntptpfRHwpFOHG188oHXc=
@ -173,6 +174,7 @@ golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.13.0 h1:Af8nKPmuFypiUBjVoU9V20FiaFXOcuZI21p0ycVYYGE=
golang.org/x/sys v0.13.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.13.0 h1:bb+I9cTfFazGW51MZqBVmZy7+JEJMouUHTUSKVQLBek=
golang.org/x/term v0.13.0/go.mod h1:LTmsnFJwVN6bCy1rVCoS+qHT1HhALEFxKncY3WNNh4U=

View file

@ -40,10 +40,10 @@ require (
github.com/wailsapp/go-webview2 v1.0.9 // indirect
github.com/wailsapp/mimetype v1.4.1 // indirect
github.com/xanzy/ssh-agent v0.3.3 // indirect
golang.org/x/crypto v0.16.0 // indirect
golang.org/x/crypto v0.19.0 // indirect
golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df // indirect
golang.org/x/net v0.19.0 // indirect
golang.org/x/sys v0.15.0 // indirect
golang.org/x/sys v0.17.0 // indirect
gopkg.in/warnings.v0 v0.1.2 // indirect
)

View file

@ -130,6 +130,7 @@ golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0
golang.org/x/crypto v0.9.0 h1:LF6fAI+IutBocDJ2OT0Q1g8plpYljMZ4+lty+dsqw3g=
golang.org/x/crypto v0.9.0/go.mod h1:yrmDGqONDYtNj3tH8X9dzUun2m2lzPa9ngI6/RUPGR0=
golang.org/x/crypto v0.16.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4=
golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU=
golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df h1:UA2aFVmmsIlefxMk29Dp2juaUSth8Pyn3Tq5Y5mJGME=
golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df/go.mod h1:FXUEEKJgO7OQYeo8N01OfiKP8RXMtf6e8aTskBGqWdc=
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
@ -158,6 +159,7 @@ golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.13.0 h1:Af8nKPmuFypiUBjVoU9V20FiaFXOcuZI21p0ycVYYGE=
golang.org/x/sys v0.13.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.13.0 h1:bb+I9cTfFazGW51MZqBVmZy7+JEJMouUHTUSKVQLBek=
golang.org/x/term v0.13.0/go.mod h1:LTmsnFJwVN6bCy1rVCoS+qHT1HhALEFxKncY3WNNh4U=

View file

@ -2,7 +2,6 @@ package main
import (
_ "embed"
"fmt"
"log"
"runtime"
@ -25,6 +24,7 @@ func main() {
window := app.NewWebviewWindowWithOptions(application.WebviewWindowOptions{
Width: 500,
Height: 800,
Name: "Systray Demo Window",
Frameless: true,
AlwaysOnTop: true,
Hidden: true,
@ -79,7 +79,6 @@ func main() {
radioCallback := func(ctx *application.Context) {
menuItem := ctx.ClickedMenuItem()
menuItem.SetLabel(menuItem.Label() + "!")
fmt.Println("radioCallback: ")
}
// Radio groups are created implicitly by placing radio items next to each other in a menu

View file

@ -37,10 +37,10 @@ require (
github.com/wailsapp/go-webview2 v1.0.9 // indirect
github.com/wailsapp/mimetype v1.4.1 // indirect
github.com/xanzy/ssh-agent v0.3.3 // indirect
golang.org/x/crypto v0.16.0 // indirect
golang.org/x/crypto v0.19.0 // indirect
golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df // indirect
golang.org/x/net v0.19.0 // indirect
golang.org/x/sys v0.15.0 // indirect
golang.org/x/sys v0.17.0 // indirect
gopkg.in/warnings.v0 v0.1.2 // indirect
)

View file

@ -123,6 +123,7 @@ golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0
golang.org/x/crypto v0.9.0 h1:LF6fAI+IutBocDJ2OT0Q1g8plpYljMZ4+lty+dsqw3g=
golang.org/x/crypto v0.9.0/go.mod h1:yrmDGqONDYtNj3tH8X9dzUun2m2lzPa9ngI6/RUPGR0=
golang.org/x/crypto v0.16.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4=
golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU=
golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df h1:UA2aFVmmsIlefxMk29Dp2juaUSth8Pyn3Tq5Y5mJGME=
golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df/go.mod h1:FXUEEKJgO7OQYeo8N01OfiKP8RXMtf6e8aTskBGqWdc=
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
@ -151,6 +152,7 @@ golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.13.0 h1:Af8nKPmuFypiUBjVoU9V20FiaFXOcuZI21p0ycVYYGE=
golang.org/x/sys v0.13.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.13.0 h1:bb+I9cTfFazGW51MZqBVmZy7+JEJMouUHTUSKVQLBek=
golang.org/x/term v0.13.0/go.mod h1:LTmsnFJwVN6bCy1rVCoS+qHT1HhALEFxKncY3WNNh4U=

View file

@ -36,7 +36,7 @@ require (
github.com/tc-hib/winres v0.1.6
github.com/wailsapp/go-webview2 v1.0.9
github.com/wailsapp/mimetype v1.4.1
golang.org/x/sys v0.15.0
golang.org/x/sys v0.17.0
modernc.org/sqlite v1.21.0
)
@ -90,14 +90,14 @@ require (
github.com/xanzy/ssh-agent v0.3.3 // indirect
github.com/xo/terminfo v0.0.0-20210125001918-ca9a967f8778 // indirect
github.com/zeebo/xxh3 v1.0.2 // indirect
golang.org/x/crypto v0.16.0 // indirect
golang.org/x/crypto v0.19.0 // indirect
golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df // indirect
golang.org/x/image v0.5.0 // indirect
golang.org/x/image v0.15.0 // indirect
golang.org/x/mod v0.12.0 // indirect
golang.org/x/net v0.19.0 // indirect
golang.org/x/oauth2 v0.0.0-20200902213428-5d25da1a8d43 // indirect
golang.org/x/sync v0.4.0 // indirect
golang.org/x/term v0.15.0 // indirect
golang.org/x/term v0.17.0 // indirect
golang.org/x/text v0.14.0 // indirect
golang.org/x/tools v0.13.0 // indirect
google.golang.org/appengine v1.6.6 // indirect

View file

@ -390,6 +390,8 @@ golang.org/x/crypto v0.3.1-0.20221117191849-2c476679df9a/go.mod h1:hebNnKkNXi2Uz
golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU=
golang.org/x/crypto v0.16.0 h1:mMMrFzRSCF0GvB7Ne27XVtVAaXLrPmgPC7/v0tkwHaY=
golang.org/x/crypto v0.16.0/go.mod h1:gCAAfMLgwOJRpTjQ2zCCt2OcSfYMTeZVSRtQlPC7Nq4=
golang.org/x/crypto v0.19.0 h1:ENy+Az/9Y1vSrlrvBSyna3PITt4tiZLf7sgCjZBX7Wo=
golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU=
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8=
@ -408,6 +410,8 @@ golang.org/x/image v0.0.0-20200430140353-33d19683fad8/go.mod h1:FeLwcggjj3mMvU+o
golang.org/x/image v0.0.0-20201208152932-35266b937fa6/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0=
golang.org/x/image v0.5.0 h1:5JMiNunQeQw++mMOz48/ISeNu3Iweh/JaZU8ZLqHRrI=
golang.org/x/image v0.5.0/go.mod h1:FVC7BI/5Ym8R25iw5OLsgshdUBbT1h5jZTpA+mvAdZ4=
golang.org/x/image v0.15.0 h1:kOELfmgrmJlw4Cdb7g/QGuB3CvDrXbqEIww/pNtNBm8=
golang.org/x/image v0.15.0/go.mod h1:HUYqC05R2ZcZ3ejNQsIHQDQiwWM4JBqmm6MKANTp4LE=
golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE=
golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU=
golang.org/x/lint v0.0.0-20190301231843-5614ed5bae6f/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE=
@ -534,6 +538,8 @@ golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.15.0 h1:h48lPFYpsTvQJZF4EKyI4aLHaev3CxivZmv7yZig9pc=
golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/sys v0.17.0 h1:25cE3gD+tdBA7lp7QfhuV+rJiE9YXTcS3VG1SqssI/Y=
golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210220032956-6a3ed077a48d/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210615171337-6886f2dfbf5b/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
@ -543,6 +549,8 @@ golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
golang.org/x/term v0.6.0/go.mod h1:m6U89DPEgQRMq3DNkDClhWw02AUbt2daBVO4cn4Hv9U=
golang.org/x/term v0.15.0 h1:y/Oo/a/q3IXu26lQgl04j/gjuBDOBlx7X6Om1j2CPW4=
golang.org/x/term v0.15.0/go.mod h1:BDl952bC7+uMoWR75FIrCDx79TPU9oHkTZ9yRbYOrX0=
golang.org/x/term v0.17.0 h1:mkTF7LCd6WGJNL3K1Ad7kwxNfYAW6a8a8QqtMblp/4U=
golang.org/x/term v0.17.0/go.mod h1:lLRBjIVuehSbZlaOtGMbcMncT+aqLLLmKrsjNrUguwk=
golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=

View file

@ -157,6 +157,8 @@ export const EventTypes = {
SystemThemeChanged: "linux:SystemThemeChanged",
WindowLoadChanged: "linux:WindowLoadChanged",
WindowDeleteEvent: "linux:WindowDeleteEvent",
WindowFocusIn: "linux:WindowFocusIn",
WindowFocusOut: "linux:WindowFocusOut",
ApplicationStartup: "linux:ApplicationStartup",
},
Common: {

View file

@ -157,6 +157,8 @@ export declare const EventTypes: {
SystemThemeChanged: string,
WindowLoadChanged: string,
WindowDeleteEvent: string,
WindowFocusIn: string,
WindowFocusOut: string,
ApplicationStartup: string,
},
Common: {

View file

@ -60,6 +60,7 @@ typedef struct WindowEvent {
void activateLinux(gpointer data);
extern void emit(WindowEvent* data);
extern gboolean handleDeleteEvent(GtkWidget*, GdkEvent*, uintptr_t);
extern gboolean handleFocusEvent(GtkWidget*, GdkEvent*, uintptr_t);
extern void handleLoadChanged(WebKitWebView*, WebKitLoadEvent, uintptr_t);
void handleClick(void*);
extern gboolean onButtonEvent(GtkWidget *widget, GdkEventButton *event, uintptr_t user_data);
@ -701,6 +702,31 @@ func (w *linuxWebviewWindow) execJS(js string) {
C.free(unsafe.Pointer(value))
}
func getMousePosition() (int, int, *Screen) {
var x, y C.gint
var screen *C.GdkScreen
defaultDisplay := C.gdk_display_get_default()
device := C.gdk_seat_get_pointer(C.gdk_display_get_default_seat(defaultDisplay))
C.gdk_device_get_position(device, &screen, &x, &y)
// Get Monitor for screen
monitor := C.gdk_display_get_monitor_at_point(defaultDisplay, x, y)
geometry := C.GdkRectangle{}
C.gdk_monitor_get_geometry(monitor, &geometry)
scale := int(C.gdk_monitor_get_scale_factor(monitor))
return int(x), int(y), &Screen{
ID: fmt.Sprintf("%d", 0), // A unique identifier for the display
Name: C.GoString(C.gdk_monitor_get_model(monitor)), // The name of the display
Scale: float32(scale), // The scale factor of the display
X: int(geometry.x), // The x-coordinate of the top-left corner of the rectangle
Y: int(geometry.y), // The y-coordinate of the top-left corner of the rectangle
Size: Size{Width: int(geometry.width), Height: int(geometry.height)}, // The size of the display
Bounds: Rect{}, // The bounds of the display
WorkArea: Rect{}, // The work area of the display
IsPrimary: false, // Whether this is the primary display
Rotation: 0.0, // The rotation of the display
}
}
func (w *linuxWebviewWindow) destroy() {
w.parent.markAsDestroyed()
// Free menu
@ -708,7 +734,8 @@ func (w *linuxWebviewWindow) destroy() {
C.gtk_widget_destroy((*C.GtkWidget)(w.gtkmenu))
w.gtkmenu = nil
}
w.destroy()
// Free window
C.gtk_widget_destroy(w.gtkWidget())
}
func (w *linuxWebviewWindow) fullscreen() {
@ -908,7 +935,7 @@ func (w *linuxWebviewWindow) show() {
return
}
C.gtk_widget_show_all(w.gtkWidget())
w.setAbsolutePosition(w.lastX, w.lastY)
//w.setAbsolutePosition(w.lastX, w.lastY)
}
func windowIgnoreMouseEvents(window pointer, webview pointer, ignore bool) {
@ -1057,6 +1084,19 @@ func handleDeleteEvent(widget *C.GtkWidget, event *C.GdkEvent, data C.uintptr_t)
return C.gboolean(1)
}
//export handleFocusEvent
func handleFocusEvent(widget *C.GtkWidget, event *C.GdkEvent, data C.uintptr_t) C.gboolean {
focusEvent := (*C.GdkEventFocus)(unsafe.Pointer(event))
if focusEvent._type == C.GDK_FOCUS_CHANGE {
if focusEvent.in == C.TRUE {
processWindowEvent(C.uint(data), C.uint(events.Linux.WindowFocusIn))
} else {
processWindowEvent(C.uint(data), C.uint(events.Linux.WindowFocusOut))
}
}
return C.gboolean(0)
}
//export handleLoadChanged
func handleLoadChanged(webview *C.WebKitWebView, event C.WebKitLoadEvent, data C.uintptr_t) {
switch event {
@ -1075,6 +1115,7 @@ func (w *linuxWebviewWindow) setupSignalHandlers(emit func(e events.WindowEventT
// Set up the window close event
wv := unsafe.Pointer(w.webview)
C.signal_connect(unsafe.Pointer(w.window), c.String("delete-event"), C.handleDeleteEvent, winID)
C.signal_connect(unsafe.Pointer(w.window), c.String("focus-out-event"), C.handleFocusEvent, winID)
C.signal_connect(wv, c.String("load-changed"), C.handleLoadChanged, winID)
contentManager := C.webkit_web_view_get_user_content_manager(w.webKitWebView())
@ -1111,6 +1152,14 @@ func (w *linuxWebviewWindow) setupSignalHandlers(emit func(e events.WindowEventT
C.signal_connect(wv, c.String("key-press-event"), C.onKeyPressEvent, winID)
}
func getMouseButtons() (bool, bool, bool) {
var pointer *C.GdkDevice
var state C.GdkModifierType
pointer = C.gdk_seat_get_pointer(C.gdk_display_get_default_seat(C.gdk_display_get_default()))
C.gdk_device_get_state(pointer, nil, nil, &state)
return state&C.GDK_BUTTON1_MASK > 0, state&C.GDK_BUTTON2_MASK > 0, state&C.GDK_BUTTON3_MASK > 0
}
func openDevTools(webview pointer) {
inspector := C.webkit_web_view_get_inspector((*C.WebKitWebView)(webview))
C.webkit_web_inspector_show(inspector)
@ -1180,7 +1229,8 @@ func (w *linuxWebviewWindow) setZoom(zoom float64) {
}
func (w *linuxWebviewWindow) move(x, y int) {
C.gtk_window_move((*C.GtkWindow)(w.window), C.int(x), C.int(y))
// Move the window to these coordinates
C.gtk_window_move(w.gtkWindow(), C.int(x), C.int(y))
}
func (w *linuxWebviewWindow) absolutePosition() (int, int) {
@ -1380,7 +1430,7 @@ func runChooserDialog(window pointer, allowMultiple, createFolders, showHidden b
gtkFilters := []*C.GtkFileFilter{}
for _, filter := range filters {
f := (C.gtk_file_filter_new())
f := C.gtk_file_filter_new()
displayStr := C.CString(filter.DisplayName)
C.gtk_file_filter_set_name(f, displayStr)
C.free(unsafe.Pointer(displayStr))

View file

@ -106,6 +106,10 @@ func (m *Menu) clone() *Menu {
return result
}
func (m *Menu) Append(in *Menu) {
m.items = append(m.items, in.items...)
}
func (a *App) NewMenu() *Menu {
return &Menu{}
}

View file

@ -24,6 +24,8 @@ const (
)
type linuxSystemTray struct {
parent *SystemTray
id uint
label string
icon []byte
@ -41,6 +43,11 @@ type linuxSystemTray struct {
itemMap map[int32]*systrayMenuItem
}
func (s *linuxSystemTray) getScreen() (*Screen, error) {
_, _, result := getMousePosition()
return result, nil
}
// dbusMenu is a named struct to map into generated bindings.
// It represents the layout of a menu item
type dbusMenu = struct {
@ -182,6 +189,22 @@ func (s *linuxSystemTray) refresh() {
}
func (s *linuxSystemTray) setMenu(menu *Menu) {
if s.parent.attachedWindow.Window != nil {
temp := menu
menu = NewMenu()
title := "Open"
if s.parent.attachedWindow.Window.Name() != "" {
title += " " + s.parent.attachedWindow.Window.Name()
} else {
title += " window"
}
openMenuItem := menu.Add(title)
openMenuItem.OnClick(func(*Context) {
s.parent.clickHandler()
})
menu.AddSeparator()
menu.Append(temp)
}
s.itemMap = map[int32]*systrayMenuItem{}
// our root menu element
s.itemMap[0] = &systrayMenuItem{
@ -198,16 +221,47 @@ func (s *linuxSystemTray) setMenu(menu *Menu) {
}
func (s *linuxSystemTray) positionWindow(window *WebviewWindow, offset int) error {
// Get the mouse location on the screen
mouseX, mouseY, currentScreen := getMousePosition()
screenBounds := currentScreen.Size
// Calculate new X position
newX := mouseX - (window.Width() / 2)
// Check if the window goes out of the screen bounds on the left side
if newX < 0 {
newX = 0
}
// Check if the window goes out of the screen bounds on the right side
if newX+window.Width() > screenBounds.Width {
newX = screenBounds.Width - window.Width()
}
// Calculate new Y position
newY := mouseY - (window.Height() / 2)
// Check if the window goes out of the screen bounds on the top
if newY < 0 {
newY = 0
}
// Check if the window goes out of the screen bounds on the bottom
if newY+window.Height() > screenBounds.Height {
newY = screenBounds.Height - window.Height() - offset
}
// Set the new position of the window
window.SetAbsolutePosition(newX, newY)
return nil
}
func (s *linuxSystemTray) getScreen() (*Screen, error) {
// FIXME: How do we get the screen we are on?
return &Screen{}, nil
}
func (s *linuxSystemTray) bounds() (*Rect, error) {
// Best effort guess at the screen bounds
return &Rect{}, nil
}
func (s *linuxSystemTray) run() {
@ -354,6 +408,7 @@ func newSystemTrayImpl(s *SystemTray) systemTrayImpl {
}
return &linuxSystemTray{
parent: s,
id: s.id,
label: label,
icon: s.icon,
@ -572,6 +627,16 @@ func (s *linuxSystemTray) Event(id int32, eventID string, data dbus.Variant, tim
InvokeAsync(item.menuItem.handleClick)
}
}
if eventID == "opened" {
if s.parent.onMenuOpen != nil {
s.parent.onMenuOpen()
}
}
if eventID == "closed" {
if s.parent.onMenuClose != nil {
s.parent.onMenuClose()
}
}
return
}
@ -583,6 +648,7 @@ func (s *linuxSystemTray) EventGroup(events []struct {
V3 uint32
}) (idErrors []int32, err *dbus.Error) {
for _, event := range events {
fmt.Printf("EventGroup: %v, %v, %v, %v\n", event.V0, event.V1, event.V2, event.V3)
if event.V1 == "clicked" {
item, ok := s.itemMap[event.V0]
if ok {

View file

@ -264,6 +264,12 @@ func (w *linuxWebviewWindow) run() {
w.execJS(js)
}
})
w.parent.On(events.Linux.WindowFocusIn, func(e *WindowEvent) {
w.parent.emit(events.Common.WindowFocus)
})
w.parent.On(events.Linux.WindowFocusOut, func(e *WindowEvent) {
w.parent.emit(events.Common.WindowLostFocus)
})
w.parent.On(events.Linux.WindowDeleteEvent, func(e *WindowEvent) {
w.parent.emit(events.Common.WindowClosing)
})

View file

@ -31,27 +31,27 @@ type commonEvents struct {
func newCommonEvents() commonEvents {
return commonEvents{
ApplicationStarted: 1177,
WindowMaximise: 1178,
WindowUnMaximise: 1179,
WindowFullscreen: 1180,
WindowUnFullscreen: 1181,
WindowRestore: 1182,
WindowMinimise: 1183,
WindowUnMinimise: 1184,
WindowClosing: 1185,
WindowZoom: 1186,
WindowZoomIn: 1187,
WindowZoomOut: 1188,
WindowZoomReset: 1189,
WindowFocus: 1190,
WindowLostFocus: 1191,
WindowShow: 1192,
WindowHide: 1193,
WindowDPIChanged: 1194,
WindowFilesDropped: 1195,
WindowRuntimeReady: 1196,
ThemeChanged: 1197,
ApplicationStarted: 1179,
WindowMaximise: 1180,
WindowUnMaximise: 1181,
WindowFullscreen: 1182,
WindowUnFullscreen: 1183,
WindowRestore: 1184,
WindowMinimise: 1185,
WindowUnMinimise: 1186,
WindowClosing: 1187,
WindowZoom: 1188,
WindowZoomIn: 1189,
WindowZoomOut: 1190,
WindowZoomReset: 1191,
WindowFocus: 1192,
WindowLostFocus: 1193,
WindowShow: 1194,
WindowHide: 1195,
WindowDPIChanged: 1196,
WindowFilesDropped: 1197,
WindowRuntimeReady: 1198,
ThemeChanged: 1199,
}
}
@ -61,6 +61,8 @@ type linuxEvents struct {
SystemThemeChanged ApplicationEventType
WindowLoadChanged WindowEventType
WindowDeleteEvent WindowEventType
WindowFocusIn WindowEventType
WindowFocusOut WindowEventType
ApplicationStartup ApplicationEventType
}
@ -69,7 +71,9 @@ func newLinuxEvents() linuxEvents {
SystemThemeChanged: 1024,
WindowLoadChanged: 1025,
WindowDeleteEvent: 1026,
ApplicationStartup: 1027,
WindowFocusIn: 1027,
WindowFocusOut: 1028,
ApplicationStartup: 1029,
}
}
@ -204,130 +208,130 @@ type macEvents struct {
func newMacEvents() macEvents {
return macEvents{
ApplicationDidBecomeActive: 1028,
ApplicationDidChangeBackingProperties: 1029,
ApplicationDidChangeEffectiveAppearance: 1030,
ApplicationDidChangeIcon: 1031,
ApplicationDidChangeOcclusionState: 1032,
ApplicationDidChangeScreenParameters: 1033,
ApplicationDidChangeStatusBarFrame: 1034,
ApplicationDidChangeStatusBarOrientation: 1035,
ApplicationDidFinishLaunching: 1036,
ApplicationDidHide: 1037,
ApplicationDidResignActiveNotification: 1038,
ApplicationDidUnhide: 1039,
ApplicationDidUpdate: 1040,
ApplicationWillBecomeActive: 1041,
ApplicationWillFinishLaunching: 1042,
ApplicationWillHide: 1043,
ApplicationWillResignActive: 1044,
ApplicationWillTerminate: 1045,
ApplicationWillUnhide: 1046,
ApplicationWillUpdate: 1047,
ApplicationDidChangeTheme: 1048,
ApplicationShouldHandleReopen: 1049,
WindowDidBecomeKey: 1050,
WindowDidBecomeMain: 1051,
WindowDidBeginSheet: 1052,
WindowDidChangeAlpha: 1053,
WindowDidChangeBackingLocation: 1054,
WindowDidChangeBackingProperties: 1055,
WindowDidChangeCollectionBehavior: 1056,
WindowDidChangeEffectiveAppearance: 1057,
WindowDidChangeOcclusionState: 1058,
WindowDidChangeOrderingMode: 1059,
WindowDidChangeScreen: 1060,
WindowDidChangeScreenParameters: 1061,
WindowDidChangeScreenProfile: 1062,
WindowDidChangeScreenSpace: 1063,
WindowDidChangeScreenSpaceProperties: 1064,
WindowDidChangeSharingType: 1065,
WindowDidChangeSpace: 1066,
WindowDidChangeSpaceOrderingMode: 1067,
WindowDidChangeTitle: 1068,
WindowDidChangeToolbar: 1069,
WindowDidChangeVisibility: 1070,
WindowDidDeminiaturize: 1071,
WindowDidEndSheet: 1072,
WindowDidEnterFullScreen: 1073,
WindowDidEnterVersionBrowser: 1074,
WindowDidExitFullScreen: 1075,
WindowDidExitVersionBrowser: 1076,
WindowDidExpose: 1077,
WindowDidFocus: 1078,
WindowDidMiniaturize: 1079,
WindowDidMove: 1080,
WindowDidOrderOffScreen: 1081,
WindowDidOrderOnScreen: 1082,
WindowDidResignKey: 1083,
WindowDidResignMain: 1084,
WindowDidResize: 1085,
WindowDidUpdate: 1086,
WindowDidUpdateAlpha: 1087,
WindowDidUpdateCollectionBehavior: 1088,
WindowDidUpdateCollectionProperties: 1089,
WindowDidUpdateShadow: 1090,
WindowDidUpdateTitle: 1091,
WindowDidUpdateToolbar: 1092,
WindowDidUpdateVisibility: 1093,
WindowShouldClose: 1094,
WindowWillBecomeKey: 1095,
WindowWillBecomeMain: 1096,
WindowWillBeginSheet: 1097,
WindowWillChangeOrderingMode: 1098,
WindowWillClose: 1099,
WindowWillDeminiaturize: 1100,
WindowWillEnterFullScreen: 1101,
WindowWillEnterVersionBrowser: 1102,
WindowWillExitFullScreen: 1103,
WindowWillExitVersionBrowser: 1104,
WindowWillFocus: 1105,
WindowWillMiniaturize: 1106,
WindowWillMove: 1107,
WindowWillOrderOffScreen: 1108,
WindowWillOrderOnScreen: 1109,
WindowWillResignMain: 1110,
WindowWillResize: 1111,
WindowWillUnfocus: 1112,
WindowWillUpdate: 1113,
WindowWillUpdateAlpha: 1114,
WindowWillUpdateCollectionBehavior: 1115,
WindowWillUpdateCollectionProperties: 1116,
WindowWillUpdateShadow: 1117,
WindowWillUpdateTitle: 1118,
WindowWillUpdateToolbar: 1119,
WindowWillUpdateVisibility: 1120,
WindowWillUseStandardFrame: 1121,
MenuWillOpen: 1122,
MenuDidOpen: 1123,
MenuDidClose: 1124,
MenuWillSendAction: 1125,
MenuDidSendAction: 1126,
MenuWillHighlightItem: 1127,
MenuDidHighlightItem: 1128,
MenuWillDisplayItem: 1129,
MenuDidDisplayItem: 1130,
MenuWillAddItem: 1131,
MenuDidAddItem: 1132,
MenuWillRemoveItem: 1133,
MenuDidRemoveItem: 1134,
MenuWillBeginTracking: 1135,
MenuDidBeginTracking: 1136,
MenuWillEndTracking: 1137,
MenuDidEndTracking: 1138,
MenuWillUpdate: 1139,
MenuDidUpdate: 1140,
MenuWillPopUp: 1141,
MenuDidPopUp: 1142,
MenuWillSendActionToItem: 1143,
MenuDidSendActionToItem: 1144,
WebViewDidStartProvisionalNavigation: 1145,
WebViewDidReceiveServerRedirectForProvisionalNavigation: 1146,
WebViewDidFinishNavigation: 1147,
WebViewDidCommitNavigation: 1148,
WindowFileDraggingEntered: 1149,
WindowFileDraggingPerformed: 1150,
WindowFileDraggingExited: 1151,
ApplicationDidBecomeActive: 1030,
ApplicationDidChangeBackingProperties: 1031,
ApplicationDidChangeEffectiveAppearance: 1032,
ApplicationDidChangeIcon: 1033,
ApplicationDidChangeOcclusionState: 1034,
ApplicationDidChangeScreenParameters: 1035,
ApplicationDidChangeStatusBarFrame: 1036,
ApplicationDidChangeStatusBarOrientation: 1037,
ApplicationDidFinishLaunching: 1038,
ApplicationDidHide: 1039,
ApplicationDidResignActiveNotification: 1040,
ApplicationDidUnhide: 1041,
ApplicationDidUpdate: 1042,
ApplicationWillBecomeActive: 1043,
ApplicationWillFinishLaunching: 1044,
ApplicationWillHide: 1045,
ApplicationWillResignActive: 1046,
ApplicationWillTerminate: 1047,
ApplicationWillUnhide: 1048,
ApplicationWillUpdate: 1049,
ApplicationDidChangeTheme: 1050,
ApplicationShouldHandleReopen: 1051,
WindowDidBecomeKey: 1052,
WindowDidBecomeMain: 1053,
WindowDidBeginSheet: 1054,
WindowDidChangeAlpha: 1055,
WindowDidChangeBackingLocation: 1056,
WindowDidChangeBackingProperties: 1057,
WindowDidChangeCollectionBehavior: 1058,
WindowDidChangeEffectiveAppearance: 1059,
WindowDidChangeOcclusionState: 1060,
WindowDidChangeOrderingMode: 1061,
WindowDidChangeScreen: 1062,
WindowDidChangeScreenParameters: 1063,
WindowDidChangeScreenProfile: 1064,
WindowDidChangeScreenSpace: 1065,
WindowDidChangeScreenSpaceProperties: 1066,
WindowDidChangeSharingType: 1067,
WindowDidChangeSpace: 1068,
WindowDidChangeSpaceOrderingMode: 1069,
WindowDidChangeTitle: 1070,
WindowDidChangeToolbar: 1071,
WindowDidChangeVisibility: 1072,
WindowDidDeminiaturize: 1073,
WindowDidEndSheet: 1074,
WindowDidEnterFullScreen: 1075,
WindowDidEnterVersionBrowser: 1076,
WindowDidExitFullScreen: 1077,
WindowDidExitVersionBrowser: 1078,
WindowDidExpose: 1079,
WindowDidFocus: 1080,
WindowDidMiniaturize: 1081,
WindowDidMove: 1082,
WindowDidOrderOffScreen: 1083,
WindowDidOrderOnScreen: 1084,
WindowDidResignKey: 1085,
WindowDidResignMain: 1086,
WindowDidResize: 1087,
WindowDidUpdate: 1088,
WindowDidUpdateAlpha: 1089,
WindowDidUpdateCollectionBehavior: 1090,
WindowDidUpdateCollectionProperties: 1091,
WindowDidUpdateShadow: 1092,
WindowDidUpdateTitle: 1093,
WindowDidUpdateToolbar: 1094,
WindowDidUpdateVisibility: 1095,
WindowShouldClose: 1096,
WindowWillBecomeKey: 1097,
WindowWillBecomeMain: 1098,
WindowWillBeginSheet: 1099,
WindowWillChangeOrderingMode: 1100,
WindowWillClose: 1101,
WindowWillDeminiaturize: 1102,
WindowWillEnterFullScreen: 1103,
WindowWillEnterVersionBrowser: 1104,
WindowWillExitFullScreen: 1105,
WindowWillExitVersionBrowser: 1106,
WindowWillFocus: 1107,
WindowWillMiniaturize: 1108,
WindowWillMove: 1109,
WindowWillOrderOffScreen: 1110,
WindowWillOrderOnScreen: 1111,
WindowWillResignMain: 1112,
WindowWillResize: 1113,
WindowWillUnfocus: 1114,
WindowWillUpdate: 1115,
WindowWillUpdateAlpha: 1116,
WindowWillUpdateCollectionBehavior: 1117,
WindowWillUpdateCollectionProperties: 1118,
WindowWillUpdateShadow: 1119,
WindowWillUpdateTitle: 1120,
WindowWillUpdateToolbar: 1121,
WindowWillUpdateVisibility: 1122,
WindowWillUseStandardFrame: 1123,
MenuWillOpen: 1124,
MenuDidOpen: 1125,
MenuDidClose: 1126,
MenuWillSendAction: 1127,
MenuDidSendAction: 1128,
MenuWillHighlightItem: 1129,
MenuDidHighlightItem: 1130,
MenuWillDisplayItem: 1131,
MenuDidDisplayItem: 1132,
MenuWillAddItem: 1133,
MenuDidAddItem: 1134,
MenuWillRemoveItem: 1135,
MenuDidRemoveItem: 1136,
MenuWillBeginTracking: 1137,
MenuDidBeginTracking: 1138,
MenuWillEndTracking: 1139,
MenuDidEndTracking: 1140,
MenuWillUpdate: 1141,
MenuDidUpdate: 1142,
MenuWillPopUp: 1143,
MenuDidPopUp: 1144,
MenuWillSendActionToItem: 1145,
MenuDidSendActionToItem: 1146,
WebViewDidStartProvisionalNavigation: 1147,
WebViewDidReceiveServerRedirectForProvisionalNavigation: 1148,
WebViewDidFinishNavigation: 1149,
WebViewDidCommitNavigation: 1150,
WindowFileDraggingEntered: 1151,
WindowFileDraggingPerformed: 1152,
WindowFileDraggingExited: 1153,
}
}
@ -363,31 +367,31 @@ type windowsEvents struct {
func newWindowsEvents() windowsEvents {
return windowsEvents{
SystemThemeChanged: 1152,
APMPowerStatusChange: 1153,
APMSuspend: 1154,
APMResumeAutomatic: 1155,
APMResumeSuspend: 1156,
APMPowerSettingChange: 1157,
ApplicationStarted: 1158,
WebViewNavigationCompleted: 1159,
WindowInactive: 1160,
WindowActive: 1161,
WindowClickActive: 1162,
WindowMaximise: 1163,
WindowUnMaximise: 1164,
WindowFullscreen: 1165,
WindowUnFullscreen: 1166,
WindowRestore: 1167,
WindowMinimise: 1168,
WindowUnMinimise: 1169,
WindowClose: 1170,
WindowSetFocus: 1171,
WindowKillFocus: 1172,
WindowDragDrop: 1173,
WindowDragEnter: 1174,
WindowDragLeave: 1175,
WindowDragOver: 1176,
SystemThemeChanged: 1154,
APMPowerStatusChange: 1155,
APMSuspend: 1156,
APMResumeAutomatic: 1157,
APMResumeSuspend: 1158,
APMPowerSettingChange: 1159,
ApplicationStarted: 1160,
WebViewNavigationCompleted: 1161,
WindowInactive: 1162,
WindowActive: 1163,
WindowClickActive: 1164,
WindowMaximise: 1165,
WindowUnMaximise: 1166,
WindowFullscreen: 1167,
WindowUnFullscreen: 1168,
WindowRestore: 1169,
WindowMinimise: 1170,
WindowUnMinimise: 1171,
WindowClose: 1172,
WindowSetFocus: 1173,
WindowKillFocus: 1174,
WindowDragDrop: 1175,
WindowDragEnter: 1176,
WindowDragLeave: 1177,
WindowDragOver: 1178,
}
}
@ -399,175 +403,177 @@ var eventToJS = map[uint]string{
1024: "linux:SystemThemeChanged",
1025: "linux:WindowLoadChanged",
1026: "linux:WindowDeleteEvent",
1027: "linux:ApplicationStartup",
1028: "mac:ApplicationDidBecomeActive",
1029: "mac:ApplicationDidChangeBackingProperties",
1030: "mac:ApplicationDidChangeEffectiveAppearance",
1031: "mac:ApplicationDidChangeIcon",
1032: "mac:ApplicationDidChangeOcclusionState",
1033: "mac:ApplicationDidChangeScreenParameters",
1034: "mac:ApplicationDidChangeStatusBarFrame",
1035: "mac:ApplicationDidChangeStatusBarOrientation",
1036: "mac:ApplicationDidFinishLaunching",
1037: "mac:ApplicationDidHide",
1038: "mac:ApplicationDidResignActiveNotification",
1039: "mac:ApplicationDidUnhide",
1040: "mac:ApplicationDidUpdate",
1041: "mac:ApplicationWillBecomeActive",
1042: "mac:ApplicationWillFinishLaunching",
1043: "mac:ApplicationWillHide",
1044: "mac:ApplicationWillResignActive",
1045: "mac:ApplicationWillTerminate",
1046: "mac:ApplicationWillUnhide",
1047: "mac:ApplicationWillUpdate",
1048: "mac:ApplicationDidChangeTheme!",
1049: "mac:ApplicationShouldHandleReopen!",
1050: "mac:WindowDidBecomeKey",
1051: "mac:WindowDidBecomeMain",
1052: "mac:WindowDidBeginSheet",
1053: "mac:WindowDidChangeAlpha",
1054: "mac:WindowDidChangeBackingLocation",
1055: "mac:WindowDidChangeBackingProperties",
1056: "mac:WindowDidChangeCollectionBehavior",
1057: "mac:WindowDidChangeEffectiveAppearance",
1058: "mac:WindowDidChangeOcclusionState",
1059: "mac:WindowDidChangeOrderingMode",
1060: "mac:WindowDidChangeScreen",
1061: "mac:WindowDidChangeScreenParameters",
1062: "mac:WindowDidChangeScreenProfile",
1063: "mac:WindowDidChangeScreenSpace",
1064: "mac:WindowDidChangeScreenSpaceProperties",
1065: "mac:WindowDidChangeSharingType",
1066: "mac:WindowDidChangeSpace",
1067: "mac:WindowDidChangeSpaceOrderingMode",
1068: "mac:WindowDidChangeTitle",
1069: "mac:WindowDidChangeToolbar",
1070: "mac:WindowDidChangeVisibility",
1071: "mac:WindowDidDeminiaturize",
1072: "mac:WindowDidEndSheet",
1073: "mac:WindowDidEnterFullScreen",
1074: "mac:WindowDidEnterVersionBrowser",
1075: "mac:WindowDidExitFullScreen",
1076: "mac:WindowDidExitVersionBrowser",
1077: "mac:WindowDidExpose",
1078: "mac:WindowDidFocus",
1079: "mac:WindowDidMiniaturize",
1080: "mac:WindowDidMove",
1081: "mac:WindowDidOrderOffScreen",
1082: "mac:WindowDidOrderOnScreen",
1083: "mac:WindowDidResignKey",
1084: "mac:WindowDidResignMain",
1085: "mac:WindowDidResize",
1086: "mac:WindowDidUpdate",
1087: "mac:WindowDidUpdateAlpha",
1088: "mac:WindowDidUpdateCollectionBehavior",
1089: "mac:WindowDidUpdateCollectionProperties",
1090: "mac:WindowDidUpdateShadow",
1091: "mac:WindowDidUpdateTitle",
1092: "mac:WindowDidUpdateToolbar",
1093: "mac:WindowDidUpdateVisibility",
1094: "mac:WindowShouldClose!",
1095: "mac:WindowWillBecomeKey",
1096: "mac:WindowWillBecomeMain",
1097: "mac:WindowWillBeginSheet",
1098: "mac:WindowWillChangeOrderingMode",
1099: "mac:WindowWillClose",
1100: "mac:WindowWillDeminiaturize",
1101: "mac:WindowWillEnterFullScreen",
1102: "mac:WindowWillEnterVersionBrowser",
1103: "mac:WindowWillExitFullScreen",
1104: "mac:WindowWillExitVersionBrowser",
1105: "mac:WindowWillFocus",
1106: "mac:WindowWillMiniaturize",
1107: "mac:WindowWillMove",
1108: "mac:WindowWillOrderOffScreen",
1109: "mac:WindowWillOrderOnScreen",
1110: "mac:WindowWillResignMain",
1111: "mac:WindowWillResize",
1112: "mac:WindowWillUnfocus",
1113: "mac:WindowWillUpdate",
1114: "mac:WindowWillUpdateAlpha",
1115: "mac:WindowWillUpdateCollectionBehavior",
1116: "mac:WindowWillUpdateCollectionProperties",
1117: "mac:WindowWillUpdateShadow",
1118: "mac:WindowWillUpdateTitle",
1119: "mac:WindowWillUpdateToolbar",
1120: "mac:WindowWillUpdateVisibility",
1121: "mac:WindowWillUseStandardFrame",
1122: "mac:MenuWillOpen",
1123: "mac:MenuDidOpen",
1124: "mac:MenuDidClose",
1125: "mac:MenuWillSendAction",
1126: "mac:MenuDidSendAction",
1127: "mac:MenuWillHighlightItem",
1128: "mac:MenuDidHighlightItem",
1129: "mac:MenuWillDisplayItem",
1130: "mac:MenuDidDisplayItem",
1131: "mac:MenuWillAddItem",
1132: "mac:MenuDidAddItem",
1133: "mac:MenuWillRemoveItem",
1134: "mac:MenuDidRemoveItem",
1135: "mac:MenuWillBeginTracking",
1136: "mac:MenuDidBeginTracking",
1137: "mac:MenuWillEndTracking",
1138: "mac:MenuDidEndTracking",
1139: "mac:MenuWillUpdate",
1140: "mac:MenuDidUpdate",
1141: "mac:MenuWillPopUp",
1142: "mac:MenuDidPopUp",
1143: "mac:MenuWillSendActionToItem",
1144: "mac:MenuDidSendActionToItem",
1145: "mac:WebViewDidStartProvisionalNavigation",
1146: "mac:WebViewDidReceiveServerRedirectForProvisionalNavigation",
1147: "mac:WebViewDidFinishNavigation",
1148: "mac:WebViewDidCommitNavigation",
1149: "mac:WindowFileDraggingEntered",
1150: "mac:WindowFileDraggingPerformed",
1151: "mac:WindowFileDraggingExited",
1152: "windows:SystemThemeChanged",
1153: "windows:APMPowerStatusChange",
1154: "windows:APMSuspend",
1155: "windows:APMResumeAutomatic",
1156: "windows:APMResumeSuspend",
1157: "windows:APMPowerSettingChange",
1158: "windows:ApplicationStarted",
1159: "windows:WebViewNavigationCompleted",
1160: "windows:WindowInactive",
1161: "windows:WindowActive",
1162: "windows:WindowClickActive",
1163: "windows:WindowMaximise",
1164: "windows:WindowUnMaximise",
1165: "windows:WindowFullscreen",
1166: "windows:WindowUnFullscreen",
1167: "windows:WindowRestore",
1168: "windows:WindowMinimise",
1169: "windows:WindowUnMinimise",
1170: "windows:WindowClose",
1171: "windows:WindowSetFocus",
1172: "windows:WindowKillFocus",
1173: "windows:WindowDragDrop",
1174: "windows:WindowDragEnter",
1175: "windows:WindowDragLeave",
1176: "windows:WindowDragOver",
1177: "common:ApplicationStarted",
1178: "common:WindowMaximise",
1179: "common:WindowUnMaximise",
1180: "common:WindowFullscreen",
1181: "common:WindowUnFullscreen",
1182: "common:WindowRestore",
1183: "common:WindowMinimise",
1184: "common:WindowUnMinimise",
1185: "common:WindowClosing",
1186: "common:WindowZoom",
1187: "common:WindowZoomIn",
1188: "common:WindowZoomOut",
1189: "common:WindowZoomReset",
1190: "common:WindowFocus",
1191: "common:WindowLostFocus",
1192: "common:WindowShow",
1193: "common:WindowHide",
1194: "common:WindowDPIChanged",
1195: "common:WindowFilesDropped",
1196: "common:WindowRuntimeReady",
1197: "common:ThemeChanged",
1027: "linux:WindowFocusIn",
1028: "linux:WindowFocusOut",
1029: "linux:ApplicationStartup",
1030: "mac:ApplicationDidBecomeActive",
1031: "mac:ApplicationDidChangeBackingProperties",
1032: "mac:ApplicationDidChangeEffectiveAppearance",
1033: "mac:ApplicationDidChangeIcon",
1034: "mac:ApplicationDidChangeOcclusionState",
1035: "mac:ApplicationDidChangeScreenParameters",
1036: "mac:ApplicationDidChangeStatusBarFrame",
1037: "mac:ApplicationDidChangeStatusBarOrientation",
1038: "mac:ApplicationDidFinishLaunching",
1039: "mac:ApplicationDidHide",
1040: "mac:ApplicationDidResignActiveNotification",
1041: "mac:ApplicationDidUnhide",
1042: "mac:ApplicationDidUpdate",
1043: "mac:ApplicationWillBecomeActive",
1044: "mac:ApplicationWillFinishLaunching",
1045: "mac:ApplicationWillHide",
1046: "mac:ApplicationWillResignActive",
1047: "mac:ApplicationWillTerminate",
1048: "mac:ApplicationWillUnhide",
1049: "mac:ApplicationWillUpdate",
1050: "mac:ApplicationDidChangeTheme!",
1051: "mac:ApplicationShouldHandleReopen!",
1052: "mac:WindowDidBecomeKey",
1053: "mac:WindowDidBecomeMain",
1054: "mac:WindowDidBeginSheet",
1055: "mac:WindowDidChangeAlpha",
1056: "mac:WindowDidChangeBackingLocation",
1057: "mac:WindowDidChangeBackingProperties",
1058: "mac:WindowDidChangeCollectionBehavior",
1059: "mac:WindowDidChangeEffectiveAppearance",
1060: "mac:WindowDidChangeOcclusionState",
1061: "mac:WindowDidChangeOrderingMode",
1062: "mac:WindowDidChangeScreen",
1063: "mac:WindowDidChangeScreenParameters",
1064: "mac:WindowDidChangeScreenProfile",
1065: "mac:WindowDidChangeScreenSpace",
1066: "mac:WindowDidChangeScreenSpaceProperties",
1067: "mac:WindowDidChangeSharingType",
1068: "mac:WindowDidChangeSpace",
1069: "mac:WindowDidChangeSpaceOrderingMode",
1070: "mac:WindowDidChangeTitle",
1071: "mac:WindowDidChangeToolbar",
1072: "mac:WindowDidChangeVisibility",
1073: "mac:WindowDidDeminiaturize",
1074: "mac:WindowDidEndSheet",
1075: "mac:WindowDidEnterFullScreen",
1076: "mac:WindowDidEnterVersionBrowser",
1077: "mac:WindowDidExitFullScreen",
1078: "mac:WindowDidExitVersionBrowser",
1079: "mac:WindowDidExpose",
1080: "mac:WindowDidFocus",
1081: "mac:WindowDidMiniaturize",
1082: "mac:WindowDidMove",
1083: "mac:WindowDidOrderOffScreen",
1084: "mac:WindowDidOrderOnScreen",
1085: "mac:WindowDidResignKey",
1086: "mac:WindowDidResignMain",
1087: "mac:WindowDidResize",
1088: "mac:WindowDidUpdate",
1089: "mac:WindowDidUpdateAlpha",
1090: "mac:WindowDidUpdateCollectionBehavior",
1091: "mac:WindowDidUpdateCollectionProperties",
1092: "mac:WindowDidUpdateShadow",
1093: "mac:WindowDidUpdateTitle",
1094: "mac:WindowDidUpdateToolbar",
1095: "mac:WindowDidUpdateVisibility",
1096: "mac:WindowShouldClose!",
1097: "mac:WindowWillBecomeKey",
1098: "mac:WindowWillBecomeMain",
1099: "mac:WindowWillBeginSheet",
1100: "mac:WindowWillChangeOrderingMode",
1101: "mac:WindowWillClose",
1102: "mac:WindowWillDeminiaturize",
1103: "mac:WindowWillEnterFullScreen",
1104: "mac:WindowWillEnterVersionBrowser",
1105: "mac:WindowWillExitFullScreen",
1106: "mac:WindowWillExitVersionBrowser",
1107: "mac:WindowWillFocus",
1108: "mac:WindowWillMiniaturize",
1109: "mac:WindowWillMove",
1110: "mac:WindowWillOrderOffScreen",
1111: "mac:WindowWillOrderOnScreen",
1112: "mac:WindowWillResignMain",
1113: "mac:WindowWillResize",
1114: "mac:WindowWillUnfocus",
1115: "mac:WindowWillUpdate",
1116: "mac:WindowWillUpdateAlpha",
1117: "mac:WindowWillUpdateCollectionBehavior",
1118: "mac:WindowWillUpdateCollectionProperties",
1119: "mac:WindowWillUpdateShadow",
1120: "mac:WindowWillUpdateTitle",
1121: "mac:WindowWillUpdateToolbar",
1122: "mac:WindowWillUpdateVisibility",
1123: "mac:WindowWillUseStandardFrame",
1124: "mac:MenuWillOpen",
1125: "mac:MenuDidOpen",
1126: "mac:MenuDidClose",
1127: "mac:MenuWillSendAction",
1128: "mac:MenuDidSendAction",
1129: "mac:MenuWillHighlightItem",
1130: "mac:MenuDidHighlightItem",
1131: "mac:MenuWillDisplayItem",
1132: "mac:MenuDidDisplayItem",
1133: "mac:MenuWillAddItem",
1134: "mac:MenuDidAddItem",
1135: "mac:MenuWillRemoveItem",
1136: "mac:MenuDidRemoveItem",
1137: "mac:MenuWillBeginTracking",
1138: "mac:MenuDidBeginTracking",
1139: "mac:MenuWillEndTracking",
1140: "mac:MenuDidEndTracking",
1141: "mac:MenuWillUpdate",
1142: "mac:MenuDidUpdate",
1143: "mac:MenuWillPopUp",
1144: "mac:MenuDidPopUp",
1145: "mac:MenuWillSendActionToItem",
1146: "mac:MenuDidSendActionToItem",
1147: "mac:WebViewDidStartProvisionalNavigation",
1148: "mac:WebViewDidReceiveServerRedirectForProvisionalNavigation",
1149: "mac:WebViewDidFinishNavigation",
1150: "mac:WebViewDidCommitNavigation",
1151: "mac:WindowFileDraggingEntered",
1152: "mac:WindowFileDraggingPerformed",
1153: "mac:WindowFileDraggingExited",
1154: "windows:SystemThemeChanged",
1155: "windows:APMPowerStatusChange",
1156: "windows:APMSuspend",
1157: "windows:APMResumeAutomatic",
1158: "windows:APMResumeSuspend",
1159: "windows:APMPowerSettingChange",
1160: "windows:ApplicationStarted",
1161: "windows:WebViewNavigationCompleted",
1162: "windows:WindowInactive",
1163: "windows:WindowActive",
1164: "windows:WindowClickActive",
1165: "windows:WindowMaximise",
1166: "windows:WindowUnMaximise",
1167: "windows:WindowFullscreen",
1168: "windows:WindowUnFullscreen",
1169: "windows:WindowRestore",
1170: "windows:WindowMinimise",
1171: "windows:WindowUnMinimise",
1172: "windows:WindowClose",
1173: "windows:WindowSetFocus",
1174: "windows:WindowKillFocus",
1175: "windows:WindowDragDrop",
1176: "windows:WindowDragEnter",
1177: "windows:WindowDragLeave",
1178: "windows:WindowDragOver",
1179: "common:ApplicationStarted",
1180: "common:WindowMaximise",
1181: "common:WindowUnMaximise",
1182: "common:WindowFullscreen",
1183: "common:WindowUnFullscreen",
1184: "common:WindowRestore",
1185: "common:WindowMinimise",
1186: "common:WindowUnMinimise",
1187: "common:WindowClosing",
1188: "common:WindowZoom",
1189: "common:WindowZoomIn",
1190: "common:WindowZoomOut",
1191: "common:WindowZoomReset",
1192: "common:WindowFocus",
1193: "common:WindowLostFocus",
1194: "common:WindowShow",
1195: "common:WindowHide",
1196: "common:WindowDPIChanged",
1197: "common:WindowFilesDropped",
1198: "common:WindowRuntimeReady",
1199: "common:ThemeChanged",
}

View file

@ -1,6 +1,8 @@
linux:SystemThemeChanged
linux:WindowLoadChanged
linux:WindowDeleteEvent
linux:WindowFocusIn
linux:WindowFocusOut
linux:ApplicationStartup
mac:ApplicationDidBecomeActive
mac:ApplicationDidChangeBackingProperties

View file

@ -6,132 +6,132 @@
extern void processApplicationEvent(unsigned int, void* data);
extern void processWindowEvent(unsigned int, unsigned int);
#define EventApplicationDidBecomeActive 1028
#define EventApplicationDidChangeBackingProperties 1029
#define EventApplicationDidChangeEffectiveAppearance 1030
#define EventApplicationDidChangeIcon 1031
#define EventApplicationDidChangeOcclusionState 1032
#define EventApplicationDidChangeScreenParameters 1033
#define EventApplicationDidChangeStatusBarFrame 1034
#define EventApplicationDidChangeStatusBarOrientation 1035
#define EventApplicationDidFinishLaunching 1036
#define EventApplicationDidHide 1037
#define EventApplicationDidResignActiveNotification 1038
#define EventApplicationDidUnhide 1039
#define EventApplicationDidUpdate 1040
#define EventApplicationWillBecomeActive 1041
#define EventApplicationWillFinishLaunching 1042
#define EventApplicationWillHide 1043
#define EventApplicationWillResignActive 1044
#define EventApplicationWillTerminate 1045
#define EventApplicationWillUnhide 1046
#define EventApplicationWillUpdate 1047
#define EventApplicationDidChangeTheme 1048
#define EventApplicationShouldHandleReopen 1049
#define EventWindowDidBecomeKey 1050
#define EventWindowDidBecomeMain 1051
#define EventWindowDidBeginSheet 1052
#define EventWindowDidChangeAlpha 1053
#define EventWindowDidChangeBackingLocation 1054
#define EventWindowDidChangeBackingProperties 1055
#define EventWindowDidChangeCollectionBehavior 1056
#define EventWindowDidChangeEffectiveAppearance 1057
#define EventWindowDidChangeOcclusionState 1058
#define EventWindowDidChangeOrderingMode 1059
#define EventWindowDidChangeScreen 1060
#define EventWindowDidChangeScreenParameters 1061
#define EventWindowDidChangeScreenProfile 1062
#define EventWindowDidChangeScreenSpace 1063
#define EventWindowDidChangeScreenSpaceProperties 1064
#define EventWindowDidChangeSharingType 1065
#define EventWindowDidChangeSpace 1066
#define EventWindowDidChangeSpaceOrderingMode 1067
#define EventWindowDidChangeTitle 1068
#define EventWindowDidChangeToolbar 1069
#define EventWindowDidChangeVisibility 1070
#define EventWindowDidDeminiaturize 1071
#define EventWindowDidEndSheet 1072
#define EventWindowDidEnterFullScreen 1073
#define EventWindowDidEnterVersionBrowser 1074
#define EventWindowDidExitFullScreen 1075
#define EventWindowDidExitVersionBrowser 1076
#define EventWindowDidExpose 1077
#define EventWindowDidFocus 1078
#define EventWindowDidMiniaturize 1079
#define EventWindowDidMove 1080
#define EventWindowDidOrderOffScreen 1081
#define EventWindowDidOrderOnScreen 1082
#define EventWindowDidResignKey 1083
#define EventWindowDidResignMain 1084
#define EventWindowDidResize 1085
#define EventWindowDidUpdate 1086
#define EventWindowDidUpdateAlpha 1087
#define EventWindowDidUpdateCollectionBehavior 1088
#define EventWindowDidUpdateCollectionProperties 1089
#define EventWindowDidUpdateShadow 1090
#define EventWindowDidUpdateTitle 1091
#define EventWindowDidUpdateToolbar 1092
#define EventWindowDidUpdateVisibility 1093
#define EventWindowShouldClose 1094
#define EventWindowWillBecomeKey 1095
#define EventWindowWillBecomeMain 1096
#define EventWindowWillBeginSheet 1097
#define EventWindowWillChangeOrderingMode 1098
#define EventWindowWillClose 1099
#define EventWindowWillDeminiaturize 1100
#define EventWindowWillEnterFullScreen 1101
#define EventWindowWillEnterVersionBrowser 1102
#define EventWindowWillExitFullScreen 1103
#define EventWindowWillExitVersionBrowser 1104
#define EventWindowWillFocus 1105
#define EventWindowWillMiniaturize 1106
#define EventWindowWillMove 1107
#define EventWindowWillOrderOffScreen 1108
#define EventWindowWillOrderOnScreen 1109
#define EventWindowWillResignMain 1110
#define EventWindowWillResize 1111
#define EventWindowWillUnfocus 1112
#define EventWindowWillUpdate 1113
#define EventWindowWillUpdateAlpha 1114
#define EventWindowWillUpdateCollectionBehavior 1115
#define EventWindowWillUpdateCollectionProperties 1116
#define EventWindowWillUpdateShadow 1117
#define EventWindowWillUpdateTitle 1118
#define EventWindowWillUpdateToolbar 1119
#define EventWindowWillUpdateVisibility 1120
#define EventWindowWillUseStandardFrame 1121
#define EventMenuWillOpen 1122
#define EventMenuDidOpen 1123
#define EventMenuDidClose 1124
#define EventMenuWillSendAction 1125
#define EventMenuDidSendAction 1126
#define EventMenuWillHighlightItem 1127
#define EventMenuDidHighlightItem 1128
#define EventMenuWillDisplayItem 1129
#define EventMenuDidDisplayItem 1130
#define EventMenuWillAddItem 1131
#define EventMenuDidAddItem 1132
#define EventMenuWillRemoveItem 1133
#define EventMenuDidRemoveItem 1134
#define EventMenuWillBeginTracking 1135
#define EventMenuDidBeginTracking 1136
#define EventMenuWillEndTracking 1137
#define EventMenuDidEndTracking 1138
#define EventMenuWillUpdate 1139
#define EventMenuDidUpdate 1140
#define EventMenuWillPopUp 1141
#define EventMenuDidPopUp 1142
#define EventMenuWillSendActionToItem 1143
#define EventMenuDidSendActionToItem 1144
#define EventWebViewDidStartProvisionalNavigation 1145
#define EventWebViewDidReceiveServerRedirectForProvisionalNavigation 1146
#define EventWebViewDidFinishNavigation 1147
#define EventWebViewDidCommitNavigation 1148
#define EventWindowFileDraggingEntered 1149
#define EventWindowFileDraggingPerformed 1150
#define EventWindowFileDraggingExited 1151
#define EventApplicationDidBecomeActive 1030
#define EventApplicationDidChangeBackingProperties 1031
#define EventApplicationDidChangeEffectiveAppearance 1032
#define EventApplicationDidChangeIcon 1033
#define EventApplicationDidChangeOcclusionState 1034
#define EventApplicationDidChangeScreenParameters 1035
#define EventApplicationDidChangeStatusBarFrame 1036
#define EventApplicationDidChangeStatusBarOrientation 1037
#define EventApplicationDidFinishLaunching 1038
#define EventApplicationDidHide 1039
#define EventApplicationDidResignActiveNotification 1040
#define EventApplicationDidUnhide 1041
#define EventApplicationDidUpdate 1042
#define EventApplicationWillBecomeActive 1043
#define EventApplicationWillFinishLaunching 1044
#define EventApplicationWillHide 1045
#define EventApplicationWillResignActive 1046
#define EventApplicationWillTerminate 1047
#define EventApplicationWillUnhide 1048
#define EventApplicationWillUpdate 1049
#define EventApplicationDidChangeTheme 1050
#define EventApplicationShouldHandleReopen 1051
#define EventWindowDidBecomeKey 1052
#define EventWindowDidBecomeMain 1053
#define EventWindowDidBeginSheet 1054
#define EventWindowDidChangeAlpha 1055
#define EventWindowDidChangeBackingLocation 1056
#define EventWindowDidChangeBackingProperties 1057
#define EventWindowDidChangeCollectionBehavior 1058
#define EventWindowDidChangeEffectiveAppearance 1059
#define EventWindowDidChangeOcclusionState 1060
#define EventWindowDidChangeOrderingMode 1061
#define EventWindowDidChangeScreen 1062
#define EventWindowDidChangeScreenParameters 1063
#define EventWindowDidChangeScreenProfile 1064
#define EventWindowDidChangeScreenSpace 1065
#define EventWindowDidChangeScreenSpaceProperties 1066
#define EventWindowDidChangeSharingType 1067
#define EventWindowDidChangeSpace 1068
#define EventWindowDidChangeSpaceOrderingMode 1069
#define EventWindowDidChangeTitle 1070
#define EventWindowDidChangeToolbar 1071
#define EventWindowDidChangeVisibility 1072
#define EventWindowDidDeminiaturize 1073
#define EventWindowDidEndSheet 1074
#define EventWindowDidEnterFullScreen 1075
#define EventWindowDidEnterVersionBrowser 1076
#define EventWindowDidExitFullScreen 1077
#define EventWindowDidExitVersionBrowser 1078
#define EventWindowDidExpose 1079
#define EventWindowDidFocus 1080
#define EventWindowDidMiniaturize 1081
#define EventWindowDidMove 1082
#define EventWindowDidOrderOffScreen 1083
#define EventWindowDidOrderOnScreen 1084
#define EventWindowDidResignKey 1085
#define EventWindowDidResignMain 1086
#define EventWindowDidResize 1087
#define EventWindowDidUpdate 1088
#define EventWindowDidUpdateAlpha 1089
#define EventWindowDidUpdateCollectionBehavior 1090
#define EventWindowDidUpdateCollectionProperties 1091
#define EventWindowDidUpdateShadow 1092
#define EventWindowDidUpdateTitle 1093
#define EventWindowDidUpdateToolbar 1094
#define EventWindowDidUpdateVisibility 1095
#define EventWindowShouldClose 1096
#define EventWindowWillBecomeKey 1097
#define EventWindowWillBecomeMain 1098
#define EventWindowWillBeginSheet 1099
#define EventWindowWillChangeOrderingMode 1100
#define EventWindowWillClose 1101
#define EventWindowWillDeminiaturize 1102
#define EventWindowWillEnterFullScreen 1103
#define EventWindowWillEnterVersionBrowser 1104
#define EventWindowWillExitFullScreen 1105
#define EventWindowWillExitVersionBrowser 1106
#define EventWindowWillFocus 1107
#define EventWindowWillMiniaturize 1108
#define EventWindowWillMove 1109
#define EventWindowWillOrderOffScreen 1110
#define EventWindowWillOrderOnScreen 1111
#define EventWindowWillResignMain 1112
#define EventWindowWillResize 1113
#define EventWindowWillUnfocus 1114
#define EventWindowWillUpdate 1115
#define EventWindowWillUpdateAlpha 1116
#define EventWindowWillUpdateCollectionBehavior 1117
#define EventWindowWillUpdateCollectionProperties 1118
#define EventWindowWillUpdateShadow 1119
#define EventWindowWillUpdateTitle 1120
#define EventWindowWillUpdateToolbar 1121
#define EventWindowWillUpdateVisibility 1122
#define EventWindowWillUseStandardFrame 1123
#define EventMenuWillOpen 1124
#define EventMenuDidOpen 1125
#define EventMenuDidClose 1126
#define EventMenuWillSendAction 1127
#define EventMenuDidSendAction 1128
#define EventMenuWillHighlightItem 1129
#define EventMenuDidHighlightItem 1130
#define EventMenuWillDisplayItem 1131
#define EventMenuDidDisplayItem 1132
#define EventMenuWillAddItem 1133
#define EventMenuDidAddItem 1134
#define EventMenuWillRemoveItem 1135
#define EventMenuDidRemoveItem 1136
#define EventMenuWillBeginTracking 1137
#define EventMenuDidBeginTracking 1138
#define EventMenuWillEndTracking 1139
#define EventMenuDidEndTracking 1140
#define EventMenuWillUpdate 1141
#define EventMenuDidUpdate 1142
#define EventMenuWillPopUp 1143
#define EventMenuDidPopUp 1144
#define EventMenuWillSendActionToItem 1145
#define EventMenuDidSendActionToItem 1146
#define EventWebViewDidStartProvisionalNavigation 1147
#define EventWebViewDidReceiveServerRedirectForProvisionalNavigation 1148
#define EventWebViewDidFinishNavigation 1149
#define EventWebViewDidCommitNavigation 1150
#define EventWindowFileDraggingEntered 1151
#define EventWindowFileDraggingPerformed 1152
#define EventWindowFileDraggingExited 1153
#define MAX_EVENTS 1152
#define MAX_EVENTS 1154
#endif

View file

@ -9,9 +9,11 @@ extern void processWindowEvent(unsigned int, unsigned int);
#define EventSystemThemeChanged 1024
#define EventWindowLoadChanged 1025
#define EventWindowDeleteEvent 1026
#define EventApplicationStartup 1027
#define EventWindowFocusIn 1027
#define EventWindowFocusOut 1028
#define EventApplicationStartup 1029
#define MAX_EVENTS 1028
#define MAX_EVENTS 1030
#endif