I'll land this after the next branch point next week.
For the delta between the reapply and the update see:
https://chromium-review.googlesource.com/c/chromium/src/+/7427180/1..5
All a just nullptr checks so for. Clusterfuzz seemed to do a good job finding issues, so we'll see what else it finds in the reapply.
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
| Code-Review | -1 |
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
All the new nullptr checks... are we sure we really should be inside these functions if we have a nullptr?
} else if (Layer() && (RuntimeEnabledFeatures::We'll now do this for the root layer. Any concerns?
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
| Code-Review | +0 |
All the new nullptr checks... are we sure we really should be inside these functions if we have a nullptr?
I think so - an arguable one is `DirtyVisibleContentStatus` - but it also calls `MarkAncestorChainForFlagsUpdate` which has a side-effect on the current layer which i think is needed.
} else if (Layer() && (RuntimeEnabledFeatures::We'll now do this for the root layer. Any concerns?
I don't think so - (can we even change the style for the root layer?).
This part of the change was reverted in:
https://chromiumdash.appspot.com/commit/d19611f290f1c793202dacb7ce790c86ed6db9c3
and clusterfuzz seemed ok with it for a few weeks (compared with a few hours for the rest of this change).
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
| Code-Review | +1 |
Ian KilpatrickWe'll now do this for the root layer. Any concerns?
I don't think so - (can we even change the style for the root layer?).
This part of the change was reverted in:
https://chromiumdash.appspot.com/commit/d19611f290f1c793202dacb7ce790c86ed6db9c3and clusterfuzz seemed ok with it for a few weeks (compared with a few hours for the rest of this change).
I don't think so - (can we even change the style for the root layer?).
Yes, we can, via StyleResolver::PropagateStyleToViewport(), but in order to end up in this particular code path for LayoutView, LayerTypeRequired() would have to say that a layer is no longer required. That seems impossible.
This part of the change was reverted in:
https://chromiumdash.appspot.com/commit/d19611f290f1c793202dacb7ce790c86ed6db9c3and clusterfuzz seemed ok with it for a few weeks (compared with a few hours for the rest of this change).
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
I'll land this after the next branch point next week.
For the delta between the reapply and the update see:
https://chromium-review.googlesource.com/c/chromium/src/+/7427180/1..5All a just nullptr checks so for. Clusterfuzz seemed to do a good job finding issues, so we'll see what else it finds in the reapply.
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
Reapply "[layout] Reinsert LayoutObjects which undergo a in-flow state change."
This reverts commit 07002c40c631b6ee35ee32d2bbccacc75e9052a0.
This patch reinserts layout-objects into the layout-tree when their
out-of-flow state changes. (E.g. a change from position:static to
position:absolute or float:left to float:none).
When their out-of-flow state changes we'll remove it from the
layout-object tree, update the style, then reinsert into the tree. This
is similar to layout-tree reattachment, except the layout-object (and
related objects/caches) are kept around.
This simplifies our logic when style changes in this way. Previously
we'd need to mutate the layout tree during LayoutObject::SetStyle which
was complex and error prone, and a source of bugs.
See removal patch for complexity we can remove:
https://chromium-review.googlesource.com/c/chromium/src/+/7263470
All behaviour changes should be behind the flag:
LayoutReinsertOnInFlowStateChange
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
The WPT PR for this CL has been merged upstream! https://github.com/web-platform-tests/wpt/pull/57186
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |