Fix OLED timeout on satisfaction75 after migration from QWIIC (#14780)
The custom OLED_OFF mode implemented on satisfaction75 is incompatible with the OLED_TIMEOUT feature (the OLED_TIMEOUT code assumes that any key or encoder action should turn the OLED display on, and does not provide any way to disable that behavior). To keep the OLED_OFF mode functioning as before while still having a working OLED idle timeout, a custom implementation of the OLED idle timeout code is added.
This commit is contained in:
		
							parent
							
								
									0ea72af8b7
								
							
						
					
					
						commit
						2d3bd7cfcf
					
				
					 4 changed files with 87 additions and 8 deletions
				
			
		| 
						 | 
				
			
			@ -72,6 +72,9 @@ extern uint8_t layer;
 | 
			
		|||
 | 
			
		||||
// OLED Behavior
 | 
			
		||||
extern uint8_t oled_mode;
 | 
			
		||||
extern bool oled_repaint_requested;
 | 
			
		||||
extern bool oled_wakeup_requested;
 | 
			
		||||
extern uint32_t oled_sleep_timer;
 | 
			
		||||
 | 
			
		||||
// Encoder Behavior
 | 
			
		||||
extern uint8_t encoder_value;
 | 
			
		||||
| 
						 | 
				
			
			@ -107,6 +110,10 @@ void set_custom_encoder_config(uint8_t encoder_idx, uint8_t behavior, uint16_t n
 | 
			
		|||
 | 
			
		||||
void update_time_config(int8_t increment);
 | 
			
		||||
 | 
			
		||||
void oled_request_wakeup(void);
 | 
			
		||||
void oled_request_repaint(void);
 | 
			
		||||
bool oled_task_needs_to_repaint(void);
 | 
			
		||||
 | 
			
		||||
void backlight_init_ports(void);
 | 
			
		||||
void backlight_set(uint8_t level);
 | 
			
		||||
bool is_breathing(void);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue