23 lines
841 B
Diff
23 lines
841 B
Diff
Makes SDL-1.2 SDL_WM_GrabInput() non-blocking in case of SDL window is not
|
|
viewable. Patch provided by <pbonzini@redhat.com>.
|
|
See <http://bugzilla.libsdl.org/show_bug.cgi?id=1155>.
|
|
|
|
--- a/src/video/x11/SDL_x11wm.c 2007-12-31 04:48:13.000000000 +0000
|
|
+++ b/src/video/x11/SDL_x11wm.c 2009-01-15 10:27:14.000000000 +0000
|
|
@@ -351,13 +351,14 @@ SDL_GrabMode X11_GrabInputNoLock(_THIS,
|
|
result = XGrabPointer(SDL_Display, SDL_Window, True, 0,
|
|
GrabModeAsync, GrabModeAsync,
|
|
SDL_Window, None, CurrentTime);
|
|
- if ( result == GrabSuccess ) {
|
|
+ if ( result == GrabSuccess || result == GrabNotViewable ) {
|
|
break;
|
|
}
|
|
SDL_Delay(100);
|
|
}
|
|
if ( result != GrabSuccess ) {
|
|
/* Uh, oh, what do we do here? */ ;
|
|
+ return(SDL_GRAB_OFF);
|
|
}
|
|
/* Now grab the keyboard */
|
|
XGrabKeyboard(SDL_Display, WMwindow, True,
|