Bug 313785
| Summary: | [LBSE] Promote SVG layer children sandwiched between composited siblings to composited | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Nikolas Zimmermann <zimmermann> |
| Component: | SVG | Assignee: | Nikolas Zimmermann <zimmermann> |
| Status: | NEW | ||
| Severity: | Normal | CC: | rbuis, sabouhallawa, webkit-bug-importer, zimmermann |
| Priority: | P2 | Keywords: | InRadar |
| Version: | WebKit Nightly Build | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Bug Depends on: | 313780, 313781 | ||
| Bug Blocks: | 308565 | ||
Nikolas Zimmermann
Once LBSE makes RenderLayer creation conditional (bug 308565), an SVG container can have a mix of composited and non-composited children. Composited descendants are attached as children of the parent's GraphicsLayer in stacking-context order; negative-z-index descendants force the parent to split into background/foreground layers so they paint between them. Without compensation, a non-composited child sitting in DOM order between two composited siblings ends up either below or above both composited siblings — never between them — so DOM-order paint cannot be preserved.
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Nikolas Zimmermann
Pull request: https://github.com/WebKit/WebKit/pull/64301
Radar WebKit Bug Importer
<rdar://problem/176503627>