Module: wine Branch: master Commit: 917f288f1bb8b51f5a0f2722494fb8f2f2e75983 URL: http://source.winehq.org/git/wine.git/?a=commit;h=917f288f1bb8b51f5a0f272249...
Author: Alexandre Julliard julliard@winehq.org Date: Wed Oct 31 17:51:05 2007 +0100
server: Also return the new extended style in the set_window_pos request.
---
dlls/winex11.drv/winpos.c | 5 ++++- include/wine/server_protocol.h | 3 ++- server/protocol.def | 1 + server/trace.c | 3 ++- server/window.c | 1 + 5 files changed, 10 insertions(+), 3 deletions(-)
diff --git a/dlls/winex11.drv/winpos.c b/dlls/winex11.drv/winpos.c index da08bd4..9de341b 100644 --- a/dlls/winex11.drv/winpos.c +++ b/dlls/winex11.drv/winpos.c @@ -240,7 +240,7 @@ BOOL X11DRV_SetWindowPos( HWND hwnd, HWND insert_after, const RECT *rectWindow, struct x11drv_win_data *data; RECT new_whole_rect, old_client_rect; WND *win; - DWORD old_style, new_style; + DWORD old_style, new_style, new_ex_style; BOOL ret, make_managed = FALSE;
if (!(data = X11DRV_get_win_data( hwnd ))) return FALSE; @@ -293,6 +293,7 @@ BOOL X11DRV_SetWindowPos( HWND hwnd, HWND insert_after, const RECT *rectWindow, } ret = !wine_server_call( req ); new_style = reply->new_style; + new_ex_style = reply->new_ex_style; } SERVER_END_REQ;
@@ -304,6 +305,7 @@ BOOL X11DRV_SetWindowPos( HWND hwnd, HWND insert_after, const RECT *rectWindow, win->rectWindow = *rectWindow; win->rectClient = *rectClient; win->dwStyle = new_style; + win->dwExStyle = new_ex_style; WIN_ReleasePtr( win ); } return ret; @@ -325,6 +327,7 @@ BOOL X11DRV_SetWindowPos( HWND hwnd, HWND insert_after, const RECT *rectWindow, win->rectClient = *rectClient; old_style = win->dwStyle; win->dwStyle = new_style; + win->dwExStyle = new_ex_style; data->window_rect = *rectWindow;
TRACE( "win %p window %s client %s style %08x\n", diff --git a/include/wine/server_protocol.h b/include/wine/server_protocol.h index e669953..606e814 100644 --- a/include/wine/server_protocol.h +++ b/include/wine/server_protocol.h @@ -2946,6 +2946,7 @@ struct set_window_pos_reply { struct reply_header __header; unsigned int new_style; + unsigned int new_ex_style; };
@@ -4879,6 +4880,6 @@ union generic_reply struct set_completion_info_reply set_completion_info_reply; };
-#define SERVER_PROTOCOL_VERSION 323 +#define SERVER_PROTOCOL_VERSION 324
#endif /* __WINE_WINE_SERVER_PROTOCOL_H */ diff --git a/server/protocol.def b/server/protocol.def index 5d8acde..c91e8db 100644 --- a/server/protocol.def +++ b/server/protocol.def @@ -2171,6 +2171,7 @@ enum message_type VARARG(valid,rectangles); /* valid rectangles from WM_NCCALCSIZE */ @REPLY unsigned int new_style; /* new window style */ + unsigned int new_ex_style; /* new window extended style */ @END
diff --git a/server/trace.c b/server/trace.c index 72f9ddb..e63cad9 100644 --- a/server/trace.c +++ b/server/trace.c @@ -2691,7 +2691,8 @@ static void dump_set_window_pos_request( const struct set_window_pos_request *re
static void dump_set_window_pos_reply( const struct set_window_pos_reply *req ) { - fprintf( stderr, " new_style=%08x", req->new_style ); + fprintf( stderr, " new_style=%08x,", req->new_style ); + fprintf( stderr, " new_ex_style=%08x", req->new_ex_style ); }
static void dump_get_window_rectangles_request( const struct get_window_rectangles_request *req ) diff --git a/server/window.c b/server/window.c index ce5297c..1e81cbf 100644 --- a/server/window.c +++ b/server/window.c @@ -1822,6 +1822,7 @@ DECL_HANDLER(set_window_pos) if (!visible_rect) visible_rect = &req->window; set_window_pos( win, previous, flags, &req->window, &req->client, visible_rect, valid_rects ); reply->new_style = win->style; + reply->new_ex_style = win->ex_style; }