winex11: Don't make the owner window managed if its popup isn't.
diff --git a/dlls/winex11.drv/window.c b/dlls/winex11.drv/window.c
index 46f677b..09820d3 100644
--- a/dlls/winex11.drv/window.c
+++ b/dlls/winex11.drv/window.c
@@ -997,7 +997,7 @@
*
* Retrieve an owner's window, creating it if necessary.
*/
-static Window get_owner_whole_window( HWND owner )
+static Window get_owner_whole_window( HWND owner, BOOL force_managed )
{
struct x11drv_win_data *data;
@@ -1009,7 +1009,7 @@
!(data = X11DRV_create_win_data( owner )))
return (Window)GetPropA( owner, whole_window_prop );
}
- else if (!data->managed) /* make it managed */
+ else if (!data->managed && force_managed) /* make it managed */
{
SetWindowPos( owner, 0, 0, 0, 0, 0,
SWP_NOACTIVATE | SWP_NOZORDER | SWP_NOSIZE | SWP_NOMOVE |
@@ -1045,7 +1045,7 @@
style = GetWindowLongW( data->hwnd, GWL_STYLE );
ex_style = GetWindowLongW( data->hwnd, GWL_EXSTYLE );
owner = get_window_owner( data->hwnd );
- if ((owner_win = get_owner_whole_window( owner ))) group_leader = owner_win;
+ if ((owner_win = get_owner_whole_window( owner, data->managed ))) group_leader = owner_win;
}
wine_tsx11_lock();