/*
-Copyright 2012,2013 Jun Wako <wakojun@gmail.com>
+Copyright 2012,2013,2020 Jun Wako <wakojun@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
#include "action.h"
#include "hook.h"
#include "wait.h"
+#include "bootloader.h"
#ifdef DEBUG_ACTION
#include "debug.h"
void process_action(keyrecord_t *record)
{
+ if (hook_process_action(record)) return;
+
keyevent_t event = record->event;
#ifndef NO_ACTION_TAPPING
uint8_t tap_count = record->tap.count;
break;
#endif
case ACT_COMMAND:
+ switch (action.command.id) {
+ case COMMAND_BOOTLOADER:
+ if (event.pressed) {
+ clear_keyboard();
+ wait_ms(50);
+ bootloader_jump();
+ }
+ break;
+ }
break;
#ifndef NO_ACTION_FUNCTION
case ACT_FUNCTION:
}
}
+void type_code(uint8_t code)
+{
+ register_code(code);
+ unregister_code(code);
+}
+
void register_mods(uint8_t mods)
{
if (mods) {
bool is_tap_key(keyevent_t event)
{
+ if (IS_NOEVENT(event)) { return false; }
+
action_t action = layer_switch_get_action(event);
switch (action.kind.id) {