Commit cf81d453 authored by David Grogan's avatar David Grogan Committed by Commit Bot

[css-writing-modes] Don't pre-layout table parts

Most layout objects that have a writing mode orthogonal to their parents
are laid out early so that the parents can know the children's widths
before computing their own preferred widths. (https://crbug.com/550963)

But table parts can't be laid out on their own, only in the context of
their table ancestor.

Bug: 719211
Change-Id: Ia2a56127c6d4e6c0239324a478cb664ceeed0e30
Reviewed-on: https://chromium-review.googlesource.com/685900Reviewed-by: default avatarKoji Ishii <kojii@chromium.org>
Commit-Queue: David Grogan <dgrogan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#504825}
parent e2c7d65d
No crash = pass
Ridiculous markup is needed, empirically, to trigger a race condition.
<!doctype html>
No crash = pass
<br>
Ridiculous markup is needed, empirically, to trigger a race condition.
<div id=test style="display: table-footer-group"></div>
<script>
if (window.testRunner) {
testRunner.waitUntilDone();
testRunner.dumpAsText();
}
var testElement = document.getElementById('test');
document.addEventListener("keydown", function() {
testElement.requestFullscreen();
});
document.addEventListener("fullscreenchange", function() {
if (window.testRunner)
testRunner.notifyDone();
});
eventSender.keyDown("Enter");
</script>
</body><style>
* { writing-mode: vertical-rl;</style><style>
</style><style>
</style><style>
</style><style>
</style><style>
</style><style>
</style><style>
</style><style>
</style><style>
</style><style>
</style><style>
.c26::-webkit-media-controls-timeline-container { speak: spell-out; margin-width: auto; fill-rule: evenodd;</style><style>
animation-fill-mode: both, backwards; margin-bottom: 1.32195719389cm; }</style><style>
grid-columns: auto 23fr; grid-gap: 7px 6px 128px; }</style><style>
</style><style>
</style><style>
text-decoration-line: overline; border-width-bottom: 32551px; border-style: dashed dotted solid; box-shadow: crimson 11 32579 7px; }</style><style>
</style><style>
</style><style>
</style><style>
</style><style>
</style><style>
</style><style>
</style><script>
......@@ -2268,7 +2268,7 @@ static bool PrepareOrthogonalWritingModeRootForLayout(LayoutObject& root) {
if (!root.NeedsLayout() || root.IsOutOfFlowPositioned() ||
root.IsColumnSpanAll() ||
!root.StyleRef().LogicalHeight().IsIntrinsicOrAuto() ||
ToLayoutBox(root).IsGridItem())
ToLayoutBox(root).IsGridItem() || root.IsTablePart())
return false;
RemoveFloatingObjectsForSubtreeRoot(root);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment