Fixed bug #104
authorSam Lantinga <slouken@libsdl.org>
Tue, 09 May 2006 07:20:32 +0000
changeset 178901313c1a2bbe
parent 1788 e02263385643
child 1790 828a17e05192
Fixed bug #104

If your mouse cursor is not within the SDL frame and you warp the mouse, you
get an enter notify, not a motion notify.
Therefore, SDL does not update its internal mouse state.

What's about calling SDL_PrivateMouseMotion even when getting an EnterNotify?

Regards,
Johannes
src/video/x11/SDL_x11events.c
     1.1 --- a/src/video/x11/SDL_x11events.c	Tue May 09 07:16:38 2006 +0000
     1.2 +++ b/src/video/x11/SDL_x11events.c	Tue May 09 07:20:32 2006 +0000
     1.3 @@ -291,11 +291,10 @@
     1.4  		     (xevent.xcrossing.mode != NotifyUngrab) ) {
     1.5  			if ( this->input_grab == SDL_GRAB_OFF ) {
     1.6  				posted = SDL_PrivateAppActive(1, SDL_APPMOUSEFOCUS);
     1.7 -			} else {
     1.8 -				posted = SDL_PrivateMouseMotion(0, 0,
     1.9 -						xevent.xcrossing.x,
    1.10 -						xevent.xcrossing.y);
    1.11  			}
    1.12 +			posted = SDL_PrivateMouseMotion(0, 0,
    1.13 +					xevent.xcrossing.x,
    1.14 +					xevent.xcrossing.y);
    1.15  		}
    1.16  	    }
    1.17  	    break;