diff options
| author | krusli <rusli.kenneth@gmail.com> | 2017-09-16 12:18:19 +1000 |
|---|---|---|
| committer | Jack Humbert <jack.humb@gmail.com> | 2017-09-16 09:34:29 -0400 |
| commit | 6cfb85f32f4789fbfbb0a12e0bf3ae8a26d86ce6 (patch) | |
| tree | 3d4e4fd7a403c495353d290afba116320093cd08 | |
| parent | 0b7df9f2ef27b2bc26203e1d3ea027b80172b763 (diff) | |
| download | qmk_firmware-6cfb85f32f4789fbfbb0a12e0bf3ae8a26d86ce6.tar.gz qmk_firmware-6cfb85f32f4789fbfbb0a12e0bf3ae8a26d86ce6.zip | |
Fixes for RGB, more colours
| -rw-r--r-- | keyboards/mechmini/keymaps/default/keymap.c | 46 |
1 files changed, 37 insertions, 9 deletions
diff --git a/keyboards/mechmini/keymaps/default/keymap.c b/keyboards/mechmini/keymaps/default/keymap.c index d9753d011..2a7c5f6c2 100644 --- a/keyboards/mechmini/keymaps/default/keymap.c +++ b/keyboards/mechmini/keymaps/default/keymap.c | |||
| @@ -37,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 37 | [_FN1] = KEYMAP( | 37 | [_FN1] = KEYMAP( |
| 38 | _____, _____, KC_UP, KC_MUTE, KC_VOLD, KC_VOLU, KC_MRWD, KC_MPLY, KC_MFFD, KC_SLCK, KC_PAUS, KC_DEL, | 38 | _____, _____, KC_UP, KC_MUTE, KC_VOLD, KC_VOLU, KC_MRWD, KC_MPLY, KC_MFFD, KC_SLCK, KC_PAUS, KC_DEL, |
| 39 | KC_CAPS, KC_LEFT, KC_DOWN, KC_RIGHT, _____, _____, _____, KC_INS, KC_HOME, KC_PGUP, KC_PSCR, | 39 | KC_CAPS, KC_LEFT, KC_DOWN, KC_RIGHT, _____, _____, _____, KC_INS, KC_HOME, KC_PGUP, KC_PSCR, |
| 40 | _____, _____, M(0), M(1), M(2), _____, _____, KC_END, KC_PGDN, _____, _____, | 40 | _____, _____, M(0), M(1), M(2), _____, _____, KC_END, KC_PGDN, _____, _____, |
| 41 | _____, _____, _____, _____, _____, _____, _____, _____ | 41 | _____, _____, _____, _____, _____, _____, _____, _____ |
| 42 | ), | 42 | ), |
| 43 | [_FN2] = KEYMAP( | 43 | [_FN2] = KEYMAP( |
| @@ -48,8 +48,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 48 | ), | 48 | ), |
| 49 | [_FN3] = KEYMAP( | 49 | [_FN3] = KEYMAP( |
| 50 | KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, | 50 | KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, |
| 51 | _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, | 51 | _____, M(3), M(4), M(5), _____, _____, _____, _____, _____, _____, _____, |
| 52 | _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, | 52 | _____, M(6), _____, _____, _____, _____, _____, _____, _____, _____, _____, |
| 53 | _____, _____, _____, _____, _____, _____, _____, _____ | 53 | _____, _____, _____, _____, _____, _____, _____, _____ |
| 54 | ) | 54 | ) |
| 55 | }; | 55 | }; |
| @@ -67,10 +67,20 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
| 67 | uint8_t current_level = 2; | 67 | uint8_t current_level = 2; |
| 68 | int is_on = 0; | 68 | int is_on = 0; |
| 69 | 69 | ||
| 70 | uint8_t r = 0xFF; | ||
| 71 | uint8_t g = 0xFF; | ||
| 72 | uint8_t b = 0xFF; | ||
| 73 | |||
| 74 | uint8_t max_brightness = MAX_BRIGHTNESS_IOS; | ||
| 75 | |||
| 70 | enum macro_id { | 76 | enum macro_id { |
| 71 | TOGGLE_RGB, | 77 | TOGGLE_RGB, |
| 72 | RGB_LEVEL_DOWN, | 78 | RGB_LEVEL_DOWN, |
| 73 | RGB_LEVEL_UP | 79 | RGB_LEVEL_UP, |
| 80 | RGB_PURPLE, | ||
| 81 | RGB_CYAN, | ||
| 82 | RGB_WHITE, | ||
| 83 | ENABLE_MAX_BRIGHTNESS | ||
| 74 | }; | 84 | }; |
| 75 | 85 | ||
| 76 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { | 86 | const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { |
| @@ -80,6 +90,7 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { | |||
| 80 | case TOGGLE_RGB: | 90 | case TOGGLE_RGB: |
| 81 | if (event.pressed) { | 91 | if (event.pressed) { |
| 82 | if (!is_on) { | 92 | if (!is_on) { |
| 93 | current_level = 2; | ||
| 83 | is_on = 1; | 94 | is_on = 1; |
| 84 | } else { | 95 | } else { |
| 85 | is_on = 0; | 96 | is_on = 0; |
| @@ -91,10 +102,28 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { | |||
| 91 | } | 102 | } |
| 92 | break; | 103 | break; |
| 93 | case RGB_LEVEL_UP: | 104 | case RGB_LEVEL_UP: |
| 94 | if (event.pressed && current_level < MAX_BRIGHTNESS_IOS) { | 105 | if (event.pressed && current_level < max_brightness) { |
| 95 | current_level++; | 106 | current_level++; |
| 96 | } | 107 | } |
| 97 | break; | 108 | break; |
| 109 | case RGB_PURPLE: | ||
| 110 | r = 0xFF; | ||
| 111 | g = 0x81; | ||
| 112 | b = 0xC2; | ||
| 113 | break; | ||
| 114 | case RGB_CYAN: | ||
| 115 | r = 0x00; | ||
| 116 | g = 0xDC; | ||
| 117 | b = 0xFF; | ||
| 118 | break; | ||
| 119 | case RGB_WHITE: | ||
| 120 | r = 0xFF; | ||
| 121 | g = 0xFF; | ||
| 122 | b = 0xFF; | ||
| 123 | break; | ||
| 124 | case ENABLE_MAX_BRIGHTNESS: | ||
| 125 | max_brightness = MAX_BRIGHTNESS; | ||
| 126 | break; | ||
| 98 | } | 127 | } |
| 99 | 128 | ||
| 100 | return MACRO_NONE; | 129 | return MACRO_NONE; |
| @@ -119,10 +148,9 @@ void user_setrgb(uint8_t r, uint8_t g, uint8_t b) { | |||
| 119 | 148 | ||
| 120 | void matrix_scan_user(void) { | 149 | void matrix_scan_user(void) { |
| 121 | if (!is_on) { | 150 | if (!is_on) { |
| 122 | current_level = 2; | ||
| 123 | user_setrgb(0xFF, 0xFF, 0xFF); | ||
| 124 | } else { | ||
| 125 | current_level = 0; | 151 | current_level = 0; |
| 126 | user_setrgb(0xFF, 0xFF, 0xFF); | 152 | user_setrgb(r, g, b); |
| 153 | } else { | ||
| 154 | user_setrgb(r, g, b); | ||
| 127 | } | 155 | } |
| 128 | } | 156 | } |
