Desktop: Add some missing key codes (#3011)

Add some missing key codes
This commit is contained in:
Timon 2025-08-06 15:33:13 +02:00 committed by GitHub
parent b1f2cf706e
commit 1742e6000a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 280 additions and 218 deletions

View File

@ -140,68 +140,100 @@ impl ToVKBits for char {
fn to_vk_bits(&self) -> i32 {
map!(
self,
(0x0041, 'a'),
(0x0042, 'b'),
(0x0043, 'c'),
(0x0044, 'd'),
(0x0045, 'e'),
(0x0046, 'f'),
(0x0047, 'g'),
(0x0048, 'h'),
(0x0049, 'i'),
(0x004a, 'j'),
(0x004b, 'k'),
(0x004c, 'l'),
(0x004d, 'm'),
(0x004e, 'n'),
(0x004f, 'o'),
(0x0050, 'p'),
(0x0051, 'q'),
(0x0052, 'r'),
(0x0053, 's'),
(0x0054, 't'),
(0x0055, 'u'),
(0x0056, 'v'),
(0x0057, 'w'),
(0x0058, 'x'),
(0x0059, 'y'),
(0x005a, 'z'),
(0x0041, 'A'),
(0x0042, 'B'),
(0x0043, 'C'),
(0x0044, 'D'),
(0x0045, 'E'),
(0x0046, 'F'),
(0x0047, 'G'),
(0x0048, 'H'),
(0x0049, 'I'),
(0x004a, 'J'),
(0x004b, 'K'),
(0x004c, 'L'),
(0x004d, 'M'),
(0x004e, 'N'),
(0x004f, 'O'),
(0x0050, 'P'),
(0x0051, 'Q'),
(0x0052, 'R'),
(0x0053, 'S'),
(0x0054, 'T'),
(0x0055, 'U'),
(0x0056, 'V'),
(0x0057, 'W'),
(0x0058, 'X'),
(0x0059, 'Y'),
(0x005a, 'Z'),
(0x0031, '1'),
(0x0032, '2'),
(0x0032, '3'),
(0x0033, '4'),
(0x0034, '5'),
(0x0035, '6'),
(0x0036, '7'),
(0x0037, '8'),
(0x0039, '9'),
(0x0030, '0'),
(0x41, 'a'),
(0x42, 'b'),
(0x43, 'c'),
(0x44, 'd'),
(0x45, 'e'),
(0x46, 'f'),
(0x47, 'g'),
(0x48, 'h'),
(0x49, 'i'),
(0x4a, 'j'),
(0x4b, 'k'),
(0x4c, 'l'),
(0x4d, 'm'),
(0x4e, 'n'),
(0x4f, 'o'),
(0x50, 'p'),
(0x51, 'q'),
(0x52, 'r'),
(0x53, 's'),
(0x54, 't'),
(0x55, 'u'),
(0x56, 'v'),
(0x57, 'w'),
(0x58, 'x'),
(0x59, 'y'),
(0x5a, 'z'),
(0x41, 'A'),
(0x42, 'B'),
(0x43, 'C'),
(0x44, 'D'),
(0x45, 'E'),
(0x46, 'F'),
(0x47, 'G'),
(0x48, 'H'),
(0x49, 'I'),
(0x4a, 'J'),
(0x4b, 'K'),
(0x4c, 'L'),
(0x4d, 'M'),
(0x4e, 'N'),
(0x4f, 'O'),
(0x50, 'P'),
(0x51, 'Q'),
(0x52, 'R'),
(0x53, 'S'),
(0x54, 'T'),
(0x55, 'U'),
(0x56, 'V'),
(0x57, 'W'),
(0x58, 'X'),
(0x59, 'Y'),
(0x5a, 'Z'),
(0x31, '1'),
(0x32, '2'),
(0x33, '3'),
(0x34, '4'),
(0x35, '5'),
(0x36, '6'),
(0x37, '7'),
(0x38, '8'),
(0x39, '9'),
(0x30, '0'),
(0x31, '!'),
(0x32, '@'),
(0x33, '#'),
(0x34, '$'),
(0x35, '%'),
(0x36, '^'),
(0x37, '&'),
(0x38, '*'),
(0x39, '('),
(0x30, ')'),
(0xC0, '`'),
(0xC0, '~'),
(0xBD, '-'),
(0xBD, '_'),
(0xBB, '='),
(0xBB, '+'),
(0xDB, '['),
(0xDB, '{'),
(0xDD, ']'),
(0xDD, '}'),
(0xDC, '\\'),
(0xDC, '|'),
(0xBA, ';'),
(0xBA, ':'),
(0xBC, ','),
(0xBC, '<'),
(0xBE, '.'),
(0xBE, '>'),
(0xDE, '\''),
(0xDE, '"'),
(0xBF, '/'),
(0xBF, '?'),
)
}
}
@ -217,100 +249,98 @@ impl ToDomBits for winit::keyboard::NamedKey {
map_enum!(
self,
NamedKey,
(0x0000, Hyper),
(0x0085, Super),
(0x0025, Control),
(0x0032, Shift),
(0x0040, Alt),
(0x0000, Fn),
(0x0000, FnLock),
(0x0024, Enter),
(0x0009, Escape),
(0x0016, Backspace),
(0x0017, Tab),
(0x0041, Space),
(0x0042, CapsLock),
(0x0043, F1),
(0x0044, F2),
(0x0045, F3),
(0x0046, F4),
(0x0047, F5),
(0x0048, F6),
(0x0049, F7),
(0x004a, F8),
(0x004b, F9),
(0x004c, F10),
(0x005f, F11),
(0x0060, F12),
(0x006b, PrintScreen),
(0x004e, ScrollLock),
(0x007f, Pause),
(0x0076, Insert),
(0x006e, Home),
(0x0070, PageUp),
(0x0077, Delete),
(0x0073, End),
(0x0075, PageDown),
(0x0072, ArrowRight),
(0x0071, ArrowLeft),
(0x0074, ArrowDown),
(0x006f, ArrowUp),
(0x004d, NumLock),
(0x0087, ContextMenu),
(0x007c, Power),
(0x00bf, F13),
(0x00c0, F14),
(0x00c1, F15),
(0x00c2, F16),
(0x00c3, F17),
(0x00c4, F18),
(0x00c5, F19),
(0x00c6, F20),
(0x00c7, F21),
(0x00c8, F22),
(0x00c9, F23),
(0x00ca, F24),
(0x008e, Open),
(0x0092, Help),
(0x008c, Select),
(0x0089, Again),
(0x008b, Undo),
(0x0091, Cut),
(0x008d, Copy),
(0x008f, Paste),
(0x0090, Find),
(0x0079, AudioVolumeMute),
(0x007b, AudioVolumeUp),
(0x007a, AudioVolumeDown),
(0x0065, KanaMode),
(0x0064, Convert),
(0x0066, NonConvert),
(0x0000, Props),
(0x00e9, BrightnessUp),
(0x00e8, BrightnessDown),
(0x00d7, MediaPlay),
(0x00d1, MediaPause),
(0x00af, MediaRecord),
(0x00d8, MediaFastForward),
(0x00b0, MediaRewind),
(0x00ab, MediaTrackNext),
(0x00ad, MediaTrackPrevious),
(0x00ae, MediaStop),
(0x00a9, Eject),
(0x00ac, MediaPlayPause),
(0x00a3, LaunchMail),
(0x024d, LaunchScreenSaver),
(0x00e1, BrowserSearch),
(0x00b4, BrowserHome),
(0x00a6, BrowserBack),
(0x00a7, BrowserForward),
(0x0088, BrowserStop),
(0x00b5, BrowserRefresh),
(0x00a4, BrowserFavorites),
(0x017c, ZoomToggle),
(0x00f0, MailReply),
(0x00f1, MailForward),
(0x00ef, MailSend),
(0x00, Hyper),
(0x85, Super),
(0x25, Control),
(0x32, Shift),
(0x40, Alt),
(0x00, Fn),
(0x00, FnLock),
(0x24, Enter),
(0x09, Escape),
(0x16, Backspace),
(0x17, Tab),
(0x41, Space),
(0x42, CapsLock),
(0x43, F1),
(0x44, F2),
(0x45, F3),
(0x46, F4),
(0x47, F5),
(0x48, F6),
(0x49, F7),
(0x4a, F8),
(0x4b, F9),
(0x4c, F10),
(0x5f, F11),
(0x60, F12),
(0x6b, PrintScreen),
(0x4e, ScrollLock),
(0x7f, Pause),
(0x76, Insert),
(0x6e, Home),
(0x70, PageUp),
(0x77, Delete),
(0x73, End),
(0x75, PageDown),
(0x72, ArrowRight),
(0x71, ArrowLeft),
(0x74, ArrowDown),
(0x6f, ArrowUp),
(0x4d, NumLock),
(0x87, ContextMenu),
(0x7c, Power),
(0xbf, F13),
(0xc0, F14),
(0xc1, F15),
(0xc2, F16),
(0xc3, F17),
(0xc4, F18),
(0xc5, F19),
(0xc6, F20),
(0xc7, F21),
(0xc8, F22),
(0xc9, F23),
(0xca, F24),
(0x8e, Open),
(0x92, Help),
(0x8c, Select),
(0x89, Again),
(0x8b, Undo),
(0x91, Cut),
(0x8d, Copy),
(0x8f, Paste),
(0x90, Find),
(0x79, AudioVolumeMute),
(0x7b, AudioVolumeUp),
(0x7a, AudioVolumeDown),
(0x65, KanaMode),
(0x64, Convert),
(0x66, NonConvert),
(0x00, Props),
(0xe9, BrightnessUp),
(0xe8, BrightnessDown),
(0xd7, MediaPlay),
(0xd1, MediaPause),
(0xaf, MediaRecord),
(0xd8, MediaFastForward),
(0xb0, MediaRewind),
(0xab, MediaTrackNext),
(0xad, MediaTrackPrevious),
(0xae, MediaStop),
(0xa9, Eject),
(0xac, MediaPlayPause),
(0xa3, LaunchMail),
(0xe1, BrowserSearch),
(0xb4, BrowserHome),
(0xa6, BrowserBack),
(0xa7, BrowserForward),
(0x88, BrowserStop),
(0xb5, BrowserRefresh),
(0xa4, BrowserFavorites),
(0xf0, MailReply),
(0xf1, MailForward),
(0xef, MailSend),
)
}
}
@ -319,68 +349,100 @@ impl ToDomBits for char {
fn to_dom_bits(&self) -> i32 {
map!(
self,
(0x0026, 'a'),
(0x0038, 'b'),
(0x0036, 'c'),
(0x0028, 'd'),
(0x001a, 'e'),
(0x0029, 'f'),
(0x002a, 'g'),
(0x002b, 'h'),
(0x001f, 'i'),
(0x002c, 'j'),
(0x002d, 'k'),
(0x002e, 'l'),
(0x003a, 'm'),
(0x0039, 'n'),
(0x0020, 'o'),
(0x0021, 'p'),
(0x0018, 'q'),
(0x001b, 'r'),
(0x0027, 's'),
(0x001c, 't'),
(0x001e, 'u'),
(0x0037, 'v'),
(0x0019, 'w'),
(0x0035, 'x'),
(0x001d, 'y'),
(0x0034, 'z'),
(0x0026, 'A'),
(0x0038, 'B'),
(0x0036, 'C'),
(0x0028, 'D'),
(0x001a, 'E'),
(0x0029, 'F'),
(0x002a, 'G'),
(0x002b, 'H'),
(0x001f, 'I'),
(0x002c, 'J'),
(0x002d, 'K'),
(0x002e, 'L'),
(0x003a, 'M'),
(0x0039, 'N'),
(0x0020, 'O'),
(0x0021, 'P'),
(0x0018, 'Q'),
(0x001b, 'R'),
(0x0027, 'S'),
(0x001c, 'T'),
(0x001e, 'U'),
(0x0037, 'V'),
(0x0019, 'W'),
(0x0035, 'X'),
(0x001d, 'Y'),
(0x0034, 'Z'),
(0x000a, '1'),
(0x000b, '2'),
(0x000c, '3'),
(0x000d, '4'),
(0x000e, '5'),
(0x000f, '6'),
(0x0010, '7'),
(0x0011, '8'),
(0x0012, '9'),
(0x0013, '0'),
(0x26, 'a'),
(0x38, 'b'),
(0x36, 'c'),
(0x28, 'd'),
(0x1a, 'e'),
(0x29, 'f'),
(0x2a, 'g'),
(0x2b, 'h'),
(0x1f, 'i'),
(0x2c, 'j'),
(0x2d, 'k'),
(0x2e, 'l'),
(0x3a, 'm'),
(0x39, 'n'),
(0x20, 'o'),
(0x21, 'p'),
(0x18, 'q'),
(0x1b, 'r'),
(0x27, 's'),
(0x1c, 't'),
(0x1e, 'u'),
(0x37, 'v'),
(0x19, 'w'),
(0x35, 'x'),
(0x1d, 'y'),
(0x34, 'z'),
(0x26, 'A'),
(0x38, 'B'),
(0x36, 'C'),
(0x28, 'D'),
(0x1a, 'E'),
(0x29, 'F'),
(0x2a, 'G'),
(0x2b, 'H'),
(0x1f, 'I'),
(0x2c, 'J'),
(0x2d, 'K'),
(0x2e, 'L'),
(0x3a, 'M'),
(0x39, 'N'),
(0x20, 'O'),
(0x21, 'P'),
(0x18, 'Q'),
(0x1b, 'R'),
(0x27, 'S'),
(0x1c, 'T'),
(0x1e, 'U'),
(0x37, 'V'),
(0x19, 'W'),
(0x35, 'X'),
(0x1d, 'Y'),
(0x34, 'Z'),
(0x0a, '1'),
(0x0b, '2'),
(0x0c, '3'),
(0x0d, '4'),
(0x0e, '5'),
(0x0f, '6'),
(0x10, '7'),
(0x11, '8'),
(0x12, '9'),
(0x13, '0'),
(0x0a, '!'),
(0x0b, '@'),
(0x0c, '#'),
(0x0d, '$'),
(0x0e, '%'),
(0x0f, '^'),
(0x10, '&'),
(0x11, '*'),
(0x12, '('),
(0x13, ')'),
(0x31, '`'),
(0x31, '~'),
(0x14, '-'),
(0x14, '_'),
(0x15, '='),
(0x15, '+'),
(0x22, '['),
(0x22, '{'),
(0x23, ']'),
(0x23, '}'),
(0x33, '\\'),
(0x33, '|'),
(0x2f, ';'),
(0x2f, ':'),
(0x3b, ','),
(0x3b, '<'),
(0x3c, '.'),
(0x3c, '>'),
(0x30, '\''),
(0x30, '"'),
(0x3d, '/'),
(0x3d, '?'),
)
}
}