From: Zhiyi Zhang zzhang@codeweavers.com
--- dlls/user32/tests/win.c | 1 - dlls/win32u/window.c | 1 + 2 files changed, 1 insertion(+), 1 deletion(-)
diff --git a/dlls/user32/tests/win.c b/dlls/user32/tests/win.c index 44d5c1114c2..80cdf20b904 100644 --- a/dlls/user32/tests/win.c +++ b/dlls/user32/tests/win.c @@ -13146,7 +13146,6 @@ static void test_activate(void) { next_window = next_window ? GetWindow(next_window, GW_HWNDNEXT) : GetTopWindow(0); } while (next_window && next_window != hwnd1 && next_window != hwnd2); - todo_wine ok(next_window == hwnd1, "Got unexpected next window.\n");
DestroyWindow(hwnd2); diff --git a/dlls/win32u/window.c b/dlls/win32u/window.c index c3f368c6de5..966d5eefd28 100644 --- a/dlls/win32u/window.c +++ b/dlls/win32u/window.c @@ -3326,6 +3326,7 @@ static HWND swp_owner_popups( HWND hwnd, HWND after ) TRACE( "(%p) after = %p\n", hwnd, after );
if (get_window_long( hwnd, GWL_STYLE ) & WS_CHILD) return after; + if (!is_window_ever_activated( hwnd )) return after;
if ((owner = get_window_relative( hwnd, GW_OWNER ))) {