From 026008a7004f40e7616b8c5965a79e563a45e8ad Mon Sep 17 00:00:00 2001 From: Tomas Frydrych Date: Tue, 2 Dec 2008 12:11:06 +0000 Subject: [PATCH] Fix to allow windows created from within Mutter itself to be managed. --- src/core/window.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/core/window.c b/src/core/window.c index 1552904fb..b2a1b1217 100644 --- a/src/core/window.c +++ b/src/core/window.c @@ -315,7 +315,17 @@ meta_window_new_with_attrs (MetaDisplay *display, meta_error_trap_push_with_return (display); + /* + * XAddToSaveSet can only be called on windows created by a different client. + * with Mutter we want to be able to create manageable windows from within + * the process (such as a dummy desktop window), so we do not want this + * call failing to prevent the window from being managed -- wrap it in its + * own error trap (we use the _with_return() version here to ensure that + * XSync() is done on the pop, otherwise the error will not get caught). + */ + meta_error_trap_push_with_return (display); XAddToSaveSet (display->xdisplay, xwindow); + meta_error_trap_pop_with_return (display, FALSE); event_mask = PropertyChangeMask | EnterWindowMask | LeaveWindowMask |