RESOLVED FIXED Bug 68638
[CSSRegions] Make RenderFlowThread track if it has variable width regions
https://bugs.webkit.org/show_bug.cgi?id=68638
Summary [CSSRegions] Make RenderFlowThread track if it has variable width regions
Dave Hyatt
Reported 2011-09-22 10:52:39 PDT
Make RenderFlowThread track if it has variable width regions. This will be relevant for speed as we begin adding code to shrink lines and do custom painting of blocks, etc.
Attachments
Patch (3.86 KB, patch)
2011-09-22 10:54 PDT, Dave Hyatt
no flags
Patch (3.86 KB, patch)
2011-09-22 10:55 PDT, Dave Hyatt
mitz: review+
Dave Hyatt
Comment 1 2011-09-22 10:54:15 PDT
Dave Hyatt
Comment 2 2011-09-22 10:55:15 PDT
mitz
Comment 3 2011-09-22 10:58:31 PDT
Comment on attachment 108361 [details] Patch r=me I think the naming can be improved, “variable widths” seems like the width can change, maybe you can use “nonUniformLogicalWidth” or flip it and call it “regionsHaveUniformLogicalWidth”.
Adam Roben (:aroben)
Comment 4 2011-09-22 10:59:17 PDT
Comment on attachment 108361 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=108361&action=review > Source/WebCore/rendering/RenderFlowThread.cpp:308 > + m_hasValidRegions = false; > + LayoutUnit previousRegionLogicalWidth = 0; Seems like you need to set m_regionsHaveVariableLogicalWidth to false here, too. Otherwise once it goes true it will never become false again! > Source/WebCore/rendering/RenderFlowThread.h:108 > + bool regionsHaveVariableLogicalWidth() const { return m_regionsHaveVariableLogicalWidth; } Seems like this isn't needed yet, but maybe you intend to use it in the future?
Dave Hyatt
Comment 5 2011-09-22 11:02:27 PDT
(In reply to comment #4) > Seems like you need to set m_regionsHaveVariableLogicalWidth to false here, too. Otherwise once it goes true it will never become false again! > Nice catch! Wouldn't be a correctness issue, but would be a performance one!
Dave Hyatt
Comment 6 2011-09-22 11:11:31 PDT
Fixed in r95740.
Note You need to log in before you can comment on or make changes to this bug.