Fix windows icon for about box.

Add NewRGBA and NewRGB methods.
Added README.md to all examples.
Add roadmap.md to docs
This commit is contained in:
Lea Anthony
2023-10-09 20:56:19 +11:00
parent 2b843fc12e
commit 740b2b0979
37 changed files with 364 additions and 140 deletions
+42
View File
@@ -0,0 +1,42 @@
# Roadmap
The roadmap is a living document and is subject to change. If you have any suggestions, please open an issue.
Each milestone will have a set of goals that we are aiming to achieve. These are subject to change.
## Alpha milestones
### Alpha 1
#### Goals
Alpha 1 is the initial release. It is intended to get feedback on the new API and to get people experimenting with it.
The main goal is to get most of the examples working on all platforms.
#### Status
- W - Working
- P - Partially working
- N - Not working
| Example | Mac | Windows | Linux |
|--------------|-----|---------|-------|
| binding | | W | |
| build | | W | |
| clipboard | | W | |
| contextmenus | | N | |
| dialog | | W | |
| events | | N | |
| frameless | | W | |
| keybindings | | W | |
| menu | | W | |
| plain | | W | |
| screen | | W | |
| systray | | W | |
| window | | W | |
| wml | | W | |
### Alpha 2
- [ ] Most examples working on Linux
- [ ] Project creation via `wails init`
+2
View File
@@ -105,6 +105,8 @@
<h3>How do I provide feedback?</h3>
Please read <a href="/getting-started/feedback/">this page</a> for details on how to provide feedback.
</div>
<h3>Is there a Roadmap</h3>
Yes, you can find it <a href="/roadmap/">here</a>.
Please feel free to raise PRs against this website. Every single PR helps us get closer to a release.<br/><br/>
Thank you for sharing this journey with us.<br/><br/>
+2 -6
View File
@@ -5,13 +5,9 @@ There are a number of commands related to tooling, such as icon generation and a
## Commands
### run
### task
The run command is for running tasks defined in `Taskfile.yml`.
| Flag | Type | Description | Default |
|--------------------|--------|------------------------------------------------------|-----------------------|
| `-t` | string | The name of the task to run | |
The `task` command is for running tasks defined in `Taskfile.yml`. It is a wrapper around [Task](https://taskfile.dev).
### generate
+6 -11
View File
@@ -1,6 +1,6 @@
# Dialogs Example
This example is a comprehensive example of using dialogs in Wails.
This example is a comprehensive example of using dialogs in Wails.
## Running the example
@@ -24,15 +24,10 @@ To build the example to use application icons, simply run the following command:
wails3 task package
```
# Status
| Platform | Status |
|----------|-------------------|
| Mac | |
| Windows | Partially Working |
| Linux | |
## TODO
- [ ] Windows: Show application icon in about dialog
| Platform | Status |
|----------|---------|
| Mac | |
| Windows | Working |
| Linux | |
+3
View File
@@ -0,0 +1,3 @@
# Drag-n-Drop Example
This example is not ready for testing yet.
+3
View File
@@ -0,0 +1,3 @@
# Events Example
This example is not ready for testing yet.
+13 -11
View File
@@ -28,13 +28,13 @@ func main() {
// Custom event handling
app.Events.On("myevent", func(e *application.WailsEvent) {
log.Printf("[Go] WailsEvent received: %+v\n", e)
app.Logger.Info("[Go] WailsEvent received: %+v\n", e)
})
// OS specific application events
app.On(events.Mac.ApplicationDidFinishLaunching, func(event *application.Event) {
app.On(events.Common.ApplicationStarted, func(event *application.Event) {
for {
log.Println("Sending event")
app.Logger.Info("Sending event from Go!")
app.Events.Emit(&application.WailsEvent{
Name: "myevent",
Data: "hello",
@@ -44,21 +44,22 @@ func main() {
})
app.On(events.Common.ThemeChanged, func(event *application.Event) {
log.Println("System theme changed!")
app.Logger.Info("System theme changed!")
if event.Context().IsDarkMode() {
log.Println("System is now using dark mode!")
app.Logger.Info("System is now using dark mode!")
} else {
log.Println("System is now using light mode!")
app.Logger.Info("System is now using light mode!")
}
})
// Platform agnostic events
app.On(events.Common.ApplicationStarted, func(event *application.Event) {
println("events.Common.ApplicationStarted fired!")
app.Logger.Info("events.Common.ApplicationStarted fired!")
})
win1 := app.NewWebviewWindowWithOptions(application.WebviewWindowOptions{
Title: "Events Demo",
Name: "Window 1",
Mac: application.MacWindow{
Backdrop: application.MacBackdropTranslucent,
TitleBar: application.MacTitleBarHiddenInsetUnified,
@@ -71,15 +72,16 @@ func main() {
win1.RegisterHook(events.Common.WindowClosing, func(e *application.WindowEvent) {
countdown--
if countdown == 0 {
println("Closing!")
app.Logger.Info("Window 1 Closing!")
return
}
println("Nope! Not closing!")
app.Logger.Info("Window 1 Closing? Nope! Not closing!")
e.Cancel()
})
win2 := app.NewWebviewWindowWithOptions(application.WebviewWindowOptions{
Title: "Events Demo",
Name: "Window 2",
Mac: application.MacWindow{
Backdrop: application.MacBackdropTranslucent,
TitleBar: application.MacTitleBarHiddenInsetUnified,
@@ -90,7 +92,7 @@ func main() {
var cancel bool
win2.RegisterHook(events.Common.WindowFocus, func(e *application.WindowEvent) {
println("---------------\n[Hook] Window focus!")
app.Logger.Info("[Hook] Window focus!")
cancel = !cancel
if cancel {
e.Cancel()
@@ -98,7 +100,7 @@ func main() {
})
win2.On(events.Common.WindowFocus, func(e *application.WindowEvent) {
println("[Event] Window focus!")
app.Logger.Info("[Event] Window focus!")
})
err := app.Run()
+19
View File
@@ -0,0 +1,19 @@
# Frameless Example
This example is a demonstration of using frameless windows in Wails.
## Running the example
To run the example, simply run the following command:
```bash
go run main.go
```
# Status
| Platform | Status |
|----------|---------|
| Mac | |
| Windows | Working |
| Linux | |
+1 -1
View File
@@ -38,7 +38,7 @@ require (
golang.org/x/crypto v0.9.0 // indirect
golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df // indirect
golang.org/x/net v0.10.0 // indirect
golang.org/x/sys v0.12.0 // indirect
golang.org/x/sys v0.13.0 // indirect
gopkg.in/warnings.v0 v0.1.2 // indirect
)
+4 -5
View File
@@ -125,12 +125,11 @@ golang.org/x/sys v0.0.0-20210324051608-47abb6519492/go.mod h1:h1NjWce9XRLGQEsW7w
golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.11.0 h1:eG7RXZHdqOJ1i+0lgLgCpSXAp6M3LYlAo6osgSi0xOM=
golang.org/x/sys v0.11.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.12.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/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.11.0 h1:F9tnn/DA/Im8nCwm+fX+1/eBwi4qFjRT++MhtVC4ZX0=
golang.org/x/term v0.11.0/go.mod h1:zC9APTIj3jG3FdV/Ons+XE1riIZXG4aZ4GTHiPZJPIU=
golang.org/x/term v0.13.0 h1:bb+I9cTfFazGW51MZqBVmZy7+JEJMouUHTUSKVQLBek=
golang.org/x/term v0.13.0/go.mod h1:LTmsnFJwVN6bCy1rVCoS+qHT1HhALEFxKncY3WNNh4U=
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.9.0 h1:2sjJmO8cDvYveuX97RDLsxlyUxLl+GHoLxBiRdHllBE=
+24
View File
@@ -0,0 +1,24 @@
# Keybindings Example
This simple example demonstrates how to use keybindings in your application.
Run the example and press `Ctrl/CMD+Shift+C` to center the focused window.
## Running the example
To run the example, simply run the following command:
```bash
go run main.go
```
# Status
| Platform | Status |
|----------|----------------|
| Mac | |
| Windows | Mostly Working |
| Linux | |
## Known Issues
- [Some Keybindings not working on Windows](https://github.com/orgs/wailsapp/projects/6/views/1?pane=issue&itemId=40962823)
+1 -1
View File
@@ -15,7 +15,7 @@ func main() {
ApplicationShouldTerminateAfterLastWindowClosed: true,
},
KeyBindings: map[string]func(window *application.WebviewWindow){
"CmdOrCtrl+Shift+C": func(window *application.WebviewWindow) {
"F11": func(window *application.WebviewWindow) {
window.Center()
},
},
+23
View File
@@ -0,0 +1,23 @@
# Menu Example
This example is a demonstration of different ways to create applications without using npm.
## Running the example
To run the example, simply run the following command:
```bash
go run main.go
```
# Status
| Platform | Status |
|----------|---------|
| Mac | |
| Windows | Working |
| Linux | |
# Known Issues
- [Resize cursor still visible when not resizable](https://github.com/orgs/wailsapp/projects/6/views/1?pane=issue&itemId=40962163)
+1
View File
@@ -13,6 +13,7 @@ func main() {
app := application.New(application.Options{
Name: "Menu Demo",
Description: "A demo of the menu system",
//Assets: application.AlphaAssets,
Mac: application.MacOptions{
ApplicationShouldTerminateAfterLastWindowClosed: true,
},
+3
View File
@@ -0,0 +1,3 @@
# OAuth Example
This example is not ready for testing yet.
+19
View File
@@ -0,0 +1,19 @@
# Plain Example
This example is a demonstration of different ways to create applications without using npm.
## Running the example
To run the example, simply run the following command:
```bash
go run main.go
```
# Status
| Platform | Status |
|----------|---------|
| Mac | |
| Windows | Working |
| Linux | |
+3
View File
@@ -0,0 +1,3 @@
# Plugins Example
This example is not ready for testing yet.
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -47,7 +47,7 @@ require (
golang.org/x/exp v0.0.0-20230626212559-97b1e661b5df // indirect
golang.org/x/mod v0.12.0 // indirect
golang.org/x/net v0.10.0 // indirect
golang.org/x/sys v0.12.0 // indirect
golang.org/x/sys v0.13.0 // indirect
golang.org/x/tools v0.6.0 // indirect
gopkg.in/warnings.v0 v0.1.2 // indirect
lukechampine.com/uint128 v1.2.0 // indirect
+6 -7
View File
@@ -135,8 +135,8 @@ golang.org/x/net v0.0.0-20210326060303-6b1517762897/go.mod h1:uSPa2vr4CLtc/ILN5o
golang.org/x/net v0.0.0-20210505024714-0287a6fb4125/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.10.0 h1:X2//UzNDwYmtCLn7To6G58Wr6f5ahEAQgKNzv9Y951M=
golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg=
golang.org/x/sync v0.3.0 h1:ftCYgMx6zT/asHUrPw8BLLscYtGznsLAnjq5RH9P66E=
golang.org/x/sync v0.3.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y=
golang.org/x/sync v0.4.0 h1:zxkM55ReGkDlKSM+Fu41A+zmbZuaPVbGMzvvdUPznYQ=
golang.org/x/sync v0.4.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y=
golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190507160741-ecd444e8653b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20190916202348-b4ddaad3f8a3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
@@ -149,12 +149,11 @@ golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7w
golang.org/x/sys v0.0.0-20210616045830-e2b7044e8c71/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.11.0 h1:eG7RXZHdqOJ1i+0lgLgCpSXAp6M3LYlAo6osgSi0xOM=
golang.org/x/sys v0.11.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.12.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/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.11.0 h1:F9tnn/DA/Im8nCwm+fX+1/eBwi4qFjRT++MhtVC4ZX0=
golang.org/x/term v0.11.0/go.mod h1:zC9APTIj3jG3FdV/Ons+XE1riIZXG4aZ4GTHiPZJPIU=
golang.org/x/term v0.13.0 h1:bb+I9cTfFazGW51MZqBVmZy7+JEJMouUHTUSKVQLBek=
golang.org/x/term v0.13.0/go.mod h1:LTmsnFJwVN6bCy1rVCoS+qHT1HhALEFxKncY3WNNh4U=
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.9.0 h1:2sjJmO8cDvYveuX97RDLsxlyUxLl+GHoLxBiRdHllBE=

Some files were not shown because too many files have changed in this diff Show More