diff --git a/internal/camoufoxnative/generate.go b/internal/camoufoxnative/generate.go index 0c95b422..61ca726c 100644 --- a/internal/camoufoxnative/generate.go +++ b/internal/camoufoxnative/generate.go @@ -339,7 +339,7 @@ func (worker *Worker) waitRunnable(ctx context.Context, tab *chatTab) error { if state.Enabled { return nil } - if len(state.Dialogs) > 0 { + if len(state.Dialogs) > 0 || state.Cover != "" { clicked, err := dismissKnownOverlays(ctx, worker.client, tab.contextID) if err != nil { return err diff --git a/internal/camoufoxnative/page.go b/internal/camoufoxnative/page.go index ffa105f9..cee1d9bf 100644 --- a/internal/camoufoxnative/page.go +++ b/internal/camoufoxnative/page.go @@ -222,12 +222,13 @@ func (client *bidiClient) pointer(ctx context.Context, contextID, selector, patt return true, err } -// dismissOverlaysExpression 关闭官网已知且可交互的启动弹层 +// dismissOverlaysExpression 关闭官网已知且可交互的启动弹层:G1 欢迎对话框、引导浏览浮层与 Cookie 提示条,提示条有拒绝按钮时拒绝,只有确认按钮时确认 const dismissOverlaysExpression = `(() => {` + pageDOMHelpers + ` const selectors = [ - 'ms-g1-welcome-dialog button[aria-label="Close dialog"]', - 'button[aria-label="Close guided tour"]', - '#glue-cookie-notification-bar-1 .glue-cookie-notification-bar__reject' + 'ms-g1-welcome-dialog button', + 'button.xap-tour-exit-button', + '#glue-cookie-notification-bar-1 .glue-cookie-notification-bar__reject', + '#glue-cookie-notification-bar-1:not(:has(.glue-cookie-notification-bar__reject)) .glue-cookie-notification-bar__accept' ]; let clicked = 0; for (const selector of selectors) {