Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[inert] Stop propagating inertness into nested browsing contexts #32911

Merged
merged 1 commit into from
Feb 18, 2022

Conversation

chromium-wpt-export-bot
Copy link
Collaborator

Doing so was a cross-site leak. This change is against the HTML spec,
but it aligns Blink with Gecko. WebKit is also not propagating inertness
for the selection API, but it does for focusability.

I already changed the spec whatwg/html#7605
and updated WPT in #32817.

Note this only affects the webexposed behavior. The accessibility tree
still considers the contents of an inert frame to be inert, as tested by
All/DumpAccessibilityTreeTestWithIgnoredNodes.AccessibilityModalDialogAndIframes/*

Therefore Frame::is_inert_ and related flags are kept for accessibility,
but they will no longer effect ComputedStyle::IsInert().

Also note that even if the contents in the nested browsing contexts are
not marked as inert, if the browsing context container is inert, they
won't respond to mouse interactions, and they won't be reached by
sequential navigation.

Bug: 1293191

TEST=All/DumpAccessibilityTreeTestWithIgnoredNodes.InertAttribute/*
TEST=All/SitePerProcessBrowserTest.CrossProcessInertSubframe/*
TEST=All/SitePerProcessBrowserTest.CrossProcessIsInertPropagation/*
TEST=third_party/blink/web_tests/external/wpt/html/semantics/interactive-elements/the-dialog-element/inert-focus-in-frames.html
TEST=third_party/blink/web_tests/external/wpt/html/semantics/interactive-elements/the-dialog-element/inertness-with-modal-dialogs-and-iframes.html
TEST=third_party/blink/web_tests/fast/dom/inert/inert-focus-in-frames.html

AX-Relnotes: n/a.

Change-Id: I70820d2aeca98e1c4036bd3f8c41ef0129a97a63
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3302103
Reviewed-by: Aaron Leventhal <aleventhal@chromium.org>
Reviewed-by: Mason Freed <masonf@chromium.org>
Reviewed-by: Arthur Sonzogni <arthursonzogni@chromium.org>
Commit-Queue: Oriol Brufau <obrufau@igalia.com>
Cr-Commit-Position: refs/heads/main@{#973015}

Doing so was a cross-site leak. This change is against the HTML spec,
but it aligns Blink with Gecko. WebKit is also not propagating inertness
for the selection API, but it does for focusability.

I already changed the spec whatwg/html#7605
and updated WPT in #32817.

Note this only affects the webexposed behavior. The accessibility tree
still considers the contents of an inert frame to be inert, as tested by
All/DumpAccessibilityTreeTestWithIgnoredNodes.AccessibilityModalDialogAndIframes/*

Therefore Frame::is_inert_ and related flags are kept for accessibility,
but they will no longer effect ComputedStyle::IsInert().

Also note that even if the contents in the nested browsing contexts are
not marked as inert, if the browsing context container is inert, they
won't respond to mouse interactions, and they won't be reached by
sequential navigation.

Bug: 1293191

TEST=All/DumpAccessibilityTreeTestWithIgnoredNodes.InertAttribute/*
TEST=All/SitePerProcessBrowserTest.CrossProcessInertSubframe/*
TEST=All/SitePerProcessBrowserTest.CrossProcessIsInertPropagation/*
TEST=third_party/blink/web_tests/external/wpt/html/semantics/interactive-elements/the-dialog-element/inert-focus-in-frames.html
TEST=third_party/blink/web_tests/external/wpt/html/semantics/interactive-elements/the-dialog-element/inertness-with-modal-dialogs-and-iframes.html
TEST=third_party/blink/web_tests/fast/dom/inert/inert-focus-in-frames.html

AX-Relnotes: n/a.

Change-Id: I70820d2aeca98e1c4036bd3f8c41ef0129a97a63
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3302103
Reviewed-by: Aaron Leventhal <aleventhal@chromium.org>
Reviewed-by: Mason Freed <masonf@chromium.org>
Reviewed-by: Arthur Sonzogni <arthursonzogni@chromium.org>
Commit-Queue: Oriol Brufau <obrufau@igalia.com>
Cr-Commit-Position: refs/heads/main@{#973015}
Copy link
Collaborator

@wpt-pr-bot wpt-pr-bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The review process for this patch is being conducted in the Chromium project.

@chromium-wpt-export-bot chromium-wpt-export-bot merged commit 9c81c01 into master Feb 18, 2022
@chromium-wpt-export-bot chromium-wpt-export-bot deleted the chromium-export-a486ffcc6d branch February 18, 2022 23:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants