AX: SpeechSynthesisUtterance cannot addEventListener
https://bugs.webkit.org/show_bug.cgi?id=132321

Reviewed by Mario Sanchez Prada.


Source/WebCore: 
Modified an existing test (speech-synthesis-speak.html) to use addEventTarget.

* Modules/speech/SpeechSynthesisUtterance.idl:

LayoutTests: 
* platform/mac/fast/speechsynthesis/speech-synthesis-speak.html:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@167933 268f45cc-cd09-0410-ab3c-d52691b4dbfc
AX: Row span info is wrong for table cells when a footer section is placed above a body section
https://bugs.webkit.org/show_bug.cgi?id=131832

Reviewed by Mario Sanchez Prada.


Source/WebCore: 
If a <footer> section is placed before the body, it renders AX row information and order incorrectly.
This also affects ARIA tables because they add their children by looking at renderer children, instead
interrogating the RenderTable directly.

Test: accessibility/table-with-footer-section-above-body.html

* accessibility/AccessibilityARIAGrid.cpp:
(WebCore::AccessibilityARIAGrid::addTableCellChild):
(WebCore::AccessibilityARIAGrid::addChildren):
* accessibility/AccessibilityTable.cpp:
(WebCore::AccessibilityTable::addChildren):
(WebCore::AccessibilityTable::addChildrenFromSection):
* accessibility/AccessibilityTable.h:
* accessibility/AccessibilityTableCell.cpp:
(WebCore::AccessibilityTableCell::rowIndexRange):
(WebCore::AccessibilityTableCell::columnIndexRange):

LayoutTests: 
* accessibility/table-with-footer-section-above-body-expected.txt: Added.
* accessibility/table-with-footer-section-above-body.html: Added.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@167934 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSS Shapes] complex calc values for shape-margin return null for computed style
https://bugs.webkit.org/show_bug.cgi?id=132313

Reviewed by Bem Jones-Bey.

Source/WebCore:
We need to pass RenderStyle* to the cssValuePool when parsing
shape-margin in order to use calc() as a parameter.

I've added the new test case to parsing-shape-margin.html

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::propertyValue):

LayoutTests:
* fast/shapes/parsing/parsing-shape-margin.html:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@167935 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSS Shapes] complex calc args for inset round vanish
https://bugs.webkit.org/show_bug.cgi?id=132293

Reviewed by Bem Jones-Bey.

Source/WebCore:
In order to use calc in the rounded parameters for inset shapes, we need
to pass RenderStyle for the value creation as we did for the width arguments.
Without taking RenderStyle into account, we hit an assert not reache
in CSSPrimitiveValue::init in the debug builds.

I've added new parsing test.

* css/BasicShapeFunctions.cpp:
(WebCore::valueForBasicShape):
* css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::init):
* css/CSSPrimitiveValue.h:
(WebCore::CSSPrimitiveValue::create):
* css/CSSValuePool.h:
(WebCore::CSSValuePool::createValue):

LayoutTests:
* fast/shapes/parsing/parsing-shape-outside-expected.txt:
* fast/shapes/parsing/parsing-test-utils.js:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@167936 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Wrap CSS length conversion arguments in an object
https://bugs.webkit.org/show_bug.cgi?id=131552

Reviewed by Andreas Kling.

This patch introduces a class CSSToLengthConversionData to wrap the
data required to convert CSS lengths to Lengths. This simplifies the
plumbing that goes on whenever we need to resolve CSS lengths and
makes it easier to update the arguments needed for resolving these (in
particular adding a RenderView for resolving viewport units at style
recalc time; removing the computingFontSize bool also appears
possible).

Note that the zoom argument, which was previously a float in some
places and a double in others is now a float.

This is a port of a Blink patch by timloh@chromium.org.

No new tests, no behavior change.

