Provides APIs to create windows, communicate with other windows and manipulate the current window.
This package is also accessible with window.__TAURI__.window
when tauri.conf.json > build > withGlobalTauri
is set to true.
The APIs must be allowlisted on tauri.conf.json
:
{
"tauri": {
"allowlist": {
"window": {
"all": true, // enable all window APIs
"create": true // enable window creation
}
}
}
}
It is recommended to allowlist only the APIs you use for optimal bundle size and security.
#
Window eventsEvents can be listened using appWindow.listen
:
import { appWindow } from '@tauri-apps/api/window'
appWindow.listen('tauri://move', ({ event, payload }) => {
const { x, y } = payload // payload here is a `PhysicalPosition`
})
Window-specific events emitted by the backend:
#
'tauri://resize'Emitted when the size of the window has changed. EventPayload:
type ResizePayload = PhysicalSize
#
'tauri://move'Emitted when the position of the window has changed. EventPayload:
type MovePayload = PhysicalPosition
#
'tauri://close-requested'Emitted when the user requests the window to be closed.
#
'tauri://destroyed'Emitted after the window is closed.
#
'tauri://focus'Emitted when the window gains focus.
#
'tauri://blur'Emitted when the window loses focus.
#
'tauri://scale-change'Emitted when the window's scale factor has changed. The following user actions can cause DPI changes:
- Changing the display's resolution.
- Changing the display's scale factor (e.g. in Control Panel on Windows).
- Moving the window to a display with a different scale factor. Event payload:
interface ScaleFactorChanged {
scaleFactor: number
size: PhysicalSize
}
#
'tauri://menu'Emitted when a menu item is clicked. EventPayload:
type MenuClicked = string
#
Enumerations#
Classes#
Interfaces#
Variables#
appWindow• Const
appWindow: WebviewWindow
The WebviewWindow for the current window.
#
Defined in#
Functions#
availableMonitors▸ availableMonitors(): Promise
<Monitor
[]>
Returns the list of all the monitors available on the system.
#
ReturnsPromise
<Monitor
[]>
#
Defined in#
currentMonitor▸ currentMonitor(): Promise
<Monitor
| null
>
Returns the monitor on which the window currently resides.
Returns null
if current monitor can't be detected.
#
ReturnsPromise
<Monitor
| null
>
#
Defined in#
getAll▸ getAll(): WebviewWindow
[]
Gets an instance of WebviewWindow
for all available webview windows.
#
ReturnsThe list of WebviewWindow.
#
Defined in#
getCurrent▸ getCurrent(): WebviewWindow
Get an instance of WebviewWindow
for the current webview window.
#
ReturnsThe current WebviewWindow.
#
Defined in#
primaryMonitor▸ primaryMonitor(): Promise
<Monitor
| null
>
Returns the primary monitor of the system.
Returns null
if it can't identify any monitor as a primary one.
#
ReturnsPromise
<Monitor
| null
>