mirror of
https://github.com/wavetermdev/wails.git
synced 2026-04-22 15:26:15 -07:00
Compare commits
85 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| c808d513ac | |||
| 08faf0d1fa | |||
| f1739138c3 | |||
| 84023d543a | |||
| 69e492beb1 | |||
| 8242834fbd | |||
| 814e1ec059 | |||
| 12efb8b981 | |||
| b9558cc3cb | |||
| 022baad9e5 | |||
| 9629b1414e | |||
| ea44cf850c | |||
| 61c8c9eac0 | |||
| c89f59dc7c | |||
| 1fed110afd | |||
| 4ea6a2d120 | |||
| f84bb6a287 | |||
| 869a6f761a | |||
| 2d3029482d | |||
| 250e9f91ba | |||
| df49f49c60 | |||
| 3e0ff5edbd | |||
| 1142e81348 | |||
| ae38d1e020 | |||
| eefeadc018 | |||
| 4593b52863 | |||
| 7333ca6c61 | |||
| 5b5a4ba4cc | |||
| 9af14015e4 | |||
| ef80562a0f | |||
| 0b48c3456b | |||
| 1f16655769 | |||
| b8d780ba4a | |||
| 965460edb7 | |||
| 53ea6511fc | |||
| eae73dfa18 | |||
| 27c4c5e6f6 | |||
| 6f197f67f1 | |||
| 412c3a5ed1 | |||
| 385b1dbfd4 | |||
| 0a4c596ecb | |||
| d2e0e0ed81 | |||
| f787cf4bc2 | |||
| ca21a3b79d | |||
| a773da2651 | |||
| 1a90b45f18 | |||
| 9f6cd35155 | |||
| f122db2e7b | |||
| d65f1b1647 | |||
| 0fc535f2f1 | |||
| e420900e55 | |||
| 0cd64d1fbc | |||
| 46a0030387 | |||
| 495da9b292 | |||
| efb300c9f0 | |||
| 7f1706fc74 | |||
| 8dbbdc4bf2 | |||
| 7c15f9098c | |||
| 36a3e90b1d | |||
| 3882201434 | |||
| 857bf40072 | |||
| 075eb1fa3f | |||
| dbb7c6e7d0 | |||
| 947d429688 | |||
| f49d42678b | |||
| f28c9515ad | |||
| c6ecbd56e5 | |||
| 144567410d | |||
| 1b850662ed | |||
| c7c4cacc29 | |||
| 7e63355353 | |||
| 01652c7940 | |||
| b379e3b0eb | |||
| a2fde7f2c3 | |||
| 2beb452207 | |||
| 73384a562b | |||
| 985c5bf8e2 | |||
| daec8a9a64 | |||
| f88a7a6f99 | |||
| dc16d145c2 | |||
| 8432ddc2a8 | |||
| d072393149 | |||
| a8e95bf7f1 | |||
| 1735bdc9a2 | |||
| f00685d592 |
@@ -23,7 +23,7 @@ jobs:
|
||||
|
||||
- name: Install linux dependencies
|
||||
if: matrix.os == 'ubuntu-latest'
|
||||
run: sudo apt-get update -y && sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.0-dev libayatana-appindicator3-dev build-essential pkg-config
|
||||
run: sudo apt-get update -y && sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.0-dev javascriptcoregtk-4.1-dev build-essential pkg-config
|
||||
|
||||
- name: Setup Go
|
||||
uses: actions/setup-go@v3
|
||||
@@ -120,16 +120,16 @@ jobs:
|
||||
restore-keys: |
|
||||
${{ runner.os }}-golang-
|
||||
|
||||
- name: Install linux dependencies
|
||||
if: matrix.os == 'ubuntu-latest'
|
||||
run: sudo apt-get update -y && sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.0-dev javascriptcoregtk-4.1-dev build-essential pkg-config
|
||||
|
||||
- name: Build Wails3 CLI
|
||||
run: |
|
||||
cd ./v3/cmd/wails3
|
||||
go install
|
||||
wails3 -help
|
||||
|
||||
- name: Install linux dependencies
|
||||
if: matrix.os == 'ubuntu-latest'
|
||||
run: sudo apt-get update -y && sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.0-dev libayatana-appindicator3-dev build-essential pkg-config
|
||||
|
||||
- name: Generate template '${{ matrix.template }}'
|
||||
run: |
|
||||
go install github.com/go-task/task/v3/cmd/task@latest
|
||||
|
||||
@@ -27,7 +27,7 @@ jobs:
|
||||
restore-keys: |
|
||||
mkdocs-material-
|
||||
- run: sudo apt-get install pngquant
|
||||
- run: pip install pillow cairosvg
|
||||
- run: pip install pillow cairosvg mkdocs-table-reader-plugin mkdocs-static-i18n
|
||||
- run: pip install git+https://${GH_TOKEN}@github.com/squidfunk/mkdocs-material-insiders.git
|
||||
- run: mkdocs build --config-file mkdocs.insiders.yml
|
||||
- run: mkdocs gh-deploy --force
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
v3alpha.wails.io
|
||||
@@ -0,0 +1 @@
|
||||
v3alpha.wails.io
|
||||
File diff suppressed because it is too large
Load Diff
@@ -19,16 +19,23 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||
|
||||
### Added
|
||||
|
||||
- [darwin] add Event ApplicationShouldHandleReopen to able handle dock icon click by @5aaee9 in [#2991](https://github.com/wailsapp/wails/pull/2991)
|
||||
- [darwin] add getPrimaryScreen/getScreens to impl by @tmclane in [#2618](https://github.com/wailsapp/wails/pull/2618)
|
||||
- [darwin] add Event ApplicationShouldHandleReopen to be able to handle dock icon
|
||||
click by @5aaee9 in [#2991](https://github.com/wailsapp/wails/pull/2991)
|
||||
- [darwin] add getPrimaryScreen/getScreens to impl by @tmclane in
|
||||
[#2618](https://github.com/wailsapp/wails/pull/2618)
|
||||
- [linux] add onKeyPress logic to convert linux keypress into an accelerator @[Atterpac](https://github.com/Atterpac) in[#3022](https://github.com/wailsapp/wails/pull/3022])
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fixed Doctor apt package verify by [Atterpac](https://github.com/Atterpac) in [#2972](https://github.com/wailsapp/wails/pull/2972).
|
||||
- Fixed application frozen when quit (Darwin) by @5aaee9 in [#2982](https://github.com/wailsapp/wails/pull/2982)
|
||||
- Fixed background colours of examples on Windows by [mmgvh](https://github.com/mmghv) in [#2750](https://github.com/wailsapp/wails/pull/2750).
|
||||
- Fixed default context menus by [mmgvh](https://github.com/mmghv) in [#2753](https://github.com/wailsapp/wails/pull/2753).
|
||||
|
||||
- Fixed Doctor apt package verify by [Atterpac](https://github.com/Atterpac) in
|
||||
[#2972](https://github.com/wailsapp/wails/pull/2972).
|
||||
- Fixed application frozen when quit (Darwin) by @5aaee9 in
|
||||
[#2982](https://github.com/wailsapp/wails/pull/2982)
|
||||
- Fixed background colours of examples on Windows by
|
||||
[mmgvh](https://github.com/mmghv) in
|
||||
[#2750](https://github.com/wailsapp/wails/pull/2750).
|
||||
- Fixed default context menus by [mmgvh](https://github.com/mmghv) in
|
||||
[#2753](https://github.com/wailsapp/wails/pull/2753).
|
||||
|
||||
### Changed
|
||||
|
||||
+2
-1
@@ -1,6 +1,7 @@
|
||||
# Changes for v3
|
||||
|
||||
!!! note This is currently an unsorted brain dump of changes. It will be
|
||||
!!! note
|
||||
This is currently an unsorted brain dump of changes. It will be
|
||||
organised into a more readable format soon.
|
||||
|
||||
## Options
|
||||
+11
-3
@@ -1,6 +1,7 @@
|
||||
# Introduction
|
||||
|
||||
!!! note This guide is a work in progress.
|
||||
!!! note
|
||||
This guide is a work in progress.
|
||||
|
||||
Thanks for wanting to help out with development of Wails! This guide will help
|
||||
you get started.
|
||||
@@ -45,6 +46,13 @@ The project has the following structure:
|
||||
|
||||
## Development
|
||||
|
||||
### Alpha Todo List
|
||||
|
||||
We are currently tracking known issues and tasks in the
|
||||
[Alpha Todo List](https://github.com/orgs/wailsapp/projects/6). If you want to
|
||||
help out, please check this list and follow the instructions in the
|
||||
[Feedback](../getting-started/feedback.md) page.
|
||||
|
||||
### Adding window functionality
|
||||
|
||||
The preferred way to add window functionality is to add a new function to the
|
||||
@@ -134,8 +142,8 @@ The `InjectJS()` method returns JavaScript that should be injected into all
|
||||
windows as they are created. This is useful for adding custom JavaScript
|
||||
functions that complement the plugin.
|
||||
|
||||
The built-in plugins can be found in the `v3/plugins` directory.
|
||||
Check them out for inspiration.
|
||||
The built-in plugins can be found in the `v3/plugins` directory. Check them out
|
||||
for inspiration.
|
||||
|
||||
## Tasks
|
||||
|
||||
+36
-37
@@ -16,7 +16,7 @@ Status of features in v3.
|
||||
Application interface methods
|
||||
|
||||
| Method | Windows | Linux | Mac | Notes |
|
||||
|---------------------------------------------------------------|---------|-------|-----|-------|
|
||||
| ------------------------------------------------------------- | ------- | ----- | --- | ----- |
|
||||
| run() error | Y | Y | Y | |
|
||||
| destroy() | | Y | Y | |
|
||||
| setApplicationMenu(menu \*Menu) | Y | Y | Y | |
|
||||
@@ -36,7 +36,7 @@ Application interface methods
|
||||
Webview Window Interface Methods
|
||||
|
||||
| Method | Windows | Linux | Mac | Notes |
|
||||
|----------------------------------------------------|---------|-------|-----|------------------------------------------|
|
||||
| -------------------------------------------------- | ------- | ----- | --- | ---------------------------------------- |
|
||||
| center() | Y | Y | Y | |
|
||||
| close() | y | Y | Y | |
|
||||
| destroy() | | Y | Y | |
|
||||
@@ -53,9 +53,9 @@ Webview Window Interface Methods
|
||||
| isMinimised() bool | Y | Y | Y | |
|
||||
| maximise() | Y | Y | Y | |
|
||||
| minimise() | Y | Y | Y | |
|
||||
| nativeWindowHandle() (uintptr, error) | Y | Y | | |
|
||||
| nativeWindowHandle() (uintptr, error) | Y | Y | Y | |
|
||||
| on(eventID uint) | y | | Y | |
|
||||
| openContextMenu(menu *Menu, data *ContextMenuData) | y | | Y | |
|
||||
| openContextMenu(menu *Menu, data *ContextMenuData) | y | Y | Y | |
|
||||
| relativePosition() (int, int) | Y | Y | Y | |
|
||||
| reload() | y | Y | Y | |
|
||||
| run() | Y | Y | Y | |
|
||||
@@ -90,34 +90,34 @@ Webview Window Interface Methods
|
||||
### Application
|
||||
|
||||
| Feature | Windows | Linux | Mac | Notes |
|
||||
|---------|---------|-------|-----|-------|
|
||||
| ------- | ------- | ----- | --- | ----- |
|
||||
| Quit | Y | Y | Y | |
|
||||
| Hide | Y | | Y | |
|
||||
| Hide | Y | Y | Y | |
|
||||
| Show | Y | | Y | |
|
||||
|
||||
### Dialogs
|
||||
|
||||
| Feature | Windows | Linux | Mac | Notes |
|
||||
|----------|---------|-------|-----|-------|
|
||||
| -------- | ------- | ----- | --- | ----- |
|
||||
| Info | Y | Y | Y | |
|
||||
| Warning | Y | Y | Y | |
|
||||
| Error | Y | Y | Y | |
|
||||
| Question | Y | Y | Y | |
|
||||
| OpenFile | Y | | Y | |
|
||||
| SaveFile | Y | | Y | |
|
||||
| OpenFile | Y | Y | Y | |
|
||||
| SaveFile | Y | Y | Y | |
|
||||
|
||||
### Clipboard
|
||||
|
||||
| Feature | Windows | Linux | Mac | Notes |
|
||||
|---------|---------|-------|-----|-------|
|
||||
| SetText | Y | | Y | |
|
||||
| Text | Y | | Y | |
|
||||
| SetText | Y | Y | Y | |
|
||||
| Text | Y | Y | Y | |
|
||||
|
||||
### ContextMenu
|
||||
|
||||
| Feature | Windows | Linux | Mac | Notes |
|
||||
|------------------|---------|-------|-----|-------|
|
||||
| OpenContextMenu | Y | | Y | |
|
||||
| OpenContextMenu | Y | Y | Y | |
|
||||
| On By Default | | | | |
|
||||
| Control via HTML | Y | | | |
|
||||
|
||||
@@ -134,7 +134,7 @@ show the context menu unless it is explicitly set with
|
||||
### Screens
|
||||
|
||||
| Feature | Windows | Linux | Mac | Notes |
|
||||
|------------|---------|-------|-----|-------|
|
||||
| ---------- | ------- | ----- | --- | ----- |
|
||||
| GetAll | Y | Y | Y | |
|
||||
| GetPrimary | Y | Y | Y | |
|
||||
| GetCurrent | Y | Y | Y | |
|
||||
@@ -142,7 +142,7 @@ show the context menu unless it is explicitly set with
|
||||
### System
|
||||
|
||||
| Feature | Windows | Linux | Mac | Notes |
|
||||
|------------|---------|-------|-----|-------|
|
||||
| ---------- | ------- | ----- | --- | ----- |
|
||||
| IsDarkMode | | | Y | |
|
||||
|
||||
### Window
|
||||
@@ -152,7 +152,7 @@ Y = Supported U = Untested
|
||||
- = Not available
|
||||
|
||||
| Feature | Windows | Linux | Mac | Notes |
|
||||
|---------------------|---------|-------|-----|--------------------------------------------------------------------------------------|
|
||||
| ------------------- | ------- | ----- | --- | ------------------------------------------------------------------------------------ |
|
||||
| Center | Y | Y | Y | |
|
||||
| Focus | Y | Y | | |
|
||||
| FullScreen | Y | Y | Y | |
|
||||
@@ -191,7 +191,7 @@ supported by the platform.
|
||||
|
||||
| Feature | Windows | Linux | Mac | Notes |
|
||||
|---------------------------------|---------|-------|-----|--------------------------------------------|
|
||||
| AlwaysOnTop | Y | | | |
|
||||
| AlwaysOnTop | Y | Y | | |
|
||||
| BackgroundColour | Y | Y | | |
|
||||
| BackgroundType | | | | Acrylic seems to work but the others don't |
|
||||
| CSS | Y | Y | | |
|
||||
@@ -230,37 +230,37 @@ To log or not to log? System logger vs custom logger.
|
||||
## Menu
|
||||
|
||||
| Event | Windows | Linux | Mac | Notes |
|
||||
|--------------------------|---------|-------|-----|-------|
|
||||
| ------------------------ | ------- | ----- | --- | ----- |
|
||||
| Default Application Menu | Y | Y | Y | |
|
||||
|
||||
## Tray Menus
|
||||
|
||||
| Feature | Windows | Linux | Mac | Notes |
|
||||
|--------------------|---------|-------|-----|----------------------------------------------------------------------|
|
||||
| Icon | Y | | Y | Windows has default icons for light/dark mode & supports PNG or ICO. |
|
||||
| Label | - | | Y | |
|
||||
| Icon | Y | Y | Y | Windows has default icons for light/dark mode & supports PNG or ICO. |
|
||||
| Label | - | Y | Y | |
|
||||
| Label (ANSI Codes) | - | | | |
|
||||
| Menu | Y | | Y | |
|
||||
| Menu | Y | Y | Y | |
|
||||
|
||||
### Methods
|
||||
|
||||
| Method | Windows | Linux | Mac | Notes |
|
||||
|-------------------------------|---------|-------|-----|-------|
|
||||
| setLabel(label string) | - | | Y | |
|
||||
| run() | Y | | Y | |
|
||||
| setIcon(icon []byte) | Y | | Y | |
|
||||
| setMenu(menu \*Menu) | Y | | Y | |
|
||||
| setIconPosition(position int) | - | | Y | |
|
||||
| setTemplateIcon(icon []byte) | - | | Y | |
|
||||
| destroy() | Y | | Y | |
|
||||
| setDarkModeIcon(icon []byte) | Y | | Y | |
|
||||
| ----------------------------- | ------- | ----- | --- | ----- |
|
||||
| setLabel(label string) | - | Y | Y | |
|
||||
| run() | Y | Y | Y | |
|
||||
| setIcon(icon []byte) | Y | Y | Y | |
|
||||
| setMenu(menu \*Menu) | Y | Y | Y | |
|
||||
| setIconPosition(position int) | - | Y | Y | |
|
||||
| setTemplateIcon(icon []byte) | - | Y | Y | |
|
||||
| destroy() | Y | Y | Y | |
|
||||
| setDarkModeIcon(icon []byte) | Y | Y | Y | Darkmode isn't handled yet (linux) |
|
||||
|
||||
## Cross Platform Events
|
||||
|
||||
Mapping native events to cross-platform events.
|
||||
|
||||
| Event | Windows | Linux | Mac | Notes |
|
||||
|--------------------------|---------|-------|-----------------|-------|
|
||||
| ------------------------ | ------- | ----- | --------------- | ----- |
|
||||
| WindowWillClose | | | WindowWillClose | |
|
||||
| WindowDidClose | | | | |
|
||||
| WindowDidResize | | | | |
|
||||
@@ -284,7 +284,7 @@ Contains a lot needed for development.
|
||||
## Theme
|
||||
|
||||
| Mode | Windows | Linux | Mac | Notes |
|
||||
|--------|---------|-------|-----|-------|
|
||||
| ------ | ------- | ----- | --- | ----- |
|
||||
| Dark | Y | | | |
|
||||
| Light | Y | | | |
|
||||
| System | Y | | | |
|
||||
@@ -302,7 +302,7 @@ All templates are working.
|
||||
Built-in plugin support:
|
||||
|
||||
| Plugin | Windows | Linux | Mac | Notes |
|
||||
|-----------------|---------|-------|-----|-------|
|
||||
| --------------- | ------- | ----- | --- | ----- |
|
||||
| Browser | Y | | Y | |
|
||||
| KV Store | Y | Y | Y | |
|
||||
| Log | Y | Y | Y | |
|
||||
@@ -318,7 +318,7 @@ TODO:
|
||||
## Packaging
|
||||
|
||||
| | Windows | Linux | Mac | Notes |
|
||||
|-----------------|---------|-------|-----|-------|
|
||||
| --------------- | ------- | ----- | --- | ----- |
|
||||
| Icon Generation | Y | | Y | |
|
||||
| Icon Embedding | Y | | Y | |
|
||||
| Info.plist | - | | Y | |
|
||||
@@ -329,7 +329,7 @@ TODO:
|
||||
## Frameless Windows
|
||||
|
||||
| Feature | Windows | Linux | Mac | Notes |
|
||||
|---------|---------|-------|-----|------------------------------------------------|
|
||||
| ------- | ------- | ----- | --- | ---------------------------------------------- |
|
||||
| Resize | Y | | Y | |
|
||||
| Drag | Y | Y | Y | Linux - can always drag with `Meta`+left mouse |
|
||||
|
||||
@@ -340,7 +340,7 @@ TODO:
|
||||
### Mac Options
|
||||
|
||||
| Feature | Default | Notes |
|
||||
|-------------------------|-------------------|------------------------------------------------------|
|
||||
| ----------------------- | ----------------- | ---------------------------------------------------- |
|
||||
| Backdrop | MacBackdropNormal | Standard solid window |
|
||||
| DisableShadow | false | |
|
||||
| TitleBar | | Standard window decorations by default |
|
||||
@@ -356,7 +356,7 @@ TODO:
|
||||
### Windows Options
|
||||
|
||||
| Feature | Default | Notes |
|
||||
|-----------------------------------|---------------|---------------------------------------------|
|
||||
| --------------------------------- | ------------- | ------------------------------------------- |
|
||||
| BackdropType | Solid | |
|
||||
| DisableIcon | false | |
|
||||
| Theme | SystemDefault | |
|
||||
@@ -385,4 +385,3 @@ The examples can be compiled using the following command:
|
||||
CGO_ENABLED=0 go build -tags purego
|
||||
|
||||
Note: things are currently not working after the refactor
|
||||
|
||||
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
+14
-6
@@ -1,16 +1,23 @@
|
||||
# Feedback
|
||||
|
||||
We welcome (and encourage) your feedback! Please search for existing tickets or posts before creating new ones.
|
||||
Here are the different ways to provide feedback:
|
||||
We welcome (and encourage) your feedback! Please search for existing tickets or
|
||||
posts before creating new ones. Here are the different ways to provide feedback:
|
||||
|
||||
=== "Bugs"
|
||||
|
||||
If you find a bug, please let us know by posting into the [v3 Alpha Feedback](https://discord.gg/3mgVyGua) channel on Discord:
|
||||
|
||||
If you find a bug, please let us know by posting into the [v3 Alpha Feedback](https://discord.gg/3mgVyGua) channel on Discord.
|
||||
|
||||
- The post should clearly state what the bug is and have a simple reproducible example. If the docs are unclear what *should* happen, please include that in the post.
|
||||
- The post should be given the `Bug` tag.
|
||||
- Please include the output of `wails doctor` in your post.
|
||||
- *Remember* unexpected behaviour isn't necessarily a bug - it might just not do what you expect it to do. Use [Suggestions](#suggestions) for this.
|
||||
- If the bug is behaviour that does not align with current documentation, e.g. a window does not resize properly, please do the following:
|
||||
- Update an existing example in the `v3/example` directory or create a new example in the `v3/examples` folder that clearly shows the issue.
|
||||
- Open a [PR](https://github.com/wailsapp/wails/pulls) with the title `[v3 alpha test] <description of bug>`.
|
||||
- Please include a link to the PR in your post.
|
||||
|
||||
!!! warning
|
||||
*Remember*, unexpected behaviour isn't necessarily a bug - it might just not do what you expect it to do. Use [Suggestions](#suggestions) for this.
|
||||
|
||||
|
||||
=== "Fixes"
|
||||
|
||||
@@ -35,7 +42,8 @@ Here are the different ways to provide feedback:
|
||||
- Please *don't* just add comments like "+1" or "me too".
|
||||
- Please feel free to comment if there is more to add to the post, such as "this bug also affect ARM builds" or "Another option would be to ....."
|
||||
|
||||
There is a list of known issues & work in progress can be found [here](https://github.com/orgs/wailsapp/projects/6).
|
||||
There is a list of known issues & work in progress can be found
|
||||
[here](https://github.com/orgs/wailsapp/projects/6).
|
||||
|
||||
## Things we are looking for feedback on
|
||||
|
||||
+4
-2
@@ -5,7 +5,9 @@ installed and run:
|
||||
|
||||
```shell
|
||||
git clone https://github.com/wailsapp/wails.git
|
||||
cd wails/cmd/wails3
|
||||
cd wails
|
||||
git checkout v3-alpha
|
||||
cd v3/cmd/wails3
|
||||
go install
|
||||
```
|
||||
|
||||
@@ -14,7 +16,7 @@ go install
|
||||
- Windows 10/11 AMD64/ARM64
|
||||
- MacOS 10.13+ AMD64
|
||||
- MacOS 11.0+ ARM64
|
||||
- Linux AMD64/ARM64
|
||||
- Ubuntu 22.04 AMD64/ARM64 (other Linux may work too!)
|
||||
|
||||
## Dependencies
|
||||
|
||||
+1
-1
@@ -15,7 +15,7 @@ go run .
|
||||
|
||||
in the example directory.
|
||||
|
||||
The status of the examples is on the [roadmap](/roadmap).
|
||||
The status of the examples is on the [roadmap](../roadmap.md).
|
||||
|
||||
## Creating a new project
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user