* CMakeLists.txt:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.xcodeproj/project.pbxproj:
* css/BasicShapeFunctions.cpp:
(WebCore::convertToLength):
(WebCore::convertToLengthSize):
(WebCore::convertToCenterCoordinate):
(WebCore::cssValueToBasicShapeRadius):
(WebCore::basicShapeForValue):
* css/BasicShapeFunctions.h:
* css/CSSCalculationValue.cpp:
(WebCore::CSSCalcValue::computeLengthPx):
(WebCore::determineCategory):
* css/CSSCalculationValue.h:
(WebCore::CSSCalcValue::createCalculationValue):
* css/CSSGradientValue.cpp:
(WebCore::CSSGradientValue::addStops):
(WebCore::positionFromValue):
(WebCore::CSSGradientValue::computeEndPoint):
(WebCore::CSSLinearGradientValue::createGradient):
(WebCore::CSSRadialGradientValue::resolveRadius):
(WebCore::CSSRadialGradientValue::createGradient):
* css/CSSGradientValue.h:
* css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::computeLength):
(WebCore::CSSPrimitiveValue::computeLengthDouble):
* css/CSSPrimitiveValue.h:
* css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::convertToLength):
* css/CSSToLengthConversionData.cpp: Added.
(WebCore::CSSToLengthConversionData::zoom):
* css/CSSToLengthConversionData.h: Added.
(WebCore::CSSToLengthConversionData::CSSToLengthConversionData):
(WebCore::CSSToLengthConversionData::style):
(WebCore::CSSToLengthConversionData::rootStyle):
(WebCore::CSSToLengthConversionData::computingFontSize):
(WebCore::CSSToLengthConversionData::copyWithAdjustedZoom):
* css/CSSToStyleMap.cpp:
(WebCore::CSSToStyleMap::CSSToStyleMap):
(WebCore::CSSToStyleMap::mapFillSize):
(WebCore::CSSToStyleMap::mapFillXPosition):
(WebCore::CSSToStyleMap::mapFillYPosition):
(WebCore::CSSToStyleMap::mapNinePieceImageQuad):
* css/CSSToStyleMap.h:
(WebCore::CSSToStyleMap::CSSToStyleMap): Deleted.
* css/DeprecatedStyleBuilder.cpp:
(WebCore::ApplyPropertyAuto::applyValue):
(WebCore::ApplyPropertyClip::convertToLength):
(WebCore::ApplyPropertyLength::applyValue):
(WebCore::ApplyPropertyBorderRadius::applyValue):
(WebCore::ApplyPropertyComputeLength::applyValue):
(WebCore::ApplyPropertyFontSize::applyValue):
(WebCore::csstoLengthConversionDataWithTextZoomFactor):
(WebCore::ApplyPropertyMarqueeIncrement::applyValue):
(WebCore::ApplyPropertyLineHeight::applyValue):
(WebCore::ApplyPropertyLineHeightForIOSTextAutosizing::applyValue):
(WebCore::ApplyPropertyWordSpacing::applyValue):
(WebCore::ApplyPropertyPageSize::mmLength):
(WebCore::ApplyPropertyPageSize::inchLength):
(WebCore::ApplyPropertyPageSize::applyValue):
(WebCore::ApplyPropertyVerticalAlign::applyValue):
(WebCore::ApplyPropertyClipPath::applyValue):
(WebCore::ApplyPropertyShape::applyValue):
(WebCore::ApplyPropertyTextIndent::applyValue):
* css/MediaQueryEvaluator.cpp:
(WebCore::colorMediaFeatureEval):
(WebCore::color_indexMediaFeatureEval):
(WebCore::monochromeMediaFeatureEval):
(WebCore::orientationMediaFeatureEval):
(WebCore::aspect_ratioMediaFeatureEval):
(WebCore::device_aspect_ratioMediaFeatureEval):
(WebCore::device_pixel_ratioMediaFeatureEval):
(WebCore::resolutionMediaFeatureEval):
(WebCore::gridMediaFeatureEval):
(WebCore::computeLength):
(WebCore::device_heightMediaFeatureEval):
(WebCore::device_widthMediaFeatureEval):
(WebCore::heightMediaFeatureEval):
(WebCore::widthMediaFeatureEval):
(WebCore::min_colorMediaFeatureEval):
(WebCore::max_colorMediaFeatureEval):
(WebCore::min_color_indexMediaFeatureEval):
(WebCore::max_color_indexMediaFeatureEval):
(WebCore::min_monochromeMediaFeatureEval):
(WebCore::max_monochromeMediaFeatureEval):
(WebCore::min_aspect_ratioMediaFeatureEval):
(WebCore::max_aspect_ratioMediaFeatureEval):
(WebCore::min_device_aspect_ratioMediaFeatureEval):
(WebCore::max_device_aspect_ratioMediaFeatureEval):
(WebCore::min_device_pixel_ratioMediaFeatureEval):
(WebCore::max_device_pixel_ratioMediaFeatureEval):
(WebCore::min_heightMediaFeatureEval):
(WebCore::max_heightMediaFeatureEval):
(WebCore::min_widthMediaFeatureEval):
(WebCore::max_widthMediaFeatureEval):
(WebCore::min_device_heightMediaFeatureEval):
(WebCore::max_device_heightMediaFeatureEval):
(WebCore::min_device_widthMediaFeatureEval):
(WebCore::max_device_widthMediaFeatureEval):
(WebCore::min_resolutionMediaFeatureEval):
(WebCore::max_resolutionMediaFeatureEval):
(WebCore::animationMediaFeatureEval):
(WebCore::transitionMediaFeatureEval):
(WebCore::transform_2dMediaFeatureEval):
(WebCore::transform_3dMediaFeatureEval):
(WebCore::view_modeMediaFeatureEval):
(WebCore::video_playable_inlineMediaFeatureEval):
(WebCore::hoverMediaFeatureEval):
(WebCore::pointerMediaFeatureEval):
(WebCore::MediaQueryEvaluator::eval):
* css/SVGCSSStyleSelector.cpp:
(WebCore::StyleResolver::applySVGProperty):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::State::clear):
(WebCore::StyleResolver::State::initForStyleResolve):
(WebCore::StyleResolver::convertToIntLength):
(WebCore::StyleResolver::convertToFloatLength):
(WebCore::createGridTrackBreadth):
(WebCore::StyleResolver::applyProperty):
(WebCore::StyleResolver::createFilterOperations):
* css/StyleResolver.h:
(WebCore::StyleResolver::State::setStyle):
(WebCore::StyleResolver::State::cssToLengthConversionData):
* css/TransformFunctions.cpp:
(WebCore::convertToFloatLength):
(WebCore::transformsForValue):
* css/TransformFunctions.h:
* css/WebKitCSSMatrix.cpp:
(WebCore::WebKitCSSMatrix::setMatrixValue):
* rendering/RenderThemeIOS.mm:
(WebCore::applyCommonButtonPaddingToStyle):
(WebCore::RenderThemeIOS::adjustButtonStyle):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@167937 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[CSS Shapes] off-by-one error in Shape::createRasterShape()
https://bugs.webkit.org/show_bug.cgi?id=132154

