winex11.drv: Do not set window type to utility to avoid a Metacity bug

Dmitry Timoshkov dmitry at codeweavers.com
Mon Apr 7 08:17:47 CDT 2008


Hello,

this a real fix for the bug #11111.

Changelog:
    winex11.drv: Do not set window type to utility to avoid a Metacity bug.
---
 dlls/winex11.drv/window.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/dlls/winex11.drv/window.c b/dlls/winex11.drv/window.c
index 919879a..0b4fe6f 100644
--- a/dlls/winex11.drv/window.c
+++ b/dlls/winex11.drv/window.c
@@ -947,7 +947,12 @@ void X11DRV_set_wm_hints( Display *display, struct x11drv_win_data *data )
     if (style & WS_THICKFRAME) window_type = x11drv_atom(_NET_WM_WINDOW_TYPE_NORMAL);
     else if (style & WS_DLGFRAME) window_type = x11drv_atom(_NET_WM_WINDOW_TYPE_DIALOG);
     else if (ex_style & WS_EX_DLGMODALFRAME) window_type = x11drv_atom(_NET_WM_WINDOW_TYPE_DIALOG);
+    /* Metacity doesn't handle utility windows very well, particularly
+     * it doesn't set keyboard input focus on them when mapping. Enable
+     * WS_EX_TOOLWINDOW mapping to _NET_WM_WINDOW_TYPE_UTILITY once Metacity
+     * with improved utility window support goes main stream.
     else if (ex_style & WS_EX_TOOLWINDOW) window_type = x11drv_atom(_NET_WM_WINDOW_TYPE_UTILITY);
+    */
 
     XChangeProperty(display, data->whole_window, x11drv_atom(_NET_WM_WINDOW_TYPE),
 		    XA_ATOM, 32, PropModeReplace, (unsigned char*)&window_type, 1);
-- 
1.5.4.5






More information about the wine-patches mailing list