diff options
author | Marc-André Moreau <marcandre.moreau@gmail.com> | 2011-12-07 06:01:03 +0400 |
---|---|---|
committer | Marc-André Moreau <marcandre.moreau@gmail.com> | 2011-12-07 06:01:03 +0400 |
commit | 08c1043753635ab60ee9931b0b7ece28079c2d2c (patch) | |
tree | 0a9aabc3f61a06adb75a3601ffc7c5221811d2d5 | |
parent | 51ac100c574717d80845e6ce07c44e65dc072643 (diff) | |
parent | 4d341f27a5af38dce3f863186fc470717b85c0e9 (diff) |
Merge pull request #256 from sunds/master1.0-beta3
Don't make dialogs override_redirect
-rw-r--r-- | client/X11/xf_window.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/client/X11/xf_window.c b/client/X11/xf_window.c index b213e5794..a73470a23 100644 --- a/client/X11/xf_window.c +++ b/client/X11/xf_window.c @@ -227,9 +227,9 @@ void xf_SetWindowStyle(xfInfo* xfi, xfWindow* window, uint32 style, uint32 ex_st { Atom window_type; - if (style & WS_POPUP) + if (ex_style & WS_EX_TOPMOST || ex_style & WS_EX_TOOLWINDOW) { - // WS_POPUP includes tool tips, dropdown menus, etc. These won't work + // These include tool tips, dropdown menus, etc. These won't work // correctly if the local window manager resizes or moves them. Set // override redirect to prevent this from occurring. @@ -240,6 +240,12 @@ void xf_SetWindowStyle(xfInfo* xfi, xfWindow* window, uint32 style, uint32 ex_st window_type = xfi->_NET_WM_WINDOW_TYPE_POPUP; } + else if (style & WS_POPUP) + { + // This includes dialogs, popups, etc, that need to be + // full-fledged windows + window_type = xfi->_NET_WM_WINDOW_TYPE_DIALOG; + } else { window_type = xfi->_NET_WM_WINDOW_TYPE_NORMAL; |