diff --git a/Controllers/RazerController/RazerDevices.cpp b/Controllers/RazerController/RazerDevices.cpp index a5d2d9ef..d843bbd6 100644 --- a/Controllers/RazerController/RazerDevices.cpp +++ b/Controllers/RazerController/RazerDevices.cpp @@ -427,6 +427,47 @@ keyboard_keymap_overlay_values razer_blade_15_2022_layout } }; +keyboard_keymap_overlay_values razer_blade_17_pro_2021_layout +{ + KEYBOARD_SIZE::KEYBOARD_SIZE_SEVENTY_FIVE, + { + { /* ANSI Value set not used */ }, + { + /* Add more regional layout fixes here */ + } + }, + { + /*---------------------------------------------------------------------------------------------------------*\ + | Edit Keys | + | Zone, Row, Column, Value, Key, OpCode, | + \*---------------------------------------------------------------------------------------------------------*/ + { 0, 0, 0, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* Shift all rows right by one */ + { 0, 1, 0, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* */ + { 0, 2, 0, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* */ + { 0, 3, 0, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* */ + { 0, 4, 0, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* */ + { 0, 5, 0, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* */ + { 0, 1, 14, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* Rows 1-4 have an empty spot in */ + { 0, 2, 14, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* 14th column */ + { 0, 3, 14, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* */ + { 0, 4, 14, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* */ + { 0, 0, 2, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_REMOVE_SHIFT_LEFT }, /* Remove empty spot between Esc and F1 */ + { 0, 0, 14, 0, KEY_EN_INSERT, KEYBOARD_OPCODE_SWAP_ONLY }, /* Swap in Delete after F12 */ + { 0, 0, 15, 0, KEY_EN_DELETE, KEYBOARD_OPCODE_SWAP_ONLY }, /* Swap in Power after Delete */ + { 0, 5, 2, 0, KEY_EN_LEFT_FUNCTION, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* Insert left Fn between Ctrl and Win */ + { 0, 5, 4, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* Add empty spot between Win and Alt */ + { 0, 5, 9, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_REMOVE_SHIFT_LEFT }, /* Remove Space */ + { 0, 5, 9, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_REMOVE_SHIFT_LEFT }, /* Remove unused */ + { 0, 5, 9, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_REMOVE_SHIFT_LEFT }, /* Remove unused */ + { 0, 5, 9, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_REMOVE_SHIFT_LEFT }, /* Remove unused */ + { 0, 5, 11, 0, KEY_EN_UNUSED, KEYBOARD_OPCODE_REMOVE_SHIFT_LEFT }, /* Remove Menu */ + { 0, 5, 12, 0, KEY_EN_LEFT_ARROW, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* Add Left Arrow at the end of row 5 */ + { 0, 5, 13, 0, KEY_EN_UP_ARROW, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* Add Up Arrow at the end of row 5 */ + { 0, 5, 14, 0, KEY_EN_RIGHT_ARROW, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* Add Right Arrow at the end of row 5 */ + { 0, 5, 15, 0, KEY_EN_DOWN_ARROW, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* Add Down Arrow at the end of row 5 */ + } +}; + keyboard_keymap_overlay_values razer_deathstalker_v2_layout { KEYBOARD_SIZE::KEYBOARD_SIZE_FULL, @@ -570,7 +611,6 @@ keyboard_keymap_overlay_values razer_laptop_common_layout { 0, 5, 13, 0, KEY_EN_UP_ARROW, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* Add Up Arrow at the end of row 5 */ { 0, 5, 14, 0, KEY_EN_RIGHT_ARROW, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* Add Right Arrow at the end of row 5 */ { 0, 5, 15, 0, KEY_EN_DOWN_ARROW, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT }, /* Add Down Arrow at the end of row 5 */ - } }; @@ -619,96 +659,6 @@ keyboard_keymap_overlay_values razer_laptop_with_spacebar_layout /*-------------------------------------------------------------------------*\ | OLD_KEYMAPS | \*-------------------------------------------------------------------------*/ -#define BLADE_17_PRO_2021_KEYMAP_SIZE (sizeof(blade_17_pro_2021_keymap) / sizeof(blade_17_pro_2021_keymap[0])) - -static const razer_key blade_17_pro_2021_keymap[] = -{ - /*-------------------------------------------------------------------------------------------------------------*\ - | Zone, Row, Column, Key Layout Type | - \*-------------------------------------------------------------------------------------------------------------*/ - { 0, 0, 1, KEY_EN_ESCAPE, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 2, KEY_EN_F1, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 3, KEY_EN_F2, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 4, KEY_EN_F3, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 5, KEY_EN_F4, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 6, KEY_EN_F5, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 7, KEY_EN_F6, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 8, KEY_EN_F7, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 9, KEY_EN_F8, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 10, KEY_EN_F9, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 11, KEY_EN_F10, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 12, KEY_EN_F11, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 13, KEY_EN_F12, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 14, KEY_EN_INSERT, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 15, KEY_EN_DELETE, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 1, KEY_EN_BACK_TICK, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 2, KEY_EN_1, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 3, KEY_EN_2, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 4, KEY_EN_3, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 5, KEY_EN_4, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 6, KEY_EN_5, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 7, KEY_EN_6, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 8, KEY_EN_7, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 9, KEY_EN_8, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 10, KEY_EN_9, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 11, KEY_EN_0, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 12, KEY_EN_MINUS, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 13, KEY_EN_EQUALS, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 15, KEY_EN_BACKSPACE, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 1, KEY_EN_TAB, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 2, KEY_EN_Q, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 3, KEY_EN_W, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 4, KEY_EN_E, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 5, KEY_EN_R, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 6, KEY_EN_T, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 7, KEY_EN_Y, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 8, KEY_EN_U, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 9, KEY_EN_I, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 10, KEY_EN_O, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 11, KEY_EN_P, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 12, KEY_EN_LEFT_BRACKET, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 13, KEY_EN_RIGHT_BRACKET, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 14, KEY_EN_ANSI_ENTER, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 15, KEY_EN_ANSI_BACK_SLASH, RAZER_LAYOUT_TYPE_ANSI }, - { 0, 3, 1, KEY_EN_CAPS_LOCK, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 2, KEY_EN_A, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 3, KEY_EN_S, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 4, KEY_EN_D, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 5, KEY_EN_F, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 6, KEY_EN_G, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 7, KEY_EN_H, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 8, KEY_EN_J, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 9, KEY_EN_K, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 10, KEY_EN_L, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 11, KEY_EN_SEMICOLON, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 12, KEY_EN_QUOTE, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 13, KEY_EN_POUND, RAZER_LAYOUT_TYPE_ISO }, - { 0, 4, 1, KEY_EN_LEFT_SHIFT, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 2, KEY_EN_ISO_BACK_SLASH, RAZER_LAYOUT_TYPE_ISO | RAZER_LAYOUT_TYPE_JIS }, - { 0, 4, 3, KEY_EN_Z, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 4, KEY_EN_X, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 5, KEY_EN_C, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 6, KEY_EN_V, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 7, KEY_EN_B, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 8, KEY_EN_N, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 9, KEY_EN_M, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 10, KEY_EN_COMMA, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 11, KEY_EN_PERIOD, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 12, KEY_EN_FORWARD_SLASH, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 15, KEY_EN_RIGHT_SHIFT, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 1, KEY_EN_LEFT_CONTROL, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 2, KEY_EN_LEFT_FUNCTION, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 3, KEY_EN_LEFT_WINDOWS, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 5, KEY_EN_LEFT_ALT, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 9, KEY_EN_RIGHT_ALT, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 10, KEY_EN_RIGHT_FUNCTION, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 11, KEY_EN_RIGHT_CONTROL, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 12, KEY_EN_LEFT_ARROW, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 13, KEY_EN_UP_ARROW, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 14, KEY_EN_RIGHT_ARROW, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 15, KEY_EN_DOWN_ARROW, RAZER_LAYOUT_TYPE_ALL }, -}; - #define BLADE_STEALTH_2016_KEYMAP_SIZE (sizeof(blade_stealth_2016_keymap) / sizeof(blade_stealth_2016_keymap[0])) static const razer_key blade_stealth_2016_keymap[] = @@ -4339,9 +4289,9 @@ static const razer_device blade_pro_17_2021_device = NULL, NULL }, - blade_17_pro_2021_keymap, - BLADE_17_PRO_2021_KEYMAP_SIZE, - NULL + NULL, + 0, + &razer_blade_17_pro_2021_layout }; /*-------------------------------------------------------------*\