DescriptionStore glyph bounds in WordMeasurement to avoid slow path width calc
This CL brings back the fast path of setLogicalWidthForTextRun
(in LayoutBlockFlowLine.cpp) which is 10+x faster than the slow path
based on my performance measurement.
Store glyph bounds of words in WordMeasurement to avoid recomputation.
The stored glyph bounds will be used to compute the glyph bounds of
RootLineBoxs in the fast path.
Let Font::width() etc. output glyph bounds (as FloatRect) instead of
GlyphOverflow so that the callers can accumulate them to form bigger
glyph bounds.
This CL is to fix the performance regression caused by
https://codereview.chromium.org/1153173011 which removed the fast path
when it didn't support computation of glyph overflow.
BUG=498625
R=eae@chromium.org
Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=196978
Patch Set 1 : Restore original LayoutBlockFlowLine.cpp before https://codereview.chromium.org/1153173011 for comparison #Patch Set 2 : For review #
Total comments: 7
Patch Set 3 : NeedsRebaseline; GlyphOverflow.h copyright #Patch Set 4 : NeedsRebaseline; GlyphOverflow.h copyright #Patch Set 5 : Rebase #Patch Set 6 : Rebase #
Messages
Total messages: 19 (12 generated)
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||