Correctly manage mouse relative motion

--HG--
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/trunk%401270
This commit is contained in:
Patrice Mandin 2006-01-25 20:36:21 +00:00
parent 7109c9a265
commit 0a8520eb1f
2 changed files with 9 additions and 9 deletions

View file

@ -382,13 +382,13 @@ static void do_mouse(_THIS, short mx, short my, short mb, short ks)
} }
/* Mouse motion ? */ /* Mouse motion ? */
if ((prevmousex!=mx) || (prevmousey!=my)) { if (GEM_mouse_relative) {
if (GEM_mouse_relative) { if (SDL_AtariXbios_mousex || SDL_AtariXbios_mousey) {
if ((SDL_AtariXbios_mousex!=0) || (SDL_AtariXbios_mousey!=0)) { SDL_PrivateMouseMotion(0, 1, SDL_AtariXbios_mousex, SDL_AtariXbios_mousey);
SDL_PrivateMouseMotion(0, 1, SDL_AtariXbios_mousex, SDL_AtariXbios_mousey); SDL_AtariXbios_mousex = SDL_AtariXbios_mousey = 0;
SDL_AtariXbios_mousex = SDL_AtariXbios_mousey = 0; }
} } else {
} else { if ((prevmousex!=mx) || (prevmousey!=my)) {
int posx, posy; int posx, posy;
/* Give mouse position relative to window position */ /* Give mouse position relative to window position */

View file

@ -165,8 +165,8 @@ void GEM_WarpWMCursor(_THIS, Uint16 x, Uint16 y)
void GEM_CheckMouseMode(_THIS) void GEM_CheckMouseMode(_THIS)
{ {
/* If the mouse is hidden and input is grabbed, we use relative mode */ /* If the mouse is hidden and input is grabbed, we use relative mode */
if ( !(SDL_cursorstate & CURSOR_VISIBLE) && if ( (!(SDL_cursorstate & CURSOR_VISIBLE)) &&
(this->input_grab != SDL_GRAB_OFF) && /*(this->input_grab != SDL_GRAB_OFF) && */ /* Damn GEM can not grab */
(SDL_GetAppState() & SDL_APPACTIVE) ) { (SDL_GetAppState() & SDL_APPACTIVE) ) {
GEM_mouse_relative = SDL_TRUE; GEM_mouse_relative = SDL_TRUE;
} else { } else {