diff options
| author | Igor Soarez <igor@soarez.org> | 2026-11-08 16:45:08 +0000 |
|---|---|---|
| committer | Igor Soarez <igor@soarez.org> | 2026-11-08 16:45:08 +0000 |
| commit | b5f7a9eb2cf46867085b46514d6c9faf0d552fad (patch) | |
| tree | 810c4752844285938a95d144662b4bf57cc82a52 | |
| parent | 9d4e47337b9c857b70ea9caf116adb935e18e31c (diff) | |
chrome_clear_overlay: say the prompt may not return until the page is reloaded
| -rw-r--r-- | extensions/chrome-profile-bridge/index.ts | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/extensions/chrome-profile-bridge/index.ts b/extensions/chrome-profile-bridge/index.ts index aa86379..cf8671d 100644 --- a/extensions/chrome-profile-bridge/index.ts +++ b/extensions/chrome-profile-bridge/index.ts @@ -2286,7 +2286,7 @@ Usage rules: name: "chrome_clear_overlay", label: "Chrome Clear Overlay", description: - "Close another extension's prompt that is blocking a tab, usually a password manager's (1Password) inline sign-in or autofill prompt. While such a prompt is open Chrome refuses the debugger on that tab, so screenshots, clicks, typing and evaluate fail with \"Another extension ... has a prompt open on this tab\". Decide for yourself whether to use it: if the prompt is just in your way (it popped up on a field you are filling, or you do not need anything from it), clear it. If you need the user to sign in, authorize or approve something with it, or the user may be in the middle of using it, do not clear it: tell the user what you are waiting for. It removes the other extension's frame, blurs the focused field and sends Escape, then reports whether the tab is usable again. It does not touch the page's own content, and it cannot close 1Password's browser-toolbar popup or the 1Password desktop app (if the result says the tab is still blocked, tell the user). Navigating the tab away also frees it.", + "Close another extension's prompt that is blocking a tab, usually a password manager's (1Password) inline sign-in or autofill prompt. While such a prompt is open Chrome refuses the debugger on that tab, so screenshots, clicks, typing and evaluate fail with \"Another extension ... has a prompt open on this tab\". Decide for yourself whether to use it: if the prompt is just in your way (it popped up on a field you are filling, or you do not need anything from it), clear it. If you need the user to sign in, authorize or approve something with it, or the user may be in the middle of using it, do not clear it: tell the user what you are waiting for. It removes the other extension's frame, blurs the focused field and sends Escape, then reports whether the tab is usable again. Side effect: the password manager may not show its inline prompt again on that page until the page is reloaded, so if the user then needs to sign in there, reload the page (or tell them to). It does not touch the page's own content, and it cannot close 1Password's browser-toolbar popup or the 1Password desktop app (if the result says the tab is still blocked, tell the user). Navigating the tab away also frees it.", promptSnippet: "Close a password manager prompt that blocks a tab, unless you are waiting for the user to use it.", parameters: Type.Object({ targetId: Type.Optional(Type.String()), @@ -2298,7 +2298,7 @@ Usage rules: const result = value as { tab?: { id?: number; url?: string }; removedFrames?: string[]; remainingForeignTargets?: string[]; debuggerAttachable?: boolean; cleared?: boolean } | undefined; const removed = result?.removedFrames ?? []; const text = result?.cleared - ? `Cleared${removed.length ? `: removed ${removed.join(", ")}` : " (nothing to remove, the prompt had already gone)"}. Tab ${result.tab?.id} is usable again.` + ? `Cleared${removed.length ? `: removed ${removed.join(", ")}` : " (nothing to remove, the prompt had already gone)"}. Tab ${result.tab?.id} is usable again. The password manager may not show its inline prompt again on this page until it is reloaded.` : `The tab is still blocked${result?.remainingForeignTargets?.length ? ` by ${result.remainingForeignTargets.join(", ")}` : ""}${removed.length ? ` (removed ${removed.join(", ")} but it is still there or came back)` : ""}. The prompt may be the password manager's toolbar popup or desktop app, which this tool cannot close: tell the user, or navigate the tab away. Diagnostics: ${JSON.stringify({ foreignTargetsAnywhere: (result as any)?.foreignTargetsAnywhere, injectedReport: (result as any)?.injectedReport })}`; return { content: [{ type: "text", text }], details: { value: (value ?? null) as Json } }; }, |
