fix: Show modifiers in KO list (Shift+H -> Del)
KO list now displays modifier names alongside key names: - "Shift+H" instead of just "H" - Uses mod_name() to decode the bitmask Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
e8f4ee41a6
commit
803505113b
1 changed files with 16 additions and 2 deletions
18
src/main.rs
18
src/main.rs
|
|
@ -1577,10 +1577,24 @@ fn main() {
|
||||||
"ko" => {
|
"ko" => {
|
||||||
let ko_data = logic::parsers::parse_ko_lines(&lines);
|
let ko_data = logic::parsers::parse_ko_lines(&lines);
|
||||||
let model: Vec<KeyOverrideData> = ko_data.iter().enumerate().map(|(i, ko)| {
|
let model: Vec<KeyOverrideData> = ko_data.iter().enumerate().map(|(i, ko)| {
|
||||||
|
let trig_key = keycode::hid_key_name(ko[0]);
|
||||||
|
let trig_mod = keycode::mod_name(ko[1]);
|
||||||
|
let res_key = keycode::hid_key_name(ko[2]);
|
||||||
|
let res_mod = keycode::mod_name(ko[3]);
|
||||||
|
let trigger = if ko[1] != 0 {
|
||||||
|
format!("{}+{}", trig_mod, trig_key)
|
||||||
|
} else {
|
||||||
|
trig_key
|
||||||
|
};
|
||||||
|
let result = if ko[3] != 0 {
|
||||||
|
format!("{}+{}", res_mod, res_key)
|
||||||
|
} else {
|
||||||
|
res_key
|
||||||
|
};
|
||||||
KeyOverrideData {
|
KeyOverrideData {
|
||||||
index: i as i32,
|
index: i as i32,
|
||||||
trigger: SharedString::from(keycode::hid_key_name(ko[0])),
|
trigger: SharedString::from(trigger),
|
||||||
result: SharedString::from(keycode::hid_key_name(ko[2])),
|
result: SharedString::from(result),
|
||||||
}
|
}
|
||||||
}).collect();
|
}).collect();
|
||||||
window.global::<AdvancedBridge>().set_key_overrides(
|
window.global::<AdvancedBridge>().set_key_overrides(
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue