wails/v3/pkg/application/window.go
Andrey Pshenkin 561473d992
[V3] Refactor binding transport layer (#4702)
* custom transport initial

* transport codecs

* runtime set transport

* events transport

* clauded example

* bundled runtime

* wip: transport

* rework transports

* rework dialog responses

* cleanup

* cleanup

* improve error handling in HTTPTransport

* cleanup

* cleanup

* cleanup

* cleanup

* review changes

* review changes

* review changes

* review changes

* review changes

* review changes

* review changes

* move documentation to website docs

* update doc

* update changelog

* introduce JSClient method for transport for embedding JS part in transport

---------

Co-authored-by: Atterpac <Capretta.Michael@gmail.com>
Co-authored-by: Lea Anthony <lea.anthony@gmail.com>
2025-12-07 22:19:12 +11:00

104 lines
2.4 KiB
Go

package application
import (
"unsafe"
"github.com/wailsapp/wails/v3/pkg/events"
)
type Window interface {
Center()
Close()
DisableSizeConstraints()
DispatchWailsEvent(event *CustomEvent)
EmitEvent(name string, data ...any) bool
EnableSizeConstraints()
Error(message string, args ...any)
ExecJS(js string)
Focus()
ForceReload()
Fullscreen() Window
GetBorderSizes() *LRTB
GetScreen() (*Screen, error)
GetZoom() float64
HandleDragAndDropMessage(filenames []string, dropZone *DropZoneDetails)
InitiateFrontendDropProcessing(filenames []string, x int, y int)
HandleMessage(message string)
HandleWindowEvent(id uint)
Height() int
Hide() Window
HideMenuBar()
ID() uint
Info(message string, args ...any)
IsFocused() bool
IsFullscreen() bool
IsIgnoreMouseEvents() bool
IsMaximised() bool
IsMinimised() bool
HandleKeyEvent(acceleratorString string)
Maximise() Window
Minimise() Window
Name() string
OnWindowEvent(eventType events.WindowEventType, callback func(event *WindowEvent)) func()
OpenContextMenu(data *ContextMenuData)
Position() (int, int)
RelativePosition() (int, int)
Reload()
Resizable() bool
Restore()
Run()
SetPosition(x, y int)
SetAlwaysOnTop(b bool) Window
SetBackgroundColour(colour RGBA) Window
SetFrameless(frameless bool) Window
SetHTML(html string) Window
SetMinimiseButtonState(state ButtonState) Window
SetMaximiseButtonState(state ButtonState) Window
SetCloseButtonState(state ButtonState) Window
SetMaxSize(maxWidth, maxHeight int) Window
SetMinSize(minWidth, minHeight int) Window
SetRelativePosition(x, y int) Window
SetResizable(b bool) Window
SetIgnoreMouseEvents(ignore bool) Window
SetSize(width, height int) Window
SetTitle(title string) Window
SetURL(s string) Window
SetZoom(magnification float64) Window
Show() Window
ShowMenuBar()
Size() (width int, height int)
OpenDevTools()
ToggleFullscreen()
ToggleMaximise()
ToggleMenuBar()
ToggleFrameless()
UnFullscreen()
UnMaximise()
UnMinimise()
Width() int
IsVisible() bool
Bounds() Rect
SetBounds(bounds Rect)
Zoom()
ZoomIn()
ZoomOut()
ZoomReset() Window
SetMenu(menu *Menu)
SnapAssist()
SetContentProtection(protection bool) Window
NativeWindow() unsafe.Pointer
SetEnabled(enabled bool)
Flash(enabled bool)
Print() error
RegisterHook(eventType events.WindowEventType, callback func(event *WindowEvent)) func()
shouldUnconditionallyClose() bool
// Editing methods
cut()
copy()
paste()
undo()
redo()
delete()
selectAll()
}