diff options
author | GloriousThrall <74627436+GloriousThrall@users.noreply.github.com> | 2022-05-19 19:47:22 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-05-20 01:47:22 +0100 |
commit | 83fa6fe916bfd7d337f05d7805f0a51ad86c8b43 (patch) | |
tree | fc279aa7123dfcf99ba8753ca01082b1f6eadbec /keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/mike1808.c | |
parent | b5608cbb6d8a5a24d9c3b928521acbc57726831f (diff) |
Move GMMK Pro to allow for multiple revisions (#16423)
* Added GMMK PRO Rev2 WBG7 MCU compatibility. Added GMMK 2 WBG7 MCU compatibility.
* GMMK PRO MCU Updates only (removed other kbs)
* fix problems
* Optimize the code.
* Update form develop branch
* Update
* Updater from qmk/develop
* Update
* Update config.h
* Update config.h
* Remove gmmk pro rev2
* move moults31/keymap.c
* Update
* tidy up
Co-authored-by: Joy <chang.li@westberrytech.com>
Co-authored-by: zvecr <git@zvecr.com>
Diffstat (limited to 'keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/mike1808.c')
-rw-r--r-- | keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/mike1808.c | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/mike1808.c b/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/mike1808.c new file mode 100644 index 0000000000..dda68fda2f --- /dev/null +++ b/keyboards/gmmk/pro/rev1/ansi/keymaps/mike1808/mike1808.c @@ -0,0 +1,68 @@ +/* Copyright 2021 Mikael Manukyan <arm.localhost@gmail.com> + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ +#include "mike1808.h" + +#if (__has_include("secrets.h") && !defined(NO_SECRETS)) +# include "secrets.h" +#else +// `PROGMEM const char secret[][x]` may work better, but it takes up more space in the firmware +// And I'm not familiar enough to know which is better or why... +static const char *const secrets[] = {"test1", "test2", "test3", "test4", "test5"}; +#endif + +// userspace_config_t userspace_config; + +bool process_record_secrets(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case KC_SECRET_1 ... KC_SECRET_5: // Secrets! Externally defined strings, not stored in repo + if (!record->event.pressed) { + clear_oneshot_layer_state(ONESHOT_OTHER_KEY_PRESSED); + send_string_with_delay(secrets[keycode - KC_SECRET_1], MACRO_TIMER); + } + return false; + break; + } + return true; +} + +void suspend_power_down_user(void) { +#ifdef RGB_MATRIX_ENABLE + rgb_matrix_set_suspend_state(true); +#endif // RGB_MATRIX_ENABLE +} + +void suspend_wakeup_init_user(void) { +#ifdef RGB_MATRIX_ENABLE + rgb_matrix_set_suspend_state(false); +#endif // RGB_MATRIX_ENABLE +} + +#ifdef RGB_MATRIX_ENABLE +void rgb_matrix_indicators_advanced_keymap(uint8_t led_min, uint8_t led_max) { + // Turn on sideglow when CAPS LOCK is activated + if (host_keyboard_led_state().caps_lock) { + HSV hsv = {CAPS_LOCK_COLOR}; + hsv.v = rgb_matrix_get_val(); + RGB rgb = hsv_to_rgb(hsv); + + for (uint8_t i = led_min; i < led_max; i++) { + if (HAS_FLAGS(g_led_config.flags[i], LED_FLAG_UNDERGLOW)) { + RGB_MATRIX_INDICATOR_SET_COLOR(i, rgb.r, rgb.g, rgb.b); + } + } + } +} +#endif // RGB_MATRIX_ENABLE |