diff options
Diffstat (limited to 'keyboards/ploopyco/mouse/mouse.c')
-rw-r--r-- | keyboards/ploopyco/mouse/mouse.c | 25 |
1 files changed, 6 insertions, 19 deletions
diff --git a/keyboards/ploopyco/mouse/mouse.c b/keyboards/ploopyco/mouse/mouse.c index 1eb5e3ead..0bf96a20f 100644 --- a/keyboards/ploopyco/mouse/mouse.c +++ b/keyboards/ploopyco/mouse/mouse.c | |||
@@ -247,7 +247,6 @@ void pointing_device_init(void) { | |||
247 | opt_encoder_init(); | 247 | opt_encoder_init(); |
248 | } | 248 | } |
249 | 249 | ||
250 | bool has_report_changed(report_mouse_t new, report_mouse_t old) { return (new.buttons != old.buttons) || (new.x && new.x != old.x) || (new.y && new.y != old.y) || (new.h && new.h != old.h) || (new.v && new.v != old.v); } | ||
251 | 250 | ||
252 | void pointing_device_task(void) { | 251 | void pointing_device_task(void) { |
253 | report_mouse_t mouse_report = pointing_device_get_report(); | 252 | report_mouse_t mouse_report = pointing_device_get_report(); |
@@ -256,7 +255,12 @@ void pointing_device_task(void) { | |||
256 | 255 | ||
257 | if (is_drag_scroll) { | 256 | if (is_drag_scroll) { |
258 | mouse_report.h = mouse_report.x; | 257 | mouse_report.h = mouse_report.x; |
258 | #ifdef PLOOPY_DRAGSCROLL_INVERT | ||
259 | // Invert vertical scroll direction | ||
260 | mouse_report.v = -mouse_report.y; | ||
261 | #else | ||
259 | mouse_report.v = mouse_report.y; | 262 | mouse_report.v = mouse_report.y; |
263 | #endif | ||
260 | mouse_report.x = 0; | 264 | mouse_report.x = 0; |
261 | mouse_report.y = 0; | 265 | mouse_report.y = 0; |
262 | } | 266 | } |
@@ -265,27 +269,10 @@ void pointing_device_task(void) { | |||
265 | pointing_device_send(); | 269 | pointing_device_send(); |
266 | } | 270 | } |
267 | 271 | ||
268 | void pointing_device_send(void) { | ||
269 | static report_mouse_t old_report = {}; | ||
270 | report_mouse_t mouseReport = pointing_device_get_report(); | ||
271 | |||
272 | // If you need to do other things, like debugging, this is the place to do it. | ||
273 | if (has_report_changed(mouseReport, old_report)) { | ||
274 | host_mouse_send(&mouseReport); | ||
275 | } | ||
276 | |||
277 | // send it and 0 it out except for buttons, so those stay until they are explicity over-ridden using update_pointing_device | ||
278 | mouseReport.x = 0; | ||
279 | mouseReport.y = 0; | ||
280 | mouseReport.v = 0; | ||
281 | mouseReport.h = 0; | ||
282 | pointing_device_set_report(mouseReport); | ||
283 | old_report = mouseReport; | ||
284 | } | ||
285 | |||
286 | void eeconfig_init_kb(void) { | 272 | void eeconfig_init_kb(void) { |
287 | keyboard_config.dpi_config = PLOOPY_DPI_DEFAULT; | 273 | keyboard_config.dpi_config = PLOOPY_DPI_DEFAULT; |
288 | eeconfig_update_kb(keyboard_config.raw); | 274 | eeconfig_update_kb(keyboard_config.raw); |
275 | eeconfig_init_user(); | ||
289 | } | 276 | } |
290 | 277 | ||
291 | void matrix_init_kb(void) { | 278 | void matrix_init_kb(void) { |