diff --git a/KeyboardioFirmware.h b/KeyboardioFirmware.h index b6c351e1..9241345e 100644 --- a/KeyboardioFirmware.h +++ b/KeyboardioFirmware.h @@ -44,6 +44,7 @@ void handle_synthetic_key_event(byte switchState, Key mappedKey); void handle_key_event(byte row, byte col); void press_key(Key mappedKey); void handle_keymap_key_event(byte switchState, Key keymapEntry); +void handle_mouse_key_event(byte switchState, Key mappedKey); #ifndef VERSION #define VERSION "locally-built" diff --git a/KeyboardioFirmware.ino b/KeyboardioFirmware.ino index cd202a2e..033c677e 100644 --- a/KeyboardioFirmware.ino +++ b/KeyboardioFirmware.ino @@ -58,7 +58,7 @@ void handle_synthetic_key_event(byte switchState, Key mappedKey) { warp_mouse(mappedKey); } } else { - handle_mouse_key_press(switchState, mappedKey); + handle_mouse_key_event(switchState, mappedKey); } } if (mappedKey.flags & IS_CONSUMER) { @@ -156,3 +156,21 @@ void handle_keymap_key_event(byte switchState, Key keymapEntry) { } } } + +void handle_mouse_key_event(byte switchState, Key mappedKey) { + if (key_is_pressed(switchState)) { + if (mappedKey.rawKey & MOUSE_UP) { + move_mouse(0,-1); + } + if (mappedKey.rawKey & MOUSE_DN) { + move_mouse(0,1); + } + if (mappedKey.rawKey & MOUSE_L) { + move_mouse(-1,0); + } + if (mappedKey.rawKey & MOUSE_R) { + move_mouse(1,0); + } + } +} + diff --git a/mouse_movement.cpp b/mouse_movement.cpp index 8ba1c742..b78759f5 100644 --- a/mouse_movement.cpp +++ b/mouse_movement.cpp @@ -121,21 +121,3 @@ void move_mouse( int8_t x, int8_t y) { } -void handle_mouse_key_press(byte switchState, Key mappedKey) { - if (key_is_pressed(switchState)) { - if (mappedKey.rawKey & MOUSE_UP) { - move_mouse(0,-1); - } - if (mappedKey.rawKey & MOUSE_DN) { - move_mouse(0,1); - } - if (mappedKey.rawKey & MOUSE_L) { - move_mouse(-1,0); - } - - if (mappedKey.rawKey & MOUSE_R) { - move_mouse(1,0); - } - } -} - diff --git a/mouse_movement.h b/mouse_movement.h index 63695b5b..c47470f3 100644 --- a/mouse_movement.h +++ b/mouse_movement.h @@ -4,7 +4,6 @@ // Mouse-related 'public' API methods double mouse_accel (double cycles); -void handle_mouse_key_press(byte switchState, Key mappedKey); void move_mouse( int8_t x, int8_t y); void begin_warping(); void end_warping();