forked from mirrors/qmk_userspace
		
	Add per-event user hook function to QMK
This commit is contained in:
		
					parent
					
						
							
								80eefb09ac
							
						
					
				
			
			
				commit
				
					
						ef21a855e6
					
				
			
		
					 2 changed files with 8 additions and 0 deletions
				
			
		| 
						 | 
					@ -53,6 +53,9 @@ void action_exec(keyevent_t event)
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					__attribute__ ((weak))
 | 
				
			||||||
 | 
					void process_action_user(keyrecord_t *record) {}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void process_action(keyrecord_t *record)
 | 
					void process_action(keyrecord_t *record)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    keyevent_t event = record->event;
 | 
					    keyevent_t event = record->event;
 | 
				
			||||||
| 
						 | 
					@ -62,6 +65,8 @@ void process_action(keyrecord_t *record)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if (IS_NOEVENT(event)) { return; }
 | 
					    if (IS_NOEVENT(event)) { return; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    process_action_user(record);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    action_t action = layer_switch_get_action(event.key);
 | 
					    action_t action = layer_switch_get_action(event.key);
 | 
				
			||||||
    dprint("ACTION: "); debug_action(action);
 | 
					    dprint("ACTION: "); debug_action(action);
 | 
				
			||||||
#ifndef NO_ACTION_LAYER
 | 
					#ifndef NO_ACTION_LAYER
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -58,6 +58,9 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt);
 | 
				
			||||||
/* user defined special function */
 | 
					/* user defined special function */
 | 
				
			||||||
void action_function(keyrecord_t *record, uint8_t id, uint8_t opt);
 | 
					void action_function(keyrecord_t *record, uint8_t id, uint8_t opt);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* user-defined (pre)processing of each key event */
 | 
				
			||||||
 | 
					void process_action_user(keyrecord_t *record);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* Utilities for actions.  */
 | 
					/* Utilities for actions.  */
 | 
				
			||||||
void process_action(keyrecord_t *record);
 | 
					void process_action(keyrecord_t *record);
 | 
				
			||||||
void register_code(uint8_t code);
 | 
					void register_code(uint8_t code);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue