Add correct event mask for Qt::WindowTransparentForInput in xcb plugin
authorJørgen Lind <jorgen.lind@nokia.com>
Tue, 15 Nov 2011 14:05:52 +0000 (15:05 +0100)
committerQt by Nokia <qt-info@nokia.com>
Tue, 15 Nov 2011 19:07:17 +0000 (20:07 +0100)
Change-Id: I4c683c08876cc6fa934971399af7e48b160168fc
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
src/plugins/platforms/xcb/qxcbwindow.cpp

index b8c0e5f..8e01c8e 100644 (file)
@@ -715,7 +715,11 @@ Qt::WindowFlags QXcbWindow::setWindowFlags(Qt::WindowFlags flags)
         flags |= Qt::X11BypassWindowManagerHint;
 
     if (flags & Qt::WindowTransparentForInput) {
-        uint32_t mask = XCB_EVENT_MASK_NO_EVENT;
+        uint32_t mask = XCB_EVENT_MASK_EXPOSURE | XCB_EVENT_MASK_VISIBILITY_CHANGE
+                 | XCB_EVENT_MASK_STRUCTURE_NOTIFY | XCB_EVENT_MASK_RESIZE_REDIRECT
+                | XCB_EVENT_MASK_SUBSTRUCTURE_NOTIFY | XCB_EVENT_MASK_SUBSTRUCTURE_REDIRECT
+                | XCB_EVENT_MASK_FOCUS_CHANGE  | XCB_EVENT_MASK_PROPERTY_CHANGE
+                | XCB_EVENT_MASK_COLOR_MAP_CHANGE | XCB_EVENT_MASK_OWNER_GRAB_BUTTON;
         xcb_change_window_attributes(xcb_connection(), xcb_window(), XCB_CW_EVENT_MASK, &mask);
     }