From: Santino Mazza smazza@codeweavers.com
This fixes a difference in behavior between Wine and Windows, where in Wine it's possible to immediatly reactivate a window by calling SetWindowPos inside the WM_ACTIVATE handler. In Windows this isn't possible. --- dlls/win32u/window.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dlls/win32u/window.c b/dlls/win32u/window.c index c5c5d0522c8..2078628a698 100644 --- a/dlls/win32u/window.c +++ b/dlls/win32u/window.c @@ -3909,7 +3909,7 @@ BOOL set_window_pos( WINDOWPOS *winpos, int parent_x, int parent_y ) NtUserShowCaret( winpos->hwnd ); }
- if (!(winpos->flags & (SWP_NOACTIVATE|SWP_HIDEWINDOW))) + if (!(winpos->flags & (SWP_NOACTIVATE|SWP_HIDEWINDOW)) && get_active_window() != winpos->hwnd) { UINT style = get_window_long( winpos->hwnd, GWL_STYLE ); /* child windows get WM_CHILDACTIVATE message */