From 18bb6bb702d00b76ba2fad8d8cb27def2f5950ba Mon Sep 17 00:00:00 2001 From: Yuri Karamian Date: Mon, 3 Aug 2026 15:54:17 +0200 Subject: [PATCH] Fix Linux startup theme flash (#195) --- src-tauri/capabilities/default.json | 1 + src-tauri/src/lib.rs | 11 +++++++- src-tauri/tauri.linux.conf.json | 10 ++++++++ src/routes/+page.svelte | 40 ++++++++++++++++++++++++++--- 4 files changed, 58 insertions(+), 4 deletions(-) create mode 100644 src-tauri/tauri.linux.conf.json diff --git a/src-tauri/capabilities/default.json b/src-tauri/capabilities/default.json index 967ee88..f7ed022 100644 --- a/src-tauri/capabilities/default.json +++ b/src-tauri/capabilities/default.json @@ -11,6 +11,7 @@ "core:window:allow-minimize", "core:window:allow-toggle-maximize", "core:window:allow-close", + "core:window:allow-show", "core:window:allow-is-maximized", "core:window:allow-set-decorations", "core:window:allow-is-fullscreen", diff --git a/src-tauri/src/lib.rs b/src-tauri/src/lib.rs index bd5777a..9343d2a 100644 --- a/src-tauri/src/lib.rs +++ b/src-tauri/src/lib.rs @@ -313,7 +313,16 @@ pub fn run() { })); builder = builder.plugin(tauri_plugin_updater::Builder::new().build()); - builder = builder.plugin(tauri_plugin_window_state::Builder::default().build()); + let window_state_builder = tauri_plugin_window_state::Builder::default(); + #[cfg(target_os = "linux")] + let window_state_builder = window_state_builder.with_state_flags( + tauri_plugin_window_state::StateFlags::SIZE + | tauri_plugin_window_state::StateFlags::POSITION + | tauri_plugin_window_state::StateFlags::MAXIMIZED + | tauri_plugin_window_state::StateFlags::DECORATIONS + | tauri_plugin_window_state::StateFlags::FULLSCREEN, + ); + builder = builder.plugin(window_state_builder.build()); builder = builder.on_window_event(move |window, event| { #[cfg(target_os = "macos")] diff --git a/src-tauri/tauri.linux.conf.json b/src-tauri/tauri.linux.conf.json new file mode 100644 index 0000000..1c382e6 --- /dev/null +++ b/src-tauri/tauri.linux.conf.json @@ -0,0 +1,10 @@ +{ + "app": { + "windows": [ + { + "label": "main", + "visible": false + } + ] + } +} diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index ee9d01a..10d8ba9 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -1,10 +1,11 @@