Changeset 141290 in webkit
- Timestamp:
- Jan 30, 2013 11:21:26 AM (11 years ago)
- Location:
- trunk
- Files:
-
- 2 added
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r141286 r141290 1 2013-01-30 Tony Chang <tony@chromium.org> 2 3 REGRESSION(r136324): Flexbox should relayout flex children when width changes 4 https://bugs.webkit.org/show_bug.cgi?id=108231 5 6 Reviewed by Ojan Vafai. 7 8 * css3/flexbox/width-change-and-relayout-children-expected.txt: Added. 9 * css3/flexbox/width-change-and-relayout-children.html: Added. 10 1 11 2013-01-30 Florin Malita <fmalita@chromium.org> 2 12 -
trunk/Source/WebCore/ChangeLog
r141288 r141290 1 2013-01-30 Tony Chang <tony@chromium.org> 2 3 REGRESSION(r136324): Flexbox should relayout flex children when width changes 4 https://bugs.webkit.org/show_bug.cgi?id=108231 5 6 Reviewed by Ojan Vafai. 7 8 If the width of a block changes, we need to set relayoutChildren = true 9 to relayout the children. This broke when we optimized the layout calls 10 in layoutAndPlaceChildren. 11 12 Test: css3/flexbox/width-change-and-relayout-children.html 13 14 * rendering/RenderFlexibleBox.cpp: 15 (WebCore::RenderFlexibleBox::layoutBlock): Also reorder the code to match RenderBlock. 16 The bug fix is to use updateLogicalWidthAndColumnWidth() and its return value to set 17 relayoutChildren = true. 18 1 19 2013-01-30 Tim Horton <timothy_horton@apple.com> 2 20 -
trunk/Source/WebCore/rendering/RenderFlexibleBox.cpp
r140244 r141290 297 297 298 298 LayoutRepainter repainter(*this, checkForRepaintDuringLayout()); 299 300 if (updateLogicalWidthAndColumnWidth()) 301 relayoutChildren = true; 302 303 m_overflow.clear(); 304 305 LayoutUnit previousHeight = logicalHeight(); 306 setLogicalHeight(0); 307 299 308 LayoutStateMaintainer statePusher(view(), this, locationOffset(), hasTransform() || hasReflection() || style()->isFlippedBlocksWritingMode()); 300 309 … … 306 315 updateRegionsAndExclusionsLogicalSize(); 307 316 308 LayoutSize previousSize = size();309 310 setLogicalHeight(0);311 updateLogicalWidth();312 313 317 m_numberOfInFlowChildrenOnFirstLine = -1; 314 m_overflow.clear();315 318 316 319 RenderBlock::startDelayUpdateScrollInfo(); … … 331 334 RenderBlock::finishDelayUpdateScrollInfo(); 332 335 333 if ( size() != previousSize)336 if (logicalHeight() != previousHeight) 334 337 relayoutChildren = true; 335 338
Note: See TracChangeset
for help on using the changeset viewer.