winex11.drv: Avoid setting DIALOG type to windows, this imposes not expected limitations in functionality

Dmitry Timoshkov dmitry at codeweavers.com
Thu May 1 05:25:40 CDT 2008


Hello,

Metacity explicitly disables maximize, minimize and fullscreen capabilities
for windows of type _NET_WM_WINDOW_TYPE_DIALOG. Since Windows applications
don't expect such a restriction (dialogs can have maximize/minimize buttons
under Windows) it's better to avoid setting DIALOG type to windows at all.

This should fix the problems reported in the bugs 12640 and 12765.

Changelog:
    winex11.drv: Avoid setting DIALOG type to windows, this imposes not
    expected limitations in functionality.
---
 dlls/winex11.drv/window.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/dlls/winex11.drv/window.c b/dlls/winex11.drv/window.c
index ad56a70..f8d1091 100644
--- a/dlls/winex11.drv/window.c
+++ b/dlls/winex11.drv/window.c
@@ -891,10 +891,10 @@ static void set_wm_hints( Display *display, struct x11drv_win_data *data )
     /* set the WM_WINDOW_TYPE */
     if (style & WS_THICKFRAME) window_type = x11drv_atom(_NET_WM_WINDOW_TYPE_NORMAL);
     else if (ex_style & WS_EX_APPWINDOW) window_type = x11drv_atom(_NET_WM_WINDOW_TYPE_NORMAL);
+#if 0 /* many window managers don't handle utility and dialog windows very well */
     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);
     else if ((style & WS_POPUP) && owner) window_type = x11drv_atom(_NET_WM_WINDOW_TYPE_DIALOG);
-#if 0  /* many window managers don't handle utility windows very well */
     else if (ex_style & WS_EX_TOOLWINDOW) window_type = x11drv_atom(_NET_WM_WINDOW_TYPE_UTILITY);
 #endif
     else window_type = x11drv_atom(_NET_WM_WINDOW_TYPE_NORMAL);
-- 
1.5.5.1






More information about the wine-patches mailing list