Workaround for Mac HID SET_IDLE behaviour.
This commit is contained in:
		
							parent
							
								
									12f6e9ffa7
								
							
						
					
					
						commit
						9dec116bc0
					
				
					 1 changed files with 5 additions and 2 deletions
				
			
		| 
						 | 
				
			
			@ -626,7 +626,7 @@ void usb_remote_wakeup(void)
 | 
			
		|||
//
 | 
			
		||||
ISR(USB_GEN_vect)
 | 
			
		||||
{
 | 
			
		||||
	uint8_t intbits, t, i;
 | 
			
		||||
	uint8_t intbits, t;
 | 
			
		||||
	static uint8_t div4=0;
 | 
			
		||||
 | 
			
		||||
        intbits = UDINT;
 | 
			
		||||
| 
						 | 
				
			
			@ -667,13 +667,16 @@ ISR(USB_GEN_vect)
 | 
			
		|||
				usb_keyboard_idle_count++;
 | 
			
		||||
				if (usb_keyboard_idle_count == usb_keyboard_idle_config) {
 | 
			
		||||
					usb_keyboard_idle_count = 0;
 | 
			
		||||
                                        /* TODO: fix keyboard_report inconsistency */
 | 
			
		||||
/* To avoid Mac SET_IDLE behaviour.
 | 
			
		||||
					UEDATX = keyboard_report_prev->mods;
 | 
			
		||||
					UEDATX = 0;
 | 
			
		||||
                                        uint8_t keys = usb_keyboard_protocol ? KBD_REPORT_KEYS : 6;
 | 
			
		||||
					for (i=0; i<keys; i++) {
 | 
			
		||||
					for (uint8_t i=0; i<keys; i++) {
 | 
			
		||||
						UEDATX = keyboard_report_prev->keys[i];
 | 
			
		||||
					}
 | 
			
		||||
					UEINTX = 0x3A;
 | 
			
		||||
*/
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue