From 0231ef25989849ccc85b55aae2262a42f32d2eeb Mon Sep 17 00:00:00 2001 From: Euclid Ye Date: Sat, 23 Aug 2025 23:51:47 +0800 Subject: [PATCH 1/3] focus when switch to window Signed-off-by: Euclid Ye --- components/webdriver_server/lib.rs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/components/webdriver_server/lib.rs b/components/webdriver_server/lib.rs index 7d7ad686a1864..76234df58508b 100644 --- a/components/webdriver_server/lib.rs +++ b/components/webdriver_server/lib.rs @@ -1266,6 +1266,12 @@ impl Handler { let session = self.session_mut()?; session.set_webview_id(webview_id); session.set_browsing_context_id(BrowsingContextId::from(webview_id)); + + // Step 5. Update any implementation-specific state that would result + // from the user selecting session's current browsing context for interaction, + // without altering OS-level focus. + self.focus_webview(webview_id)?; + Ok(WebDriverResponse::Void) } From 8257c148bb8afc1ea7a464eae3cc697930486f7e Mon Sep 17 00:00:00 2001 From: Euclid Ye Date: Sun, 24 Aug 2025 01:41:18 +0800 Subject: [PATCH 2/3] Update WPT Signed-off-by: Euclid Ye --- tests/wpt/meta/webdriver/tests/classic/back/back.py.ini | 3 --- tests/wpt/meta/webdriver/tests/classic/forward/forward.py.ini | 3 --- 2 files changed, 6 deletions(-) diff --git a/tests/wpt/meta/webdriver/tests/classic/back/back.py.ini b/tests/wpt/meta/webdriver/tests/classic/back/back.py.ini index 6f12d53580cf8..074e67aef1bb8 100644 --- a/tests/wpt/meta/webdriver/tests/classic/back/back.py.ini +++ b/tests/wpt/meta/webdriver/tests/classic/back/back.py.ini @@ -7,6 +7,3 @@ [test_seen_nodes[https coop\]] expected: FAIL - - [test_history_pushstate] - expected: FAIL diff --git a/tests/wpt/meta/webdriver/tests/classic/forward/forward.py.ini b/tests/wpt/meta/webdriver/tests/classic/forward/forward.py.ini index ac3532fc4712b..13032a4e96e2f 100644 --- a/tests/wpt/meta/webdriver/tests/classic/forward/forward.py.ini +++ b/tests/wpt/meta/webdriver/tests/classic/forward/forward.py.ini @@ -13,6 +13,3 @@ [test_removed_iframe] expected: FAIL - - [test_history_pushstate] - expected: FAIL From eca814da42bb06f76effb2bfced78e9c693d308c Mon Sep 17 00:00:00 2001 From: Euclid Ye Date: Sun, 24 Aug 2025 18:04:43 +0800 Subject: [PATCH 3/3] unstable sort window handles Signed-off-by: Euclid Ye --- components/webdriver_server/lib.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/webdriver_server/lib.rs b/components/webdriver_server/lib.rs index 76234df58508b..d1b0505bab80e 100644 --- a/components/webdriver_server/lib.rs +++ b/components/webdriver_server/lib.rs @@ -1067,7 +1067,7 @@ impl Handler { /// fn handle_window_handles(&mut self) -> WebDriverResult { let mut handles = self.get_window_handles(); - handles.sort(); + handles.sort_unstable(); Ok(WebDriverResponse::Generic(ValueResponse( serde_json::to_value(handles)?,