qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] sdl fix for mouse grab/hide


From: Herbert Poetzl
Subject: [Qemu-devel] sdl fix for mouse grab/hide
Date: Thu, 25 May 2006 13:01:37 +0200
User-agent: Mutt/1.5.6i

Hi Folks!

IMHO the idea behind the grab/mouse hide was to
have relative mouse moves inside the window when
the mouse is grabbed ...

now the SDL documentation SDL_MouseMotionEvent(3)
says the following:

If the cursor is hidden (SDL_ShowCursor(0)) and the 
input is grabbed (SDL_WM_GrabInput(SDL_GRAB_ON)),
then the mouse will give relative motion events 
even when the cursor reaches the edge fo the screen.

which is almost met, except for qemu _not_ using
the SDL_ShowCursor() but instead doing a special
SDL_SetCursor(sdl_cursor_hidden), which results in
SDL _not_ transmitting the relative motion events
once the border is reached, which in turn gives
funny behaviour :)

the following patch fixes this:


diff -NurpP qemu-cvs20060522/sdl.c qemu-cvs20060522/sdl.c
--- qemu-cvs20060522/sdl.c      2006-05-23 01:18:33.000000000 +0200
+++ qemu-cvs20060522/sdl.c      2006-05-23 03:03:19.000000000 +0200
@@ -285,13 +285,13 @@ static void sdl_update_caption(void)
 
 static void sdl_hide_cursor(void)
 {
-    SDL_SetCursor(sdl_cursor_hidden);
+    SDL_ShowCursor(0);
 }
 
 static void sdl_show_cursor(void)
 {
     if (!kbd_mouse_is_absolute()) {
-       SDL_SetCursor(sdl_cursor_normal);
+       SDL_ShowCursor(1);
     }
 }
 

best,
Herbert





reply via email to

[Prev in Thread] Current Thread [Next in Thread]