From d58c0a7df56c7c2aeec08366fa5ea9e0d570ae8e Mon Sep 17 00:00:00 2001 From: Sergey Kharenko Date: Tue, 26 Aug 2025 02:50:44 +0900 Subject: [PATCH] fix: auto-detect KDE/Plasma and switch to X11 as backend to fix titlebar button freeze (#4523) --- src-tauri/src/lib.rs | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src-tauri/src/lib.rs b/src-tauri/src/lib.rs index 93c02238..8a686b15 100644 --- a/src-tauri/src/lib.rs +++ b/src-tauri/src/lib.rs @@ -435,16 +435,17 @@ pub fn run() { let desktop_env = std::env::var("XDG_CURRENT_DESKTOP") .unwrap_or_default() .to_uppercase(); + let session_env = std::env::var("XDG_SESSION_TYPE").unwrap_or_default(); let is_kde_desktop = desktop_env.contains("KDE"); - let is_plasma_desktop = desktop_env.contains("PLASMA"); + let is_wayland_session = session_env.contains("wayland"); - if is_kde_desktop || is_plasma_desktop { - std::env::set_var("GTK_CSD", "0"); + if is_kde_desktop && is_wayland_session { + std::env::set_var("GDK_BACKEND", "x11"); logging!( info, Type::Setup, true, - "KDE detected: Disabled GTK CSD for better titlebar stability." + "KDE Wayland detected: Switched to X11 backend for better titlebar stability." ); } }