]> git.donarmstrong.com Git - qmk_firmware.git/blob - users/xulkal/process_records.c
Adding rgb matrix speed into eeprom storage. (#5965)
[qmk_firmware.git] / users / xulkal / process_records.c
1 #include "process_records.h"
2 #include "custom_keycodes.h"
3 #include "timer_utils.h"
4
5 #ifdef TRILAYER_ENABLED
6 uint32_t layer_state_set_user(uint32_t state)
7 {
8     return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
9 }
10 #endif
11
12 bool process_record_user(uint16_t keycode, keyrecord_t *record)
13 {
14     static uint16_t reset_timer;
15
16 #ifndef TAP_DANCE_ENABLE
17     if (!process_tap_dance_double(keycode, record))
18         return false;
19 #endif
20
21     switch (keycode)
22     {
23         case RGBRST:
24             {
25 #if defined(RGBLIGHT_ENABLE)
26                 if (record->event.pressed)
27                 {
28                     eeconfig_update_rgblight_default();
29                     rgblight_enable();
30                 }
31 #elif defined(RGB_MATRIX_ENABLE)
32                 if (record->event.pressed)
33                     eeconfig_update_rgb_matrix_default();
34 #endif
35             }
36             return false;
37         case RESET:
38             {
39                 if (record->event.pressed)
40                     reset_timer = timer_read() + 500;
41                 else if (timer_expired(reset_timer))
42                     reset_keyboard();
43             }
44             return false;
45   }
46
47   return process_record_keymap(keycode, record);
48 }
49
50 __attribute__ ((weak))
51 bool process_record_keymap(uint16_t keycode, keyrecord_t *record)
52 {
53     return true;
54 }