|
@@ -168,8 +168,8 @@ SDL_RendererEventWatch(void *userdata, SDL_Event *event)
|
|
|
} else if (event->type == SDL_MOUSEMOTION) {
|
|
|
SDL_Window *window = SDL_GetWindowFromID(event->motion.windowID);
|
|
|
if (renderer->logical_w && window == renderer->window) {
|
|
|
- event->motion.x -= (renderer->viewport.x * renderer->dpi_scale.x);
|
|
|
- event->motion.y -= (renderer->viewport.y * renderer->dpi_scale.y);
|
|
|
+ event->motion.x -= (int)(renderer->viewport.x * renderer->dpi_scale.x);
|
|
|
+ event->motion.y -= (int)(renderer->viewport.y * renderer->dpi_scale.y);
|
|
|
event->motion.x = (int)(event->motion.x / (renderer->scale.x * renderer->dpi_scale.x));
|
|
|
event->motion.y = (int)(event->motion.y / (renderer->scale.y * renderer->dpi_scale.y));
|
|
|
if (event->motion.xrel > 0) {
|
|
@@ -187,8 +187,8 @@ SDL_RendererEventWatch(void *userdata, SDL_Event *event)
|
|
|
event->type == SDL_MOUSEBUTTONUP) {
|
|
|
SDL_Window *window = SDL_GetWindowFromID(event->button.windowID);
|
|
|
if (renderer->logical_w && window == renderer->window) {
|
|
|
- event->motion.x -= (renderer->viewport.x * renderer->dpi_scale.x);
|
|
|
- event->motion.y -= (renderer->viewport.y * renderer->dpi_scale.y);
|
|
|
+ event->motion.x -= (int)(renderer->viewport.x * renderer->dpi_scale.x);
|
|
|
+ event->motion.y -= (int)(renderer->viewport.y * renderer->dpi_scale.y);
|
|
|
event->motion.x = (int)(event->motion.x / (renderer->scale.x * renderer->dpi_scale.x));
|
|
|
event->motion.y = (int)(event->motion.y / (renderer->scale.y * renderer->dpi_scale.y));
|
|
|
}
|