[CSSRegions] Fixed positioned elements in named flows have fragmented content
https://bugs.webkit.org/show_bug.cgi?id=130595

Reviewed by Darin Adler.

Source/WebCore:

Fixed positioned elements that have the named flow as parent are positioned
and sized relative to the viewport. Because of that, when the named flow
has an associated region chain, the fixed positioned elements should not
be fragmented.

By making a fixed positioned element with a named flow parent unsplittable
for fragmentation, we prevent this wrong behavior.

Test: fast/regions/fixed-pos-content-fragmented.html

* rendering/RenderBox.cpp:
(WebCore::RenderBox::isUnsplittableForPagination):

LayoutTests:

* fast/regions/fixed-pos-content-fragmented-expected.html: Added.
* fast/regions/fixed-pos-content-fragmented.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@166918 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] Remove media controls dead code
https://bugs.webkit.org/show_bug.cgi?id=131300

Reviewed by Eric Carlson.

MediaControlsGtk.cpp is no longer used so we can remove it from
the repo.

No new tests needed.

* PlatformGTK.cmake: Remove html/shadow/MediaControlsGtk.cpp from
compilation.
* html/shadow/MediaControlsGtk.cpp: Removed.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@166919 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix assertions triggered by CSS calc changes in r166860
https://bugs.webkit.org/show_bug.cgi?id=131346

Reviewed by Andrei Bucur.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::getBorderRadiusCornerValues): Use isPercentNotCalculated() instead of
type() == Percent; no behavior change.
(WebCore::getBorderRadiusCornerValue): Ditto.
(WebCore::lineHeightFromStyle): Use isPercentNotCalculated() before code
that calls percent(), which won't work for a calculated length.

* css/DeprecatedStyleBuilder.cpp:
(WebCore::ApplyPropertyBorderRadius::applyValue): Use isNegative and isZero rather
than calling value() unconditionally. Should make calculated values work better.

* html/HTMLPlugInImageElement.cpp:
(WebCore::is100Percent): Use isPercentNotCalculated() before code
that calls percent(), which won't work for a calculated length.

* platform/Length.cpp:
(WebCore::CalculationValueMap::deref): Use adoptRef here instead of calling deref
immediately, so the deref will happen after calling remove. This makes the code
work properly even if it's reentered inside the calculation value's destructor.

* platform/Length.h:
(WebCore::Length::percent): Change assert to isPercentNotCalculated, since the
value function this calls only works for non-calculated values anyway.
(WebCore::Length::isPercentNotCalculated): Added.
(WebCore::Length::isPercent): Changed to call isPercentNotCalculated.
(WebCore::Length::isSpecified): Changed to call isPercent.

* platform/graphics/transforms/TranslateTransformOperation.h:
(WebCore::TranslateTransformOperation::apply): Use isPercentNotCalculated()
instead of type() == Percent; no behavior change.

* rendering/AutoTableLayout.cpp:
(WebCore::AutoTableLayout::recalcColumn): Use isPercentNotCalculated()
before code that calls value() or percent(), which won't work for a calculated length.
(WebCore::AutoTableLayout::computeIntrinsicLogicalWidths): Ditto.
(WebCore::AutoTableLayout::calcEffectiveLogicalWidth): Ditto.
(WebCore::AutoTableLayout::layout): Ditto.
* rendering/FixedTableLayout.cpp:
(WebCore::FixedTableLayout::layout): Ditto.
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::calculateImageIntrinsicDimensions): Ditto.
* rendering/RenderTableSection.cpp:
(WebCore::updateLogicalHeightForCell): Ditto.
(WebCore::RenderTableSection::distributeExtraLogicalHeightToPercentRows): Ditto.
(WebCore::RenderTableSection::distributeExtraLogicalHeightToRows): Ditto.

* rendering/style/RenderStyle.cpp:
(WebCore::requireTransformOrigin): Use modern for loop. Also marked function static,
since it's private to this file.
(WebCore::RenderStyle::applyTransform): Use isPercentNotCalculated() instead of
type() == Percent; no behavior change. Also use a modern for loop and auto& to avoid
a really long type name.

* rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::computeIntrinsicRatioInformation): Use isPercentNotCalculated()
before code that calls percent(), which won't work for a calculated length.

* platform/Length.h:
(WebCore::Length::percent):
(WebCore::Length::isPercentNotCalculated):
(WebCore::Length::isPercent):
(WebCore::Length::isSpecified):
* platform/graphics/transforms/TranslateTransformOperation.h:
(WebCore::TranslateTransformOperation::apply):
* rendering/AutoTableLayout.cpp:
(WebCore::AutoTableLayout::recalcColumn):
(WebCore::AutoTableLayout::computeIntrinsicLogicalWidths):
(WebCore::AutoTableLayout::calcEffectiveLogicalWidth):
(WebCore::AutoTableLayout::layout):
* rendering/FixedTableLayout.cpp:
(WebCore::FixedTableLayout::layout):
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::calculateImageIntrinsicDimensions):
* rendering/RenderTableSection.cpp:
(WebCore::updateLogicalHeightForCell):
(WebCore::RenderTableSection::distributeExtraLogicalHeightToPercentRows):
(WebCore::RenderTableSection::distributeExtraLogicalHeightToRows):
* rendering/style/RenderStyle.cpp:
(WebCore::requireTransformOrigin):
(WebCore::RenderStyle::applyTransform):
* rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::computeIntrinsicRatioInformation):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@166920 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Buildfix after r166917
https://bugs.webkit.org/show_bug.cgi?id=131351

Patch by Zsolt Borbely <zsborbely.u-szeged@partner.samsung.com> on 2014-04-08
Reviewed by Andrei Bucur.

* accessibility/AccessibilityNodeObject.cpp:
(WebCore::accessibleNameForNode):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@166921 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSSRegions] Remove unused RenderBox::clearRenderBoxRegionInfo
https://bugs.webkit.org/show_bug.cgi?id=131352

Reviewed by Andrei Bucur.

No new tests, code clean-up.

* rendering/RenderBox.cpp:
(WebCore::RenderBox::clearRenderBoxRegionInfo): Deleted.
* rendering/RenderBox.h:


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