[HiC] Fix issues with shadow dom canvas children#61401
Merged
Merged
Conversation
chromium-wpt-export-bot
marked this pull request as ready for review
July 20, 2026 03:54
Recursively mark shadow dom content as a canvas child when it's slotting status changes (flat tree parent changes). This corrects problems with privacy preserving painting and painting in general, particularly for forms. This approach was chosen over a style-based version for a couple of reasons: * There is a significant chunk of code that depends on the DidChangeCanvasSubtree method, so it would need to stay in some form. There's less use in moving to style if we still need this DOM status tracking. * The style based relied on suppressing autofill data at the getter stage, rather than on setting. I think a setter approach is more robust to future changes. Add tests for declarative slotting, custom elements, and privacy for visited links and cross-origin image. The privacy tests cover things protected by style setting (visited links) and paint flags (images). Also a test for video correctly updating it's compositor read-back needs, and lots of form control unit tests for autofill privacy. Fixed: 501661601, 503553618 Change-Id: I261f0c55c3e7204ff919f3e64a9655c6f93e47e4 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7899615 Commit-Queue: Stephen Chenney <schenney@chromium.org> Reviewed-by: Philip Rogers <pdr@chromium.org> Cr-Commit-Position: refs/heads/main@{#1664517}
chromium-wpt-export-bot
force-pushed
the
chromium-export-cl-7899615
branch
from
July 20, 2026 03:54
341f5c2 to
7180291
Compare
wpt-pr-bot
approved these changes
Jul 20, 2026
wpt-pr-bot
left a comment
Collaborator
There was a problem hiding this comment.
The review process for this patch is being conducted in the Chromium project.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Recursively mark shadow dom content as a canvas child when it's slotting
status changes (flat tree parent changes). This corrects problems with
privacy preserving painting and painting in general, particularly for
forms.
This approach was chosen over a style-based version for a couple of
reasons:
DidChangeCanvasSubtree method, so it would need to stay in some form.
There's less use in moving to style if we still need this DOM status
tracking.
stage, rather than on setting. I think a setter approach is more
robust to future changes.
Add tests for declarative slotting, custom elements, and privacy for
visited links and cross-origin image. The privacy tests cover things
protected by style setting (visited links) and paint flags (images).
Also a test for video correctly updating it's compositor read-back
needs, and lots of form control unit tests for autofill privacy.
Fixed: 501661601, 503553618
Change-Id: I261f0c55c3e7204ff919f3e64a9655c6f93e47e4
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7899615
Commit-Queue: Stephen Chenney <schenney@chromium.org>
Reviewed-by: Philip Rogers <pdr@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1664517}