From f043176d1987b6e2dd3acbea2719fa3af2e4ffaa Mon Sep 17 00:00:00 2001 From: aeoform <2790848120@qq.com> Date: Sat, 16 May 2026 11:03:46 +0800 Subject: [PATCH] fix(linux): correct Fn hotkey mapping from Super_L to RightControl Fn key does not generate a standard X11 keysym on Linux. The previous mapping to Super_L (0xffeb) was incorrect and would bind the Windows/Super key instead. Map to RightControl (0xffe4) to match the existing fallback convention used on Windows (VK_RCONTROL) and in the coordinator's hotkey matching logic. Co-Authored-By: Claude Opus 4.7 --- openless-all/app/src-tauri/src/linux_fcitx.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/openless-all/app/src-tauri/src/linux_fcitx.rs b/openless-all/app/src-tauri/src/linux_fcitx.rs index cf19dbcf..1ca3e5a2 100644 --- a/openless-all/app/src-tauri/src/linux_fcitx.rs +++ b/openless-all/app/src-tauri/src/linux_fcitx.rs @@ -99,7 +99,7 @@ fn trigger_to_keysym(trigger: crate::types::HotkeyTrigger) -> u32 { crate::types::HotkeyTrigger::RightOption | crate::types::HotkeyTrigger::RightAlt => KEYSYM_ALT_R, crate::types::HotkeyTrigger::LeftOption => KEYSYM_ALT_L, crate::types::HotkeyTrigger::RightCommand => KEYSYM_SUPER_R, - crate::types::HotkeyTrigger::Fn => KEYSYM_SUPER_L, + crate::types::HotkeyTrigger::Fn => KEYSYM_CONTROL_R, crate::types::HotkeyTrigger::Custom => unreachable!(), } } @@ -111,7 +111,7 @@ fn trigger_name(trigger: crate::types::HotkeyTrigger) -> &'static str { crate::types::HotkeyTrigger::RightOption | crate::types::HotkeyTrigger::RightAlt => "Alt_R", crate::types::HotkeyTrigger::LeftOption => "Alt_L", crate::types::HotkeyTrigger::RightCommand => "Super_R", - crate::types::HotkeyTrigger::Fn => "Super_L", + crate::types::HotkeyTrigger::Fn => "Control_R", crate::types::HotkeyTrigger::Custom => unreachable!(), } }