Module: wine Branch: master Commit: b6ef8a5944e36daabb30c0b14dd77d707093cec5 URL: http://source.winehq.org/git/wine.git/?a=commit;h=b6ef8a5944e36daabb30c0b14d...
Author: Alexandre Julliard julliard@winehq.org Date: Sat Mar 20 20:16:42 2010 +0100
winex11: Don't make the owner window managed if its popup isn't.
---
dlls/winex11.drv/window.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-)
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 @@ static void set_initial_wm_hints( Display *display, struct x11drv_win_data *data * * 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 @@ static Window get_owner_whole_window( HWND owner ) !(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 @@ static void set_wm_hints( Display *display, struct x11drv_win_data *data ) 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();