diff --git a/src-tauri/src/lib.rs b/src-tauri/src/lib.rs index d2d4fd2e..e73a70fd 100644 --- a/src-tauri/src/lib.rs +++ b/src-tauri/src/lib.rs @@ -1724,93 +1724,81 @@ async fn cmd_check_for_updates( #[cfg_attr(mobile, tauri::mobile_entry_point)] pub fn run() { #[allow(unused_mut)] - let mut builder = - tauri::Builder::default() - .plugin( - Builder::default() - .targets([ - Target::new(TargetKind::Stdout), - Target::new(TargetKind::LogDir { file_name: None }), - Target::new(TargetKind::Webview), - ]) - .level_for("plugin_runtime", log::LevelFilter::Info) - .level_for("cookie_store", log::LevelFilter::Info) - .level_for("eventsource_client::event_parser", log::LevelFilter::Info) - .level_for("h2", log::LevelFilter::Info) - .level_for("hyper", log::LevelFilter::Info) - .level_for("hyper_util", log::LevelFilter::Info) - .level_for("hyper_rustls", log::LevelFilter::Info) - .level_for("reqwest", log::LevelFilter::Info) - .level_for("sqlx", log::LevelFilter::Warn) - .level_for("tao", log::LevelFilter::Info) - .level_for("tokio_util", log::LevelFilter::Info) - .level_for("tonic", log::LevelFilter::Info) - .level_for("tower", log::LevelFilter::Info) - .level_for("tracing", log::LevelFilter::Warn) - .level_for("swc_ecma_codegen", log::LevelFilter::Off) - .level_for("swc_ecma_transforms_base", log::LevelFilter::Off) - .with_colors(ColoredLevelConfig::default()) - .level(if is_dev() { log::LevelFilter::Debug } else { log::LevelFilter::Info }) - .build(), - ) - .plugin( - Builder::default() - .targets([ - Target::new(TargetKind::Stdout), - Target::new(TargetKind::LogDir { file_name: None }), - Target::new(TargetKind::Webview), - ]) - .level_for("plugin_runtime", log::LevelFilter::Info) - .level_for("cookie_store", log::LevelFilter::Info) - .level_for("eventsource_client::event_parser", log::LevelFilter::Info) - .level_for("h2", log::LevelFilter::Info) - .level_for("hyper", log::LevelFilter::Info) - .level_for("hyper_util", log::LevelFilter::Info) - .level_for("hyper_rustls", log::LevelFilter::Info) - .level_for("reqwest", log::LevelFilter::Info) - .level_for("sqlx", log::LevelFilter::Warn) - .level_for("tao", log::LevelFilter::Info) - .level_for("tokio_util", log::LevelFilter::Info) - .level_for("tonic", log::LevelFilter::Info) - .level_for("tower", log::LevelFilter::Info) - .level_for("tracing", log::LevelFilter::Warn) - .level_for("swc_ecma_codegen", log::LevelFilter::Off) - .level_for("swc_ecma_transforms_base", log::LevelFilter::Off) - .with_colors(ColoredLevelConfig::default()) - .level(if is_dev() { log::LevelFilter::Debug } else { log::LevelFilter::Info }) - .build(), - ) - .plugin(tauri_plugin_single_instance::init(|app, _args, _cwd| { - // When trying to open a new app instance (common operation on Linux), - // focus the first existing window we find instead of opening a new one - // TODO: Keep track of the last focused window and always focus that one - if let Some(window) = app.webview_windows().values().next() { - let _ = window.set_focus(); - } - })) - .plugin(tauri_plugin_clipboard_manager::init()) - .plugin(tauri_plugin_opener::init()) - .plugin( - tauri_plugin_window_state::Builder::default() - .with_denylist(&["ignored"]) - .map_label(|label| { - if label.starts_with(OTHER_WINDOW_PREFIX) { - "ignored" - } else { - label - } - }) - .build(), - ) - .plugin(tauri_plugin_shell::init()) - .plugin(tauri_plugin_updater::Builder::default().build()) - .plugin(tauri_plugin_dialog::init()) - .plugin(tauri_plugin_os::init()) - .plugin(tauri_plugin_fs::init()) - .plugin(yaak_license::init()) - .plugin(yaak_models::plugin::Builder::default().build()) - .plugin(yaak_plugins::init()) - .plugin(yaak_sync::init()); + let mut builder = tauri::Builder::default() + .plugin( + Builder::default() + .targets([ + Target::new(TargetKind::Stdout), + Target::new(TargetKind::LogDir { file_name: None }), + Target::new(TargetKind::Webview), + ]) + .level_for("plugin_runtime", log::LevelFilter::Info) + .level_for("cookie_store", log::LevelFilter::Info) + .level_for("eventsource_client::event_parser", log::LevelFilter::Info) + .level_for("h2", log::LevelFilter::Info) + .level_for("hyper", log::LevelFilter::Info) + .level_for("hyper_util", log::LevelFilter::Info) + .level_for("hyper_rustls", log::LevelFilter::Info) + .level_for("reqwest", log::LevelFilter::Info) + .level_for("sqlx", log::LevelFilter::Warn) + .level_for("tao", log::LevelFilter::Info) + .level_for("tokio_util", log::LevelFilter::Info) + .level_for("tonic", log::LevelFilter::Info) + .level_for("tower", log::LevelFilter::Info) + .level_for("tracing", log::LevelFilter::Warn) + .level_for("swc_ecma_codegen", log::LevelFilter::Off) + .level_for("swc_ecma_transforms_base", log::LevelFilter::Off) + .with_colors(ColoredLevelConfig::default()) + .level(if is_dev() { log::LevelFilter::Debug } else { log::LevelFilter::Info }) + .build(), + ) + .plugin( + Builder::default() + .targets([ + Target::new(TargetKind::Stdout), + Target::new(TargetKind::LogDir { file_name: None }), + Target::new(TargetKind::Webview), + ]) + .level_for("plugin_runtime", log::LevelFilter::Info) + .level_for("cookie_store", log::LevelFilter::Info) + .level_for("eventsource_client::event_parser", log::LevelFilter::Info) + .level_for("h2", log::LevelFilter::Info) + .level_for("hyper", log::LevelFilter::Info) + .level_for("hyper_util", log::LevelFilter::Info) + .level_for("hyper_rustls", log::LevelFilter::Info) + .level_for("reqwest", log::LevelFilter::Info) + .level_for("sqlx", log::LevelFilter::Warn) + .level_for("tao", log::LevelFilter::Info) + .level_for("tokio_util", log::LevelFilter::Info) + .level_for("tonic", log::LevelFilter::Info) + .level_for("tower", log::LevelFilter::Info) + .level_for("tracing", log::LevelFilter::Warn) + .level_for("swc_ecma_codegen", log::LevelFilter::Off) + .level_for("swc_ecma_transforms_base", log::LevelFilter::Off) + .with_colors(ColoredLevelConfig::default()) + .level(if is_dev() { log::LevelFilter::Debug } else { log::LevelFilter::Info }) + .build(), + ) + .plugin(tauri_plugin_single_instance::init(|app, _args, _cwd| { + // When trying to open a new app instance (common operation on Linux), + // focus the first existing window we find instead of opening a new one + // TODO: Keep track of the last focused window and always focus that one + if let Some(window) = app.webview_windows().values().next() { + let _ = window.set_focus(); + } + })) + .plugin(tauri_plugin_clipboard_manager::init()) + .plugin(tauri_plugin_opener::init()) + .plugin(tauri_plugin_window_state::Builder::default().build()) + .plugin(tauri_plugin_shell::init()) + .plugin(tauri_plugin_updater::Builder::default().build()) + .plugin(tauri_plugin_dialog::init()) + .plugin(tauri_plugin_os::init()) + .plugin(tauri_plugin_fs::init()) + .plugin(yaak_license::init()) + .plugin(yaak_models::plugin::Builder::default().build()) + .plugin(yaak_plugins::init()) + .plugin(yaak_sync::init()); #[cfg(target_os = "macos")] { @@ -2019,9 +2007,7 @@ fn create_main_window(handle: &AppHandle, url: &str) -> WebviewWindow { ), }; - let window = create_window(handle, config); - - window + create_window(handle, config) } struct CreateWindowConfig<'s> { @@ -2115,16 +2101,6 @@ fn create_window(handle: &AppHandle, config: CreateWindowConfig) -> WebviewWindo } }); - // Restore window state if it's a main window - let flags = if config.label.starts_with(OTHER_WINDOW_PREFIX) { - StateFlags::SIZE // Windows like settings just restore size - } else { - StateFlags::all() // Main workspace windows restore everything - }; - if let Err(e) = win.restore_state(flags) { - warn!("Failed to restore window state {e:?}"); - } - win }