summaryrefslogtreecommitdiff
path: root/tmk_core/common/action.c
diff options
context:
space:
mode:
Diffstat (limited to 'tmk_core/common/action.c')
-rw-r--r--tmk_core/common/action.c26
1 files changed, 22 insertions, 4 deletions
diff --git a/tmk_core/common/action.c b/tmk_core/common/action.c
index a7432bae59..ef01a71776 100644
--- a/tmk_core/common/action.c
+++ b/tmk_core/common/action.c
@@ -443,6 +443,15 @@ void process_action(keyrecord_t *record, action_t action) {
case KC_MS_BTN5:
register_button(true, MOUSE_BTN5);
break;
+ case KC_MS_BTN6:
+ register_button(true, MOUSE_BTN6);
+ break;
+ case KC_MS_BTN7:
+ register_button(true, MOUSE_BTN7);
+ break;
+ case KC_MS_BTN8:
+ register_button(true, MOUSE_BTN8);
+ break;
# endif
default:
mousekey_send();
@@ -469,6 +478,15 @@ void process_action(keyrecord_t *record, action_t action) {
case KC_MS_BTN5:
register_button(false, MOUSE_BTN5);
break;
+ case KC_MS_BTN6:
+ register_button(false, MOUSE_BTN6);
+ break;
+ case KC_MS_BTN7:
+ register_button(false, MOUSE_BTN7);
+ break;
+ case KC_MS_BTN8:
+ register_button(false, MOUSE_BTN8);
+ break;
# endif
default:
mousekey_send();
@@ -1017,6 +1035,10 @@ void clear_keyboard_but_mods(void) {
* FIXME: Needs documentation.
*/
void clear_keyboard_but_mods_and_keys() {
+#ifdef EXTRAKEY_ENABLE
+ host_system_send(0);
+ host_consumer_send(0);
+#endif
clear_weak_mods();
clear_macro_mods();
send_keyboard_report();
@@ -1024,10 +1046,6 @@ void clear_keyboard_but_mods_and_keys() {
mousekey_clear();
mousekey_send();
#endif
-#ifdef EXTRAKEY_ENABLE
- host_system_send(0);
- host_consumer_send(0);
-#endif
}
/** \brief Utilities for actions. (FIXME: Needs better description)