@ -54,7 +54,7 @@
*
* Events can be listened to using ` appWindow.listen ` :
* ` ` ` typescript
* import { appWindow } from " tauri-plugin-window-api ";
* import { appWindow } from " @tauri-apps/window ";
* appWindow . listen ( "my-window-event" , ( { event , payload } ) = > { } ) ;
* ` ` `
*
@ -144,7 +144,7 @@ class PhysicalSize {
* Converts the physical size to a logical one .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* const factor = await appWindow . scaleFactor ( ) ;
* const size = await appWindow . innerSize ( ) ;
* const logical = size . toLogical ( factor ) ;
@ -190,7 +190,7 @@ class PhysicalPosition {
* Converts the physical position to a logical one .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* const factor = await appWindow . scaleFactor ( ) ;
* const position = await appWindow . innerPosition ( ) ;
* const logical = position . toLogical ( factor ) ;
@ -319,7 +319,8 @@ class WebviewWindowHandle {
/** The window label. It is a unique identifier for the window, can be used to reference it later. */
label : WindowLabel ;
/** Local event listeners. */
listeners : Record < string , Array < EventCallback < unknown > >> ;
// eslint-disable-next-line @typescript-eslint/no-explicit-any
listeners : Record < string , Array < EventCallback < any > >> ;
constructor ( label : WindowLabel ) {
this . label = label ;
@ -332,7 +333,7 @@ class WebviewWindowHandle {
*
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* const unlisten = await appWindow . listen < string > ( 'state-changed' , ( event ) = > {
* console . log ( ` Got error: ${ payload } ` ) ;
* } ) ;
@ -365,7 +366,7 @@ class WebviewWindowHandle {
*
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* const unlisten = await appWindow . once < null > ( 'initialized' , ( event ) = > {
* console . log ( ` Window initialized! ` ) ;
* } ) ;
@ -394,7 +395,7 @@ class WebviewWindowHandle {
* Emits an event to the backend , tied to the webview window .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* await appWindow . emit ( 'window-loaded' , { loggedIn : true , token : 'authToken' } ) ;
* ` ` `
*
@ -440,7 +441,7 @@ class WindowManager extends WebviewWindowHandle {
* The scale factor that can be used to map physical pixels to logical pixels .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* const factor = await appWindow . scaleFactor ( ) ;
* ` ` `
*
@ -456,7 +457,7 @@ class WindowManager extends WebviewWindowHandle {
* The position of the top - left hand corner of the window ' s client area relative to the top - left hand corner of the desktop .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* const position = await appWindow . innerPosition ( ) ;
* ` ` `
*
@ -472,7 +473,7 @@ class WindowManager extends WebviewWindowHandle {
* The position of the top - left hand corner of the window relative to the top - left hand corner of the desktop .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* const position = await appWindow . outerPosition ( ) ;
* ` ` `
*
@ -489,7 +490,7 @@ class WindowManager extends WebviewWindowHandle {
* The client area is the content of the window , excluding the title bar and borders .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* const size = await appWindow . innerSize ( ) ;
* ` ` `
*
@ -509,7 +510,7 @@ class WindowManager extends WebviewWindowHandle {
* These dimensions include the title bar and borders . If you don 't want that (and you usually don' t ) , use inner_size instead .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* const size = await appWindow . outerSize ( ) ;
* ` ` `
*
@ -528,7 +529,7 @@ class WindowManager extends WebviewWindowHandle {
* Gets the window ' s current fullscreen state .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* const fullscreen = await appWindow . isFullscreen ( ) ;
* ` ` `
*
@ -544,7 +545,7 @@ class WindowManager extends WebviewWindowHandle {
* Gets the window ' s current minimized state .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* const minimized = await appWindow . isMinimized ( ) ;
* ` ` `
*
@ -560,7 +561,7 @@ class WindowManager extends WebviewWindowHandle {
* Gets the window ' s current maximized state .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* const maximized = await appWindow . isMaximized ( ) ;
* ` ` `
*
@ -576,7 +577,7 @@ class WindowManager extends WebviewWindowHandle {
* Gets the window ' s current decorated state .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* const decorated = await appWindow . isDecorated ( ) ;
* ` ` `
*
@ -592,7 +593,7 @@ class WindowManager extends WebviewWindowHandle {
* Gets the window ' s current resizable state .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* const resizable = await appWindow . isResizable ( ) ;
* ` ` `
*
@ -608,7 +609,7 @@ class WindowManager extends WebviewWindowHandle {
* Gets the window ' s current visible state .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* const visible = await appWindow . isVisible ( ) ;
* ` ` `
*
@ -624,7 +625,7 @@ class WindowManager extends WebviewWindowHandle {
* Gets the window ' s current title .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* const title = await appWindow . title ( ) ;
* ` ` `
*
@ -645,7 +646,7 @@ class WindowManager extends WebviewWindowHandle {
*
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* const theme = await appWindow . theme ( ) ;
* ` ` `
*
@ -663,7 +664,7 @@ class WindowManager extends WebviewWindowHandle {
* Centers the window .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* await appWindow . center ( ) ;
* ` ` `
*
@ -690,7 +691,7 @@ class WindowManager extends WebviewWindowHandle {
* - * * Linux : * * Urgency levels have the same effect .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* await appWindow . requestUserAttention ( ) ;
* ` ` `
*
@ -719,7 +720,7 @@ class WindowManager extends WebviewWindowHandle {
* Updates the window resizable flag .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* await appWindow . setResizable ( false ) ;
* ` ` `
*
@ -737,7 +738,7 @@ class WindowManager extends WebviewWindowHandle {
* Sets the window title .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* await appWindow . setTitle ( 'Tauri' ) ;
* ` ` `
*
@ -755,7 +756,7 @@ class WindowManager extends WebviewWindowHandle {
* Maximizes the window .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* await appWindow . maximize ( ) ;
* ` ` `
*
@ -771,7 +772,7 @@ class WindowManager extends WebviewWindowHandle {
* Unmaximizes the window .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* await appWindow . unmaximize ( ) ;
* ` ` `
*
@ -787,7 +788,7 @@ class WindowManager extends WebviewWindowHandle {
* Toggles the window maximized state .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* await appWindow . toggleMaximize ( ) ;
* ` ` `
*
@ -803,7 +804,7 @@ class WindowManager extends WebviewWindowHandle {
* Minimizes the window .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* await appWindow . minimize ( ) ;
* ` ` `
*
@ -819,7 +820,7 @@ class WindowManager extends WebviewWindowHandle {
* Unminimizes the window .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* await appWindow . unminimize ( ) ;
* ` ` `
*
@ -835,7 +836,7 @@ class WindowManager extends WebviewWindowHandle {
* Sets the window visibility to true .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* await appWindow . show ( ) ;
* ` ` `
*
@ -851,7 +852,7 @@ class WindowManager extends WebviewWindowHandle {
* Sets the window visibility to false .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* await appWindow . hide ( ) ;
* ` ` `
*
@ -867,7 +868,7 @@ class WindowManager extends WebviewWindowHandle {
* Closes the window .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* await appWindow . close ( ) ;
* ` ` `
*
@ -883,7 +884,7 @@ class WindowManager extends WebviewWindowHandle {
* Whether the window should have borders and bars .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* await appWindow . setDecorations ( false ) ;
* ` ` `
*
@ -910,7 +911,7 @@ class WindowManager extends WebviewWindowHandle {
*
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* await appWindow . setShadow ( false ) ;
* ` ` `
*
@ -929,7 +930,7 @@ class WindowManager extends WebviewWindowHandle {
* Whether the window should always be on top of other windows .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* await appWindow . setAlwaysOnTop ( true ) ;
* ` ` `
*
@ -947,7 +948,7 @@ class WindowManager extends WebviewWindowHandle {
* Prevents the window contents from being captured by other apps .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* await appWindow . setContentProtected ( true ) ;
* ` ` `
*
@ -966,7 +967,7 @@ class WindowManager extends WebviewWindowHandle {
* Resizes the window with a new inner size .
* @example
* ` ` ` typescript
* import { appWindow , LogicalSize } from ' tauri-plugin-window-api ';
* import { appWindow , LogicalSize } from ' @tauri-apps/window ';
* await appWindow . setSize ( new LogicalSize ( 600 , 500 ) ) ;
* ` ` `
*
@ -996,7 +997,7 @@ class WindowManager extends WebviewWindowHandle {
* Sets the window minimum inner size . If the ` size ` argument is not provided , the constraint is unset .
* @example
* ` ` ` typescript
* import { appWindow , PhysicalSize } from ' tauri-plugin-window-api ';
* import { appWindow , PhysicalSize } from ' @tauri-apps/window ';
* await appWindow . setMinSize ( new PhysicalSize ( 600 , 500 ) ) ;
* ` ` `
*
@ -1030,7 +1031,7 @@ class WindowManager extends WebviewWindowHandle {
* Sets the window maximum inner size . If the ` size ` argument is undefined , the constraint is unset .
* @example
* ` ` ` typescript
* import { appWindow , LogicalSize } from ' tauri-plugin-window-api ';
* import { appWindow , LogicalSize } from ' @tauri-apps/window ';
* await appWindow . setMaxSize ( new LogicalSize ( 600 , 500 ) ) ;
* ` ` `
*
@ -1064,7 +1065,7 @@ class WindowManager extends WebviewWindowHandle {
* Sets the window outer position .
* @example
* ` ` ` typescript
* import { appWindow , LogicalPosition } from ' tauri-plugin-window-api ';
* import { appWindow , LogicalPosition } from ' @tauri-apps/window ';
* await appWindow . setPosition ( new LogicalPosition ( 600 , 500 ) ) ;
* ` ` `
*
@ -1099,7 +1100,7 @@ class WindowManager extends WebviewWindowHandle {
* Sets the window fullscreen state .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* await appWindow . setFullscreen ( true ) ;
* ` ` `
*
@ -1117,7 +1118,7 @@ class WindowManager extends WebviewWindowHandle {
* Bring the window to front and focus .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* await appWindow . setFocus ( ) ;
* ` ` `
*
@ -1133,7 +1134,7 @@ class WindowManager extends WebviewWindowHandle {
* Sets the window icon .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* await appWindow . setIcon ( '/tauri/awesome.png' ) ;
* ` ` `
*
@ -1162,7 +1163,7 @@ class WindowManager extends WebviewWindowHandle {
* - * * macOS : * * Unsupported .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* await appWindow . setSkipTaskbar ( true ) ;
* ` ` `
*
@ -1188,7 +1189,7 @@ class WindowManager extends WebviewWindowHandle {
* - * * macOS : * * This locks the cursor in a fixed location , which looks visually awkward .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* await appWindow . setCursorGrab ( true ) ;
* ` ` `
*
@ -1212,7 +1213,7 @@ class WindowManager extends WebviewWindowHandle {
* outside of the window .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* await appWindow . setCursorVisible ( false ) ;
* ` ` `
*
@ -1230,7 +1231,7 @@ class WindowManager extends WebviewWindowHandle {
* Modifies the cursor icon of the window .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* await appWindow . setCursorIcon ( 'help' ) ;
* ` ` `
*
@ -1248,7 +1249,7 @@ class WindowManager extends WebviewWindowHandle {
* Changes the position of the cursor in window coordinates .
* @example
* ` ` ` typescript
* import { appWindow , LogicalPosition } from ' tauri-plugin-window-api ';
* import { appWindow , LogicalPosition } from ' @tauri-apps/window ';
* await appWindow . setCursorPosition ( new LogicalPosition ( 600 , 300 ) ) ;
* ` ` `
*
@ -1284,7 +1285,7 @@ class WindowManager extends WebviewWindowHandle {
*
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* await appWindow . setIgnoreCursorEvents ( true ) ;
* ` ` `
*
@ -1302,7 +1303,7 @@ class WindowManager extends WebviewWindowHandle {
* Starts dragging the window .
* @example
* ` ` ` typescript
* import { appWindow } from ' tauri-plugin-window-api ';
* import { appWindow } from ' @tauri-apps/window ';
* await appWindow . startDragging ( ) ;
* ` ` `
*
@ -1321,7 +1322,7 @@ class WindowManager extends WebviewWindowHandle {
*
* @example
* ` ` ` typescript
* import { appWindow } from " tauri-plugin-window-api ";
* import { appWindow } from " @tauri-apps/window ";
* const unlisten = await appWindow . onResized ( ( { payload : size } ) = > {
* console . log ( 'Window resized' , size ) ;
* } ) ;
@ -1347,7 +1348,7 @@ class WindowManager extends WebviewWindowHandle {
*
* @example
* ` ` ` typescript
* import { appWindow } from " tauri-plugin-window-api ";
* import { appWindow } from " @tauri-apps/window ";
* const unlisten = await appWindow . onMoved ( ( { payload : position } ) = > {
* console . log ( 'Window moved' , position ) ;
* } ) ;
@ -1373,7 +1374,7 @@ class WindowManager extends WebviewWindowHandle {
*
* @example
* ` ` ` typescript
* import { appWindow } from " tauri-plugin-window-api ";
* import { appWindow } from " @tauri-apps/window ";
* import { confirm } from '@tauri-apps/api/dialog' ;
* const unlisten = await appWindow . onCloseRequested ( async ( event ) = > {
* const confirmed = await confirm ( 'Are you sure?' ) ;
@ -1412,7 +1413,7 @@ class WindowManager extends WebviewWindowHandle {
*
* @example
* ` ` ` typescript
* import { appWindow } from " tauri-plugin-window-api ";
* import { appWindow } from " @tauri-apps/window ";
* const unlisten = await appWindow . onFocusChanged ( ( { payload : focused } ) = > {
* console . log ( 'Focus changed, window is focused? ' + focused ) ;
* } ) ;
@ -1454,7 +1455,7 @@ class WindowManager extends WebviewWindowHandle {
*
* @example
* ` ` ` typescript
* import { appWindow } from " tauri-plugin-window-api ";
* import { appWindow } from " @tauri-apps/window ";
* const unlisten = await appWindow . onScaleChanged ( ( { payload } ) = > {
* console . log ( 'Scale changed' , payload . scaleFactor , payload . size ) ;
* } ) ;
@ -1482,7 +1483,7 @@ class WindowManager extends WebviewWindowHandle {
*
* @example
* ` ` ` typescript
* import { appWindow } from " tauri-plugin-window-api ";
* import { appWindow } from " @tauri-apps/window ";
* const unlisten = await appWindow . onMenuClicked ( ( { payload : menuId } ) = > {
* console . log ( 'Menu clicked: ' + menuId ) ;
* } ) ;
@ -1507,7 +1508,7 @@ class WindowManager extends WebviewWindowHandle {
*
* @example
* ` ` ` typescript
* import { appWindow } from " tauri-plugin-window-api ";
* import { appWindow } from " @tauri-apps/window ";
* const unlisten = await appWindow . onFileDropEvent ( ( event ) = > {
* if ( event . payload . type === 'hover' ) {
* console . log ( 'User hovering' , event . payload . paths ) ;
@ -1563,7 +1564,7 @@ class WindowManager extends WebviewWindowHandle {
*
* @example
* ` ` ` typescript
* import { appWindow } from " tauri-plugin-window-api ";
* import { appWindow } from " @tauri-apps/window ";
* const unlisten = await appWindow . onThemeChanged ( ( { payload : theme } ) = > {
* console . log ( 'New theme: ' + theme ) ;
* } ) ;
@ -1647,7 +1648,7 @@ class WebviewWindow extends WindowManager {
* Creates a new WebviewWindow .
* @example
* ` ` ` typescript
* import { WebviewWindow } from ' tauri-plugin-window-api ';
* import { WebviewWindow } from ' @tauri-apps/window ';
* const webview = new WebviewWindow ( 'my-label' , {
* url : 'https://github.com/tauri-apps/tauri'
* } ) ;
@ -1681,7 +1682,7 @@ class WebviewWindow extends WindowManager {
* Gets the WebviewWindow for the webview associated with the given label .
* @example
* ` ` ` typescript
* import { WebviewWindow } from ' tauri-plugin-window-api ';
* import { WebviewWindow } from ' @tauri-apps/window ';
* const mainWindow = WebviewWindow . getByLabel ( 'main' ) ;
* ` ` `
*
@ -1850,7 +1851,7 @@ function mapPhysicalSize(m: PhysicalSize): PhysicalSize {
* Returns ` null ` if current monitor can ' t be detected .
* @example
* ` ` ` typescript
* import { currentMonitor } from ' tauri-plugin-window-api ';
* import { currentMonitor } from ' @tauri-apps/window ';
* const monitor = currentMonitor ( ) ;
* ` ` `
*
@ -1867,7 +1868,7 @@ async function currentMonitor(): Promise<Monitor | null> {
* Returns ` null ` if it can ' t identify any monitor as a primary one .
* @example
* ` ` ` typescript
* import { primaryMonitor } from ' tauri-plugin-window-api ';
* import { primaryMonitor } from ' @tauri-apps/window ';
* const monitor = primaryMonitor ( ) ;
* ` ` `
*
@ -1883,7 +1884,7 @@ async function primaryMonitor(): Promise<Monitor | null> {
* Returns the list of all the monitors available on the system .
* @example
* ` ` ` typescript
* import { availableMonitors } from ' tauri-plugin-window-api ';
* import { availableMonitors } from ' @tauri-apps/window ';
* const monitors = availableMonitors ( ) ;
* ` ` `
*