Fix profiler layout test crashes.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@163153 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Speculative build fix.

* page/animation/CSSPropertyAnimation.cpp:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@163154 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] [CMake] Add support for building against GTK+ 2
https://bugs.webkit.org/show_bug.cgi?id=127959

Reviewed by Anders Carlsson.

.:

* Source/cmake/OptionsGTK.cmake: Add a new option to use GTK 2 and make a variable holding the
library API version. When using GTK 2 do not build WebKit 2.

Source/JavaScriptCore:

* PlatformGTK.cmake: Use the new API version variable and don't use GTK3 directly.

Source/WebCore:

* PlatformGTK.cmake: Use the new API version variable and don't use GTK3 directly.

Source/WebKit:

* PlatformGTK.cmake: Use the new API version variable and don't use GTK3 directly.

Source/WebKit2:

* PlatformGTK.cmake: Use the new API version variable and don't use GTK3 directly.

Tools:

* DumpRenderTree/PlatformGTK.cmake: Use the new API version variable and don't use GTK3 directly.
* GtkLauncher/CMakeLists.txt: Ditto.
* ImageDiff/PlatformGTK.cmake: Ditto.
* TestWebKitAPI/Tests/WebKitGtk/CMakeLists.txt: Ditto.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@163155 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Subpixel rendering: Make RoundedRect layout unit aware.
https://bugs.webkit.org/show_bug.cgi?id=127779

Reviewed by Simon Fraser.

In order to draw hairline borders, RoundedRect needs to be
LayoutUnit based.

No change in behavior.

* platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContext::fillRoundedRect):
* platform/graphics/GraphicsContext.h:
* platform/graphics/RoundedRect.cpp:
(WebCore::RoundedRect::Radii::scale):
(WebCore::RoundedRect::Radii::expand):
(WebCore::RoundedRect::inflateWithRadii):
(WebCore::RoundedRect::RoundedRect):
(WebCore::RoundedRect::intersectsQuad):
* platform/graphics/RoundedRect.h:
(WebCore::RoundedRect::Radii::Radii):
(WebCore::RoundedRect::Radii::setTopLeft):
(WebCore::RoundedRect::Radii::setTopRight):
(WebCore::RoundedRect::Radii::setBottomLeft):
(WebCore::RoundedRect::Radii::setBottomRight):
(WebCore::RoundedRect::Radii::topLeft):
(WebCore::RoundedRect::Radii::topRight):
(WebCore::RoundedRect::Radii::bottomLeft):
(WebCore::RoundedRect::Radii::bottomRight):
(WebCore::RoundedRect::Radii::expand):
(WebCore::RoundedRect::Radii::shrink):
(WebCore::RoundedRect::rect):
(WebCore::RoundedRect::setRect):
(WebCore::RoundedRect::move):
(WebCore::RoundedRect::inflate):
(WebCore::RoundedRect::expandRadii):
(WebCore::RoundedRect::shrinkRadii):
* platform/graphics/ShadowBlur.cpp:
(WebCore::ScratchBuffer::setCachedShadowValues):
(WebCore::ScratchBuffer::setCachedInsetShadowValues):
(WebCore::computeSliceSizesFromRadii):
(WebCore::ShadowBlur::templateSize):
(WebCore::ShadowBlur::drawRectShadow):
(WebCore::ShadowBlur::drawInsetShadow):
(WebCore::ShadowBlur::drawRectShadowWithoutTiling):
(WebCore::ShadowBlur::drawInsetShadowWithoutTiling):
(WebCore::ShadowBlur::drawInsetShadowWithTiling):
(WebCore::ShadowBlur::drawRectShadowWithTiling):
(WebCore::ShadowBlur::drawLayerPieces):
(WebCore::ShadowBlur::beginShadowLayer):
* platform/graphics/ShadowBlur.h:
* platform/graphics/cairo/GraphicsContextCairo.cpp:
(WebCore::GraphicsContext::clipOut):
(WebCore::GraphicsContext::fillRoundedRect):
(WebCore::GraphicsContext::fillRectWithRoundedHole):
* platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::platformInit):
* platform/graphics/wince/GraphicsContextWinCE.cpp:
(WebCore::GraphicsContext::clipOut):
(WebCore::GraphicsContext::fillRoundedRect):
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::paintOneBorderSide):
(WebCore::calculateSideRect):
(WebCore::RenderBoxModelObject::paintBorderSides):
(WebCore::RenderBoxModelObject::paintBorder):
(WebCore::RenderBoxModelObject::clipBorderSidePolygon):
(WebCore::calculateSideRectIncludingInner):
(WebCore::calculateAdjustedInnerBorder):
(WebCore::areaCastingShadowInHole):
(WebCore::RenderBoxModelObject::paintBoxShadow):
* rendering/RenderBoxModelObject.h:
* rendering/RenderThemeSafari.cpp:
(WebCore::RenderThemeSafari::paintMenuListButtonGradients):
(WebCore::RenderThemeSafari::paintSliderTrack):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@163156 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Some fixed position elements disappear in WK2 on iOS
https://bugs.webkit.org/show_bug.cgi?id=127977

Reviewed by Tim Horton.

Use the appropriate rectangle to ensure that on iOS we don't
consider a fixed element outside the viewport when zoomed in,
and therefore never make a compositing layer for it.

Also remove the iOS-specific code in RenderLayerCompositor::requiresCompositingForPosition(),
since it's OK to use the common code. Doing so requires that we
set the "acceleratedCompositingForFixedPositionEnabled" setting to true
for iOS, so do so.

* page/Settings.cpp:
* page/Settings.in:
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::requiresCompositingForPosition):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@163157 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove ScrollingCoordinator::setLayerIsContainerForFixedPositionLayers() which is no longer used
https://bugs.webkit.org/show_bug.cgi?id=127981

Reviewed by Andreas Kling.

setLayerIsContainerForFixedPositionLayers() was only used by Chromium and Blackberry,
so remove it.

This allows the removal of RenderLayerBacking::registerScrollingLayers(),
moving the single useful line of code to the caller.

* page/scrolling/ScrollingCoordinator.h:
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
* rendering/RenderLayerBacking.h:
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::ensureRootLayer):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@163158 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Subpixel rendering: Change drawRect()/drawLine() signature to support subpixel rendering.
https://bugs.webkit.org/show_bug.cgi?id=127961

Reviewed by Simon Fraser.

IntRect/IntPoint -> FloatRect/FloatPoint.

Covered by existing tests. No change in functionality.

* platform/graphics/GraphicsContext.h:
* platform/graphics/cairo/GraphicsContextCairo.cpp:
(WebCore::GraphicsContext::drawRect):
(WebCore::GraphicsContext::drawLine):
* platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::drawRect):
(WebCore::GraphicsContext::drawLine): Keep 'distance' int for DottedStroke and DashedStroke for now.
* platform/graphics/wince/GraphicsContextWinCE.cpp:
(WebCore::GraphicsContext::drawRect):
(WebCore::GraphicsContext::drawLine):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@163159 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix iOS build after r163156.

Need to convert LayoutSizes to FloatSizes.

* bindings/objc/DOMUIKitExtensions.mm:
(-[DOMNode borderRadii]):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@163160 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix iOS WK2 build after r163156.

Need to convert to IntSizes.

* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::tapHighlightAtPosition):

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