~ruther/qmk_firmware

4c4f632378867b5c3e61461333974f59170893c3 — Drashna Jaelre 4 years ago 3b28178
Add a toggle key for GUI On/Off in Magic feature (#13830)

3 files changed, 8 insertions(+), 0 deletions(-)

M docs/keycodes_magic.md
M quantum/process_keycode/process_magic.c
M quantum/quantum_keycodes.h
M docs/keycodes_magic.md => docs/keycodes_magic.md +1 -0
@@ 24,6 24,7 @@
|`MAGIC_TOGGLE_ALT_GUI`            |`AG_TOGG`|Toggle Alt and GUI swap on both sides                                     |
|`MAGIC_NO_GUI`                    |`GUI_OFF`|Disable the GUI keys                                                      |
|`MAGIC_UNNO_GUI`                  |`GUI_ON` |Enable the GUI keys                                                       |
|`MAGIC_TOGGLE_GUI`                |`GUI_TOG`|Toggles the status of the GUI keys                                        |
|`MAGIC_SWAP_GRAVE_ESC`            |`GE_SWAP`|Swap <code>&#96;</code> and Escape                                        |
|`MAGIC_UNSWAP_GRAVE_ESC`          |`GE_NORM`|Unswap <code>&#96;</code> and Escape                                      |
|`MAGIC_SWAP_BACKSLASH_BACKSPACE`  |`BS_SWAP`|Swap `\` and Backspace                                                    |

M quantum/process_keycode/process_magic.c => quantum/process_keycode/process_magic.c +3 -0
@@ 164,6 164,9 @@ bool process_magic(uint16_t keycode, keyrecord_t *record) {
                    case MAGIC_EE_HANDS_RIGHT:
                        eeconfig_update_handedness(false);
                        break;
                    case MAGIC_TOGGLE_GUI:
                        keymap_config.no_gui = !keymap_config.no_gui;
                        break;
                }

                eeconfig_update_keymap(keymap_config.raw);

M quantum/quantum_keycodes.h => quantum/quantum_keycodes.h +4 -0
@@ 521,6 521,9 @@ enum quantum_keycodes {
    KEY_OVERRIDE_ON,
    KEY_OVERRIDE_OFF,

    // Additional magic key
    MAGIC_TOGGLE_GUI,

    // Start of custom keycode range for keyboards and keymaps - always leave at the end
    SAFE_RANGE
};


@@ 694,6 697,7 @@ enum quantum_keycodes {

#define GUI_OFF MAGIC_NO_GUI
#define GUI_ON MAGIC_UNNO_GUI
#define GUI_TOG MAGIC_TOGGLE_GUI

#define GE_SWAP MAGIC_SWAP_GRAVE_ESC
#define GE_NORM MAGIC_UNSWAP_GRAVE_ESC