Window State
Guarda las posiciones y tamaños de las ventanas y los restaura cuando la aplicación se vuelve a abrir.
Plataformas Soportadas
Sección titulada “Plataformas Soportadas”Este plugin requiere una versión de Rust de al menos 1.77.2
| Plataforma | Nivel | Notas |
|---|---|---|
| windows | ||
| linux | ||
| macos | ||
| android | ||
| ios |
Configuración
Sección titulada “Configuración”Instala el plugin window-state para comenzar.
Usa el gestor de paquetes de tu proyecto para agregar la dependencia:
npm run tauri add window-stateyarn run tauri add window-statepnpm tauri add window-statedeno task tauri add window-statebun tauri add window-statecargo tauri add window-state-
Ejecuta el siguiente comando en la carpeta
src-tauripara agregar el plugin a las dependencias del proyecto enCargo.toml:cargo add tauri-plugin-window-state --target 'cfg(any(target_os = "macos", windows, target_os = "linux"))' -
Modifica
lib.rspara inicializar el plugin:src-tauri/src/lib.rs #[cfg_attr(mobile, tauri::mobile_entry_point)]pub fn run() {tauri::Builder::default().setup(|app| {#[cfg(desktop)]app.handle().plugin(tauri_plugin_window_state::Builder::default().build());Ok(())}).run(tauri::generate_context!()).expect("error while running tauri application");} -
Instala los bindings de JavaScript utilizando tu gestor de paquetes de JavaScript preferido:
npm install @tauri-apps/plugin-window-stateyarn add @tauri-apps/plugin-window-statepnpm add @tauri-apps/plugin-window-statedeno add npm:@tauri-apps/plugin-window-statebun add @tauri-apps/plugin-window-state
Después de agregar el plugin window-state, todas las ventanas recordarán su estado cuando la aplicación se esté cerrando y se restaurarán a su estado anterior en el próximo lanzamiento.
También puedes acceder al plugin window-state tanto en JavaScript como en Rust.
JavaScript
Sección titulada “JavaScript”Puedes usar saveWindowState para guardar manualmente el estado de la ventana:
import { saveWindowState, StateFlags } from '@tauri-apps/plugin-window-state';// when using `"withGlobalTauri": true`, you may use// const { saveWindowState, StateFlags } = window.__TAURI__.windowState;
saveWindowState(StateFlags.ALL);Del mismo modo, puedes restaurar manualmente el estado de una ventana desde el disco:
import { restoreStateCurrent, StateFlags,} from '@tauri-apps/plugin-window-state';// when using `"withGlobalTauri": true`, you may use// const { restoreStateCurrent, StateFlags } = window.__TAURI__.windowState;
restoreStateCurrent(StateFlags.ALL);Puedes usar el método save_window_state() expuesto por el trait AppHandleExt:
use tauri_plugin_window_state::{AppHandleExt, StateFlags};
// `tauri::AppHandle` now has the following additional methodapp.save_window_state(StateFlags::all()); // will save the state of all open windows to diskDel mismo modo, puedes restaurar manualmente el estado de una ventana desde el disco usando el método restore_state() expuesto por el trait WindowExt:
use tauri_plugin_window_state::{WindowExt, StateFlags};
// all `Window` types now have the following additional methodwindow.restore_state(StateFlags::all()); // will restore the window's state from diskPermisos
Sección titulada “Permisos”De forma predeterminada, todos los comandos y alcances (scopes) potencialmente peligrosos del plugin están bloqueados y no se puede acceder a ellos. Debes modificar los permisos en tu configuración de capabilities para habilitarlos.
Consulta la Visión General de Capacidades para obtener más información y la guía paso a paso para usar permisos de plugins.
{ "permissions": [ ..., "window-state:default", ]}Permiso Predeterminado
Este conjunto de permisos configura qué tipo de operaciones están disponibles desde el plugin window-state.
Permisos Otorgados
Todas las operaciones están habilitadas por defecto.
Este conjunto de permisos predeterminado incluye lo siguiente:
allow-filenameallow-restore-stateallow-save-window-state
Tabla de Permisos
| Identificador | Descripción |
|---|---|
|
|
Habilita el comando filename sin ningún alcance preconfigurado. |
|
|
Deniega el comando filename sin ningún alcance preconfigurado. |
|
|
Habilita el comando restore_state sin ningún alcance preconfigurado. |
|
|
Deniega el comando restore_state sin ningún alcance preconfigurado. |
|
|
Habilita el comando save_window_state sin ningún alcance preconfigurado. |
|
|
Deniega el comando save_window_state sin ningún alcance preconfigurado. |
© 2026 Colaboradores de Tauri. CC-BY / MIT