aboutsummaryrefslogtreecommitdiff
path: root/quantum/quantum.c
diff options
context:
space:
mode:
Diffstat (limited to 'quantum/quantum.c')
-rw-r--r--quantum/quantum.c48
1 files changed, 47 insertions, 1 deletions
diff --git a/quantum/quantum.c b/quantum/quantum.c
index 77cbbb2e7..f489c9031 100644
--- a/quantum/quantum.c
+++ b/quantum/quantum.c
@@ -65,9 +65,17 @@ extern backlight_config_t backlight_config;
65 #ifndef AG_SWAP_SONG 65 #ifndef AG_SWAP_SONG
66 #define AG_SWAP_SONG SONG(AG_SWAP_SOUND) 66 #define AG_SWAP_SONG SONG(AG_SWAP_SOUND)
67 #endif 67 #endif
68 #ifndef CG_NORM_SONG
69 #define CG_NORM_SONG SONG(AG_NORM_SOUND)
70 #endif
71 #ifndef CG_SWAP_SONG
72 #define CG_SWAP_SONG SONG(AG_SWAP_SOUND)
73 #endif
68 float goodbye_song[][2] = GOODBYE_SONG; 74 float goodbye_song[][2] = GOODBYE_SONG;
69 float ag_norm_song[][2] = AG_NORM_SONG; 75 float ag_norm_song[][2] = AG_NORM_SONG;
70 float ag_swap_song[][2] = AG_SWAP_SONG; 76 float ag_swap_song[][2] = AG_SWAP_SONG;
77 float cg_norm_song[][2] = CG_NORM_SONG;
78 float cg_swap_song[][2] = CG_SWAP_SONG;
71 #ifdef DEFAULT_LAYER_SONGS 79 #ifdef DEFAULT_LAYER_SONGS
72 float default_layer_songs[][16][2] = DEFAULT_LAYER_SONGS; 80 float default_layer_songs[][16][2] = DEFAULT_LAYER_SONGS;
73 #endif 81 #endif
@@ -563,7 +571,8 @@ bool process_record_quantum(keyrecord_t *record) {
563 return false; 571 return false;
564 #endif 572 #endif
565 #endif 573 #endif
566 case MAGIC_SWAP_CONTROL_CAPSLOCK ... MAGIC_TOGGLE_NKRO: 574 case MAGIC_SWAP_CONTROL_CAPSLOCK ... MAGIC_TOGGLE_ALT_GUI:
575 case MAGIC_SWAP_LCTL_LGUI ... MAGIC_TOGGLE_CTL_GUI:
567 if (record->event.pressed) { 576 if (record->event.pressed) {
568 // MAGIC actions (BOOTMAGIC without the boot) 577 // MAGIC actions (BOOTMAGIC without the boot)
569 if (!eeconfig_is_enabled()) { 578 if (!eeconfig_is_enabled()) {
@@ -585,6 +594,12 @@ bool process_record_quantum(keyrecord_t *record) {
585 case MAGIC_SWAP_RALT_RGUI: 594 case MAGIC_SWAP_RALT_RGUI:
586 keymap_config.swap_ralt_rgui = true; 595 keymap_config.swap_ralt_rgui = true;
587 break; 596 break;
597 case MAGIC_SWAP_LCTL_LGUI:
598 keymap_config.swap_lctl_lgui = true;
599 break;
600 case MAGIC_SWAP_RCTL_RGUI:
601 keymap_config.swap_rctl_rgui = true;
602 break;
588 case MAGIC_NO_GUI: 603 case MAGIC_NO_GUI:
589 keymap_config.no_gui = true; 604 keymap_config.no_gui = true;
590 break; 605 break;
@@ -604,6 +619,13 @@ bool process_record_quantum(keyrecord_t *record) {
604 PLAY_SONG(ag_swap_song); 619 PLAY_SONG(ag_swap_song);
605 #endif 620 #endif
606 break; 621 break;
622 case MAGIC_SWAP_CTL_GUI:
623 keymap_config.swap_lctl_lgui = true;
624 keymap_config.swap_rctl_rgui = true;
625 #ifdef AUDIO_ENABLE
626 PLAY_SONG(cg_swap_song);
627 #endif
628 break;
607 case MAGIC_UNSWAP_CONTROL_CAPSLOCK: 629 case MAGIC_UNSWAP_CONTROL_CAPSLOCK:
608 keymap_config.swap_control_capslock = false; 630 keymap_config.swap_control_capslock = false;
609 break; 631 break;
@@ -616,6 +638,12 @@ bool process_record_quantum(keyrecord_t *record) {
616 case MAGIC_UNSWAP_RALT_RGUI: 638 case MAGIC_UNSWAP_RALT_RGUI:
617 keymap_config.swap_ralt_rgui = false; 639 keymap_config.swap_ralt_rgui = false;
618 break; 640 break;
641 case MAGIC_UNSWAP_LCTL_LGUI:
642 keymap_config.swap_lctl_lgui = false;
643 break;
644 case MAGIC_UNSWAP_RCTL_RGUI:
645 keymap_config.swap_rctl_rgui = false;
646 break;
619 case MAGIC_UNNO_GUI: 647 case MAGIC_UNNO_GUI:
620 keymap_config.no_gui = false; 648 keymap_config.no_gui = false;
621 break; 649 break;
@@ -635,6 +663,13 @@ bool process_record_quantum(keyrecord_t *record) {
635 PLAY_SONG(ag_norm_song); 663 PLAY_SONG(ag_norm_song);
636 #endif 664 #endif
637 break; 665 break;
666 case MAGIC_UNSWAP_CTL_GUI:
667 keymap_config.swap_lctl_lgui = false;
668 keymap_config.swap_rctl_rgui = false;
669 #ifdef AUDIO_ENABLE
670 PLAY_SONG(cg_norm_song);
671 #endif
672 break;
638 case MAGIC_TOGGLE_ALT_GUI: 673 case MAGIC_TOGGLE_ALT_GUI:
639 keymap_config.swap_lalt_lgui = !keymap_config.swap_lalt_lgui; 674 keymap_config.swap_lalt_lgui = !keymap_config.swap_lalt_lgui;
640 keymap_config.swap_ralt_rgui = !keymap_config.swap_ralt_rgui; 675 keymap_config.swap_ralt_rgui = !keymap_config.swap_ralt_rgui;
@@ -646,6 +681,17 @@ bool process_record_quantum(keyrecord_t *record) {
646 } 681 }
647 #endif 682 #endif
648 break; 683 break;
684 case MAGIC_TOGGLE_CTL_GUI:
685 keymap_config.swap_lctl_lgui = !keymap_config.swap_lctl_lgui;
686 keymap_config.swap_rctl_rgui = !keymap_config.swap_rctl_rgui;
687 #ifdef AUDIO_ENABLE
688 if (keymap_config.swap_rctl_rgui) {
689 PLAY_SONG(cg_swap_song);
690 } else {
691 PLAY_SONG(cg_norm_song);
692 }
693 #endif
694 break;
649 case MAGIC_TOGGLE_NKRO: 695 case MAGIC_TOGGLE_NKRO:
650 keymap_config.nkro = !keymap_config.nkro; 696 keymap_config.nkro = !keymap_config.nkro;
651 break; 697 break;