[CSS Exclusions][CSS Regions] Block children do not layout inline content correctly in a region with shape-inside set
https://bugs.webkit.org/show_bug.cgi?id=112177

Reviewed by David Hyatt.

Source/WebCore:

When we had two multiple regions and a shape-inside was applied on the second region, but not on the first region and the content contained
paragraphs, the content was pushed down almost to the bottom in the second region. In a flow thread this behavior caused by the lack of the
proper updating of absoluteLogicalTop in RenderBlock::layoutRunsAndFloatsInRange function.

Tests: fast/regions/shape-inside/shape-inside-on-additional-regions.html
       fast/regions/shape-inside/shape-inside-on-regions.html

* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::layoutRunsAndFloatsInRange): Update the value of absoluteLogicalTop in every run when we are in a flow thread.

LayoutTests:

Add a new subdirectory for regions shape-inside tests. Move old and add new test files to the directory.

* fast/regions/shape-inside: Added.
* fast/regions/shape-inside/shape-inside-on-additional-regions-expected.html: Added.
* fast/regions/shape-inside/shape-inside-on-additional-regions.html: Added.
* fast/regions/shape-inside/shape-inside-on-regions-expected.html: Renamed from LayoutTests/fast/regions/shape-inside-on-regions-expected.html.
* fast/regions/shape-inside/shape-inside-on-regions.html: Renamed from LayoutTests/fast/regions/shape-inside-on-regions.html.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@147155 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore: Enable font measurement optimization for Chromium-mac when there are no font-feature-settings.

Enable measure-once optimization on Chromium-Mac
https://bugs.webkit.org/show_bug.cgi?id=113243

Reviewed by Eric Seidel.

Bugs in Chromium-mac's -webkit-font-feature-settings support prevented us from enabling the
optimization when it was enabled for all other platforms. This was believed to be related to
kerning, but the bug shows up when there are any font-feature-settings specified. For now,
optimizing the common case and only turning off the optimization when there are font-feature-
settings in play.

Updated test fast/text/shaping/shaping-selection-rect.html to avoid breaking due to
https://bugs.webkit.org/show_bug.cgi?id=113418

* rendering/RenderBlockLineLayout.cpp:
(WebCore::setLogicalWidthForTextRun):

LayoutTests: Disable font measurement optimization for Chromium-mac when there are font-feature-settings.

Enable measure-once optimization on Chromium-Mac
https://bugs.webkit.org/show_bug.cgi?id=113243

Reviewed by Eric Seidel.

* fast/text/shaping/shaping-selection-rect.html: Adding a small-caps case to prevent regressing
due to https://bugs.webkit.org/show_bug.cgi?id=113418.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@147156 268f45cc-cd09-0410-ab3c-d52691b4dbfc