aboutsummaryrefslogtreecommitdiff
path: root/keyboards/rubi/keymaps/default/keymap.c
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/rubi/keymaps/default/keymap.c')
-rw-r--r--keyboards/rubi/keymaps/default/keymap.c31
1 files changed, 31 insertions, 0 deletions
diff --git a/keyboards/rubi/keymaps/default/keymap.c b/keyboards/rubi/keymaps/default/keymap.c
index 054e3ce23..e0e7290df 100644
--- a/keyboards/rubi/keymaps/default/keymap.c
+++ b/keyboards/rubi/keymaps/default/keymap.c
@@ -56,3 +56,34 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
56 KC_TRNS, KC_TRNS 56 KC_TRNS, KC_TRNS
57 ), 57 ),
58}; 58};
59
60bool encoder_update_user(uint8_t index, bool clockwise) {
61 if (index == 0) {
62 if (get_highest_layer(layer_state) == 0) {
63 uint16_t mapped_code = 0;
64 if (clockwise) {
65 mapped_code = handle_encoder_cw();
66 } else {
67 mapped_code = handle_encoder_ccw();
68 }
69 if (mapped_code != 0) {
70 tap_code16(mapped_code);
71 }
72 } else {
73 if (clockwise) {
74 if (oled_mode == OLED_MODE_CALC) {
75 handle_encoder_cw();
76 } else if (oled_mode == OLED_MODE_DEFAULT) {
77 change_encoder_mode(false);
78 }
79 } else {
80 if (oled_mode == OLED_MODE_CALC) {
81 handle_encoder_ccw();
82 } else if (oled_mode == OLED_MODE_DEFAULT) {
83 change_encoder_mode(true);
84 }
85 }
86 }
87 }
88 return true;
89}