1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 02:07:34 +00:00

WebDriver: Do not activate tabs created by the New Window endpoint

The spec states that creating new windows "must be done without invoking
the focusing steps for the created browsing context". It also states we
should do so by "running the window open steps", but nowhere in those
steps is there an option to invoke or skip any focusing steps. So we do
so with a custom WebContent IPC parameter.
This commit is contained in:
Timothy Flynn 2023-03-20 18:46:59 -04:00 committed by Linus Groh
parent e6fc35897f
commit a77daf77bd

View file

@ -567,7 +567,7 @@ Messages::WebDriverClient::NewWindowResponse WebDriverConnection::new_window(Jso
// created browsing context should be in a new OS window. In all other cases the details of how the browsing
// context is presented to the user are implementation defined.
// FIXME: Reuse code of window.open() instead of calling choose_a_browsing_context
auto [browsing_context, window_type] = m_page_client.page().top_level_browsing_context().choose_a_browsing_context("_blank"sv, true);
auto [browsing_context, window_type] = m_page_client.page().top_level_browsing_context().choose_a_browsing_context("_blank"sv, true, Web::HTML::ActivateTab::No);
// 6. Let handle be the associated window handle of the newly created window.
auto handle = browsing_context->window_handle();