tauri_plugin_window_state使用時に、一部のステータスを手動で実装するためにPlugin管理から除外する方法がドキュメントに記載されていなかったので、その方法を記録する。
Table of contents
Open Table of contents
はじめに
開発中のデスクトップアプリにtauri_plugin_window_stateを使用しているが、一部のステータスを除外しフロントエンド側で実装したいケースがあった。
tauri_plugin_window_stateの設定
tauri_plugin_window_stateがデフォルトで管理しているステータスは以下の通り。
"settings": {
"width": 400,
"height": 450,
"x": 1266,
"y": 389,
"prev_x": 1238,
"prev_y": 388,
"maximized": false,
"visible": true,
"decorated": true,
"fullscreen": false
},
ここから、visible
ステータスを除外する方法を記載する。
実装方法
main.rsを以下のように修正する。
fn main() {
let state_flags = StateFlags::all() - StateFlags::VISIBLE;
tauri::Builder::default()
.plugin(
tauri_plugin_window_state::Builder::default()
.with_state_flags(state_flags)
.build(),
)
.invoke_handler(tauri::generate_handler![greet])
.run(tauri::generate_context!())
.expect("error while running tauri application");
}
おわりに
tauriはプラグインのドキュメントが整備されると嬉しい。