Bug 208161
| Summary: | [Frame flattening] When the iframe content schedules layout, it should also mark the owner renderer dirty | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | alan <zalan> |
| Component: | Layout and Rendering | Assignee: | Nobody <webkit-unassigned> |
| Status: | NEW | ||
| Severity: | Normal | CC: | bfulgham, simon.fraser, webkit-bug-importer, zalan |
| Priority: | P2 | Keywords: | InRadar |
| Version: | WebKit Nightly Build | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
alan
In the frame flattening context when optional layout is delayed, getComputedStyle() might return the un-flattened geometry unless the iframe element is forced to get laid out.
1. main frame content is loaded and laid out -> if the iframe content is not ready yet, we don't initiate iframe flattening.
2. iframe content is ready -> layout is scheduled.
3. getComputedStyle() is called which initiates a style update/layout on the main frame, but only dirty boxes trigger layout (the iframe renderer itself is not dirty <- this is where frame flattening fails)
4. getComputedStyle() returns with the "stale" geometry.
See fast/frames/flattening/iframe-tiny.html
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Radar WebKit Bug Importer
<rdar://problem/59744384>