Skip to content

Commit

Permalink
Add a toggle key for GUI On/Off in Magic feature (qmk#13830)
Browse files Browse the repository at this point in the history
  • Loading branch information
drashna authored Aug 17, 2021
1 parent 3b28178 commit 4c4f632
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 0 deletions.
1 change: 1 addition & 0 deletions docs/keycodes_magic.md
Original file line number Diff line number Diff line change
Expand Up @@ -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 |
Expand Down
3 changes: 3 additions & 0 deletions quantum/process_keycode/process_magic.c
Original file line number Diff line number Diff line change
Expand Up @@ -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);
Expand Down
4 changes: 4 additions & 0 deletions quantum/quantum_keycodes.h
Original file line number Diff line number Diff line change
Expand Up @@ -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
};
Expand Down Expand Up @@ -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
Expand Down

0 comments on commit 4c4f632

Please sign in to comment.