Add a keymatrix_t type
This contains both the matrix number and key position, in preparation for multi-matrix support
This commit is contained in:
		
							parent
							
								
									c11c7948e6
								
							
						
					
					
						commit
						f9c61b1bbe
					
				
					 14 changed files with 59 additions and 49 deletions
				
			
		|  | @ -38,7 +38,7 @@ extern keymap_config_t keymap_config; | |||
| #include <inttypes.h> | ||||
| 
 | ||||
| /* converts key to action */ | ||||
| action_t action_for_key(uint8_t layer, keypos_t key) | ||||
| action_t action_for_key(uint8_t layer, keymatrix_t key) | ||||
| { | ||||
|     // 16bit keycodes - important
 | ||||
|     uint16_t keycode = keymap_key_to_keycode(layer, key); | ||||
|  | @ -184,10 +184,12 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) | |||
| 
 | ||||
| // translates key to keycode
 | ||||
| __attribute__ ((weak)) | ||||
| uint16_t keymap_key_to_keycode(uint8_t layer, keypos_t key) | ||||
| uint16_t keymap_key_to_keycode(uint8_t layer, keymatrix_t key) | ||||
| { | ||||
|     // Read entire word (16bits)
 | ||||
|     return pgm_read_word(&keymaps[(layer)][(key.row)][(key.col)]); | ||||
|     // The default implmention does not have multiple matrix support
 | ||||
|     // and therfore it ignores the matrix field of the key
 | ||||
|     return pgm_read_word(&keymaps[(layer)][(key.pos.row)][(key.pos.col)]); | ||||
| } | ||||
| 
 | ||||
| // translates function id to action
 | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Fred Sundvik
						Fred Sundvik