aboutsummaryrefslogtreecommitdiff
path: root/quantum/quantum.c
diff options
context:
space:
mode:
Diffstat (limited to 'quantum/quantum.c')
-rw-r--r--quantum/quantum.c54
1 files changed, 35 insertions, 19 deletions
diff --git a/quantum/quantum.c b/quantum/quantum.c
index 011f9d73e4..d4ebd58e7f 100644
--- a/quantum/quantum.c
+++ b/quantum/quantum.c
@@ -21,7 +21,7 @@
#endif
#ifdef BLUETOOTH_ENABLE
-# include "outputselect.h"
+# include "process_connection.h"
#endif
#ifdef GRAVE_ESC_ENABLE
@@ -52,12 +52,20 @@
# include "process_midi.h"
#endif
+#if !defined(NO_ACTION_LAYER)
+# include "process_default_layer.h"
+#endif
+
#ifdef PROGRAMMABLE_BUTTON_ENABLE
# include "process_programmable_button.h"
#endif
+#if defined(RGB_MATRIX_ENABLE)
+# include "process_rgb_matrix.h"
+#endif
+
#if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE)
-# include "process_rgb.h"
+# include "process_underglow.h"
#endif
#ifdef SECURE_ENABLE
@@ -72,6 +80,10 @@
# include "process_unicode_common.h"
#endif
+#ifdef LAYER_LOCK_ENABLE
+# include "process_layer_lock.h"
+#endif
+
#ifdef AUDIO_ENABLE
# ifndef GOODBYE_SONG
# define GOODBYE_SONG SONG(GOODBYE_SOUND)
@@ -246,10 +258,9 @@ uint16_t get_event_keycode(keyevent_t event, bool update_layer_cache) {
/* Get keycode, and then process pre tapping functionality */
bool pre_process_record_quantum(keyrecord_t *record) {
- uint16_t keycode = get_record_keycode(record, true);
- return pre_process_record_kb(keycode, record) &&
+ return pre_process_record_kb(get_record_keycode(record, true), record) &&
#ifdef COMBO_ENABLE
- process_combo(keycode, record) &&
+ process_combo(get_record_keycode(record, true), record) &&
#endif
true;
}
@@ -380,7 +391,10 @@ bool process_record_quantum(keyrecord_t *record) {
process_grave_esc(keycode, record) &&
#endif
#if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE)
- process_rgb(keycode, record) &&
+ process_underglow(keycode, record) &&
+#endif
+#if defined(RGB_MATRIX_ENABLE)
+ process_rgb_matrix(keycode, record) &&
#endif
#ifdef JOYSTICK_ENABLE
process_joystick(keycode, record) &&
@@ -394,6 +408,15 @@ bool process_record_quantum(keyrecord_t *record) {
#ifdef TRI_LAYER_ENABLE
process_tri_layer(keycode, record) &&
#endif
+#if !defined(NO_ACTION_LAYER)
+ process_default_layer(keycode, record) &&
+#endif
+#ifdef LAYER_LOCK_ENABLE
+ process_layer_lock(keycode, record) &&
+#endif
+#ifdef BLUETOOTH_ENABLE
+ process_connection(keycode, record) &&
+#endif
true)) {
return false;
}
@@ -431,17 +454,6 @@ bool process_record_quantum(keyrecord_t *record) {
velocikey_toggle();
return false;
#endif
-#ifdef BLUETOOTH_ENABLE
- case QK_OUTPUT_AUTO:
- set_output(OUTPUT_AUTO);
- return false;
- case QK_OUTPUT_USB:
- set_output(OUTPUT_USB);
- return false;
- case QK_OUTPUT_BLUETOOTH:
- set_output(OUTPUT_BLUETOOTH);
- return false;
-#endif
#ifndef NO_ACTION_ONESHOT
case QK_ONE_SHOT_TOGGLE:
oneshot_toggle();
@@ -486,14 +498,18 @@ bool process_record_quantum(keyrecord_t *record) {
return process_action_kb(record);
}
-void set_single_persistent_default_layer(uint8_t default_layer) {
+void set_single_default_layer(uint8_t default_layer) {
#if defined(AUDIO_ENABLE) && defined(DEFAULT_LAYER_SONGS)
PLAY_SONG(default_layer_songs[default_layer]);
#endif
- eeconfig_update_default_layer((layer_state_t)1 << default_layer);
default_layer_set((layer_state_t)1 << default_layer);
}
+void set_single_persistent_default_layer(uint8_t default_layer) {
+ eeconfig_update_default_layer((layer_state_t)1 << default_layer);
+ set_single_default_layer(default_layer);
+}
+
//------------------------------------------------------------------------------
// Override these functions in your keymap file to play different tunes on
// different events such as startup and bootloader jump