 6209122213
			
		
	
	
		6209122213
		
			
		
	
	
	
	
		
			
			* [Keymap] Add vitoni layout for GMMK Pro (ISO) Keymap has layered cursor keys similar to laptop keyboards. * Configure RGB defaults for startup * Configure encoder to change value/brightness on FN layer * Remove FN layer and add dedicated RGB layer * Make RGB layer sticky (using TG) to avoid holding FN while configuring RGB * Add RGB indicators for active layers * Add RGB indicator for active RESET mode Signed-off-by: Victor Toni <victor.toni@gmail.com> * Configure idle / USB suspend settings * Add RGB fade in when resuming after suspend * Add RGB fade out before suspend * Add fade out before idle * Add breathe effect when idle
		
			
				
	
	
		
			30 lines
		
	
	
	
		
			1,000 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			30 lines
		
	
	
	
		
			1,000 B
		
	
	
	
		
			C
		
	
	
	
	
	
| // Copyright 2021 Victor Toni (@vitoni)
 | |
| // SPDX-License-Identifier: GPL-2.0-or-later
 | |
| 
 | |
| #pragma once
 | |
| 
 | |
| #include <stdint.h>
 | |
| #include <stdbool.h>
 | |
| 
 | |
| #include <quantum/action.h>
 | |
| 
 | |
| #include "rgb_matrix_effects.h"
 | |
| 
 | |
| /**
 | |
|  * @brief Executes periodic tasks, eg. fading or checking for upcoming supend.
 | |
|  * @details Function declaration as weak as the implementation might "disappear" depending on the RGB settings used.
 | |
|  * The weak declaration avoids having to change `keymap.c`.
 | |
|  */
 | |
| __attribute__((weak))
 | |
| void matrix_scan_user_rgb(void);
 | |
| 
 | |
| /**
 | |
|  * @brief Executes tasks based on user activity, eg. fading in.
 | |
|  * @details Function declaration as weak as the implementation might "disappear" depending on the RGB settings used.
 | |
|  * The weak declaration avoids having to change `keymap.c`.
 | |
|  * @param[in]   keycode
 | |
|  * @param[in]   record
 | |
|  * @return `false` if further processing should be stopped, `true` otherwise
 | |
|  */
 | |
| __attribute__((weak))
 | |
| bool process_record_user_rgb(const uint16_t keycode, const keyrecord_t *record);
 |