diff options
Diffstat (limited to 'keyboards/xd004/keymaps/system_and_media/keymap.c')
-rw-r--r-- | keyboards/xd004/keymaps/system_and_media/keymap.c | 59 |
1 files changed, 0 insertions, 59 deletions
diff --git a/keyboards/xd004/keymaps/system_and_media/keymap.c b/keyboards/xd004/keymaps/system_and_media/keymap.c deleted file mode 100644 index 60f0e15bbe..0000000000 --- a/keyboards/xd004/keymaps/system_and_media/keymap.c +++ /dev/null @@ -1,59 +0,0 @@ -#include QMK_KEYBOARD_H - -#define _BASE 0 // Base layer -#define _SYSTEM 1 // System actions -#define _VOLUME 2 // Volume actions - -#define SUPER_ALT_F4_TIMER 300 // Timeout on the super alt-f4 key - -/* - The idea of this is pretty simple: base layer has four action, two of which (the outermost) - are regular keystrokes on tap, and a momentary layer switch on hold, sending you to layers 1 and 2. - - The other bit of customization here is the 'Super Alt F4' which does Alt-F4, and then Enter if tapped - again SUPER_ALT_F4_TIMER miliseconds after. This lets you Alt-F4 applications, and finally quickly - double-tap it to Alt-F4+Enter to shut down the PC. -*/ - -bool is_alt_f4_active = false; -uint16_t alt_f4_timer = 0; - -enum custom_keycodes { // Make sure have the awesome keycode ready - SUPER_ALT_F4 = SAFE_RANGE, -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - - // 0: Base Layer - [_BASE] = LAYOUT_all(LT(_SYSTEM, KC_F5), C(G(KC_LEFT)), C(G(KC_RIGHT)), LT(_VOLUME, KC_F7)), - - // 1: System actions - [_SYSTEM] = LAYOUT_all(_______, SUPER_ALT_F4, G(KC_D), G(KC_L)), - - // 2: Volume actions - [_VOLUME] = LAYOUT_all(KC_MEDIA_NEXT_TRACK, KC_AUDIO_VOL_DOWN, KC_AUDIO_VOL_UP, _______), - -}; - -bool process_record_user(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { // This will do most of the grunt work with the keycodes. - case SUPER_ALT_F4: - if (record->event.pressed) { - if (!is_alt_f4_active) { - is_alt_f4_active = true; - tap_code16(LALT(KC_F4)); // Alt-F4 - } else { - tap_code(KC_ENTER); // Tap enter - } - } - alt_f4_timer = timer_read(); - break; - } - return true; -} - -void matrix_scan_user(void) { - if (is_alt_f4_active && timer_elapsed(alt_f4_timer) > SUPER_ALT_F4_TIMER) { - is_alt_f4_active = false; - } -}; |