Fix warning when switching spaces in leopard.

2007-12-06  Richard Hult  <richard@imendio.com>

	* gdk/quartz/gdkevents-quartz.c:
	(synthesize_crossing_events_for_ns_event): Fix warning when
	switching spaces in leopard.

svn path=/trunk/; revision=19119
This commit is contained in:
Richard Hult 2007-12-06 12:39:01 +00:00 committed by Richard Hult
parent 0a7a3f2fa2
commit fd069852e0
2 changed files with 13 additions and 3 deletions

View File

@ -1,3 +1,9 @@
2007-12-06 Richard Hult <richard@imendio.com>
* gdk/quartz/gdkevents-quartz.c:
(synthesize_crossing_events_for_ns_event): Fix warning when
switching spaces in leopard.
2007-12-06 13:38:36 Tim Janik <timj@imendio.com>
* tests/floatingtest.c: ported to new testing framework.

View File

@ -1172,7 +1172,8 @@ synthesize_crossing_events_for_ns_event (NSEvent *nsevent)
/* If there is a window other than the root window at this
* position, it means we didn't exit to the root window and we
* ignore the event.
* ignore the event. (Note that we can get NULL here when swithing
* spaces for example.)
*
* FIXME: This is not enough, it doesn't catch the case where
* we leave a GDK window to a non-GDK window that has GDK
@ -1180,9 +1181,12 @@ synthesize_crossing_events_for_ns_event (NSEvent *nsevent)
*/
mouse_window = _gdk_quartz_window_find_child (_gdk_root, x, y);
if (gdk_window_get_toplevel (mouse_window) ==
if (!mouse_window ||
gdk_window_get_toplevel (mouse_window) ==
gdk_window_get_toplevel (current_mouse_window))
mouse_window = _gdk_root;
{
mouse_window = _gdk_root;
}
if (mouse_window == _gdk_root)
synthesize_crossing_events (_gdk_root, GDK_CROSSING_NORMAL, nsevent, x, y);