summaryrefslogtreecommitdiff
path: root/users/sethBarberee/sethBarberee.c
diff options
context:
space:
mode:
authorQMK Bot <hello@qmk.fm>2021-05-08 17:27:30 +0000
committerQMK Bot <hello@qmk.fm>2021-05-08 17:27:30 +0000
commita8714447430aa800774d756c362e928b34add5ef (patch)
treeb052bf2326ebfb1d8ec14f6ec51e11aea64f932e /users/sethBarberee/sethBarberee.c
parentfd5da75bddd3b29d022fc4b8a6ae1c92dc430124 (diff)
parentb7fe24923e29218b15233163d9fe0ac5f332d3fc (diff)
downloadqmk_firmware-a8714447430aa800774d756c362e928b34add5ef.tar.gz
qmk_firmware-a8714447430aa800774d756c362e928b34add5ef.zip
Merge remote-tracking branch 'origin/master' into develop
Diffstat (limited to 'users/sethBarberee/sethBarberee.c')
-rw-r--r--users/sethBarberee/sethBarberee.c112
1 files changed, 76 insertions, 36 deletions
diff --git a/users/sethBarberee/sethBarberee.c b/users/sethBarberee/sethBarberee.c
index 10f78f63b5..536f3f921b 100644
--- a/users/sethBarberee/sethBarberee.c
+++ b/users/sethBarberee/sethBarberee.c
@@ -1,45 +1,85 @@
+ /* Copyright 2021 SethBarberee <seth.barberee@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 "sethBarberee.h"
-#ifdef RGBLIGHT_ENABLE
-#ifdef TAP_DANCE_ENABLE
-
-// Initialize it now
-tap caps_status = {
- .toggled = false,
- .toggle_mode = CAPS_LOCK_MODE,
- .normal_mode = NORMAL_MODE
-};
-
-void dance_ecap_finished (qk_tap_dance_state_t *state, void *user_data){
- if(state->count == 1){
- register_code(KC_ESC);
- } else {
- register_code(KC_CAPS);
- if(!caps_status.toggled){
- // Toggling caps so indicate
- caps_status.toggled = true;
- rgblight_mode_noeeprom(caps_status.toggle_mode);
- } else {
- // Turning off so return to normal mode
- caps_status.toggled = false;
- rgblight_mode_noeeprom(caps_status.normal_mode);
- }
- }
+#include "version.h"
+
+__attribute__ ((weak)) void keyboard_pre_init_keymap(void) {}
+
+void keyboard_pre_init_user(void){
+#if defined(BOOTLOADER_CATERINA)
+ // Make sure the red LEDs don't light
+ setPinOutput(D5);
+ writePinHigh(D5);
+
+ setPinOutput(B0);
+ writePinHigh(B0);
+#endif
+ keyboard_pre_init_keymap();
}
-void dance_ecap_reset (qk_tap_dance_state_t *state, void *user_data){
- if(state->count == 1){
- unregister_code(KC_ESC);
- } else {
- unregister_code(KC_CAPS);
+__attribute__ ((weak)) layer_state_t layer_state_set_keymap (layer_state_t state) { return state; }
+
+layer_state_t layer_state_set_user(layer_state_t state){
+
+ if (!is_keyboard_master()) {
+ return state;
}
+
+ state = update_tri_layer_state(state, _RAISE, _LOWER, _ADJUST);
+#if defined(RGBLIGHT_ENABLE)
+ state = layer_state_set_rgb_light(state);
+#endif
+ return layer_state_set_keymap(state);
}
-//Tap Dance Definitions
-qk_tap_dance_action_t tap_dance_actions[] = {
- //Tap once for Esc, twice for Caps Lock
- [TD_ECAP] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, dance_ecap_finished, dance_ecap_reset),
-// Other declarations would go here, separated by commas, if you have them
-};
+__attribute__ ((weak)) void keyboard_post_init_keymap(void) {}
+void keyboard_post_init_user(void)
+{
+#if defined(RGBLIGHT_ENABLE)
+ keyboard_post_init_rgb_light();
#endif
+ keyboard_post_init_keymap();
+}
+
+__attribute__((weak)) void suspend_power_down_keymap(void) {}
+
+void suspend_power_down_user(void) {
+#ifdef OLED_DRIVER_ENABLE
+ oled_off();
#endif
+ suspend_power_down_keymap();
+}
+
+__attribute__((weak)) void suspend_wakeup_init_keymap(void) {}
+
+void suspend_wakeup_init_user(void) { suspend_wakeup_init_keymap(); }
+
+__attribute__ ((weak)) bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { return true;}
+
+bool process_record_user(uint16_t keycode, keyrecord_t *record) {
+ if (process_record_keymap(keycode, record))
+ {
+ switch (keycode) {
+ case KC_VRSN: // Prints firmware version
+ if (record->event.pressed) {
+ SEND_STRING(QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION ", Built on: " QMK_BUILDDATE);
+ }
+ break;
+ }
+ }
+ return true;
+}