mirror of
https://github.com/wailsapp/wails.git
synced 2025-05-19 18:39:30 +08:00
Intial STATUS.md commit
This commit is contained in:
parent
c7e5608a60
commit
a66d9ab0b1
249
v3/STATUS.md
Normal file
249
v3/STATUS.md
Normal file
@ -0,0 +1,249 @@
|
|||||||
|
# Status
|
||||||
|
|
||||||
|
Status of features in v3. Incomplete - please add as you see fit.
|
||||||
|
|
||||||
|
## Application
|
||||||
|
|
||||||
|
Application interface methods
|
||||||
|
|
||||||
|
| Method | Windows | Linux | Mac | Notes |
|
||||||
|
|---------------------------------------------------------------|---------|-------|-----|-------|
|
||||||
|
| run() error | | | ✅ | |
|
||||||
|
| destroy() | | | ✅ | |
|
||||||
|
| setApplicationMenu(menu *Menu) | | | ✅ | |
|
||||||
|
| name() string | | | ✅ | |
|
||||||
|
| getCurrentWindowID() uint | | | ✅ | |
|
||||||
|
| showAboutDialog(name string, description string, icon []byte) | | | ✅ | |
|
||||||
|
| setIcon(icon []byte) | | | ✅ | |
|
||||||
|
| on(id uint) | | | ✅ | |
|
||||||
|
| dispatchOnMainThread(id uint) | | | ✅ | |
|
||||||
|
| hide() | | | ✅ | |
|
||||||
|
| show() | | | ✅ | |
|
||||||
|
|
||||||
|
## Webview Window
|
||||||
|
|
||||||
|
Webview Window Interface Methods
|
||||||
|
|
||||||
|
| Method | Windows | Linux | Mac | Notes |
|
||||||
|
|----------------------------------------------------|---------|-------|-----|-------|
|
||||||
|
| setTitle(title string) | | | ✅ | |
|
||||||
|
| setSize(width, height int) | | | ✅ | |
|
||||||
|
| setAlwaysOnTop(alwaysOnTop bool) | | | ✅ | |
|
||||||
|
| setURL(url string) | | | ✅ | |
|
||||||
|
| setResizable(resizable bool) | | | ✅ | |
|
||||||
|
| setMinSize(width, height int) | | | ✅ | |
|
||||||
|
| setMaxSize(width, height int) | | | ✅ | |
|
||||||
|
| execJS(js string) | | | ✅ | |
|
||||||
|
| restore() | | | ✅ | |
|
||||||
|
| setBackgroundColour(color *RGBA) | | | ✅ | |
|
||||||
|
| run() | | | ✅ | |
|
||||||
|
| center() | | | ✅ | |
|
||||||
|
| size() (int, int) | | | ✅ | |
|
||||||
|
| width() int | | | ✅ | |
|
||||||
|
| height() int | | | ✅ | |
|
||||||
|
| position() (int, int) | | | ✅ | |
|
||||||
|
| destroy() | | | ✅ | |
|
||||||
|
| reload() | | | ✅ | |
|
||||||
|
| forceReload() | | | ✅ | |
|
||||||
|
| toggleDevTools() | | | ✅ | |
|
||||||
|
| zoomReset() | | | ✅ | |
|
||||||
|
| zoomIn() | | | ✅ | |
|
||||||
|
| zoomOut() | | | ✅ | |
|
||||||
|
| getZoom() float64 | | | ✅ | |
|
||||||
|
| setZoom(zoom float64) | | | ✅ | |
|
||||||
|
| close() | | | ✅ | |
|
||||||
|
| zoom() | | | ✅ | |
|
||||||
|
| setHTML(html string) | | | ✅ | |
|
||||||
|
| setPosition(x int, y int) | | | ✅ | |
|
||||||
|
| on(eventID uint) | | | ✅ | |
|
||||||
|
| minimise() | | | ✅ | |
|
||||||
|
| unminimise() | | | ✅ | |
|
||||||
|
| maximise() | | | ✅ | |
|
||||||
|
| unmaximise() | | | ✅ | |
|
||||||
|
| fullscreen() | | | ✅ | |
|
||||||
|
| unfullscreen() | | | ✅ | |
|
||||||
|
| isMinimised() bool | | | ✅ | |
|
||||||
|
| isMaximised() bool | | | ✅ | |
|
||||||
|
| isFullscreen() bool | | | ✅ | |
|
||||||
|
| disableSizeConstraints() | | | ✅ | |
|
||||||
|
| setFullscreenButtonEnabled(enabled bool) | | | ✅ | |
|
||||||
|
| show() | | | ✅ | |
|
||||||
|
| hide() | | | ✅ | |
|
||||||
|
| getScreen() (*Screen, error) | | | ✅ | |
|
||||||
|
| setFrameless(bool) | | | ✅ | |
|
||||||
|
| openContextMenu(menu *Menu, data *ContextMenuData) | | | ✅ | |
|
||||||
|
|
||||||
|
## Runtime
|
||||||
|
|
||||||
|
### Application
|
||||||
|
|
||||||
|
| Feature | Windows | Linux | Mac | Notes |
|
||||||
|
|---------|---------|-------|-----|-------|
|
||||||
|
| Quit | | | ✅ | |
|
||||||
|
| Hide | | | ✅ | |
|
||||||
|
| Show | | | ✅ | |
|
||||||
|
|
||||||
|
### Dialogs
|
||||||
|
|
||||||
|
| Feature | Windows | Linux | Mac | Notes |
|
||||||
|
|----------|---------|-------|-----|-------|
|
||||||
|
| Info | | | ✅ | |
|
||||||
|
| Warning | | | ✅ | |
|
||||||
|
| Error | | | ✅ | |
|
||||||
|
| Question | | | ✅ | |
|
||||||
|
| OpenFile | | | ✅ | |
|
||||||
|
| SaveFile | | | ✅ | |
|
||||||
|
|
||||||
|
### Clipboard
|
||||||
|
|
||||||
|
| Feature | Windows | Linux | Mac | Notes |
|
||||||
|
|---------|---------|-------|-----|-------|
|
||||||
|
| SetText | | | ✅ | |
|
||||||
|
| Text | | | ✅ | |
|
||||||
|
|
||||||
|
### ContextMenu
|
||||||
|
|
||||||
|
| Feature | Windows | Linux | Mac | Notes |
|
||||||
|
|-----------------|---------|-------|-----|-------|
|
||||||
|
| OpenContextMenu | | | ✅ | |
|
||||||
|
|
||||||
|
### Screens
|
||||||
|
|
||||||
|
| Feature | Windows | Linux | Mac | Notes |
|
||||||
|
|------------|---------|-------|-----|-------|
|
||||||
|
| GetAll | | | ✅ | |
|
||||||
|
| GetPrimary | | | ✅ | |
|
||||||
|
| GetCurrent | | | ✅ | |
|
||||||
|
|
||||||
|
### Window
|
||||||
|
|
||||||
|
| Feature | Windows | Linux | Mac | Notes |
|
||||||
|
|---------------------|---------|-------|-----|------------------------|
|
||||||
|
| SetTitle | | | ✅ | |
|
||||||
|
| SetSize | | | ✅ | |
|
||||||
|
| Size | | | ✅ | |
|
||||||
|
| SetPosition | | | ✅ | |
|
||||||
|
| Position | | | ✅ | |
|
||||||
|
| FullScreen | | | ✅ | |
|
||||||
|
| UnFullscreen | | | ✅ | |
|
||||||
|
| Minimise | | | ✅ | |
|
||||||
|
| UnMinimise | | | ✅ | |
|
||||||
|
| Maximise | | | ✅ | |
|
||||||
|
| UnMaximise | | | ✅ | |
|
||||||
|
| Show | | | ✅ | |
|
||||||
|
| Hide | | | ✅ | |
|
||||||
|
| Center | | | ✅ | |
|
||||||
|
| SetBackgroundColour | | | ✅ | |
|
||||||
|
| SetAlwaysOnTop | | | ✅ | |
|
||||||
|
| SetResizable | | | ✅ | |
|
||||||
|
| SetMinSize | | | ✅ | |
|
||||||
|
| SetMaxSize | | | ✅ | |
|
||||||
|
| Width | | | ✅ | |
|
||||||
|
| Height | | | ✅ | |
|
||||||
|
| ZoomIn | | | ✅ | Increase view scale |
|
||||||
|
| ZoomOut | | | ✅ | Decrease view scale |
|
||||||
|
| ZoomReset | | | ✅ | Reset view scale |
|
||||||
|
| GetZoom | | | ✅ | Get current view scale |
|
||||||
|
| SetZoom | | | ✅ | Set view scale |
|
||||||
|
| Screen | | | ✅ | Get screen for window |
|
||||||
|
|
||||||
|
### Log
|
||||||
|
|
||||||
|
To log or not to log? System logger vs custom logger.
|
||||||
|
|
||||||
|
## Menu
|
||||||
|
|
||||||
|
| Event | Windows | Linux | Mac | Notes |
|
||||||
|
|--------------------------|---------|-------|-----|-------|
|
||||||
|
| Default Application Menu | | | ✅ | |
|
||||||
|
|
||||||
|
## Tray Menus
|
||||||
|
|
||||||
|
| Feature | Windows | Linux | Mac | Notes |
|
||||||
|
|--------------------|---------|-------|-----|-------|
|
||||||
|
| Icon | | | ✅ | |
|
||||||
|
| Label | | | ✅ | |
|
||||||
|
| Label (ANSI Codes) | | | | |
|
||||||
|
| Menu | | | ✅ | |
|
||||||
|
|
||||||
|
## Cross Platform Events
|
||||||
|
|
||||||
|
Mapping native events to cross-platform events.
|
||||||
|
|
||||||
|
| Event | Windows | Linux | Mac | Notes |
|
||||||
|
|--------------------------|---------|-------|-----------------|-------|
|
||||||
|
| WindowWillClose | | | WindowWillClose | |
|
||||||
|
| WindowDidClose | | | | |
|
||||||
|
| WindowDidResize | | | | |
|
||||||
|
| WindowDidHide | | | | |
|
||||||
|
| ApplicationWillTerminate | | | | |
|
||||||
|
|
||||||
|
... Add more
|
||||||
|
|
||||||
|
## Bindings Generation
|
||||||
|
|
||||||
|
TBD
|
||||||
|
|
||||||
|
## Models Generation
|
||||||
|
|
||||||
|
TBD
|
||||||
|
|
||||||
|
## Task file
|
||||||
|
|
||||||
|
TBD
|
||||||
|
|
||||||
|
## Theme
|
||||||
|
|
||||||
|
| Plugin | Windows | Linux | Mac | Notes |
|
||||||
|
|-----------------|---------|-------|-----|-------|
|
||||||
|
| Dark | | | | |
|
||||||
|
| Light | | | | |
|
||||||
|
| System | | | | |
|
||||||
|
|
||||||
|
## NSIS Installer
|
||||||
|
|
||||||
|
TBD
|
||||||
|
|
||||||
|
## Templates
|
||||||
|
|
||||||
|
TBD
|
||||||
|
|
||||||
|
## Plugins
|
||||||
|
|
||||||
|
Built-in plugin support:
|
||||||
|
|
||||||
|
| Plugin | Windows | Linux | Mac | Notes |
|
||||||
|
|-----------------|---------|-------|-----|-------|
|
||||||
|
| Browser | | | ✅ | |
|
||||||
|
| KV Store | | | ✅ | |
|
||||||
|
| Log | | | ✅ | |
|
||||||
|
| Single Instance | | | ✅ | |
|
||||||
|
| SQLite | | | ✅ | |
|
||||||
|
| Start at login | | | ✅ | |
|
||||||
|
| Server | | | | |
|
||||||
|
|
||||||
|
## Packaging
|
||||||
|
|
||||||
|
| | Windows | Linux | Mac | Notes |
|
||||||
|
|-----------------|---------|-------|-----|-------|
|
||||||
|
| Icon Generation | | | ✅ | |
|
||||||
|
| Icon Embedding | | | ✅ | |
|
||||||
|
| Info.plist | | | ✅ | |
|
||||||
|
| NSIS Installer | | | | |
|
||||||
|
| Mac bundle | | | ✅ | |
|
||||||
|
| Windows exe | | | | |
|
||||||
|
|
||||||
|
## Frameless Windows
|
||||||
|
|
||||||
|
| Feature | Windows | Linux | Mac | Notes |
|
||||||
|
|---------|---------|-------|----|-------|
|
||||||
|
| Resize | | | | |
|
||||||
|
| Drag | | | | |
|
||||||
|
|
||||||
|
## Mac Specific
|
||||||
|
|
||||||
|
- [x] Translucency
|
||||||
|
|
||||||
|
## Windows Specific
|
||||||
|
|
||||||
|
## Linux Specific
|
49
v3/TODO.md
49
v3/TODO.md
@ -1,49 +0,0 @@
|
|||||||
# TODO
|
|
||||||
|
|
||||||
Informal and incomplete list of things needed in v3.
|
|
||||||
|
|
||||||
## General
|
|
||||||
|
|
||||||
- [x] Generate Bindings
|
|
||||||
- [x] Generate TS Models
|
|
||||||
- [ ] Dev Mode
|
|
||||||
- [ ] Generate Info.Plist from `info.json`
|
|
||||||
|
|
||||||
- [ ] Windows Port
|
|
||||||
- [ ] Linux Port
|
|
||||||
|
|
||||||
## Runtime
|
|
||||||
|
|
||||||
- [x] Pass window ID with window calls in JS
|
|
||||||
- [x] Implement alias for `window` in JS
|
|
||||||
- [x] Implement runtime dispatcher
|
|
||||||
- [x] Log
|
|
||||||
- [x] Same Window
|
|
||||||
- [ ] Other Window
|
|
||||||
- [x] Dialogs
|
|
||||||
- [x] Info
|
|
||||||
- [x] Warning
|
|
||||||
- [x] Error
|
|
||||||
- [x] Question
|
|
||||||
- [x] OpenFile
|
|
||||||
- [x] SaveFile
|
|
||||||
- [x] Events
|
|
||||||
- [x] Screens
|
|
||||||
- [x] Clipboard
|
|
||||||
- [x] Application
|
|
||||||
- [ ] Create `.d.ts` file
|
|
||||||
|
|
||||||
## Templates
|
|
||||||
|
|
||||||
- [ ] Create plain template
|
|
||||||
- [ ] Improve default template
|
|
||||||
|
|
||||||
## Runtime
|
|
||||||
|
|
||||||
- [ ] To log or not to log?
|
|
||||||
- [ ] Unify cross-platform events, eg. `onClose`
|
|
||||||
|
|
||||||
## Plugins
|
|
||||||
|
|
||||||
- [ ] Move logins to `v3/plugins`
|
|
||||||
- [ ] Expose application logger to plugins
|
|
Loading…
Reference in New Issue
Block a user