Reviewed by Bem Jones-Bey.

Source/WebCore:
This is a port of a patch for a bug that was reported by and fixed in Blink by
David Vest: https://codereview.chromium.org/237123002/.  Shape::createRasterShape()
now consistently reports "end-point exclusive" intervals. Before the patch
an entire row of pixels was above the shape-image-threshold, the interval's end
index was reported as image.width. Now it's image.width + 1, which is consistent
with the way the end index is reported if the last above threshold pixel is within
an image row.

Two existing tests were revised to account for this change.

* rendering/shapes/RasterShape.cpp:
(WebCore::RasterShape::getExcludedIntervals):
* rendering/shapes/Shape.cpp:
(WebCore::Shape::createRasterShape):

LayoutTests:
Change two tests that had incorrect X values to account for the off-by-one
in Shape::createRasterShape().

* fast/shapes/shape-outside-floats/shape-outside-insert-svg-shape.html:
* fast/shapes/shape-outside-floats/shape-outside-linear-gradient-expected.html:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@167938 268f45cc-cd09-0410-ab3c-d52691b4dbfc
REGRESSION (r167751): svn-create-patch is very slow
https://bugs.webkit.org/show_bug.cgi?id=132300

Reviewed by Alexey Proskuryakov.

* Scripts/svn-create-patch:
Change default behavior of svn-create-patch to no longer run the style checker. It can still be run
by calling `svn-create-patch --style`.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@167939 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[iOS] Introduce -didNotHandleTapAsClickAtPoint: to WKUIDelegatePrivate
https://bugs.webkit.org/show_bug.cgi?id=132316

Reviewed by Darin Adler.

One WebKit2 client is interested to know if a tap was not handled by an element that responds to clicks.
Introduce a new, private WKUIDelegate method telling it that a tap at a location was not handled as a click on
an element.

* UIProcess/API/APIUIClient.h:
(API::UIClient::didNotHandleTapAsClick):
* UIProcess/API/Cocoa/WKUIDelegatePrivate.h:
* UIProcess/Cocoa/UIDelegate.h:
* UIProcess/Cocoa/UIDelegate.mm:
(WebKit::UIDelegate::setDelegate):
(WebKit::UIDelegate::UIClient::didNotHandleTapAsClick):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::didNotHandleTapAsClick):
* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::handleTap): Sent Messages::WebPageProxy::DidNotHandleTapAsClick if the tap wasn't handled, no
node responded to the click event, or the responding node wasn't an element.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@167940 268f45cc-cd09-0410-ab3c-d52691b4dbfc
iOS build fix after http://trac.webkit.org/changeset/167937.
Unreviewed.

* rendering/RenderThemeIOS.mm:
(WebCore::RenderThemeIOS::adjustButtonStyle):



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