diff options
| author | Joel Challis | 2024-08-04 21:34:57 +0200 |
|---|---|---|
| committer | GitHub | 2024-08-04 21:34:57 +0200 |
| commit | ac1b4881707d78aab3870583ace7d7970f05da27 (patch) | |
| tree | 29774ce03f5c73a2902b3b648d952dd59e5786fc /keyboards/printedpad/keymaps | |
| parent | b5b4e938579b2cc1c088054814e6a0a9c01cea1a (diff) | |
Refactor printedpad (#24236)
Diffstat (limited to 'keyboards/printedpad/keymaps')
| -rw-r--r-- | keyboards/printedpad/keymaps/default/keymap.c | 27 | ||||
| -rw-r--r-- | keyboards/printedpad/keymaps/via/keymap.c | 27 |
2 files changed, 52 insertions, 2 deletions
diff --git a/keyboards/printedpad/keymaps/default/keymap.c b/keyboards/printedpad/keymaps/default/keymap.c index 2126dc593f..97893af0e0 100644 --- a/keyboards/printedpad/keymaps/default/keymap.c +++ b/keyboards/printedpad/keymaps/default/keymap.c @@ -42,4 +42,29 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_V, KC_W, KC_X, KC_Y, KC_Z, KC_ENT ) -};
\ No newline at end of file +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch(keycode) { + case LT(0, KC_NO): + if (record->event.pressed) { + // on tap + if (record->tap.count) { + if (get_highest_layer(layer_state) >= 3) { + layer_clear(); + } else { + layer_move(get_highest_layer(layer_state) + 1); + } + } +#ifdef OLED_ENABLE + // on hold + else { + void oled_display_mode_step(void); + oled_display_mode_step(); + } +#endif + } + return false; + } + return true; +} diff --git a/keyboards/printedpad/keymaps/via/keymap.c b/keyboards/printedpad/keymaps/via/keymap.c index 2126dc593f..97893af0e0 100644 --- a/keyboards/printedpad/keymaps/via/keymap.c +++ b/keyboards/printedpad/keymaps/via/keymap.c @@ -42,4 +42,29 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_V, KC_W, KC_X, KC_Y, KC_Z, KC_ENT ) -};
\ No newline at end of file +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch(keycode) { + case LT(0, KC_NO): + if (record->event.pressed) { + // on tap + if (record->tap.count) { + if (get_highest_layer(layer_state) >= 3) { + layer_clear(); + } else { + layer_move(get_highest_layer(layer_state) + 1); + } + } +#ifdef OLED_ENABLE + // on hold + else { + void oled_display_mode_step(void); + oled_display_mode_step(); + } +#endif + } + return false; + } + return true; +} |