You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
extension-sdk: openBrowserWindow gives no signal when the host refuses the URL #1776
What happens.extensionSDK.openBrowserWindow(url, target) returns void and sends UPDATE_LOCATION without waiting for an answer (extension_host_api.js, this.send(...)). When the URL is not covered by the manifest's new_window_external_urls, the host refuses it in its own frame — Uncaught (in promise) Error: External URL not matched in new_window_external_urls entitlement (verifyUpdateLocationRequest) — and nothing opens, but the extension gets no error and cannot tell the user why nothing happened.
Measured on Looker (original), Google-hosted, @looker/extension-sdk 26.20, Chrome: with only https://<instance>/auth* listed, openBrowserWindow('https://<other-host>/health') returns normally; the refusal appears only in the host frame's console. Adding https://<other-host>/* to new_window_external_urls makes the same call open the tab.
Request. A variant that resolves when the window opens and rejects with the host's reason when it is refused (for example openBrowserWindowAsync, or sendAndReceive for UPDATE_LOCATION), so an extension can show the user that a link was blocked by configuration. Context: we open Looker's own /auth this way for a backend-held OAuth sign-in (see #1772), where a silent refusal leaves the user waiting.
Activity