moved oneshot cancellation code outside of process_record.
The oneshot cancellation code do not depend on the action_tapping_process and since process_record get called via the action_tapping_process logic moved the oneshot cancellation code into the action_exec function just before the action_tapping_process call
This commit is contained in:
		
							parent
							
								
									6f44ca7a59
								
							
						
					
					
						commit
						45e0d09414
					
				
					 1 changed files with 8 additions and 8 deletions
				
			
		| 
						 | 
				
			
			@ -49,6 +49,13 @@ void action_exec(keyevent_t event)
 | 
			
		|||
 | 
			
		||||
    keyrecord_t record = { .event = event };
 | 
			
		||||
 | 
			
		||||
#if (defined(ONESHOT_TIMEOUT) && (ONESHOT_TIMEOUT > 0))
 | 
			
		||||
    if (has_oneshot_layer_timed_out()) {
 | 
			
		||||
        dprintf("Oneshot layer: timeout\n");
 | 
			
		||||
        clear_oneshot_layer_state(ONESHOT_OTHER_KEY_PRESSED);
 | 
			
		||||
    }
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#ifndef NO_ACTION_TAPPING
 | 
			
		||||
    action_tapping_process(record);
 | 
			
		||||
#else
 | 
			
		||||
| 
						 | 
				
			
			@ -100,15 +107,8 @@ bool process_record_quantum(keyrecord_t *record) {
 | 
			
		|||
    return true;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void process_record(keyrecord_t *record) 
 | 
			
		||||
void process_record(keyrecord_t *record)
 | 
			
		||||
{
 | 
			
		||||
#if (defined(ONESHOT_TIMEOUT) && (ONESHOT_TIMEOUT > 0))
 | 
			
		||||
    if (has_oneshot_layer_timed_out()) {
 | 
			
		||||
        dprintf("Oneshot layer: timeout\n");
 | 
			
		||||
        clear_oneshot_layer_state(ONESHOT_OTHER_KEY_PRESSED);
 | 
			
		||||
    }
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
    if (IS_NOEVENT(record->event)) { return; }
 | 
			
		||||
 | 
			
		||||
    if(!process_record_quantum(record))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue