X-Git-Url: https://git.webkit.org/?p=WebKit-https.git;a=blobdiff_plain;f=Source%2FWebCore%2FChangeLog;h=9fa2f981d59f3b98296ef8eadd5d4926e592ab04;hp=0b45f75a7675b30a50c8f1a358cae32277ba2d41;hb=804a30138fe4c7c2a9f6d301ed9c0d8469e484c8;hpb=f80867fcbedc30fb7a7d28a34ac5ce8bee9e0eb6;ds=sidebyside diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog index 0b45f75a7675..9fa2f981d59f 100644 --- a/Source/WebCore/ChangeLog +++ b/Source/WebCore/ChangeLog @@ -1,3 +1,30 @@ +2015-02-18 Myles C. Maxfield + + Justified ruby can cause lines to grow beyond their container + https://bugs.webkit.org/show_bug.cgi?id=141732 + + Reviewed by David Hyatt. + + After we re-layout RenderRubyRuns, this can change the environment upon which + ruby's overhang calculation is sensitive to. Before this patch, we would recalculate + the overhang after the RenderRubyRun gets relaid out. However, doing such causes the + effective width of the RenderRubyRun to change, which causes out subsequent + justification calculations to be off. + + Therefore, we have a cycle; the amount of ruby overhang can change the justification + in a line, and the layout of the line affects the ruby overhang calculation. Instead + of performing a layout in a loop until it converges, this patch simply observes that + having a flush right edge is more valuable than having a perfectly correct overhang. + It therefore simply removes the secondary overhang calculation. + + Test: fast/text/ruby-justification-flush.html + + * rendering/RenderBlockFlow.h: + * rendering/RenderBlockLineLayout.cpp: + (WebCore::RenderBlockFlow::updateRubyForJustifiedText): + (WebCore::RenderBlockFlow::computeExpansionForJustifiedText): + (WebCore::RenderBlockFlow::computeInlineDirectionPositionsForSegment): + 2015-02-18 Chris Dumez Evict dead resources in MemoryCache in MemoryPressureHandler::releaseNoncriticalMemory()