commit d6eadc17d8c38c0caf29ad83bbe10b7826710d8d
parent 588689fcf494e86e82181139c28264a3f1d67f30
Author: Julian Descottes <jdescottes@mozilla.com>
Date: Thu, 11 Dec 2025 07:24:32 +0000
Bug 2003857 - [bidi] Update waitForVisibility helper to wait either for visible or hidden state r=Sasha
Differential Revision: https://phabricator.services.mozilla.com/D275045
Diffstat:
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/remote/webdriver-bidi/modules/root/browsingContext.sys.mjs b/remote/webdriver-bidi/modules/root/browsingContext.sys.mjs
@@ -330,7 +330,7 @@ class BrowsingContextModule extends RootBiDiModule {
// Bug 1884142: It's not supported on Android for the TestRunner package.
const selectedBrowser = lazy.TabManager.getBrowserForTab(selectedTab);
activated.push(
- this.#waitForVisibilityChange(selectedBrowser.browsingContext)
+ this.#waitForVisibilityState(selectedBrowser.browsingContext, "hidden")
);
}
@@ -698,7 +698,7 @@ class BrowsingContextModule extends RootBiDiModule {
);
}
- let waitForVisibilityChangePromise;
+ let waitForVisibilityStatePromise;
switch (type) {
case "window": {
const newWindow = await lazy.windowManager.openBrowserWindow({
@@ -729,8 +729,9 @@ class BrowsingContextModule extends RootBiDiModule {
// Create the promise immediately, but await it later in parallel with
// waitForInitialNavigationCompleted.
- waitForVisibilityChangePromise = this.#waitForVisibilityChange(
- lazy.TabManager.getBrowserForTab(selectedTab).browsingContext
+ waitForVisibilityStatePromise = this.#waitForVisibilityState(
+ lazy.TabManager.getBrowserForTab(selectedTab).browsingContext,
+ "hidden"
);
}
@@ -762,7 +763,7 @@ class BrowsingContextModule extends RootBiDiModule {
unloadTimeout: 5000,
}
),
- waitForVisibilityChangePromise,
+ waitForVisibilityStatePromise,
blocker.promise,
]);
@@ -2419,11 +2420,11 @@ class BrowsingContextModule extends RootBiDiModule {
}
}
- #waitForVisibilityChange(browsingContext) {
+ #waitForVisibilityState(browsingContext, expectedState) {
return this._forwardToWindowGlobal(
"_awaitVisibilityState",
browsingContext.id,
- { value: "hidden" },
+ { value: expectedState },
{ retryOnAbort: true }
);
}