diff --git a/Controllers/RazerController/RazerDevices.cpp b/Controllers/RazerController/RazerDevices.cpp index 3cbc4cd4..aa545ffd 100644 --- a/Controllers/RazerController/RazerDevices.cpp +++ b/Controllers/RazerController/RazerDevices.cpp @@ -231,6 +231,28 @@ keyboard_keymap_overlay_values razer_blackwidow_v3_mini_layout } }; +keyboard_keymap_overlay_values razer_blackwidow_v3_pro_layout +{ + KEYBOARD_SIZE::KEYBOARD_SIZE_FULL, + { + { /* ANSI Value set not used */ }, + { + /* Add more regional layout fixes here */ + } + }, + { + /*---------------------------------------------------------------------------------------------------------*\ + | Edit Keys | + | Zone, Row, Column, Value, Key, OpCode, | + \*---------------------------------------------------------------------------------------------------------*/ + { 0, 0, 18, 0, KEY_EN_MEDIA_PREVIOUS, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT, }, + { 0, 0, 19, 0, KEY_EN_MEDIA_PLAY_PAUSE, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT, }, + { 0, 0, 20, 0, KEY_EN_MEDIA_NEXT, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT, }, + { 0, 0, 21, 0, KEY_EN_MEDIA_MUTE, KEYBOARD_OPCODE_INSERT_SHIFT_RIGHT, }, + { 0, 3, 14, 0, "Logo", KEYBOARD_OPCODE_SWAP_ONLY, }, // Insert 'Logo' + } +}; + keyboard_keymap_overlay_values razer_blackwidow_v3_tkl_layout { KEYBOARD_SIZE::KEYBOARD_SIZE_TKL, @@ -913,126 +935,6 @@ keyboard_keymap_overlay_values razer_laptop_with_spacebar_layout /*-------------------------------------------------------------------------*\ | OLD_KEYMAPS | \*-------------------------------------------------------------------------*/ -#define BLACKWIDOW_V3_PRO_KEYMAP_SIZE (sizeof(blackwidow_v3_pro_keymap) / sizeof(blackwidow_v3_pro_keymap[0])) - -static const razer_key blackwidow_v3_pro_keymap[] = -{ - /*---------------------------------------------------------------------*\ - | Zone, Row, Column, Key | - \*---------------------------------------------------------------------*/ - { 0, 0, 0, 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_PRINT_SCREEN, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 15, KEY_EN_SCROLL_LOCK, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 16, KEY_EN_PAUSE_BREAK, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 18, KEY_EN_MEDIA_PREVIOUS, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 19, KEY_EN_MEDIA_PLAY_PAUSE, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 20, KEY_EN_MEDIA_NEXT, RAZER_LAYOUT_TYPE_ALL }, - { 0, 0, 21, KEY_EN_MEDIA_MUTE, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 0, KEY_EN_BACK_TICK, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 1, KEY_EN_1, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 2, KEY_EN_2, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 3, KEY_EN_3, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 4, KEY_EN_4, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 5, KEY_EN_5, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 6, KEY_EN_6, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 7, KEY_EN_7, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 8, KEY_EN_8, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 9, KEY_EN_9, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 10, KEY_EN_0, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 11, KEY_EN_MINUS, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 12, KEY_EN_EQUALS, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 13, KEY_EN_EQUALS, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 14, KEY_EN_INSERT, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 15, KEY_EN_HOME, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 16, KEY_EN_PAGE_UP, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 17, KEY_EN_NUMPAD_LOCK, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 18, KEY_EN_NUMPAD_DIVIDE, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 19, KEY_EN_NUMPAD_TIMES, RAZER_LAYOUT_TYPE_ALL }, - { 0, 1, 20, KEY_EN_NUMPAD_MINUS, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 0, KEY_EN_TAB, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 1, KEY_EN_Q, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 2, KEY_EN_W, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 3, KEY_EN_E, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 4, KEY_EN_R, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 5, KEY_EN_T, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 6, KEY_EN_Y, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 7, KEY_EN_U, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 8, KEY_EN_I, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 9, KEY_EN_O, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 10, KEY_EN_P, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 11, KEY_EN_LEFT_BRACKET, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 12, KEY_EN_RIGHT_BRACKET, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 13, KEY_EN_ANSI_BACK_SLASH, RAZER_LAYOUT_TYPE_ANSI }, - { 0, 2, 14, KEY_EN_DELETE, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 15, KEY_EN_END, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 16, KEY_EN_PAGE_DOWN, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 17, KEY_EN_NUMPAD_7, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 18, KEY_EN_NUMPAD_8, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 19, KEY_EN_NUMPAD_9, RAZER_LAYOUT_TYPE_ALL }, - { 0, 2, 20, KEY_EN_NUMPAD_PLUS, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 0, KEY_EN_CAPS_LOCK, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 1, KEY_EN_A, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 2, KEY_EN_S, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 3, KEY_EN_D, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 4, KEY_EN_F, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 5, KEY_EN_G, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 6, KEY_EN_H, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 7, KEY_EN_J, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 8, KEY_EN_K, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 9, KEY_EN_L, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 10, KEY_EN_SEMICOLON, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 11, KEY_EN_QUOTE, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 12, KEY_EN_POUND, RAZER_LAYOUT_TYPE_ISO }, - { 0, 3, 13, KEY_EN_ANSI_ENTER, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 14, "Logo", RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 17, KEY_EN_NUMPAD_4, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 18, KEY_EN_NUMPAD_5, RAZER_LAYOUT_TYPE_ALL }, - { 0, 3, 19, KEY_EN_NUMPAD_6, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 0, KEY_EN_LEFT_SHIFT, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 1, KEY_EN_ISO_BACK_SLASH, RAZER_LAYOUT_TYPE_ISO | RAZER_LAYOUT_TYPE_JIS }, - { 0, 4, 2, KEY_EN_Z, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 3, KEY_EN_X, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 4, KEY_EN_C, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 5, KEY_EN_V, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 6, KEY_EN_B, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 7, KEY_EN_N, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 8, KEY_EN_M, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 9, KEY_EN_COMMA, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 10, KEY_EN_PERIOD, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 11, KEY_EN_FORWARD_SLASH, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 13, KEY_EN_RIGHT_SHIFT, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 15, KEY_EN_UP_ARROW, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 17, KEY_EN_NUMPAD_1, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 18, KEY_EN_NUMPAD_2, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 19, KEY_EN_NUMPAD_3, RAZER_LAYOUT_TYPE_ALL }, - { 0, 4, 20, KEY_EN_NUMPAD_ENTER, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 0, KEY_EN_LEFT_CONTROL, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 1, KEY_EN_LEFT_WINDOWS, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 2, KEY_EN_LEFT_ALT, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 6, KEY_EN_SPACE, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 10, KEY_EN_RIGHT_ALT, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 11, KEY_EN_RIGHT_FUNCTION, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 12, KEY_EN_MENU, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 13, KEY_EN_RIGHT_CONTROL, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 14, KEY_EN_LEFT_ARROW, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 15, KEY_EN_DOWN_ARROW, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 16, KEY_EN_RIGHT_ARROW, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 18, KEY_EN_NUMPAD_0, RAZER_LAYOUT_TYPE_ALL }, - { 0, 5, 19, KEY_EN_NUMPAD_PERIOD, RAZER_LAYOUT_TYPE_ALL }, -}; - #define TARTARUS_V2_KEYMAP_SIZE (sizeof(tartarus_v2_keymap) / sizeof(tartarus_v2_keymap[0])) static const razer_key tartarus_v2_keymap[] = @@ -1380,9 +1282,9 @@ static const razer_device blackwidow_v3_pro_wired_device = NULL, NULL }, - blackwidow_v3_pro_keymap, - BLACKWIDOW_V3_PRO_KEYMAP_SIZE, - NULL + NULL, + 0, + &razer_blackwidow_v3_pro_layout }; /*-------------------------------------------------------------*\ @@ -1416,9 +1318,9 @@ static const razer_device blackwidow_v3_pro_bluetooth_device = NULL, NULL }, - blackwidow_v3_pro_keymap, - BLACKWIDOW_V3_PRO_KEYMAP_SIZE, - NULL + NULL, + 0, + &razer_blackwidow_v3_pro_layout }; /*-------------------------------------------------------------*\ @@ -1452,9 +1354,9 @@ static const razer_device blackwidow_v3_pro_wireless_device = NULL, NULL }, - blackwidow_v3_pro_keymap, - BLACKWIDOW_V3_PRO_KEYMAP_SIZE, - NULL + NULL, + 0, + &razer_blackwidow_v3_pro_layout }; /*-------------------------------------------------------------*\