From ff5055834b661dbc1dbc981304adf57883fcbc37 Mon Sep 17 00:00:00 2001 From: Neil Roberts Date: Fri, 30 Jan 2009 11:57:46 +0000 Subject: [PATCH] Pass on MapNotify events to Clutter Clutter needs to know about MapNotify events otherwise it will never make the stage visible and nothing will paint. --- src/compositor/mutter/compositor-mutter.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/compositor/mutter/compositor-mutter.c b/src/compositor/mutter/compositor-mutter.c index 884df2345..0e61a4d11 100644 --- a/src/compositor/mutter/compositor-mutter.c +++ b/src/compositor/mutter/compositor-mutter.c @@ -1672,7 +1672,8 @@ clutter_cmp_manage_screen (MetaCompositor *compositor, PointerMotionMask | PropertyChangeMask | ButtonPressMask | ButtonReleaseMask | - KeyPressMask | KeyReleaseMask; + KeyPressMask | KeyReleaseMask | + StructureNotifyMask; if (XGetWindowAttributes (xdisplay, xwin, &attr)) { @@ -1837,6 +1838,11 @@ clutter_cmp_process_event (MetaCompositor *compositor, meta_error_trap_pop (xrc->display, FALSE); + /* Clutter needs to know about MapNotify events otherwise it will + think the stage is invisible */ + if (event->type == MapNotify) + clutter_x11_handle_event (event); + /* The above handling is basically just "observing" the events, so we return * FALSE to indicate that the event should not be filtered out; if we have * GTK+ windows in the same process, GTK+ needs the ConfigureNotify event, for example.