| Summary: | [content-visibility] Add support for css content-visibility: auto | ||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | cathiechen <cathiechen> | ||||||||||||||||||||||||||||||||||||||||||||||
| Component: | CSS | Assignee: | Rob Buis <rbuis> | ||||||||||||||||||||||||||||||||||||||||||||||
| Status: | RESOLVED FIXED | ||||||||||||||||||||||||||||||||||||||||||||||||
| Severity: | Normal | CC: | bogdan.brinza, cathiechen, cdumez, changseok, clopez, cmarcelo, esprehn+autocc, ews-watchlist, glenn, gyuyoung.kim, kangil.han, kondapallykalyan, mifenton, pdr, rbuis, webkit-bug-importer, youennf | ||||||||||||||||||||||||||||||||||||||||||||||
| Priority: | P2 | Keywords: | InRadar | ||||||||||||||||||||||||||||||||||||||||||||||
| Version: | WebKit Local Build | ||||||||||||||||||||||||||||||||||||||||||||||||
| Hardware: | Unspecified | ||||||||||||||||||||||||||||||||||||||||||||||||
| OS: | Unspecified | ||||||||||||||||||||||||||||||||||||||||||||||||
| Bug Depends on: | |||||||||||||||||||||||||||||||||||||||||||||||||
| Bug Blocks: | 236238 | ||||||||||||||||||||||||||||||||||||||||||||||||
| Attachments: |
|
||||||||||||||||||||||||||||||||||||||||||||||||
|
Description
cathiechen
2022-02-16 09:25:29 PST
Created attachment 454239 [details]
Initial patch
Initial patch.
Created attachment 454485 [details]
Better ChangeLog.
Better ChangeLog.
Created attachment 454822 [details]
Compute intersections synchronously
Compute intersections synchronously.
Created attachment 454844 [details]
Fix intersection computation
Fix intersection computation, previous patch did the sync call before registration.
Created attachment 454866 [details]
Properly fix intersections
Properly fix intersections
Created attachment 455647 [details]
Rebase
Rebase.
Created attachment 456817 [details]
Handle selection
Handle selection.
Comment on attachment 456817 [details] Handle selection View in context: https://bugs.webkit.org/attachment.cgi?id=456817&action=review > Source/WebCore/rendering/style/RenderStyle.h:543 > + bool containsSize() const { return effectiveContainment().contains(Containment::Size) || skipsContents(); } Maybe we can also move `skipsContents()` inside `effectiveContainment()`? Not sure why `containsLayout`, `containsStyle`, and `containsPaint` do not check `skipsContents()` like `containsSize`? Comment on attachment 456817 [details] Handle selection View in context: https://bugs.webkit.org/attachment.cgi?id=456817&action=review > Source/WebCore/rendering/style/RenderStyle.h:543 > + bool containsSize() const { return effectiveContainment().contains(Containment::Size) || skipsContents(); } Maybe we can also move `skipsContents()` inside `effectiveContainment()`? Not sure why `containsLayout`, `containsStyle`, and `containsPaint` do not check `skipsContents()` like `containsSize`? Comment on attachment 456817 [details] Handle selection View in context: https://bugs.webkit.org/attachment.cgi?id=456817&action=review >>> Source/WebCore/rendering/style/RenderStyle.h:543 >>> + bool containsSize() const { return effectiveContainment().contains(Containment::Size) || skipsContents(); } >> >> Maybe we can also move `skipsContents()` inside `effectiveContainment()`? Not sure why `containsLayout`, `containsStyle`, and `containsPaint` do not check `skipsContents()` like `containsSize`? > > Maybe we can also move `skipsContents()` inside `effectiveContainment()`? Not sure why `containsLayout`, `containsStyle`, and `containsPaint` do not check `skipsContents()` like `containsSize`? See https://drafts.csswg.org/css-contain/#valdef-content-visibility-auto: "Turns on layout containment, style containment, and paint containment for the element." For c-v: hidden all containment is enabled. But actually, I am not sure in our patches c-v: hidden always enables size containment unconditionally.... Created attachment 459488 [details]
c_v-auto-based-on-contain-intrinsic-size
The test results in this patch is based on the contain-intrinsic-size implementation patch.
Created attachment 459571 [details]
Remove ChangeLog
Created attachment 460087 [details]
Rebase
Created attachment 464351 [details]
Rebase
Created attachment 464444 [details]
Patch
Created attachment 464468 [details]
Patch
This patch modifies the imported WPT tests. Please ensure that any changes on the tests (not coming from a WPT import) are exported to WPT. Please see https://trac.webkit.org/wiki/WPTExportProcess Created attachment 464480 [details]
Patch
Created attachment 464485 [details]
Patch
Created attachment 464526 [details]
Patch
Created attachment 464533 [details]
Patch
Created attachment 464534 [details]
Patch
Created attachment 464536 [details]
Patch
Created attachment 464561 [details]
Patch
Created attachment 464565 [details]
Patch
Created attachment 464578 [details]
Patch
Pull request: https://github.com/WebKit/WebKit/pull/9096 Committed 266084@main (b39fee5ba22e): <https://commits.webkit.org/266084@main> Reviewed commits have been landed. Closing PR #9096 and removing active labels. Re-opening for pull request https://github.com/WebKit/WebKit/pull/15879 Committed 267130@main (6f118d4b6dd0): <https://commits.webkit.org/267130@main> Reviewed commits have been landed. Closing PR #15879 and removing active labels. |