From 79a7b7b1a34488260bf943875db7942a9ad787d7 Mon Sep 17 00:00:00 2001 From: FOTMarut Date: Sat, 28 Mar 2020 18:04:43 +0100 Subject: [PATCH] engine: platform: sdl: Fix mousewheel in SDL2 - See issue 143 - Tested on SDL2 - Untested on SDL1.2 --- engine/platform/sdl/events.c | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/engine/platform/sdl/events.c b/engine/platform/sdl/events.c index 7e73ba49..fa3f67ac 100644 --- a/engine/platform/sdl/events.c +++ b/engine/platform/sdl/events.c @@ -25,8 +25,6 @@ GNU General Public License for more details. #include "sound.h" #include "vid_common.h" -static int wheelbutton; - #if ! SDL_VERSION_ATLEAST( 2, 0, 0 ) #define SDL_SCANCODE_A SDLK_a #define SDL_SCANCODE_Z SDLK_z @@ -366,14 +364,6 @@ SDLash_EventFilter */ static void SDLash_EventFilter( SDL_Event *event ) { - static int mdown; - - if( wheelbutton ) - { - Key_Event( wheelbutton, false ); - wheelbutton = 0; - } - switch ( event->type ) { /* Mouse events */ @@ -421,9 +411,12 @@ static void SDLash_EventFilter( SDL_Event *event ) break; #if SDL_VERSION_ATLEAST( 2, 0, 0 ) case SDL_MOUSEWHEEL: - wheelbutton = event->wheel.y < 0 ? K_MWHEELDOWN : K_MWHEELUP; + { + int wheelbutton = event->wheel.y < 0 ? K_MWHEELDOWN : K_MWHEELUP; Key_Event( wheelbutton, true ); + Key_Event( wheelbutton, false ); break; + } /* Touch events */ case SDL_FINGERDOWN: