Project

General

Profile

Feature #852 ยป 0030-sdl3-Change-FilterMouseMotionEvents-return-type-to-b.patch

Marko Lindqvist, 09/14/2024 09:44 AM

View differences:

client/gui-sdl3/gui_main.c
Filter out mouse motion events for too small movement to react to.
This function may run in a separate event thread.
**************************************************************************/
int FilterMouseMotionEvents(void *data, SDL_Event *event)
bool FilterMouseMotionEvents(void *data, SDL_Event *event)
{
if (event->type == SDL_EVENT_MOUSE_MOTION) {
static int x = 0, y = 0;
......
|| ((MOVE_STEP_Y > 0) && (abs(event->motion.y - y) >= MOVE_STEP_Y)) ) {
x = event->motion.x;
y = event->motion.y;
return 1; /* Catch it */
return TRUE; /* Catch it */
} else {
return 0; /* Drop it, we've handled it */
return FALSE; /* Drop it, we've handled it */
}
}
return 1;
return TRUE;
}
/**********************************************************************//**
client/gui-sdl3/gui_main.h
#define DEFAULT_MOVE_STEP 5
extern int MOVE_STEP_X, MOVE_STEP_Y;
int FilterMouseMotionEvents(void *data, SDL_Event *event);
bool FilterMouseMotionEvents(void *data, SDL_Event *event);
Uint16 gui_event_loop(void *data, void (*loop_action)(void *data),
Uint16 (*key_down_handler)(SDL_Keycode key, void *data),
    (1-1/1)