Switch bcat Chrome OS media keys workaround from mouse keys to NKRO (#9790)
* Switch Chrome OS mouse keys workaround to NKRO * Add NKRO toggle to keymaps * USE NK_TOGG keycode instead of defining my own
This commit is contained in:
		
							parent
							
								
									e38331d94c
								
							
						
					
					
						commit
						d699fd1fb4
					
				
					 13 changed files with 22 additions and 17 deletions
				
			
		| 
						 | 
				
			
			@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
 | 
			
		||||
    /* Adjust layer: http://www.keyboard-layout-editor.com/#/gists/77e7572e077b36a23eb2086017e16fee */
 | 
			
		||||
    [LAYER_ADJUST] = LAYOUT(
 | 
			
		||||
        _______,  _______,  KC_MPLY,  KC_VOLU,  KC_MSTP,  _______,                      EEP_RST,  RESET,    _______,  _______,  _______,  _______,
 | 
			
		||||
        _______,  NK_TOGG,  KC_MPLY,  KC_VOLU,  KC_MSTP,  _______,                      EEP_RST,  RESET,    _______,  _______,  _______,  _______,
 | 
			
		||||
        _______,  _______,  KC_MPRV,  KC_VOLD,  KC_MNXT,  _______,                      RGB_RMOD, RGB_VAD,  RGB_VAI,  RGB_MOD,  RGB_SPI,  _______,
 | 
			
		||||
        _______,  _______,  _______,  KC_MUTE,  _______,  _______,                      RGB_HUI,  RGB_SAD,  RGB_SAI,  RGB_HUD,  RGB_SPD,  _______,
 | 
			
		||||
                                                _______,  _______,  _______,  RGB_TOG,  _______,  _______
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -113,7 +113,7 @@ be a better place to put them.
 | 
			
		|||
 | 
			
		||||
## Adjust layer
 | 
			
		||||
 | 
			
		||||

 | 
			
		||||

 | 
			
		||||
 | 
			
		||||
([KLE](http://www.keyboard-layout-editor.com/#/gists/77e7572e077b36a23eb2086017e16fee))
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -20,7 +20,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
    /* Function layer: http://www.keyboard-layout-editor.com/#/gists/59636898946da51f91fb290f8e078b4d */
 | 
			
		||||
    [LAYER_FUNCTION] = LAYOUT_65(
 | 
			
		||||
        _______,  KC_F1,    KC_F2,    KC_F3,    KC_F4,    KC_F5,    KC_F6,    KC_F7,    KC_F8,    KC_F9,    KC_F10,   KC_F11,   KC_F12,   KC_INS,   KC_DEL,   RGB_HUI,
 | 
			
		||||
        KC_CAPS,  _______,  KC_MPLY,  KC_VOLU,  KC_MSTP,  _______,  EEP_RST,  RESET,    KC_PSCR,  KC_SLCK,  KC_PAUS,  _______,  _______,  _______,            RGB_SAI,
 | 
			
		||||
        KC_CAPS,  NK_TOGG,  KC_MPLY,  KC_VOLU,  KC_MSTP,  _______,  EEP_RST,  RESET,    KC_PSCR,  KC_SLCK,  KC_PAUS,  _______,  _______,  _______,            RGB_SAI,
 | 
			
		||||
        _______,  _______,  KC_MPRV,  KC_VOLD,  KC_MNXT,  _______,  _______,  _______,  _______,  _______,  _______,  _______,            RGB_TOG,            RGB_SAD,
 | 
			
		||||
        _______,  KC_APP,   _______,  KC_MUTE,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,                      RGB_VAI,  RGB_HUD,
 | 
			
		||||
        _______,  _______,  _______,  _______,  _______,                      _______,  _______,  _______,  _______,  _______,            RGB_RMOD, RGB_VAD,  RGB_MOD
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -12,6 +12,6 @@ ESDF cluster), and RGB controls in the function layer (on the arrow/nav keys).
 | 
			
		|||
 | 
			
		||||
## Function layer
 | 
			
		||||
 | 
			
		||||

 | 
			
		||||

 | 
			
		||||
 | 
			
		||||
([KLE](http://www.keyboard-layout-editor.com/#/gists/59636898946da51f91fb290f8e078b4d))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -48,7 +48,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
    /* Adjust layer: http://www.keyboard-layout-editor.com/#/gists/8f6a3f08350a9bbe1d414b22bca4e6c7 */
 | 
			
		||||
    [LAYER_ADJUST] = LAYOUT(
 | 
			
		||||
        _______,  _______,  _______,  _______,  _______,  _______,                      _______,  _______,  _______,  _______,  _______,  _______,
 | 
			
		||||
        _______,  _______,  KC_MPLY,  KC_VOLU,  KC_MSTP,  _______,                      EEP_RST,  RESET,    _______,  _______,  _______,  _______,
 | 
			
		||||
        _______,  NK_TOGG,  KC_MPLY,  KC_VOLU,  KC_MSTP,  _______,                      EEP_RST,  RESET,    _______,  _______,  _______,  _______,
 | 
			
		||||
        _______,  _______,  KC_MPRV,  KC_VOLD,  KC_MNXT,  _______,                      _______,  _______,  _______,  _______,  _______,  _______,
 | 
			
		||||
        _______,  _______,  _______,  KC_MUTE,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,
 | 
			
		||||
                                      _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -34,6 +34,6 @@ browser back/forward navigation keys.
 | 
			
		|||
 | 
			
		||||
## Adjust layer
 | 
			
		||||
 | 
			
		||||

 | 
			
		||||

 | 
			
		||||
 | 
			
		||||
([KLE](http://www.keyboard-layout-editor.com/#/gists/8f6a3f08350a9bbe1d414b22bca4e6c7))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
    /* Function 2 layer: http://www.keyboard-layout-editor.com/#/gists/6e1068e4f91bbacccaf5ac0acbeec79c */
 | 
			
		||||
    [LAYER_FUNCTION_2] = LAYOUT_60_ansi_split_bs_rshift(
 | 
			
		||||
        _______,  KC_F1,    KC_F2,    KC_F3,    KC_F4,    KC_F5,    KC_F6,    KC_F7,    KC_F8,    KC_F9,    KC_F10,   KC_F11,   KC_F12,   KC_INS,   KC_DEL,
 | 
			
		||||
        _______,  _______,  KC_MPLY,  KC_VOLU,  KC_MSTP,  BL_BRTG,  EEP_RST,  RESET,    _______,  _______,  _______,  RGB_VAI,  _______,  _______,
 | 
			
		||||
        _______,  NK_TOGG,  KC_MPLY,  KC_VOLU,  KC_MSTP,  BL_BRTG,  EEP_RST,  RESET,    _______,  _______,  _______,  RGB_VAI,  _______,  _______,
 | 
			
		||||
        _______,  _______,  KC_MPRV,  KC_VOLD,  KC_MNXT,  BL_INC,   _______,  RGB_SPI,  RGB_HUI,  RGB_SAI,  RGB_RMOD, RGB_MOD,            RGB_TOG,
 | 
			
		||||
        _______,  _______,  _______,  KC_MUTE,  _______,  BL_DEC,   _______,  RGB_SPD,  RGB_HUD,  RGB_SAD,  RGB_VAD,  _______,                      _______,
 | 
			
		||||
        _______,  _______,  _______,                                _______,                                          _______,  _______,  _______,  _______
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -19,6 +19,6 @@ layout](https://github.com/qmk/qmk_firmware/tree/master/layouts/community/60_tsa
 | 
			
		|||
 | 
			
		||||
## Function 2 layer
 | 
			
		||||
 | 
			
		||||

 | 
			
		||||

 | 
			
		||||
 | 
			
		||||
([KLE](http://www.keyboard-layout-editor.com/#/gists/6e1068e4f91bbacccaf5ac0acbeec79c))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
    /* Function 2 layer: http://www.keyboard-layout-editor.com/#/gists/65ac939caec878401603bc36290852d4 */
 | 
			
		||||
    [LAYER_FUNCTION_2] = LAYOUT_60_tsangan_hhkb(
 | 
			
		||||
        _______,  KC_F1,    KC_F2,    KC_F3,    KC_F4,    KC_F5,    KC_F6,    KC_F7,    KC_F8,    KC_F9,    KC_F10,   KC_F11,   KC_F12,   KC_INS,   KC_DEL,
 | 
			
		||||
        _______,  _______,  KC_MPLY,  KC_VOLU,  KC_MSTP,  BL_BRTG,  EEP_RST,  RESET,    _______,  _______,  _______,  RGB_VAI,  _______,  _______,
 | 
			
		||||
        _______,  NK_TOGG,  KC_MPLY,  KC_VOLU,  KC_MSTP,  BL_BRTG,  EEP_RST,  RESET,    _______,  _______,  _______,  RGB_VAI,  _______,  _______,
 | 
			
		||||
        _______,  _______,  KC_MPRV,  KC_VOLD,  KC_MNXT,  BL_INC,   _______,  RGB_SPI,  RGB_HUI,  RGB_SAI,  RGB_RMOD, RGB_MOD,            RGB_TOG,
 | 
			
		||||
        _______,  _______,  _______,  KC_MUTE,  _______,  BL_DEC,   _______,  RGB_SPD,  RGB_HUD,  RGB_SAD,  RGB_VAD,  _______,                      _______,
 | 
			
		||||
        _______,  _______,  _______,                                _______,                                          _______,  _______,            _______
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -39,6 +39,6 @@ and/or blockers, so there aren't switches installed in those positions.
 | 
			
		|||
 | 
			
		||||
## Function 2 layer
 | 
			
		||||
 | 
			
		||||

 | 
			
		||||

 | 
			
		||||
 | 
			
		||||
([KLE](http://www.keyboard-layout-editor.com/#/gists/65ac939caec878401603bc36290852d4))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -20,7 +20,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
 | 
			
		|||
    /* Function layer: http://www.keyboard-layout-editor.com/#/gists/f29128427f674c43777f045e363d1b44 */
 | 
			
		||||
    [LAYER_FUNCTION] = LAYOUT_65_ansi_blocker_split_bs(
 | 
			
		||||
        _______,  KC_F1,    KC_F2,    KC_F3,    KC_F4,    KC_F5,    KC_F6,    KC_F7,    KC_F8,    KC_F9,    KC_F10,   KC_F11,   KC_F12,   KC_INS,   KC_DEL,   _______,
 | 
			
		||||
        KC_CAPS,  _______,  KC_MPLY,  KC_VOLU,  KC_MSTP,  _______,  EEP_RST,  RESET,    KC_PSCR,  KC_SLCK,  KC_PAUS,  _______,  _______,  _______,            _______,
 | 
			
		||||
        KC_CAPS,  NK_TOGG,  KC_MPLY,  KC_VOLU,  KC_MSTP,  _______,  EEP_RST,  RESET,    KC_PSCR,  KC_SLCK,  KC_PAUS,  _______,  _______,  _______,            _______,
 | 
			
		||||
        _______,  _______,  KC_MPRV,  KC_VOLD,  KC_MNXT,  _______,  _______,  _______,  _______,  _______,  _______,  _______,            _______,            _______,
 | 
			
		||||
        _______,  KC_APP,   _______,  KC_MUTE,  _______,  _______,  _______,  _______,  _______,  _______,  _______,  _______,                      _______,  _______,
 | 
			
		||||
        _______,  _______,  _______,                      _______,                                _______,  _______,                      _______,  _______,  _______
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -12,6 +12,6 @@ keys, an HHKB-style (split) backspace, and media controls in the function layer
 | 
			
		|||
 | 
			
		||||
## Function layer
 | 
			
		||||
 | 
			
		||||

 | 
			
		||||

 | 
			
		||||
 | 
			
		||||
([KLE](http://www.keyboard-layout-editor.com/#/gists/f29128427f674c43777f045e363d1b44))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3,10 +3,15 @@ SRC += bcat.c
 | 
			
		|||
# Enable Bootmagic Lite to consistently reset to bootloader and clear EEPROM.
 | 
			
		||||
BOOTMAGIC_ENABLE = lite
 | 
			
		||||
 | 
			
		||||
# Enable media keys on all keyboards. (Even though I don't use mouse keys, they
 | 
			
		||||
# seem to be required for media keys to register on Chrome OS.)
 | 
			
		||||
# Enable media keys on all keyboards.
 | 
			
		||||
EXTRAKEY_ENABLE = yes
 | 
			
		||||
MOUSEKEY_ENABLE = yes
 | 
			
		||||
 | 
			
		||||
# Enable N-key rollover on all keyboards. In addition to its intended
 | 
			
		||||
# functionality, as of July 2020, this is required for Chrome OS to process
 | 
			
		||||
# media keys. (It appears that Chrome OS filters out key events from the second
 | 
			
		||||
# USB endpoint's consumer and system control devices unless that endpoint also
 | 
			
		||||
# reports a keyboard or mouse device.)
 | 
			
		||||
NKRO_ENABLE = yes
 | 
			
		||||
 | 
			
		||||
# Enable link-time optimization to reduce binary size.
 | 
			
		||||
LINK_TIME_OPTIMIZATION_ENABLE = yes
 | 
			
		||||
| 
						 | 
				
			
			@ -14,7 +19,7 @@ LINK_TIME_OPTIMIZATION_ENABLE = yes
 | 
			
		|||
# Disable unused build options on all keyboards.
 | 
			
		||||
COMMAND_ENABLE = no
 | 
			
		||||
CONSOLE_ENABLE = no
 | 
			
		||||
NKRO_ENABLE = no
 | 
			
		||||
MOUSEKEY_ENABLE = no
 | 
			
		||||
TERMINAL_ENABLE = no
 | 
			
		||||
 | 
			
		||||
# Disable unused hardware options on all keyboards.
 | 
			
		||||
| 
						 | 
				
			
			@ -22,7 +27,7 @@ FAUXCLICKY_ENABLE = no
 | 
			
		|||
MIDI_ENABLE = no
 | 
			
		||||
SLEEP_LED_ENABLE = no
 | 
			
		||||
 | 
			
		||||
# Disable unused other options.
 | 
			
		||||
# Disable other unused options on all keyboards.
 | 
			
		||||
API_SYSEX_ENABLE = no
 | 
			
		||||
AUTO_SHIFT_ENABLE = no
 | 
			
		||||
COMBO_ENABLE = no
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue