From 783888131efb8f9eef4516a33b15dc3d63d6e401 Mon Sep 17 00:00:00 2001 From: Brendan Allan Date: Wed, 11 Feb 2026 16:10:24 +0800 Subject: [PATCH] fix(desktop): read wayland preference from store (#13081) --- packages/desktop/src-tauri/src/lib.rs | 2 +- packages/desktop/src-tauri/src/linux_display.rs | 13 ++++++++----- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/packages/desktop/src-tauri/src/lib.rs b/packages/desktop/src-tauri/src/lib.rs index 5c3915e81..f50464a7b 100644 --- a/packages/desktop/src-tauri/src/lib.rs +++ b/packages/desktop/src-tauri/src/lib.rs @@ -402,7 +402,7 @@ fn check_linux_app(app_name: &str) -> bool { #[tauri::command] #[specta::specta] fn wsl_path(path: String, mode: Option) -> Result { - if !cfg(windows) { + if !cfg!(windows) { return Ok(path); } diff --git a/packages/desktop/src-tauri/src/linux_display.rs b/packages/desktop/src-tauri/src/linux_display.rs index 9e1cf9091..24fb27a4b 100644 --- a/packages/desktop/src-tauri/src/linux_display.rs +++ b/packages/desktop/src-tauri/src/linux_display.rs @@ -14,7 +14,7 @@ struct DisplayConfig { } fn dir() -> Option { - Some(dirs::data_dir()?.join("ai.opencode.desktop")) + Some(dirs::data_dir()?.join(if cfg!(debug_assertions) { "ai.opencode.desktop.dev" } else { "ai.opencode.desktop" })) } fn path() -> Option { @@ -22,10 +22,13 @@ fn path() -> Option { } pub fn read_wayland() -> Option { - let path = path()?; - let raw = std::fs::read_to_string(path).ok()?; - let config = serde_json::from_str::(&raw).ok()?; - config.wayland + let raw = std::fs::read_to_string(dbg!(path()?)).ok()?; + let root = serde_json::from_str::(&raw) + .ok()? + .get(LINUX_DISPLAY_CONFIG_KEY).cloned()?; + serde_json::from_value::(root) + .ok()? + .wayland } pub fn write_wayland(app: &AppHandle, value: bool) -> Result<(), String> {