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) { |
