c44d0d7d1a074cf4f65f42c3ac4e25a02413c37a
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-10-02  Ryosuke Niwa  <rniwa@webkit.org>
2
3         Get rid of Node::preDispatchEventHandler and Node::postDispatchEventHandler
4         https://bugs.webkit.org/show_bug.cgi?id=122144
5
6         Reviewed by Darin Adler.
7
8         Get rid of pre/post event dispatch callbacks preDispatchEventHandler and postDispatchEventHandler since
9         the former was only called by HTMLMediaElement and HTMLInputElement and the latter was only called by
10         HTMLInputElement.
11
12         Explicitly call HTMLMediaElement's willDispatchFullScreenChangeEvent in fullScreenChangeDelayTimerFired
13         of Document since this is the only place that fires the fullscreenchange event.
14
15         Also add an explicit call to willDispatchEvent and didDispatchClickEvent in EventDispatcher::dispatch.
16         This also allows us to stack-allocate InputElementClickHandlingState instead of having willDispatchEvent
17         heap-allocate it and pass it around as void*.
18
19         * WebCore.order:
20         * dom/Document.cpp:
21         (WebCore::Document::fullScreenChangeDelayTimerFired):
22         (WebCore::Document::dispatchFullScreenChangeOrErrorEvent):
23         * dom/Document.h:
24         * dom/EventContext.cpp:
25         * dom/EventDispatcher.cpp:
26         (WebCore::EventDispatcher::dispatch):
27         (WebCore::EventDispatcher::callWillDispatchEventOnInputElement):
28         (WebCore::EventDispatcher::dispatchEventPostProcess):
29         * dom/EventDispatcher.h:
30         * html/CheckboxInputType.cpp:
31         (WebCore::CheckboxInputType::willDispatchClick):
32         * html/CheckboxInputType.h:
33         * html/HTMLInputElement.cpp:
34         (WebCore::HTMLInputElement::willDispatchEvent):
35         (WebCore::HTMLInputElement::didDispatchClickEvent):
36         * html/HTMLInputElement.h:
37         * html/HTMLMediaElement.cpp:
38         * html/HTMLMediaElement.h:
39         (WebCore::HTMLMediaElement::willDispatchFullScreenChangeEvent): Renamed from preDispatchEventHandler.
40         * html/HTMLTextFormControlElement.h:
41         * html/InputType.cpp:
42         (WebCore::InputType::willDispatchClick):
43         * html/InputType.h:
44         * html/RadioInputType.cpp:
45         (WebCore::RadioInputType::willDispatchClick):
46         * html/RadioInputType.h:
47
48 2013-10-02  Ryosuke Niwa  <rniwa@webkit.org>
49
50         Update binding test results after r156808 for r156769.
51
52         * bindings/scripts/test/JS/JSattribute.cpp:
53         (WebCore::JSattributeOwner::finalize):
54         * bindings/scripts/test/JS/JSattribute.h:
55         (WebCore::wrapperOwner):
56         (WebCore::wrapperContext):
57         * bindings/scripts/test/JS/JSreadonly.cpp:
58         (WebCore::JSreadonlyOwner::finalize):
59         * bindings/scripts/test/JS/JSreadonly.h:
60         (WebCore::wrapperOwner):
61         (WebCore::wrapperContext):
62
63 2013-10-02  Commit Queue  <commit-queue@webkit.org>
64
65         Unreviewed, rolling out r156816.
66         http://trac.webkit.org/changeset/156816
67         https://bugs.webkit.org/show_bug.cgi?id=122259
68
69         broke 8 tests (Requested by kling on #webkit).
70
71         * html/HTMLFrameSetElement.cpp:
72         (WebCore::HTMLFrameSetElement::willRecalcStyle):
73         * html/RangeInputType.cpp:
74         (WebCore::RangeInputType::listAttributeTargetChanged):
75         * html/shadow/SliderThumbElement.cpp:
76         (WebCore::RenderSliderContainer::layout):
77         (WebCore::SliderThumbElement::setPositionFromValue):
78         (WebCore::SliderThumbElement::setPositionFromPoint):
79         (WebCore::SliderThumbElement::stopDragging):
80         * page/FrameView.cpp:
81         (WebCore::FrameView::setHeaderHeight):
82         (WebCore::FrameView::setFooterHeight):
83         (WebCore::FrameView::layout):
84         (WebCore::FrameView::setViewportConstrainedObjectsNeedLayout):
85         (WebCore::FrameView::scheduleRelayout):
86         (WebCore::FrameView::setNeedsLayout):
87         * page/Page.cpp:
88         (WebCore::Page::setPageScaleFactor):
89         * rendering/FlowThreadController.h:
90         (WebCore::FlowThreadController::setIsRenderNamedFlowThreadOrderDirty):
91         * rendering/RenderBlock.cpp:
92         (WebCore::RenderBlock::relayoutShapeDescendantIfMoved):
93         (WebCore::RenderBlock::markShapeInsideDescendantsForLayout):
94         (WebCore::RenderBlock::layoutBlock):
95         (WebCore::RenderBlock::updateBlockChildDirtyBitsBeforeLayout):
96         (WebCore::RenderBlock::dirtyForLayoutFromPercentageHeightDescendants):
97         (WebCore::RenderBlock::simplifiedNormalFlowLayout):
98         (WebCore::RenderBlock::simplifiedLayout):
99         (WebCore::RenderBlock::markFixedPositionObjectForLayoutIfNeeded):
100         (WebCore::RenderBlock::layoutPositionedObjects):
101         (WebCore::RenderBlock::markPositionedObjectsForLayout):
102         (WebCore::RenderBlock::markForPaginationRelayoutIfNeeded):
103         (WebCore::RenderBlock::removePositionedObjects):
104         (WebCore::RenderBlock::insertFloatingObject):
105         (WebCore::RenderBlock::positionNewFloats):
106         (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
107         (WebCore::RenderBlock::getClearDelta):
108         * rendering/RenderBlockFlow.cpp:
109         (WebCore::RenderBlockFlow::layoutBlock):
110         (WebCore::RenderBlockFlow::layoutBlockChild):
111         (WebCore::RenderBlockFlow::adjustPositionedBlock):
112         (WebCore::RenderBlockFlow::adjustBlockChildForPagination):
113         * rendering/RenderBlockLineLayout.cpp:
114         (WebCore::RenderBlock::layoutRunsAndFloats):
115         (WebCore::RenderBlockFlow::layoutInlineChildren):
116         (WebCore::RenderBlock::positionNewFloatOnLine):
117         * rendering/RenderBox.cpp:
118         (WebCore::RenderBox::styleWillChange):
119         (WebCore::RenderBox::styleDidChange):
120         (WebCore::RenderBox::layout):
121         (WebCore::RenderBox::positionLineBox):
122         * rendering/RenderDeprecatedFlexibleBox.cpp:
123         (WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
124         (WebCore::gatherFlexChildrenInfo):
125         (WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox):
126         (WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox):
127         (WebCore::RenderDeprecatedFlexibleBox::applyLineClamp):
128         (WebCore::RenderDeprecatedFlexibleBox::clearLineClamp):
129         * rendering/RenderElement.cpp:
130         (WebCore::RenderElement::insertChildInternal):
131         * rendering/RenderElement.h:
132         (WebCore::RenderElement::setAncestorLineBoxDirty):
133         (WebCore::RenderObject::setNeedsLayout):
134         * rendering/RenderEmbeddedObject.cpp:
135         (WebCore::RenderEmbeddedObject::layout):
136         * rendering/RenderFieldset.cpp:
137         (WebCore::RenderFieldset::layoutSpecialExcludedChild):
138         * rendering/RenderFlexibleBox.cpp:
139         (WebCore::RenderFlexibleBox::styleDidChange):
140         (WebCore::RenderFlexibleBox::layoutBlock):
141         (WebCore::RenderFlexibleBox::preferredMainAxisContentExtentForChild):
142         (WebCore::RenderFlexibleBox::prepareChildForPositionedLayout):
143         (WebCore::RenderFlexibleBox::layoutAndPlaceChildren):
144         (WebCore::RenderFlexibleBox::applyStretchAlignmentToChild):
145         * rendering/RenderFlowThread.cpp:
146         (WebCore::RenderFlowThread::invalidateRegions):
147         (WebCore::RenderFlowThread::markAutoLogicalHeightRegionsForLayout):
148         * rendering/RenderFrameBase.cpp:
149         (WebCore::RenderFrameBase::layoutWithFlattening):
150         * rendering/RenderFrameSet.cpp:
151         (WebCore::RenderFrameSet::layout):
152         (WebCore::RenderFrameSet::positionFrames):
153         (WebCore::RenderFrameSet::positionFramesWithFlattening):
154         (WebCore::RenderFrameSet::continueResizing):
155         * rendering/RenderGrid.cpp:
156         (WebCore::RenderGrid::layoutBlock):
157         (WebCore::RenderGrid::logicalContentHeightForChild):
158         (WebCore::RenderGrid::layoutGridItems):
159         * rendering/RenderHTMLCanvas.cpp:
160         (WebCore::RenderHTMLCanvas::canvasSizeChanged):
161         * rendering/RenderIFrame.cpp:
162         (WebCore::RenderIFrame::layout):
163         * rendering/RenderImage.cpp:
164         (WebCore::RenderImage::imageDimensionsChanged):
165         * rendering/RenderInline.cpp:
166         (WebCore::RenderInline::styleDidChange):
167         * rendering/RenderLayer.cpp:
168         (WebCore::RenderLayer::updateScrollbarsAfterLayout):
169         * rendering/RenderLayerModelObject.cpp:
170         (WebCore::RenderLayerModelObject::styleDidChange):
171         * rendering/RenderListMarker.cpp:
172         (WebCore::RenderListMarker::layout):
173         * rendering/RenderMarquee.cpp:
174         (WebCore::RenderMarquee::updateMarqueeStyle):
175         * rendering/RenderMedia.cpp:
176         (WebCore::RenderMedia::layout):
177         * rendering/RenderMultiColumnBlock.cpp:
178         (WebCore::RenderMultiColumnBlock::relayoutForPagination):
179         (WebCore::RenderMultiColumnBlock::layoutSpecialExcludedChild):
180         * rendering/RenderObject.cpp:
181         (WebCore::RenderObject::markContainingBlocksForLayout):
182         (WebCore::RenderObject::layout):
183         * rendering/RenderObject.h:
184         (WebCore::RenderObject::setNeedsLayoutAndPrefWidthsRecalc):
185         (WebCore::RenderObject::setNeedsPositionedMovementLayout):
186         (WebCore::RenderObject::setNormalChildNeedsLayout):
187         (WebCore::RenderObject::setPosChildNeedsLayout):
188         (WebCore::RenderObject::setNeedsSimplifiedNormalFlowLayout):
189         (WebCore::RenderObject::setChildNeedsLayout):
190         * rendering/RenderReplaced.cpp:
191         (WebCore::RenderReplaced::layout):
192         * rendering/RenderReplica.cpp:
193         (WebCore::RenderReplica::layout):
194         * rendering/RenderRubyRun.cpp:
195         (WebCore::RenderRubyRun::layoutSpecialExcludedChild):
196         * rendering/RenderScrollbar.cpp:
197         (WebCore::RenderScrollbar::updateScrollbarParts):
198         * rendering/RenderScrollbarPart.cpp:
199         (WebCore::RenderScrollbarPart::layout):
200         * rendering/RenderTable.cpp:
201         (WebCore::RenderTable::layout):
202         * rendering/RenderTable.h:
203         (WebCore::RenderTable::setNeedsSectionRecalc):
204         * rendering/RenderTableCell.cpp:
205         (WebCore::RenderTableCell::computeIntrinsicPadding):
206         (WebCore::RenderTableCell::setCellLogicalWidth):
207         (WebCore::RenderTableCell::layout):
208         * rendering/RenderTableRow.cpp:
209         (WebCore::RenderTableRow::styleDidChange):
210         (WebCore::RenderTableRow::layout):
211         * rendering/RenderTableSection.cpp:
212         (WebCore::RenderTableSection::calcRowLogicalHeight):
213         (WebCore::RenderTableSection::layout):
214         (WebCore::RenderTableSection::layoutRows):
215         (WebCore::RenderTableSection::recalcCells):
216         * rendering/RenderTextControl.cpp:
217         (WebCore::RenderTextControl::layoutSpecialExcludedChild):
218         * rendering/RenderTextControlSingleLine.cpp:
219         (WebCore::setNeedsLayoutOnAncestors):
220         (WebCore::RenderTextControlSingleLine::layout):
221         (WebCore::RenderTextControlSingleLine::styleDidChange):
222         * rendering/RenderVideo.cpp:
223         (WebCore::RenderVideo::updateIntrinsicSize):
224         * rendering/RenderView.cpp:
225         (WebCore::RenderView::layout):
226         * rendering/RenderWidget.cpp:
227         (WebCore::RenderWidget::layout):
228         * rendering/mathml/RenderMathMLBlock.cpp:
229         (WebCore::RenderMathMLBlock::computeChildrenPreferredLogicalHeights):
230         * rendering/mathml/RenderMathMLScripts.cpp:
231         (WebCore::RenderMathMLScripts::layout):
232         * rendering/svg/RenderSVGContainer.cpp:
233         (WebCore::RenderSVGContainer::layout):
234         * rendering/svg/RenderSVGGradientStop.cpp:
235         (WebCore::RenderSVGGradientStop::layout):
236         * rendering/svg/RenderSVGHiddenContainer.cpp:
237         (WebCore::RenderSVGHiddenContainer::layout):
238         * rendering/svg/RenderSVGImage.cpp:
239         (WebCore::RenderSVGImage::layout):
240         * rendering/svg/RenderSVGResource.cpp:
241         (WebCore::RenderSVGResource::markForLayoutAndParentResourceInvalidation):
242         * rendering/svg/RenderSVGResourceContainer.cpp:
243         (WebCore::RenderSVGResourceContainer::registerResource):
244         * rendering/svg/RenderSVGRoot.cpp:
245         (WebCore::RenderSVGRoot::layout):
246         * rendering/svg/RenderSVGShape.cpp:
247         (WebCore::RenderSVGShape::layout):
248         * rendering/svg/RenderSVGText.cpp:
249         (WebCore::RenderSVGText::layout):
250         * rendering/svg/SVGRenderSupport.cpp:
251         (WebCore::SVGRenderSupport::layoutChildren):
252         * svg/SVGClipPathElement.cpp:
253         (WebCore::SVGClipPathElement::svgAttributeChanged):
254         (WebCore::SVGClipPathElement::childrenChanged):
255         * svg/SVGFilterElement.cpp:
256         (WebCore::SVGFilterElement::setFilterRes):
257         (WebCore::SVGFilterElement::svgAttributeChanged):
258         (WebCore::SVGFilterElement::childrenChanged):
259         * svg/SVGGradientElement.cpp:
260         (WebCore::SVGGradientElement::svgAttributeChanged):
261         (WebCore::SVGGradientElement::childrenChanged):
262         * svg/SVGLinearGradientElement.cpp:
263         (WebCore::SVGLinearGradientElement::svgAttributeChanged):
264         * svg/SVGMarkerElement.cpp:
265         (WebCore::SVGMarkerElement::svgAttributeChanged):
266         (WebCore::SVGMarkerElement::childrenChanged):
267         * svg/SVGMaskElement.cpp:
268         (WebCore::SVGMaskElement::svgAttributeChanged):
269         (WebCore::SVGMaskElement::childrenChanged):
270         * svg/SVGPatternElement.cpp:
271         (WebCore::SVGPatternElement::svgAttributeChanged):
272         (WebCore::SVGPatternElement::childrenChanged):
273         * svg/SVGRadialGradientElement.cpp:
274         (WebCore::SVGRadialGradientElement::svgAttributeChanged):
275         * svg/SVGSVGElement.cpp:
276         (WebCore::SVGSVGElement::updateCurrentTranslate):
277
278 2013-10-02  Andreas Kling  <akling@apple.com>
279
280         Keep SVGElementRareData in an SVGElement member instead of a hashmap.
281         <https://webkit.org/b/122253>
282
283         Reviewed by Antti Koivisto.
284
285         Free up another Node flag by moving SVGElement's SVG-specific rare data
286         to a member variable instead of tracking them in a hashmap on the side.
287
288         This grows SVGElement by one pointer, but I will make up for this in
289         subsequent patches.
290
291 2013-10-02  Antti Koivisto  <antti@apple.com>
292
293         Move setting of some layout bits to RenderElement
294         https://bugs.webkit.org/show_bug.cgi?id=122256
295
296         Reviewed by Andreas Kling.
297         
298         These bits never apply to RenderText nodes:
299         
300         normalChildNeedsLayout
301         posChildNeedsLayout
302         needsSimplifiedNormalFlowLayout
303         normalChildNeedsLayout
304         positionedMovementLayout
305
306         The code for setting them can be moved to RenderElement.
307
308         Also separated the code paths for setting and clearing the bits and uninlined
309         everything that is not massively popular.
310
311 2013-10-02  Andreas Kling  <akling@apple.com>
312
313         CTTE: Drag events are only dispatched on Elements.
314         <https://webkit.org/b/122250>
315
316         Reviewed by Antti Koivisto.
317
318         We never dispatch drag events on non-Element nodes so tighten up the
319         code to operate on Elements instead.
320
321 2013-10-02  Hans Muller  <hmuller@adobe.com>
322
323         [CSS Shapes] Implement the shape-image-threshold property
324         https://bugs.webkit.org/show_bug.cgi?id=122216
325
326         Reviewed by Andreas Kling.
327
328         Added support for the CSS shape-image-threshold property. This change
329         just enables parsing the property, it's not connected to the
330         Shapes code yet.
331
332         The number valued shape-image-threshold property is defined here:
333         http://dev.w3.org/csswg/css-shapes-1/#shape-image-threshold-property
334         Its computed value is clamped to the range [0, 1].
335
336         Test: fast/shapes/parsing/parsing-shape-image-threshold.html
337
338         * css/CSSComputedStyleDeclaration.cpp:
339         (WebCore::ComputedStyleExtractor::propertyValue):
340         * css/CSSParser.cpp:
341         (WebCore::CSSParser::parseValue):
342         * css/CSSPropertyNames.in:
343         * css/DeprecatedStyleBuilder.cpp:
344         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
345         * css/StyleResolver.cpp:
346         (WebCore::StyleResolver::applyProperty):
347         * rendering/style/RenderStyle.h:
348         * rendering/style/StyleRareNonInheritedData.cpp:
349         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
350         (WebCore::StyleRareNonInheritedData::operator==):
351         * rendering/style/StyleRareNonInheritedData.h:
352
353 2013-10-02  Andreas Kling  <akling@apple.com>
354
355         Remove Qt-specific code in WebCore/plugins.
356         <https://webkit.org/b/122247>
357
358         Reviewed by Anders Carlsson.
359
360         Purge PLATFORM(QT) blocks and Qt-specific files.
361
362 2013-10-02  Eric Carlson  <eric.carlson@apple.com>
363
364         IDL parser should remove a leading "_" from identifier names
365         https://bugs.webkit.org/show_bug.cgi?id=122239
366
367         Reviewed by Jer Noble.
368
369         No new tests, updated bindings tests and results.
370
371         * bindings/scripts/IDLParser.pm:
372         (identifierRemoveNullablePrefix): Remove leading "_".
373         (parseInterface): Call identifierRemoveNullablePrefix.
374         (parseException): Ditto.
375         (parseEnum): Ditto.
376         (parseConst): Ditto.
377         (parseAttributeRest): Ditto.
378         (parseOperationRest): Ditto.
379         (parseOptionalOrRequiredArgument): Ditto.
380         (parseExceptionField): Ditto.
381         (parseNonAnyType): Ditto.
382
383         Update tests and results.
384         * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
385         * bindings/scripts/test/CPP/WebDOMTestObj.h:
386         * bindings/scripts/test/CPP/WebDOMattribute.cpp: Added.
387         * bindings/scripts/test/CPP/WebDOMattribute.h: Added.
388         * bindings/scripts/test/CPP/WebDOMreadonly.cpp: Added.
389         * bindings/scripts/test/CPP/WebDOMreadonly.h: Added.
390         * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
391         * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
392         * bindings/scripts/test/GObject/WebKitDOMTestObj.symbols:
393         * bindings/scripts/test/GObject/WebKitDOMattribute.cpp: Added.
394         * bindings/scripts/test/GObject/WebKitDOMattribute.h: Added.
395         * bindings/scripts/test/GObject/WebKitDOMattribute.symbols: Added.
396         * bindings/scripts/test/GObject/WebKitDOMattributePrivate.h: Added.
397         * bindings/scripts/test/GObject/WebKitDOMreadonly.cpp: Added.
398         * bindings/scripts/test/GObject/WebKitDOMreadonly.h: Added.
399         * bindings/scripts/test/GObject/WebKitDOMreadonly.symbols: Added.
400         * bindings/scripts/test/GObject/WebKitDOMreadonlyPrivate.h: Added.
401         * bindings/scripts/test/JS/JSTestObj.cpp:
402         * bindings/scripts/test/JS/JSTestObj.h:
403         * bindings/scripts/test/JS/JSattribute.cpp: Added.
404         * bindings/scripts/test/JS/JSattribute.h: Added.
405         * bindings/scripts/test/JS/JSreadonly.cpp: Added.
406         * bindings/scripts/test/JS/JSreadonly.h: Added.
407         * bindings/scripts/test/ObjC/DOMTestObj.h:
408         * bindings/scripts/test/ObjC/DOMTestObj.mm:
409         * bindings/scripts/test/ObjC/DOMattribute.h: Added.
410         * bindings/scripts/test/ObjC/DOMattribute.mm: Added.
411         * bindings/scripts/test/ObjC/DOMattributeInternal.h: Added.
412         * bindings/scripts/test/ObjC/DOMreadonly.h: Added.
413         * bindings/scripts/test/ObjC/DOMreadonly.mm: Added.
414         * bindings/scripts/test/ObjC/DOMreadonlyInternal.h: Added.
415         * bindings/scripts/test/TestException.idl:
416         * bindings/scripts/test/TestInterface.idl:
417         * bindings/scripts/test/TestObj.idl:
418
419 2013-10-02  Andreas Kling  <akling@apple.com>
420
421         Remove Qt-specific code in WebCore/{bindings,bridge,loader,icon,testing}.
422         <https://webkit.org/b/122242>
423
424         Reviewed by Anders Carlsson.
425
426         Purge PLATFORM(QT) blocks and Qt-specific files.
427
428 2013-10-02  Andreas Kling  <akling@apple.com>
429
430         Remove Qt-specific code in WebCore/{page,accessibility}.
431         <https://webkit.org/b/122222>
432
433         Reviewed by Anders Carlsson.
434
435         Purge PLATFORM(QT) blocks and FooBarQt.* files.
436
437 2013-10-02  Zoltan Horvath  <zoltan@webkit.org>
438
439         [CSS Shapes] Move ShapeInsideInfo::updateSegmentsForLine implementations into the cpp
440         https://bugs.webkit.org/show_bug.cgi?id=122236
441
442         Reviewed by Oliver Hunt.
443
444         There is no reason for updateSegmentsForLine methods to be inline. I moved them to the cpp.
445
446         No new tests, no behavior change.
447
448         * rendering/shapes/ShapeInsideInfo.cpp:
449         (WebCore::ShapeInsideInfo::updateSegmentsForLine):
450         * rendering/shapes/ShapeInsideInfo.h:
451
452 2013-10-02  Andreas Kling  <akling@apple.com>
453
454         Remove Qt from WebCore/platform.
455         <https://webkit.org/b/122228>
456
457         Reviewed by Anders Carlsson.
458
459         Purge PLATFORM(QT) blocks and FooBarQt.* files.
460
461 2013-10-02  Tim Horton  <timothy_horton@apple.com>
462
463         [mac] Stop using DrawingAreaImpl on PLATFORM(MAC) 
464         https://bugs.webkit.org/show_bug.cgi?id=121859
465         <rdar://problem/15069359>
466
467         Reviewed by Anders Carlsson.
468
469         Test: platform/mac-wk2/tiled-drawing/window-server-snapshots-work.html
470
471         * page/FrameView.cpp:
472         (WebCore::FrameView::addTrackedRepaintRect):
473         (WebCore::FrameView::repaintContentRectangle):
474         * page/FrameView.h:
475         Factor out the coordinate conversion and appending of new repaint rects on FrameView.
476
477         * platform/graphics/GraphicsLayer.cpp:
478         (WebCore::GraphicsLayer::dumpProperties):
479         * rendering/RenderLayerBacking.cpp:
480         (WebCore::RenderLayerBacking::shouldDumpPropertyForLayer):
481         Don't dump repaint rects on the root tile cache, they'll be included at the top,
482         where FrameView's repaints are normally included.
483
484         * rendering/RenderLayerBacking.cpp:
485         (WebCore::RenderLayerBacking::setContentsNeedDisplay):
486         (WebCore::RenderLayerBacking::setContentsNeedDisplayInRect):
487         Push the root tile cache's tracked repaint rects to FrameView instead.
488
489 2013-10-02  Benjamin Poulain  <benjamin@webkit.org>
490
491         Clean up more <style scoped> from style resolution
492         https://bugs.webkit.org/show_bug.cgi?id=122188
493
494         Reviewed by Darin Adler.
495
496         * css/ElementRuleCollector.cpp:
497         (WebCore::MatchRequest::MatchRequest):
498         (WebCore::ElementRuleCollector::collectMatchingRules):
499         (WebCore::ElementRuleCollector::collectMatchingRulesForRegion):
500         (WebCore::ElementRuleCollector::matchAuthorRules):
501         (WebCore::ElementRuleCollector::ruleMatches):
502         (WebCore::ElementRuleCollector::doCollectMatchingRulesForList):
503         * css/ElementRuleCollector.h:
504         * css/SelectorChecker.cpp:
505         (WebCore::SelectorChecker::matchRecursively):
506         * css/SelectorChecker.h:
507         (WebCore::SelectorChecker::SelectorCheckingContext::SelectorCheckingContext):
508         * dom/SelectorQuery.cpp:
509         (WebCore::SelectorDataList::selectorMatches):
510
511 2013-10-02  Anders Carlsson  <andersca@apple.com>
512
513         Update bindings test results.
514
515         * bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
516         (WebCore::JSTestActiveDOMObjectOwner::finalize):
517         * bindings/scripts/test/JS/JSTestActiveDOMObject.h:
518         (WebCore::wrapperOwner):
519         (WebCore::wrapperContext):
520         * bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
521         (WebCore::JSTestCustomNamedGetterOwner::finalize):
522         * bindings/scripts/test/JS/JSTestCustomNamedGetter.h:
523         (WebCore::wrapperOwner):
524         (WebCore::wrapperContext):
525         * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
526         (WebCore::JSTestEventConstructorOwner::finalize):
527         * bindings/scripts/test/JS/JSTestEventConstructor.h:
528         (WebCore::wrapperOwner):
529         (WebCore::wrapperContext):
530         * bindings/scripts/test/JS/JSTestEventTarget.cpp:
531         (WebCore::JSTestEventTargetOwner::finalize):
532         * bindings/scripts/test/JS/JSTestEventTarget.h:
533         (WebCore::wrapperOwner):
534         (WebCore::wrapperContext):
535         * bindings/scripts/test/JS/JSTestException.cpp:
536         (WebCore::JSTestExceptionOwner::finalize):
537         * bindings/scripts/test/JS/JSTestException.h:
538         (WebCore::wrapperOwner):
539         (WebCore::wrapperContext):
540         * bindings/scripts/test/JS/JSTestInterface.cpp:
541         (WebCore::JSTestInterfaceOwner::finalize):
542         * bindings/scripts/test/JS/JSTestInterface.h:
543         (WebCore::wrapperOwner):
544         (WebCore::wrapperContext):
545         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
546         (WebCore::JSTestMediaQueryListListenerOwner::finalize):
547         * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
548         (WebCore::wrapperOwner):
549         (WebCore::wrapperContext):
550         * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
551         (WebCore::JSTestNamedConstructorOwner::finalize):
552         * bindings/scripts/test/JS/JSTestNamedConstructor.h:
553         (WebCore::wrapperOwner):
554         (WebCore::wrapperContext):
555         * bindings/scripts/test/JS/JSTestObj.cpp:
556         (WebCore::JSTestObjOwner::finalize):
557         * bindings/scripts/test/JS/JSTestObj.h:
558         (WebCore::wrapperOwner):
559         (WebCore::wrapperContext):
560         * bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
561         (WebCore::JSTestOverloadedConstructorsOwner::finalize):
562         * bindings/scripts/test/JS/JSTestOverloadedConstructors.h:
563         (WebCore::wrapperOwner):
564         (WebCore::wrapperContext):
565         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
566         (WebCore::JSTestSerializedScriptValueInterfaceOwner::finalize):
567         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
568         (WebCore::wrapperOwner):
569         (WebCore::wrapperContext):
570         * bindings/scripts/test/JS/JSTestTypedefs.cpp:
571         (WebCore::JSTestTypedefsOwner::finalize):
572         * bindings/scripts/test/JS/JSTestTypedefs.h:
573         (WebCore::wrapperOwner):
574         (WebCore::wrapperContext):
575
576 2013-10-02  Andreas Kling  <akling@apple.com>
577
578         Remove Qt-specific code in WebCore/{rendering,editing,history}.
579         <https://webkit.org/b/122220>
580
581         Reviewed by Anders Carlsson.
582
583         Purge PLATFORM(QT) blocks and FooBarQt.* files.
584
585 2013-10-02  Andreas Kling  <akling@apple.com>
586
587         Remove Qt-specific code in common WebCore/{html,dom} files.
588         <https://webkit.org/b/122219>
589
590         Reviewed by Anders Carlsson.
591
592         Purge PLATFORM(QT) blocks.
593
594 2013-10-01  Sam Weinig  <sam@webkit.org>
595
596         CTTE: DOMWrapperWorlds should be passed around by reference
597         https://bugs.webkit.org/show_bug.cgi?id=122206
598
599         Reviewed by Andreas Kling.
600
601         * bindings/js/DOMWrapperWorld.cpp:
602         (WebCore::DOMWrapperWorld::DOMWrapperWorld):
603         (WebCore::DOMWrapperWorld::~DOMWrapperWorld):
604         (WebCore::DOMWrapperWorld::clearWrappers):
605         (WebCore::normalWorld):
606         (WebCore::mainThreadNormalWorld):
607         * bindings/js/DOMWrapperWorld.h:
608         (WebCore::debuggerWorld):
609         (WebCore::pluginWorld):
610         (WebCore::currentWorld):
611         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
612         (WebCore::JSCSSStyleDeclaration::getPropertyCSSValue):
613         * bindings/js/JSCSSValueCustom.cpp:
614         (WebCore::JSCSSValueOwner::finalize):
615         * bindings/js/JSDOMBinding.h:
616         (WebCore::wrapperOwner):
617         (WebCore::wrapperContext):
618         (WebCore::getInlineCachedWrapper):
619         (WebCore::setInlineCachedWrapper):
620         (WebCore::clearInlineCachedWrapper):
621         (WebCore::getCachedWrapper):
622         (WebCore::cacheWrapper):
623         (WebCore::uncacheWrapper):
624         (WebCore::jsStringWithCache):
625         * bindings/js/JSDOMGlobalObject.cpp:
626         (WebCore::JSDOMGlobalObject::JSDOMGlobalObject):
627         (WebCore::toJSDOMGlobalObject):
628         * bindings/js/JSDOMGlobalObject.h:
629         (WebCore::JSDOMGlobalObject::world):
630         * bindings/js/JSDOMWindowBase.cpp:
631         (WebCore::JSDOMWindowBase::JSDOMWindowBase):
632         (WebCore::toJSDOMWindow):
633         * bindings/js/JSDOMWindowBase.h:
634         * bindings/js/JSDOMWindowShell.cpp:
635         (WebCore::JSDOMWindowShell::JSDOMWindowShell):
636         (WebCore::JSDOMWindowShell::setWindow):
637         (WebCore::toJSDOMWindowShell):
638         * bindings/js/JSDOMWindowShell.h:
639         (WebCore::JSDOMWindowShell::create):
640         (WebCore::JSDOMWindowShell::world):
641         * bindings/js/JSErrorHandler.cpp:
642         (WebCore::JSErrorHandler::JSErrorHandler):
643         * bindings/js/JSErrorHandler.h:
644         (WebCore::JSErrorHandler::create):
645         * bindings/js/JSEventListener.cpp:
646         (WebCore::JSEventListener::JSEventListener):
647         (WebCore::JSEventListener::handleEvent):
648         * bindings/js/JSEventListener.h:
649         (WebCore::JSEventListener::create):
650         (WebCore::JSEventListener::isolatedWorld):
651         * bindings/js/JSInjectedScriptHostCustom.cpp:
652         (WebCore::getJSListenerFunctions):
653         * bindings/js/JSLazyEventListener.cpp:
654         (WebCore::JSLazyEventListener::JSLazyEventListener):
655         * bindings/js/JSLazyEventListener.h:
656         * bindings/js/JSMutationCallback.cpp:
657         (WebCore::JSMutationCallback::JSMutationCallback):
658         (WebCore::JSMutationCallback::call):
659         * bindings/js/JSNodeCustom.cpp:
660         (WebCore::JSNodeOwner::finalize):
661         * bindings/js/JSPluginElementFunctions.h:
662         (WebCore::pluginElementCustomGetOwnPropertySlot):
663         * bindings/js/JSWorkerGlobalScopeBase.cpp:
664         (WebCore::JSWorkerGlobalScopeBase::JSWorkerGlobalScopeBase):
665         * bindings/js/ScheduledAction.cpp:
666         (WebCore::ScheduledAction::create):
667         (WebCore::ScheduledAction::ScheduledAction):
668         (WebCore::ScheduledAction::execute):
669         * bindings/js/ScheduledAction.h:
670         (WebCore::ScheduledAction::ScheduledAction):
671         * bindings/js/ScriptCachedFrameData.cpp:
672         (WebCore::ScriptCachedFrameData::restore):
673         * bindings/js/ScriptCachedFrameData.h:
674         * bindings/js/ScriptController.cpp:
675         (WebCore::ScriptController::~ScriptController):
676         (WebCore::ScriptController::destroyWindowShell):
677         (WebCore::ScriptController::createWindowShell):
678         (WebCore::ScriptController::evaluateInWorld):
679         (WebCore::ScriptController::getAllWorlds):
680         (WebCore::ScriptController::initScript):
681         (WebCore::ScriptController::executeScriptInWorld):
682         (WebCore::ScriptController::shouldBypassMainWorldContentSecurityPolicy):
683         * bindings/js/ScriptController.h:
684         (WebCore::ScriptController::windowShell):
685         (WebCore::ScriptController::existingWindowShell):
686         (WebCore::ScriptController::globalObject):
687         * bindings/js/ScriptDebugServer.cpp:
688         (WebCore::ScriptDebugServer::isContentScript):
689         * bindings/js/ScriptState.cpp:
690         (WebCore::execStateFromNode):
691         (WebCore::execStateFromPage):
692         * bindings/js/ScriptState.h:
693         * bindings/js/SerializedScriptValue.cpp:
694         (WebCore::SerializedScriptValue::transferArrayBuffers):
695         * bindings/js/WebCoreJSClientData.h:
696         (WebCore::WebCoreJSClientData::WebCoreJSClientData):
697         (WebCore::WebCoreJSClientData::normalWorld):
698         (WebCore::WebCoreJSClientData::getAllWorlds):
699         (WebCore::WebCoreJSClientData::rememberWorld):
700         (WebCore::WebCoreJSClientData::forgetWorld):
701         * bindings/js/WebCoreTypedArrayController.cpp:
702         (WebCore::WebCoreTypedArrayController::JSArrayBufferOwner::finalize):
703         * bindings/scripts/CodeGeneratorJS.pm:
704         (GenerateHeader):
705         (GenerateImplementation):
706         * dom/Document.cpp:
707         (WebCore::Document::ensurePlugInsInjectedScript):
708         * dom/Document.h:
709         * dom/DocumentStyleSheetCollection.cpp:
710         * html/HTMLMediaElement.cpp:
711         (WebCore::HTMLMediaElement::ensureIsolatedWorld):
712         (WebCore::HTMLMediaElement::ensureMediaControlsInjectedScript):
713         (WebCore::HTMLMediaElement::didAddUserAgentShadowRoot):
714         * html/HTMLMediaElement.h:
715         * html/HTMLPlugInImageElement.cpp:
716         (WebCore::plugInImageElementIsolatedWorld):
717         (WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot):
718         * inspector/InspectorAgent.cpp:
719         (WebCore::InspectorAgent::didClearWindowObjectInWorld):
720         * inspector/InspectorAgent.h:
721         * inspector/InspectorController.cpp:
722         (WebCore::InspectorController::didClearWindowObjectInWorld):
723         * inspector/InspectorController.h:
724         * inspector/InspectorDOMAgent.cpp:
725         (WebCore::InspectorDOMAgent::buildObjectForEventListener):
726         * inspector/InspectorInstrumentation.cpp:
727         (WebCore::InspectorInstrumentation::didClearWindowObjectInWorldImpl):
728         * inspector/InspectorInstrumentation.h:
729         (WebCore::InspectorInstrumentation::didClearWindowObjectInWorld):
730         * inspector/InspectorPageAgent.cpp:
731         (WebCore::InspectorPageAgent::didClearWindowObjectInWorld):
732         * inspector/InspectorPageAgent.h:
733         * loader/EmptyClients.h:
734         (WebCore::EmptyFrameLoaderClient::dispatchDidClearWindowObjectInWorld):
735         * loader/FrameLoader.cpp:
736         (WebCore::FrameLoader::dispatchDidClearWindowObjectsInAllWorlds):
737         (WebCore::FrameLoader::dispatchDidClearWindowObjectInWorld):
738         (WebCore::FrameLoader::dispatchGlobalObjectAvailableInAllWorlds):
739         * loader/FrameLoader.h:
740         * loader/FrameLoaderClient.h:
741         (WebCore::FrameLoaderClient::dispatchGlobalObjectAvailable):
742         * page/CaptionUserPreferencesMediaAF.cpp:
743         * page/DOMWindowExtension.cpp:
744         (WebCore::DOMWindowExtension::DOMWindowExtension):
745         * page/DOMWindowExtension.h:
746         (WebCore::DOMWindowExtension::create):
747         (WebCore::DOMWindowExtension::world):
748         * page/Frame.cpp:
749         (WebCore::Frame::injectUserScripts):
750         (WebCore::Frame::injectUserScriptsForWorld):
751         * page/Frame.h:
752         * page/PageGroup.cpp:
753         (WebCore::PageGroup::addUserScriptToWorld):
754         (WebCore::PageGroup::addUserStyleSheetToWorld):
755         (WebCore::PageGroup::removeUserScriptFromWorld):
756         (WebCore::PageGroup::removeUserStyleSheetFromWorld):
757         (WebCore::PageGroup::removeUserScriptsFromWorld):
758         (WebCore::PageGroup::removeUserStyleSheetsFromWorld):
759         * page/PageGroup.h:
760
761 2013-10-02  Zan Dobersek  <zdobersek@igalia.com>
762
763         Unreviewed, removing references to the recently removed Modules/filesystem directory.
764
765         * GNUmakefile.am:
766
767 2013-10-02  Mihai Maerean  <mmaerean@adobe.com>
768
769         [CSS Regions] Activate all regions to have layers, as CSS Regions create a new stacking context
770         https://bugs.webkit.org/show_bug.cgi?id=121828
771
772         Reviewed by Darin Adler.
773
774         The CSS Regions specification says "CSS Regions create a new stacking context." (http://dev.w3.org/csswg/css-regions/).
775
776         Divs that create stacking contexts are painted after the divs that don't create stacking contexts.
777
778         Test: fast/regions/layers/stacking-context-paint-order.html: While the existing region-sibling-paint-order.html
779         test verifies that regions paint correctly when the next sibling also creates a stacking context, this new test
780         verifies that regions paint correctly when the next sibling doesn't create a stacking context.
781
782         * rendering/RenderBlock.cpp: Remove code that is not needed now that all regions have layers.
783         * rendering/RenderBlock.h: Remove code that is not needed now that all regions have layers.
784         * rendering/RenderBox.cpp: Remove code that is not needed now that all regions have layers.
785         * rendering/RenderBox.h: Remove code that is not needed now that all regions have layers.
786         * rendering/RenderFlowThread.cpp:
787         (WebCore::RenderFlowThread::updateLayerToRegionMappings): Remove code that is not needed now that all regions have layers.
788         * rendering/RenderRegion.cpp:
789         (WebCore::RenderRegion::RenderRegion):
790         * rendering/RenderRegion.h:
791         (WebCore::RenderRegion::requiresLayer): Always. CSS Regions create Stacking Contexts. RenderMultiColumnSet
792         implements its own behaviour so the behaviour of each class is contained within its own files.
793         * rendering/RenderMultiColumnSet.h:
794         (WebCore::RenderMultiColumnSet::requiresLayer): RenderMultiColumnSet derives from RenderRegion, but unlike the
795         CSS Regions specification, the Multi-Columns CSS specification states that the column boxes do not establish new
796         Stacking Contexts.
797         * rendering/RenderTreeAsText.cpp:
798         (WebCore::writeRenderRegionList): There's no need to output " hasLayer" since all regions now have layers.
799
800 2013-10-02  Renata Hodovan  <reni@webkit.org>
801
802         HTML listbox is not resized horizontally when zooming
803         https://bugs.webkit.org/show_bug.cgi?id=20445
804
805         Reviewed by Darin Adler.
806
807         If any style changes happens on a HTMLSelectElement, we need to set the m_optionsChanged property
808         of its renderer (RenderListBox) otherwise its size won't follow the changed content.
809
810         Test: fast/transforms/listbox-zoom.html
811
812         * html/HTMLSelectElement.cpp:
813         (WebCore::HTMLSelectElement::didRecalcStyle):
814         * html/HTMLSelectElement.h:
815
816 2013-10-01  Santosh Mahto  <santosh.ma@samsung.com>
817
818         contenteditable justify commands applied to next paragraph as well
819         https://bugs.webkit.org/show_bug.cgi?id=90611
820
821         Reviewed by Ryosuke Niwa.
822
823         When the selection extends from first paragraph to start of next
824         paragraph then Justify command is applied to both the paragraph,
825         Instead it should be applied only to first paragraph.
826
827         Co-author: Sudarshan C P <sudarshan.cp@samsung.com>
828
829         Test: editing/execCommand/contenteditable-justify-next-paragraph.html
830
831         * editing/ApplyStyleCommand.cpp:
832         (WebCore::ApplyStyleCommand::applyBlockStyle):
833         Adjusted visibleEnd to previous position.
834
835 2013-10-01  Andreas Kling  <akling@apple.com>
836
837         Move mouse event dispatch from Node to Element.
838         <https://webkit.org/b/122203>
839
840         Reviewed by Anders Carlsson.
841
842         We never dispatch mouse events on text or other non-element nodes,
843         so move the related logic to using Element.
844
845         Node::dispatchMouseEvent() moves to Element. I also changed the
846         relatedTarget argument to be an Element* since the related target
847         is never a Node either.
848
849         Most of this patch is *Node -> *Element renames in EventHandler.
850
851 2013-10-01  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
852
853         Generate toCSSFooValue for CSS child values
854         https://bugs.webkit.org/show_bug.cgi?id=122157
855
856         Reviewed by Darin Adler.
857
858         As a step to cleanup static_cast<> for CSSFooValue, this patch adds toCSSFooValue()
859         for "CSSAspectRatioValue, CSSBorderImageSliceValue, CSSFunctionValue, CSSInheritedValue,
860         CSSValueList, CSSVariableValue, and CSSFontFaceSrcValue".
861
862         To use CSS_VALUE_TYPE_CASTS, isFunctionValue(), isFontFaceSrcValue() are added to
863         generate toCSSFunctionValue, toCSSFontFaceSrcValue().
864
865         No new tests, no behavior changes.
866
867         * css/CSSAspectRatioValue.h:
868         * css/CSSBorderImageSliceValue.h:
869         * css/CSSFontFaceSrcValue.h:
870         * css/CSSFontSelector.cpp:
871         (WebCore::CSSFontSelector::addFontFaceRule):
872         * css/CSSFunctionValue.h:
873         * css/CSSInheritedValue.h:
874         * css/CSSParser.cpp:
875         (WebCore::filterProperties):
876         (WebCore::CSSParser::addFillValue):
877         (WebCore::CSSParser::addAnimationValue):
878         (WebCore::CSSParser::createFontFaceRule):
879         * css/CSSProperty.cpp:
880         (WebCore::CSSProperty::wrapValueInCommaSeparatedList):
881         * css/CSSToStyleMap.cpp:
882         (WebCore::CSSToStyleMap::mapNinePieceImage):
883         (WebCore::CSSToStyleMap::mapNinePieceImageSlice):
884         * css/CSSValue.cpp:
885         (WebCore::CSSValue::destroy):
886         * css/CSSValue.h:
887         (WebCore::CSSValue::isFunctionValue):
888         (WebCore::CSSValue::isFontFaceSrcValue):
889         * css/CSSValueList.h:
890         (WebCore::CSSValueListInspector::CSSValueListInspector):
891         * css/CSSVariableValue.h:
892         * css/DeprecatedStyleBuilder.cpp:
893         (WebCore::ApplyPropertyFillLayer::applyValue):
894         (WebCore::ApplyPropertyFontVariantLigatures::applyValue):
895         (WebCore::ApplyPropertyCounter::applyValue):
896         (WebCore::ApplyPropertyCursor::applyValue):
897         (WebCore::ApplyPropertyTextEmphasisStyle::applyValue):
898         (WebCore::ApplyPropertyAspectRatio::applyValue):
899         (WebCore::ApplyPropertyImageResolution::applyValue):
900         (WebCore::ApplyPropertyTextIndent::applyValue):
901         * css/MediaQueryEvaluator.cpp:
902         (WebCore::compareAspectRatioValue):
903         * css/SVGCSSStyleSelector.cpp:
904         (WebCore::StyleResolver::applySVGProperty):
905         * css/StylePropertySet.cpp:
906         (WebCore::StylePropertySet::getLayeredShorthandValue):
907         * css/StyleResolver.cpp:
908         (WebCore::createGridPosition):
909         (WebCore::StyleResolver::applyProperty):
910         (WebCore::StyleResolver::parseCustomFilterParameter):
911         (WebCore::StyleResolver::createCustomFilterOperationWithInlineSyntax):
912         * editing/EditingStyle.cpp:
913         (WebCore::HTMLTextDecorationEquivalent::valueIsPresentInStyle):
914         (WebCore::EditingStyle::mergeStyle):
915         (WebCore::StyleChange::extractTextStyles):
916         (WebCore::diffTextDecorations):
917         * editing/EditorCommand.cpp:
918         (WebCore::executeToggleStyleInList):
919         * svg/SVGFontFaceElement.cpp:
920         (WebCore::SVGFontFaceElement::rebuildFontFace):
921
922 2013-10-01  Sam Weinig  <sam@webkit.org>
923
924         Convert PageGroup to using std::unique_ptr
925         https://bugs.webkit.org/show_bug.cgi?id=122184
926
927         Reviewed by Anders Carlsson.
928
929         * page/CaptionUserPreferences.cpp:
930         * page/CaptionUserPreferences.h:
931         * page/CaptionUserPreferencesMediaAF.cpp:
932         * page/CaptionUserPreferencesMediaAF.h:
933         * page/Frame.cpp:
934         * page/GroupSettings.h:
935         * page/Page.cpp:
936         * page/PageGroup.cpp:
937         * page/PageGroup.h:
938         * page/UserScriptTypes.h:
939         * page/UserStyleSheetTypes.h:
940         * workers/DedicatedWorkerGlobalScope.h:
941         * workers/DedicatedWorkerThread.cpp:
942         * workers/DedicatedWorkerThread.h:
943         * workers/SharedWorkerGlobalScope.cpp:
944         * workers/SharedWorkerGlobalScope.h:
945         * workers/SharedWorkerThread.cpp:
946         * workers/SharedWorkerThread.h:
947         * workers/WorkerGlobalScope.cpp:
948         * workers/WorkerGlobalScope.h:
949         * workers/WorkerThread.cpp:
950         * workers/WorkerThread.h:
951
952 2013-10-01  Tim Horton  <timothy_horton@apple.com>
953
954         Tiled drawing GraphicsLayer tree dumps should match non-tiled more closely
955         https://bugs.webkit.org/show_bug.cgi?id=122172
956
957         Reviewed by Anders Carlsson.
958
959         No new tests, but will be tested by all of the compositing tests after bug 121859 lands.
960
961         * platform/graphics/GraphicsLayer.cpp:
962         (WebCore::GraphicsLayer::dumpProperties):
963         Only dump drawsContent and backgroundColor if the client says we should.
964         Provide the ability to skip over a layer in the dump, making it appear as if that layer's
965         children are direct decendents of that layer's parent.
966
967         * platform/graphics/GraphicsLayerClient.h:
968         (WebCore::GraphicsLayerClient::shouldSkipLayerInDump): Added.
969         (WebCore::GraphicsLayerClient::shouldDumpPropertyForLayer): Added.
970
971         * rendering/RenderLayerBacking.cpp:
972         (WebCore::RenderLayerBacking::shouldSkipLayerInDump):
973         Added. Always skip the root tile cache's flattening layer, as it is
974         uninteresting and does not exist in the non-tiled-drawing compositing case.
975
976         (WebCore::RenderLayerBacking::shouldDumpPropertyForLayer):
977         Don't dump drawsContent on the root tile cache.
978         Don't dump backgroundcolor on the root tile cache, unless it is non-white.
979         This may require some WebKit2-specific rebaselines, but they will occur later.
980
981         * rendering/RenderLayerBacking.h:
982         * rendering/RenderLayerCompositor.cpp:
983         (WebCore::RenderLayerCompositor::updateBacking):
984         (WebCore::RenderLayerCompositor::layerTreeAsText):
985         If the root tile cache has no composited children, don't dump anything,
986         to match the traditional case where we drop out of compositing when
987         we have no reason to be compositing. Except, do dump the root tile cache's
988         layers if we're specifically being asked to dump tile caches.
989
990 2013-10-01  Joone Hur  <joone.hur@intel.com>
991
992         Quirksmode: CSS1: WebKit fails dynamic :first-letter test
993         https://bugs.webkit.org/show_bug.cgi?id=15602
994
995         Reviewed by David Hyatt.
996
997         CSS first-letter property does not work properly when the first letter is changed 
998         by DOM scripting. 
999         This patch allows to check if the existing first-letter is no longer the
1000         first-letter. In this case, it deletes the old first-letter object and creates 
1001         a new one. For the remaining text, the oldRemainingText object is used 
1002         again for containing the full text(first letter + remaining text). 
1003
1004         Test: fast/css/first-letter-block-change.html
1005
1006         * rendering/RenderBlock.cpp:
1007         (WebCore::RenderBlock::updateFirstLetter):
1008
1009 2013-10-01  Antti Koivisto  <antti@apple.com>
1010
1011         Make tests for renderer base types non-virtual
1012         https://bugs.webkit.org/show_bug.cgi?id=122185
1013
1014         Reviewed by Dave Hyatt.
1015
1016         Make isRenderFoo() functions for commonly tested base types use bit flags instead of virtual calls.
1017         This is faster and we have space in RenderElement.
1018         
1019         These bits are not mutully exclusive. For testing leaf types we can add an enum.
1020
1021 2013-10-01  Ryosuke Niwa  <rniwa@webkit.org>
1022
1023         Cleanup Document::dispatchFullScreenChangeOrErrorEvent
1024         https://bugs.webkit.org/show_bug.cgi?id=122143
1025
1026         Reviewed by Antti Koivisto.
1027
1028         Reduce the code duplication by extracting dispatchFullScreenChangeOrErrorEvent.
1029
1030         * dom/Document.cpp:
1031         (WebCore::Document::fullScreenChangeDelayTimerFired):
1032         (WebCore::Document::dispatchFullScreenChangeOrErrorEvent): Extracted.
1033         * dom/Document.h:
1034
1035 2013-10-01  Brent Fulgham  <bfulgham@apple.com>
1036
1037         [Win] Implement the media controls in JavaScript 
1038         https://bugs.webkit.org/show_bug.cgi?id=122166
1039
1040         Reviewed by Jer Noble.
1041
1042         * DerivedSources.make: Uncomment feature flag test.
1043         * WebCore.vcxproj/WebCore.vcxproj: Add new media control implementation files.
1044         Also cleaned up some misplaced files in the project tree.
1045         * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
1046         * WebCore.vcxproj/WebCoreCommon.props: Add missing include path for the
1047         mediacontrols path.
1048         * WebCore.vcxproj/copyForwardingHeaders.cmd: Add Modules/mediacontrols to copied headers.
1049         * rendering/RenderThemeWin.cpp: Add missing include for UserAgentScripts.
1050
1051 2013-10-01  Alex Christensen  <achristensen@webkit.org>
1052
1053         Added adoptCOM to COMPtr on Windows.
1054         https://bugs.webkit.org/show_bug.cgi?id=122069
1055
1056         Reviewed by Brent Fulgham.
1057
1058         * platform/win/COMPtr.h:
1059         (adoptCOM): Added.
1060
1061 2013-10-01  Jer Noble  <jer.noble@apple.com>
1062
1063         Unreviewed build fix; The addedFunction and removedFunction arguments to determineChangedTracksFromNewTracksAndOldItems
1064         were reversed, exposing an underlying, existing bug in AudioTrackPrivate and VideoTrack private. Give a default (null)
1065         value to AudioTrackPrivate::m_client and VideoTrackPrivate::m_client and fix the ordering of arguments in
1066         determineChangedTracksFromNewTracksAndOldItems.
1067
1068         * platform/graphics/AudioTrackPrivate.h:
1069         (WebCore::AudioTrackPrivate::AudioTrackPrivate):
1070         * platform/graphics/VideoTrackPrivate.h:
1071         (WebCore::VideoTrackPrivate::VideoTrackPrivate):
1072         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
1073         (WebCore::determineChangedTracksFromNewTracksAndOldItems):
1074
1075 2013-09-30  Jer Noble  <jer.noble@apple.com>
1076
1077         [Mac] Add support for VideoTrack to MediaPlayerPrivateAVFObjC
1078         https://bugs.webkit.org/show_bug.cgi?id=122122
1079
1080         Reviewed by Eric Carlson.
1081
1082         Test: media/track/video-track.html
1083
1084         Refactor the methods which query AVAssetTrack and AVPlayerItemTrack into an Impl class, and
1085         use that class to reset the properties of both AudioTrackAVFObjC and the new VideoTrackAVFObjC.
1086
1087         Add new files to project:
1088         * WebCore.xcodeproj/project.pbxproj:
1089
1090         Add the new implementation class, shared by AudioTrackAVFObjC and VideoTrackAVFObjC:
1091         * platform/graphics/avfoundation/AVTrackPrivateAVFObjCImpl.h: Added.
1092         (WebCore::AVTrackPrivateAVFObjCImpl::create): Simple factory.
1093         (WebCore::AVTrackPrivateAVFObjCImpl::playerItemTrack): Simple getter.
1094         * platform/graphics/avfoundation/AVTrackPrivateAVFObjCImpl.mm: Added.
1095         (WebCore::AVTrackPrivateAVFObjCImpl::AVTrackPrivateAVFObjCImpl): Simple constructor.
1096         (WebCore::AVTrackPrivateAVFObjCImpl::enabled): Pass to AVPlayerItemTrack.
1097         (WebCore::AVTrackPrivateAVFObjCImpl::setEnabled): Ditto.
1098         (WebCore::AVTrackPrivateAVFObjCImpl::audioKind): Distinguish between Alternative and Main content.
1099         (WebCore::AVTrackPrivateAVFObjCImpl::videoKind): Distinguish between Alternative, Main, Caption,
1100             and Description content.
1101         (WebCore::AVTrackPrivateAVFObjCImpl::id): Pass to AVAssetTrack.
1102         (WebCore::AVTrackPrivateAVFObjCImpl::label): Retrieve the Title metadata in the user's preferred
1103             language.
1104         (WebCore::AVTrackPrivateAVFObjCImpl::language): Pass to languageForAVAssetTrack.
1105         (WebCore::AVTrackPrivateAVFObjCImpl::languageForAVAssetTrack): Moved from AudioTrackPrivateAVFObjC.
1106         * platform/graphics/avfoundation/VideoTrackPrivateAVF.h: Copied from Source/WebCore/platform/graphics/avfoundation/AudioTrackPrivateAVF.h.
1107         (WebCore::VideoTrackPrivateAVF::kind): Simple getter.
1108         (WebCore::VideoTrackPrivateAVF::id): Ditto.
1109         (WebCore::VideoTrackPrivateAVF::label): Ditto.
1110         (WebCore::VideoTrackPrivateAVF::language): Ditto.
1111         (WebCore::VideoTrackPrivateAVF::setKind): Simple setter.
1112         (WebCore::VideoTrackPrivateAVF::setId): Ditto.
1113         (WebCore::VideoTrackPrivateAVF::setLabel): Ditto.
1114         (WebCore::VideoTrackPrivateAVF::setLanguage): Ditto.
1115         (WebCore::VideoTrackPrivateAVF::VideoTrackPrivateAVF): Simple constructor.
1116         * platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.h:
1117         * platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.mm:
1118         (WebCore::AudioTrackPrivateAVFObjC::AudioTrackPrivateAVFObjC): Create a AVTrackPrivateAVFObjCImpl.
1119         (WebCore::AudioTrackPrivateAVFObjC::resetPropertiesFromTrack): Retrieve properties from m_impl.
1120         (WebCore::AudioTrackPrivateAVFObjC::setPlayerItemTrack): Create a new AVTrackPrivateAVFObjCImpl.
1121         (WebCore::AudioTrackPrivateAVFObjC::playerItemTrack): Pass to m_impl.
1122         (WebCore::AudioTrackPrivateAVFObjC::setEnabled): Ditto.
1123         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
1124         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
1125         (WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged): Refactor implementation into
1126             template method determineChangedTracksFromNewTracksAndOldItems().
1127         (WebCore::determineChangedTracksFromNewTracksAndOldItems): Refactored.
1128         (WebCore::MediaPlayerPrivateAVFoundationObjC::updateAudioTracks): Pass to determineChangedTracksFromNewTracksAndOldItems.
1129         (WebCore::MediaPlayerPrivateAVFoundationObjC::updateVideoTracks): Ditto.
1130         (WebCore::MediaPlayerPrivateAVFoundationObjC::languageOfPrimaryAudioTrack): Changed class hosting
1131             languageForAVAssetTrack.
1132         * platform/graphics/avfoundation/objc/VideoTrackPrivateAVFObjC.cpp: Added.
1133         (WebCore::VideoTrackPrivateAVFObjC::VideoTrackPrivateAVFObjC): Create a AVTrackPrivateAVFObjCImpl.
1134         (WebCore::VideoTrackPrivateAVFObjC::resetPropertiesFromTrack): Retrieve properties from m_impl.
1135         (WebCore::VideoTrackPrivateAVFObjC::setPlayerItemTrack): Create a new AVTrackPrivateAVFObjCImpl.
1136         (WebCore::VideoTrackPrivateAVFObjC::playerItemTrack): Pass to m_impl.
1137         (WebCore::VideoTrackPrivateAVFObjC::setSelected): Ditto.
1138         * platform/graphics/avfoundation/objc/VideoTrackPrivateAVFObjC.h: Added.
1139         (WebCore::VideoTrackPrivateAVFObjC::create): Simple factory.
1140
1141 2013-10-01  Andreas Kling  <akling@apple.com>
1142
1143         Leaf EventTarget subclasses should be FINAL.
1144         <https://webkit.org/b/122141>
1145
1146         Reviewed by Darin Adler.
1147
1148         Clear out a slew of FIXMEs now that HasMemoryCostMemberFunction
1149         works on classes marked FINAL (fixed in bug 121747.)
1150
1151 2013-10-01  Szabolcs D├ívid  <davidsz@inf.u-szeged.hu>
1152
1153         Rename URL type variables in Curl network backend.
1154         https://bugs.webkit.org/show_bug.cgi?id=122158
1155
1156         Reviewed by Darin Adler.
1157
1158         I changed the name of the URL objects to match with the new class name.
1159
1160         * platform/network/curl/ResourceHandleManager.cpp:
1161         (WebCore::getProtectionSpace):
1162         (WebCore::ResourceHandleManager::initializeHandle):
1163
1164 2013-10-01  Myles C. Maxfield  <mmaxfield@apple.com>
1165
1166         Center misspelling dots across width of word
1167         https://bugs.webkit.org/show_bug.cgi?id=122046
1168
1169         Reviewed by Darin Adler.
1170
1171         Test: editing/spelling/spelling.html
1172
1173         * platform/graphics/GraphicsContext.h:
1174         * platform/graphics/mac/GraphicsContextMac.mm:
1175         (WebCore::GraphicsContext::drawLineForDocumentMarker):
1176
1177 2013-10-01  Daniel Bates  <dabates@apple.com>
1178
1179         [iOS] WebCore fails to build with newer versions of clang
1180         https://bugs.webkit.org/show_bug.cgi?id=122161
1181
1182         Reviewed by Darin Adler.
1183
1184         * editing/FrameSelection.cpp: Add ENABLE(TEXT_CARET)-guard around shouldStopBlinkingDueToTypingCommand().
1185         * page/EventHandler.cpp: Add !PLATFORM(IOS)-guard around constants cursorUpdateInterval and maximumCursorSize;
1186         also add touch event/gesture event guard around shouldGesturesTriggerActive().
1187         * platform/network/cf/ResourceResponseCFNet.cpp: Remove unused function filenameHasSaneExtension.
1188         * platform/network/mac/ResourceResponseMac.mm: Only define static variables commonHeaderFields when building
1189         without CFNetwork; also remove variable numCommonHeaderFields, instead use WTF_ARRAY_LENGTH(commonHeaderFields)
1190         to compute the size of the fixed-sized array commonHeaderFields.
1191
1192 2013-10-01  Brendan Long  <b.long@cablelabs.com>
1193
1194         [GStreamer] Support "chapter" text tracks
1195         https://bugs.webkit.org/show_bug.cgi?id=122000
1196
1197         Reviewed by Eric Carlson.
1198
1199         Test: media/track/in-band/track-in-band-mkv-chapters.html
1200
1201         * platform/graphics/gstreamer/InbandMetadataTextTrackPrivateGStreamer.h: New class, needed for cues that aren't associated with GstPads.
1202         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1203         (WebCore::MediaPlayerPrivateGStreamer::handleMessage): Check for table of contents messages.
1204         (WebCore::MediaPlayerPrivateGStreamer::processTableOfContents): Parse table of contents messages into text tracks.
1205         (WebCore::MediaPlayerPrivateGStreamer::processTableOfContentsEntry): Recursive method for parsing all of the TOC entries.
1206         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h: Add the processTableOfContents functions.
1207
1208 2013-10-01  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1209
1210         [Texmap] CSS filter not working on software composited layers
1211         https://bugs.webkit.org/show_bug.cgi?id=122159
1212
1213         Reviewed by Noam Rosenthal.
1214
1215         Tell the rendering layer we do not support CSS filters when we do not. This
1216         will make RenderLayer fall back to using its own software implementation.
1217
1218         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
1219         (WebCore::GraphicsLayerTextureMapper::setFilters):
1220         * platform/graphics/texmap/TextureMapperImageBuffer.cpp:
1221         (WebCore::BitmapTextureImageBuffer::applyFilters):
1222
1223 2013-10-01  Darin Adler  <darin@apple.com>
1224
1225         Try to fix assertion failures seem on bots.
1226
1227         * css/StyleResolver.cpp:
1228         (WebCore::StyleResolver::createFilterOperations): Rearrange code so this
1229         won't try ot call toCSSPrimitiveValue on a non-primitive-value in the
1230         DROP_SHADOW case.
1231
1232 2013-10-01  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1233
1234         Generate toCSSFooValue for CSSPrimitiveValue
1235         https://bugs.webkit.org/show_bug.cgi?id=122101
1236
1237         Reviewed by Antti Koivisto.
1238
1239         As a step of clean-up static_cast<> in CSSValues, this patch generates
1240         toCSSFooPrimitiveValue() in order to detect bad casts as well as improves
1241         code readability.
1242
1243         No new tests, no behavior changes.
1244
1245         * css/CSSFontSelector.cpp:
1246         (WebCore::CSSFontSelector::addFontFaceRule):
1247         * css/CSSImageGeneratorValue.cpp:
1248         (WebCore::CSSImageGeneratorValue::subimageIsPending):
1249         (WebCore::CSSImageGeneratorValue::cachedImageForCSSValue):
1250         * css/CSSImageSetValue.cpp:
1251         (WebCore::CSSImageSetValue::fillImageSet):
1252         * css/CSSParser.cpp:
1253         (WebCore::CSSParser::parseColor):
1254         (WebCore::CSSParser::addProperty):
1255         (WebCore::CSSParser::parse3ValuesFillPosition):
1256         (WebCore::CSSParser::parseFillPosition):
1257         (WebCore::CSSParser::parseFillRepeat):
1258         (WebCore::CSSParser::parseDeprecatedRadialGradient):
1259         (WebCore::CSSParser::parseRadialGradient):
1260         * css/CSSPrimitiveValue.h:
1261         * css/CSSToStyleMap.cpp:
1262         (WebCore::CSSToStyleMap::mapFillAttachment):
1263         (WebCore::CSSToStyleMap::mapFillClip):
1264         (WebCore::CSSToStyleMap::mapFillComposite):
1265         (WebCore::CSSToStyleMap::mapFillBlendMode):
1266         (WebCore::CSSToStyleMap::mapFillOrigin):
1267         (WebCore::CSSToStyleMap::mapFillRepeatX):
1268         (WebCore::CSSToStyleMap::mapFillRepeatY):
1269         (WebCore::CSSToStyleMap::mapFillSize):
1270         (WebCore::CSSToStyleMap::mapFillXPosition):
1271         (WebCore::CSSToStyleMap::mapFillYPosition):
1272         (WebCore::CSSToStyleMap::mapFillMaskSourceType):
1273         (WebCore::CSSToStyleMap::mapAnimationDelay):
1274         (WebCore::CSSToStyleMap::mapAnimationDirection):
1275         (WebCore::CSSToStyleMap::mapAnimationDuration):
1276         (WebCore::CSSToStyleMap::mapAnimationFillMode):
1277         (WebCore::CSSToStyleMap::mapAnimationIterationCount):
1278         (WebCore::CSSToStyleMap::mapAnimationName):
1279         (WebCore::CSSToStyleMap::mapAnimationPlayState):
1280         (WebCore::CSSToStyleMap::mapAnimationProperty):
1281         (WebCore::CSSToStyleMap::mapAnimationTimingFunction):
1282         (WebCore::CSSToStyleMap::mapNinePieceImageQuad):
1283         (WebCore::CSSToStyleMap::mapNinePieceImageRepeat):
1284         * css/CSSValue.cpp:
1285         (WebCore::CSSValue::destroy):
1286         * css/DeprecatedStyleBuilder.cpp:
1287         (WebCore::ApplyPropertyDefault::applyValue):
1288         (WebCore::ApplyPropertyNumber::applyValue):
1289         (WebCore::ApplyPropertyAuto::applyValue):
1290         (WebCore::ApplyPropertyClip::applyValue):
1291         (WebCore::ApplyPropertyColor::applyValue):
1292         (WebCore::ApplyPropertyLength::applyValue):
1293         (WebCore::ApplyPropertyString::applyValue):
1294         (WebCore::ApplyPropertyBorderRadius::applyValue):
1295         (WebCore::ApplyPropertyComputeLength::applyValue):
1296         (WebCore::ApplyPropertyFont::applyValue):
1297         (WebCore::ApplyPropertyFontFamily::applyValue):
1298         (WebCore::ApplyPropertyFontSize::applyValue):
1299         (WebCore::ApplyPropertyFontWeight::applyValue):
1300         (WebCore::ApplyPropertyFontVariantLigatures::applyValue):
1301         (WebCore::ApplyPropertyCounter::applyValue):
1302         (WebCore::ApplyPropertyCursor::applyValue):
1303         (WebCore::ApplyPropertyTextAlign::applyValue):
1304         (WebCore::ApplyPropertyTextDecoration::applyValue):
1305         (WebCore::ApplyPropertyMarqueeIncrement::applyValue):
1306         (WebCore::ApplyPropertyMarqueeRepetition::applyValue):
1307         (WebCore::ApplyPropertyMarqueeSpeed::applyValue):
1308         (WebCore::ApplyPropertyTextUnderlinePosition::applyValue):
1309         (WebCore::ApplyPropertyLineHeight::applyValue):
1310         (WebCore::ApplyPropertyLineHeightForIOSTextAutosizing::applyValue):
1311         (WebCore::ApplyPropertyPageSize::applyValue):
1312         (WebCore::ApplyPropertyTextEmphasisStyle::applyValue):
1313         (WebCore::ApplyPropertyResize::applyValue):
1314         (WebCore::ApplyPropertyVerticalAlign::applyValue):
1315         (WebCore::ApplyPropertyZoom::applyValue):
1316         (WebCore::ApplyPropertyDisplay::applyValue):
1317         (WebCore::ApplyPropertyClipPath::applyValue):
1318         (WebCore::ApplyPropertyShape::applyValue):
1319         (WebCore::ApplyPropertyImageResolution::applyValue):
1320         (WebCore::ApplyPropertyTextIndent::applyValue):
1321         * css/MediaList.cpp:
1322         (WebCore::reportMediaQueryWarningIfNeeded):
1323         * css/MediaQueryEvaluator.cpp:
1324         (WebCore::numberValue):
1325         (WebCore::orientationMediaFeatureEval):
1326         (WebCore::evalResolution):
1327         (WebCore::device_pixel_ratioMediaFeatureEval):
1328         (WebCore::resolutionMediaFeatureEval):
1329         (WebCore::computeLength):
1330         (WebCore::view_modeMediaFeatureEval):
1331         (WebCore::pointerMediaFeatureEval):
1332         * css/SVGCSSStyleSelector.cpp:
1333         (WebCore::StyleResolver::applySVGProperty):
1334         * css/StylePropertySet.cpp:
1335         (WebCore::StylePropertySet::getLayeredShorthandValue):
1336         * css/StyleResolver.cpp:
1337         (WebCore::createGridTrackSize):
1338         (WebCore::createGridTrackList):
1339         (WebCore::createGridPosition):
1340         (WebCore::hasVariableReference):
1341         (WebCore::StyleResolver::applyProperty):
1342         (WebCore::StyleResolver::parseCustomFilterArrayParameter):
1343         (WebCore::StyleResolver::parseCustomFilterColorParameter):
1344         (WebCore::StyleResolver::parseCustomFilterNumberParameter):
1345         (WebCore::StyleResolver::parseCustomFilterParameter):
1346         (WebCore::StyleResolver::parseCustomFilterParameterList):
1347         (WebCore::StyleResolver::createCustomFilterOperationWithInlineSyntax):
1348         (WebCore::StyleResolver::createFilterOperations):
1349         * css/TransformFunctions.cpp:
1350         (WebCore::transformsForValue):
1351         * css/ViewportStyleResolver.cpp:
1352         (WebCore::ViewportStyleResolver::getViewportArgumentValue):
1353         * css/WebKitCSSMatrix.cpp:
1354         (WebCore::WebKitCSSMatrix::setMatrixValue):
1355         * editing/ApplyStyleCommand.cpp:
1356         (WebCore::ApplyStyleCommand::computedFontSize):
1357         * editing/EditingStyle.cpp:
1358         (WebCore::identifierForStyleProperty):
1359         (WebCore::HTMLElementEquivalent::valueIsPresentInStyle):
1360         (WebCore::cssValueToRGBA):
1361         (WebCore::EditingStyle::extractFontSizeDelta):
1362         (WebCore::EditingStyle::textDirection):
1363         (WebCore::EditingStyle::prepareToApplyAt):
1364         (WebCore::EditingStyle::mergeStyleFromRulesForSerialization):
1365         (WebCore::EditingStyle::legacyFontSize):
1366         (WebCore::EditingStyle::textDirectionForSelection):
1367         (WebCore::StyleChange::extractTextStyles):
1368         (WebCore::fontWeightIsBold):
1369         (WebCore::isTransparentColorValue):
1370         * editing/markup.cpp:
1371         (WebCore::propertyMissingOrEqualToNone):
1372
1373 2013-10-01  Darin Adler  <darin@apple.com>
1374
1375         Try to fix AVFoundation crashes seen on Lion bot.
1376
1377         * platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.mm:
1378         Four AVFoundation string constants used in this file were new to 10.8.
1379         For older versions of OS X, use hard-coded string constants instead.
1380
1381 2013-10-01  Zan Dobersek  <zdobersek@igalia.com>
1382
1383         [IndexedDB] Interfaces inheriting from EventTarget should generate JSC (un)wrapping functions
1384         https://bugs.webkit.org/show_bug.cgi?id=122114
1385
1386         Reviewed by Darin Adler.
1387
1388         After r156590, four IndexedDB interfaces are inheriting from the EventTarget interface. Because of that,
1389         they're now required to have interface-specific JSC wrapping and unwrapping functions generated since the
1390         JSC wrapping and unwrapping functions for the EventTarget interface delegate these operations to these
1391         interface-specific functions. If the functions are not generated and accessible, the EventTarget functions
1392         end up recursively calling themselves.
1393
1394         * Modules/indexeddb/IDBDatabase.idl:
1395         * Modules/indexeddb/IDBOpenDBRequest.idl:
1396         * Modules/indexeddb/IDBRequest.idl:
1397         * Modules/indexeddb/IDBTransaction.idl:
1398
1399 2013-09-30  Ryuan Choi  <ryuan.choi@samsung.com>
1400
1401         Build fix for EFL, Qt, Gtk port after r156688
1402         https://bugs.webkit.org/show_bug.cgi?id=122139
1403
1404         Reviewed by Anders Carlsson.
1405
1406         Get rid of more uses of OwnPtr and PassOwnPtr.
1407
1408         * platform/graphics/surfaces/GraphicsSurface.cpp:
1409         (WebCore::GraphicsSurface::beginPaint):
1410         * platform/graphics/surfaces/GraphicsSurface.h:
1411         * platform/graphics/surfaces/efl/GraphicsSurfaceCommon.cpp:
1412         (WebCore::GraphicsSurface::platformBeginPaint):
1413         * platform/graphics/surfaces/glx/GraphicsSurfaceGLX.cpp:
1414         (WebCore::GraphicsSurface::platformBeginPaint):
1415         * platform/graphics/surfaces/qt/GraphicsSurfaceQt.cpp:
1416         (WebCore::GraphicsSurface::platformBeginPaint):
1417
1418 2013-09-30  Sam White  <samuel_white@apple.com>
1419
1420         AX: Expose ARIA Busy Notifications
1421         https://bugs.webkit.org/show_bug.cgi?id=121451
1422
1423         Reviewed by Chris Fleizach.
1424
1425         Added AXElementBusyChanged notification that posts when aria-busy is toggled. This
1426         enables screen readers to detect busy states without polling the focused element.
1427
1428         Test: platform/mac/accessibility/element-busy-changed.html
1429
1430         * accessibility/AXObjectCache.cpp:
1431         (WebCore::AXObjectCache::handleAttributeChanged):
1432         * accessibility/AXObjectCache.h:
1433         * accessibility/mac/AXObjectCacheMac.mm:
1434         (WebCore::AXObjectCache::postPlatformNotification):
1435
1436 2013-09-30  Sam Weinig  <sam@webkit.org>
1437
1438         Fixing the build.
1439
1440         * GNUmakefile.list.am:
1441
1442 2013-09-30  Sam Weinig  <sam@webkit.org>
1443
1444         More build fixing.
1445
1446         * GNUmakefile.list.am:
1447         * WebCore.vcxproj/WebCore.vcxproj.filters:
1448         * inspector/InspectorAllInOne.cpp:
1449         * inspector/InstrumentingAgents.h:
1450
1451 2013-09-30  Sam Weinig  <sam@webkit.org>
1452
1453         Fix the Efl and Gtk builds.
1454
1455         * GNUmakefile.list.am:
1456         * PlatformEfl.cmake:
1457         * PlatformGTK.cmake:
1458
1459 2013-09-30  Sam Weinig  <sam@webkit.org>
1460
1461         Remove support for DOMFileSystem
1462         https://bugs.webkit.org/show_bug.cgi?id=122137
1463
1464         Reviewed by Anders Carlsson.
1465
1466         * Files elided *
1467
1468 2013-09-30  Brent Fulgham  <bfulgham@apple.com>
1469
1470         [Windows] Build fix afer r156688.
1471
1472         * fileapi/ThreadableBlobRegistry.cpp:
1473         (WebCore::ThreadableBlobRegistry::registerBlobURL): Switch to std::unique_ptr in
1474         method implementation.
1475
1476 2013-09-30  Anders Carlsson  <andersca@apple.com>
1477
1478         Get rid of more uses of OwnPtr and PassOwnPtr
1479         https://bugs.webkit.org/show_bug.cgi?id=122136
1480
1481         Reviewed by Antti Koivisto.
1482
1483         * Modules/websockets/WebSocket.cpp:
1484         (WebCore::WebSocket::didReceiveBinaryData):
1485         * WebCore.exp.in:
1486         * fileapi/Blob.cpp:
1487         (WebCore::Blob::Blob):
1488         (WebCore::Blob::slice):
1489         * fileapi/Blob.h:
1490         (WebCore::Blob::create):
1491         * fileapi/File.cpp:
1492         (WebCore::createBlobDataForFileWithType):
1493         (WebCore::createBlobDataForFile):
1494         (WebCore::createBlobDataForFileWithName):
1495         * fileapi/ThreadableBlobRegistry.cpp:
1496         (WebCore::BlobRegistryContext::BlobRegistryContext):
1497         (WebCore::registerBlobURLTask):
1498         (WebCore::ThreadableBlobRegistry::registerBlobURL):
1499         * fileapi/ThreadableBlobRegistry.h:
1500         * fileapi/WebKitBlobBuilder.cpp:
1501         (WebCore::BlobBuilder::getBlob):
1502         * platform/network/BlobData.cpp:
1503         (WebCore::BlobDataHandle::BlobDataHandle):
1504         * platform/network/BlobData.h:
1505         (WebCore::BlobData::BlobData):
1506         (WebCore::BlobDataHandle::create):
1507         * platform/network/BlobRegistry.h:
1508         * platform/network/BlobRegistryImpl.cpp:
1509         (WebCore::BlobRegistryImpl::registerBlobURL):
1510         * platform/network/BlobRegistryImpl.h:
1511         * xml/XMLHttpRequest.cpp:
1512         (WebCore::XMLHttpRequest::responseBlob):
1513
1514 2013-09-30  Benjamin Poulain  <benjamin@webkit.org>
1515
1516         Remove the code guarded by STYLE_SCOPED
1517         https://bugs.webkit.org/show_bug.cgi?id=122123
1518
1519         Reviewed by Anders Carlsson.
1520
1521         Start cleaning the code related to <style scoped>. This patch
1522         only removes the code with #ifdef guards.
1523
1524         * Configurations/FeatureDefines.xcconfig:
1525         * WebCore.exp.in:
1526         * bindings/generic/RuntimeEnabledFeatures.cpp:
1527         (WebCore::RuntimeEnabledFeatures::RuntimeEnabledFeatures):
1528         * bindings/generic/RuntimeEnabledFeatures.h:
1529         * css/DocumentRuleSets.cpp:
1530         (WebCore::DocumentRuleSets::appendAuthorStyleSheets):
1531         * css/ElementRuleCollector.cpp:
1532         (WebCore::ElementRuleCollector::matchScopedAuthorRules):
1533         * css/StyleResolver.cpp:
1534         (WebCore::StyleResolver::locateCousinList):
1535         (WebCore::StyleResolver::canShareStyleWithElement):
1536         (WebCore::StyleResolver::locateSharedStyle):
1537         * css/StyleResolver.h:
1538         (WebCore::StyleResolver::ensureScopeResolver):
1539         * css/StyleScopeResolver.cpp:
1540         * css/StyleScopeResolver.h:
1541         * dom/Node.cpp:
1542         * dom/Node.h:
1543         * dom/ShadowRoot.cpp:
1544         (WebCore::ShadowRoot::ShadowRoot):
1545         * dom/ShadowRoot.h:
1546         * html/HTMLStyleElement.cpp:
1547         (WebCore::HTMLStyleElement::HTMLStyleElement):
1548         (WebCore::HTMLStyleElement::parseAttribute):
1549         (WebCore::HTMLStyleElement::insertedInto):
1550         (WebCore::HTMLStyleElement::removedFrom):
1551         * html/HTMLStyleElement.h:
1552         * html/HTMLStyleElement.idl:
1553         * testing/InternalSettings.cpp:
1554         (WebCore::InternalSettings::Backup::Backup):
1555         (WebCore::InternalSettings::Backup::restoreTo):
1556         * testing/InternalSettings.h:
1557         * testing/InternalSettings.idl:
1558         * testing/Internals.cpp:
1559         * testing/Internals.h:
1560         * testing/Internals.idl:
1561
1562 2013-09-30  Drew Yao  <ayao@apple.com>
1563
1564         ASSERT(!m_hasBadParent) in InlineBox::parent() should be ASSERT_WITH_SECURITY_IMPLICATION
1565         https://bugs.webkit.org/show_bug.cgi?id=122032
1566
1567         Reviewed by Andreas Kling.
1568
1569         Convert assertion to ASSERT_WITH_SECURITY_IMPLICATION to help catch use after free bugs.
1570
1571         No new tests needed.
1572
1573         * rendering/InlineBox.h:
1574         (WebCore::InlineBox::parent):
1575
1576 2013-09-30  Yongjun Zhang  <yongjun_zhang@apple.com>
1577
1578         Don't attempt to destroy decoded frame if a BitmapImage doesn't have encoded raw data.
1579         https://bugs.webkit.org/show_bug.cgi?id=122115
1580
1581         Reviewed by Daniel Bates.
1582
1583         With BitmapImage::create(PassNativeImagePtr, ImageObserver*), a BitmapImage could be created by
1584         passing a native image.  If this image is added to memory cache, we shouldn't attempt to destroy
1585         its decoded frames since there is no encoded raw data and we won't be able to reconstruct the image again.
1586
1587         No new tests for now. Currently there isn't a code path to add to the memory cache a BitmapImage
1588         that was created by adopting a native image. We'll add such a code path in a subsequent patch.
1589
1590         * platform/graphics/BitmapImage.cpp:
1591         (WebCore::BitmapImage::destroyDecodedDataIfNecessary):
1592
1593 2013-09-30  Brady Eidson  <beidson@apple.com>
1594
1595         Remove IDBTracing.h.
1596         https://bugs.webkit.org/show_bug.cgi?id=122118
1597
1598         Reviewed by Alexey Proskuryakov.
1599
1600         Global replace of "IDB_TRACE" with "LOG(StorageAPI)", and remove all notions of this header.
1601
1602         * GNUmakefile.list.am:
1603
1604         * Modules/indexeddb/IDBCursor.cpp:
1605         * Modules/indexeddb/IDBDatabase.cpp:
1606         * Modules/indexeddb/IDBDatabaseBackendInterface.h:
1607         * Modules/indexeddb/IDBFactory.cpp:
1608         * Modules/indexeddb/IDBIndex.cpp:
1609         * Modules/indexeddb/IDBObjectStore.cpp:
1610         * Modules/indexeddb/IDBOpenDBRequest.cpp:
1611         * Modules/indexeddb/IDBRequest.cpp:
1612         * Modules/indexeddb/IDBTracing.h: Removed.
1613         * Modules/indexeddb/IDBTransaction.cpp:
1614         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
1615         * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp:
1616         * Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp:
1617         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:
1618         * Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.cpp:
1619         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp:
1620         * WebCore.xcodeproj/project.pbxproj:
1621         * bindings/js/IDBBindingUtilities.cpp:
1622
1623 2013-09-30  Brent Fulgham  <bfulgham@apple.com>
1624
1625         [Windows] Build fix after r156622. Build RenderLayerModelObject.cpp in a separate compilation unit
1626         from the RenderLayerAllnOne file so that the scalar and vector destructors are visible to other
1627         elements of WebCore during the build.
1628
1629         * WebCore.vcxproj/WebCore.vcxproj: Compile RenderLayerModelObject outside of the all-in-one file.
1630         * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
1631         * rendering/RenderingAllInOne.cpp: Remove RenderLayerModelObject.cpp.
1632
1633 2013-09-30  Mark Rowe  <mrowe@apple.com>
1634
1635         Fix the build when building against an SDK.
1636
1637         Xcode helpfully prepends $(SDKROOT) to the paths in FRAMEWORK_SEARCH_PATHS when generating
1638         the compiler command lines. It can't know to do this for the system framework search paths
1639         we add manually via OTHER_CFLAGS though, so we need to prefix them with $(SDKROOT) ourself.
1640
1641         * Configurations/WebCore.xcconfig:
1642
1643 2013-09-30  Brent Fulgham  <bfulgham@apple.com>
1644
1645         [Windows] Unreviewed build fix.
1646
1647         * WebCore.vcxproj/WebCore.vcxproj.filters: Correct malformed XML in project files.
1648
1649 2013-09-30  Jer Noble  <jer.noble@apple.com>
1650
1651         Unreviewed, roll back in r156546 with rebaselined tests.
1652         https://bugs.webkit.org/show_bug.cgi?id=122111
1653
1654         * Modules/mediacontrols/mediaControlsApple.js:
1655         (Controller):
1656         (Controller.prototype.addVideoListeners):
1657         (Controller.prototype.removeVideoListeners):
1658         (Controller.prototype.updateHasAudio):
1659
1660 2013-09-30  Commit Queue  <commit-queue@webkit.org>
1661
1662         Unreviewed, rolling out r156656.
1663         http://trac.webkit.org/changeset/156656
1664         https://bugs.webkit.org/show_bug.cgi?id=122111
1665
1666         Broke several media tests (Requested by ap on #webkit).
1667
1668         * Modules/mediacontrols/mediaControlsApple.js:
1669         (Controller):
1670         (Controller.prototype.addVideoListeners):
1671         (Controller.prototype.removeVideoListeners):
1672
1673 2013-09-29  Sam Weinig  <sam@webkit.org>
1674
1675         Convert a bunch of OwnPtrs on Page to std::unique_ptrs
1676         https://bugs.webkit.org/show_bug.cgi?id=122086
1677
1678         Reviewed by Darin Adler.
1679
1680         * loader/ProgressTracker.cpp:
1681         * loader/ProgressTracker.h:
1682         * page/Page.cpp:
1683         (WebCore::Page::Page):
1684         (WebCore::Page::setGroupName):
1685         (WebCore::Page::initGroup):
1686         * page/Page.h:
1687         * page/PageGroup.cpp:
1688         (WebCore::PageGroup::PageGroup):
1689         * page/PageGroup.h:
1690
1691 2013-09-30  Antti Koivisto  <antti@apple.com>
1692
1693         Remove FontTranscoder
1694         https://bugs.webkit.org/show_bug.cgi?id=122088
1695
1696         Reviewed by Andreas Kling.
1697
1698         This overly generic class just implements mapping of backslash to yen symbol for some legacy Japanese fonts.
1699
1700         * CMakeLists.txt:
1701         * GNUmakefile.am:
1702         * GNUmakefile.list.am:
1703         * Target.pri:
1704         * WebCore.pri:
1705         * WebCore.vcxproj/WebCore.vcxproj:
1706         * WebCore.xcodeproj/project.pbxproj:
1707         * platform/graphics/Font.cpp:
1708         (WebCore::useBackslashAsYenSignForFamily):
1709         
1710             Move the family set to Font.cpp.
1711
1712         (WebCore::Font::Font):
1713         (WebCore::Font::operator=):
1714         (WebCore::Font::update):
1715         
1716             Keep the cached boolean up to date.
1717
1718         * platform/graphics/Font.h:
1719         (WebCore::Font::useBackslashAsYenSymbol):
1720         
1721             Use descriptive name instead of talking about "transcoding".
1722
1723         * platform/text/transcoder: Removed.
1724         * platform/text/transcoder/FontTranscoder.cpp: Removed.
1725         * platform/text/transcoder/FontTranscoder.h: Removed.
1726         * rendering/RenderText.cpp:
1727         (WebCore::RenderText::RenderText):
1728         (WebCore::RenderText::computeUseBackslashAsYenSymbol):
1729         
1730             Rename for clarity. 
1731             Avoid unnecessary hash lookup, just check the cached bit in Font.
1732
1733         (WebCore::RenderText::styleDidChange):
1734         (WebCore::RenderText::setTextInternal):
1735         
1736             "Transcoding" here was just a simple character replacement.
1737
1738         (WebCore::RenderText::textWithoutConvertingBackslashToYenSymbol):
1739         
1740             Renamed.
1741
1742         * rendering/RenderText.h:
1743
1744 2013-09-27  Jer Noble  <jer.noble@apple.com>
1745
1746         REGRESSION(r156546): media/video-no-audio.html broken
1747         https://bugs.webkit.org/show_bug.cgi?id=122049
1748
1749         Reviewed by Eric Carlson.
1750
1751         Now that our video elements have audio tracks, use their presence or
1752         absense to show or hide the volume controls.
1753
1754         * Modules/mediacontrols/mediaControlsApple.js:
1755         (Controller):
1756         (Controller.prototype.addVideoListeners): Listen for audioTrack changes.
1757         (Controller.prototype.removeVideoListeners): Stop listening to same.
1758         (Controller.prototype.handleAudioTrackChange): Call this.updateHasAudio()
1759         (Controller.prototype.handleAudioTrackAdd): Ditto.
1760         (Controller.prototype.handleAudioTrackRemove): Ditto.
1761         (Controller.prototype.updateHasAudio): Hide the volume controls if no
1762             audioTracks are present, and vice versa.
1763
1764 2013-09-30  Jer Noble  <jer.noble@apple.com>
1765
1766         Unreviewed Mac-Lion build fix.
1767
1768         Use metadataItemsFromArray:withLocale: instead of
1769         metadataItemsFromArray:filteredAndSortedAccordingToPreferredLanguages:
1770         on Lion and earlier.
1771
1772         * platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.mm:
1773         (WebCore::AudioTrackPrivateAVFObjC::resetPropertiesFromTrack):
1774
1775 2013-09-27  Jer Noble  <jer.noble@apple.com>
1776
1777         [Mac] Add AudioTrack support to MediaPlayerPrivateAVFObC.
1778         https://bugs.webkit.org/show_bug.cgi?id=122043
1779
1780         Reviewed by Eric Carlson.
1781
1782         Test: media/track/audio-track.html
1783
1784         Add a new class AudioTrackPrivateAVF and subclass AudioTrackPrivateAVFObjC
1785         which are backed by a AVPlayerItemTrack. Create one of these tracks when
1786         we are notified that the list of available tracks has changed.
1787
1788         * WebCore.xcodeproj/project.pbxproj:
1789         * html/track/AudioTrack.cpp:
1790         (WebCore::AudioTrack::setEnabled): Pass through to the AudioTrackPrivate
1791             so that the underlying media track can be (dis|en)abled.
1792         * platform/graphics/avfoundation/AudioTrackPrivateAVF.h: Added.
1793         (WebCore::AudioTrackPrivateAVF::kind): Simple getter.
1794         (WebCore::AudioTrackPrivateAVF::id): Ditto.
1795         (WebCore::AudioTrackPrivateAVF::label): Ditto.
1796         (WebCore::AudioTrackPrivateAVF::language): Ditto.
1797         (WebCore::AudioTrackPrivateAVF::setKind): Simple Setter.
1798         (WebCore::AudioTrackPrivateAVF::setId): Ditto.
1799         (WebCore::AudioTrackPrivateAVF::setLabel): Ditto.
1800         (WebCore::AudioTrackPrivateAVF::setLanguage): Ditto.
1801         (WebCore::AudioTrackPrivateAVF::AudioTrackPrivateAVF): Simple constructor.
1802         * platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.h: Added.
1803         (WebCore::AudioTrackPrivateAVFObjC::create): Simple factory.
1804         (WebCore::AudioTrackPrivateAVFObjC::playerItemTrack): Simple getter.
1805         * platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.mm: Added.
1806         (WebCore::AudioTrackPrivateAVFObjC::AudioTrackPrivateAVFObjC): Call resetPropertiesFromTrack.
1807         (WebCore::AudioTrackPrivateAVFObjC::resetPropertiesFromTrack): Fill out the values from 
1808             the associated AVPlayerItemTrack and its AVAssetTrack.
1809         (WebCore::AudioTrackPrivateAVFObjC::setPlayerItemTrack): Call resetPropertiesFromTrack.
1810         (WebCore::AudioTrackPrivateAVFObjC::setEnabled): (En|Dis)able the AVPlayerItemTrack.
1811         (WebCore::AudioTrackPrivateAVFObjC::languageForAVAssetTrack): Refactored from
1812             MediaPlayerPrivateAVFoundationObjC::languageOfPrimaryAudioTrack.
1813         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
1814         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
1815         (WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged): Determine which tracks
1816             have been added or removed and notify the clients accordingly.
1817         (WebCore::MediaPlayerPrivateAVFoundationObjC::languageOfPrimaryAudioTrack): Refactor into
1818             AudioTrackPrivateAVFObjC::languageForAVAssetTrack.
1819
1820 2013-09-30  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1821
1822         Generate toCSSCalcValue instead of using manual cast function
1823         https://bugs.webkit.org/show_bug.cgi?id=122055
1824
1825         Reviewed by Antti Koivisto.
1826
1827         Generated type cast function supports more plenty functions rather than manual functions.
1828         To use CSS_VALUE_TYPE_CAST, isCalculationValue() needs to be changed with isCalcValue().
1829
1830         No new tests, no behavior changes.
1831
1832         * css/CSSCalculationValue.h:
1833         * css/CSSValue.cpp:
1834         (WebCore::CSSValue::destroy):
1835         * css/CSSValue.h:
1836         (WebCore::CSSValue::isCalcValue):
1837         * css/StyleResolver.cpp:
1838         (WebCore::hasVariableReference):
1839
1840 2013-09-30  Antti Koivisto  <antti@apple.com>
1841
1842         Get rid of static map for marking ancestor line boxes dirty
1843         https://bugs.webkit.org/show_bug.cgi?id=122080
1844
1845         Reviewed by Andreas Kling.
1846         
1847         This is ugly and shows up in profiles too. Use a bit in RenderElement instead.
1848
1849         * rendering/RenderBlock.h:
1850         * rendering/RenderBlockFlow.h:
1851         
1852             Move dirtyLinesFromChangedChild down to RenderBlockFlow. It wouldn't do anything on other RenderBlocks.
1853
1854         * rendering/RenderElement.cpp:
1855         (WebCore::RenderElement::RenderElement):
1856         * rendering/RenderElement.h:
1857         
1858             Add m_ancestorLineBoxDirty bit. We have 32 unused bits here on 64bit systems.
1859
1860         (WebCore::RenderElement::dirtyLinesFromChangedChild):
1861         (WebCore::RenderElement::ancestorLineBoxDirty):
1862         (WebCore::RenderElement::setAncestorLineBoxDirty):
1863         (WebCore::RenderObject::setNeedsLayout):
1864         * rendering/RenderInline.h:
1865         * rendering/RenderLineBoxList.cpp:
1866         (WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
1867             
1868             Tighten the interface.
1869
1870         * rendering/RenderLineBoxList.h:
1871         * rendering/RenderObject.cpp:
1872         (WebCore::RenderObject::willBeDestroyed):
1873         * rendering/RenderObject.h:
1874         
1875             Remove the static map.
1876
1877 2013-09-18  Sergio Villar Senin  <svillar@igalia.com>
1878
1879         [CSS Grid Layout] Implement the grid-area shorthand
1880         https://bugs.webkit.org/show_bug.cgi?id=103334
1881
1882         Reviewed by Andreas Kling.
1883
1884         Based on Blink r151684 by <jchaffraix@chromium.org>
1885
1886         Test: fast/css-grid-layout/grid-item-area-get-set.html
1887
1888         Added support to specify grid positions using the
1889         '-webkit-grid-area' shorthand. Named grid areas are still not
1890         allowed, to be done in a follow up patch as it likely requires
1891         '-webkit-grid-template' support.
1892
1893         * css/CSSComputedStyleDeclaration.cpp:
1894         (WebCore::ComputedStyleExtractor::propertyValue):
1895         * css/CSSParser.cpp:
1896         (WebCore::CSSParser::parseValue):
1897         (WebCore::CSSParser::parseGridItemPositionShorthand):
1898         * css/CSSPropertyNames.in:
1899         * css/StylePropertySet.cpp:
1900         (WebCore::StylePropertySet::getPropertyValue):
1901         * css/StylePropertyShorthand.cpp:
1902         (WebCore::webkitGridAreaShorthand):
1903         (WebCore::shorthandForProperty):
1904         * css/StylePropertyShorthand.h:
1905         * css/StyleResolver.cpp:
1906         (WebCore::StyleResolver::applyProperty):
1907
1908 2013-09-30  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1909
1910         Generate toCSSFooValue for CSSGradientValue, CSSLinearGradientValue and CSSRadialGradient
1911         https://bugs.webkit.org/show_bug.cgi?id=122060
1912
1913         Reviewed by Antti Koivisto.
1914
1915         As a step to generate toCSSFooValue, toCSSGradientValuem toCSSLinearGradientValue and
1916         toCSSRadialGradient are generated. isLinearGradient() and isRadialGradient() are moved
1917         from each class to CSSValue in order to generate toCSSFooValue.
1918
1919         No new tests, no behavior change.
1920
1921         * css/CSSGradientValue.cpp:
1922         (WebCore::CSSGradientValue::image):
1923         (WebCore::CSSGradientValue::gradientWithStylesResolved):
1924         * css/CSSGradientValue.h:
1925         * css/CSSImageGeneratorValue.cpp:
1926         (WebCore::CSSImageGeneratorValue::image):
1927         (WebCore::CSSImageGeneratorValue::fixedSize):
1928         (WebCore::CSSImageGeneratorValue::loadSubimages):
1929         * css/CSSParser.cpp:
1930         (WebCore::CSSParser::parseDeprecatedGradient):
1931         * css/CSSValue.cpp:
1932         (WebCore::CSSValue::destroy):
1933         * css/CSSValue.h:
1934         (WebCore::CSSValue::isLinearGradient):
1935         (WebCore::CSSValue::isRadialGradient):
1936         * css/StyleResolver.cpp:
1937         (WebCore::StyleResolver::applyProperty):
1938         (WebCore::StyleResolver::styleImage):
1939
1940 2013-09-30  Vani Hegde  <vani.hegde@samsung.com>
1941
1942         user-select: none cursor turns to I-beam on mouse dragging
1943         https://bugs.webkit.org/show_bug.cgi?id=90159
1944
1945         Reviewed by Ryosuke Niwa.
1946
1947         When tried to select some text in an area that has style
1948         cursor:default set, cursor type changes to text cursor ignoring
1949         the cursor style that is explicitly set.
1950
1951         When the cursor style is explicitly set as default (or something else),
1952         we should not change it to text cursor no matter what we are over
1953         or what operation we are performing (be it hovering over the text
1954         or selecting the text).
1955
1956         During text selection, changing the cursor type to text only when
1957         there is no explicit cursor type set fixes the issue.
1958
1959         Test: editing/caret/selection-with-caret-type-progress.html
1960
1961         * page/EventHandler.cpp:
1962         (WebCore::EventHandler::selectCursor):
1963         During selection, set the cursor style to text only if there is no
1964         explicit cursor style set.
1965
1966 2013-09-29  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1967
1968         Generate toCSSFooValue() for CSSCanvasValue
1969         https://bugs.webkit.org/show_bug.cgi?id=122058
1970
1971         Reviewed by Antti Koivisto.
1972
1973         Generate toCSSFooValue() for CSSCanvasValue, and use it.
1974         This type cast function will help to detect bad-casts.
1975         isCanvasValue() is added in order to generate toCSSCanvasValue.
1976
1977         No new tests, no behavior change.
1978
1979         * css/CSSCanvasValue.h:
1980         * css/CSSImageGeneratorValue.cpp:
1981         (WebCore::CSSImageGeneratorValue::image):
1982         (WebCore::CSSImageGeneratorValue::fixedSize):
1983         (WebCore::CSSImageGeneratorValue::loadSubimages):
1984         * css/CSSValue.cpp:
1985         (WebCore::CSSValue::destroy):
1986         * css/CSSValue.h:
1987         (WebCore::CSSValue::isCanvasValue):
1988
1989 2013-09-29  Mark Rowe  <mrowe@apple.com>
1990
1991         Fix the Lion build.
1992
1993         Ensure that C++ and Objective-C++ files build with the right compiler flags.
1994
1995         * Configurations/WebCore.xcconfig:
1996
1997 2013-09-29  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1998
1999         Generate toCSSFooValue() for CSSLineBoxContainValue
2000         https://bugs.webkit.org/show_bug.cgi?id=122054
2001
2002         Reviewed by Darin Adler.
2003
2004         As a step to use toCSSFooValue, toCSSLineBoxContainValue is generated by using
2005         CSS_VALUE_TYPE_CASTS. To use it, isCSSLineBoxContainValue() is changed to
2006         isLineBoxContatinValue(). Unnecessary local variable is removed by this patch.
2007
2008         No new tests, no behavior changes.
2009
2010         * css/CSSLineBoxContainValue.h:
2011         * css/CSSValue.cpp:
2012         (WebCore::CSSValue::destroy):
2013         * css/CSSValue.h:
2014         (WebCore::CSSValue::isLineBoxContainValue):
2015         * css/StyleResolver.cpp:
2016         (WebCore::StyleResolver::applyProperty):
2017
2018 2013-09-29  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2019
2020         Generate toCSSCrossfadeValue() instead of using manual function
2021         https://bugs.webkit.org/show_bug.cgi?id=122057
2022
2023         Reviewed by Antti Koivisto.
2024
2025         Generated toCSSFooValue() supports more plenty functions rather than
2026         to use manual cast function.
2027
2028         No new tests, no behavior changes.
2029
2030         * css/CSSCrossfadeValue.h:
2031         * css/CSSImageGeneratorValue.cpp:
2032         (WebCore::CSSImageGeneratorValue::image):
2033         (WebCore::CSSImageGeneratorValue::fixedSize):
2034         (WebCore::CSSImageGeneratorValue::loadSubimages):
2035         * css/CSSValue.cpp:
2036         (WebCore::CSSValue::destroy):
2037
2038 2013-09-29  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2039
2040         Generate toCSSFooValue() for CSSFilterImageValue and CSSInitialValue
2041         https://bugs.webkit.org/show_bug.cgi?id=122056
2042
2043         Reviewed by Antti Koivisto.
2044
2045         Generate toCSSFooValue() for CSSFilterImageValue and CSSInitialValue, and use it.
2046         This type cast function will help to detect bad-casts.
2047
2048         No new tests, no behavior changes.
2049
2050         * css/CSSFilterImageValue.h:
2051         * css/CSSImageGeneratorValue.cpp:
2052         (WebCore::CSSImageGeneratorValue::image):
2053         (WebCore::CSSImageGeneratorValue::fixedSize):
2054         (WebCore::CSSImageGeneratorValue::loadSubimages):
2055         * css/CSSInitialValue.h:
2056         * css/CSSValue.cpp:
2057         (WebCore::CSSValue::destroy):
2058         * css/StyleResolver.cpp:
2059         (WebCore::StyleResolver::generatedOrPendingFromValue):
2060
2061 2013-09-29  Darin Adler  <darin@apple.com>
2062
2063         Fix crashes caused by my recent attempt at a Windows build fix.
2064
2065         * bindings/js/WebCoreTypedArrayController.cpp:
2066         (WebCore::WebCoreTypedArrayController::toJS): Added back the prefix for the call to
2067         WebCore::toJS, otherwise this function just calls itself infinitely recursively.
2068
2069 2013-09-29  Sam Weinig  <sam@webkit.org>
2070
2071         Cleanup PageThrottler and PageConsole a bit
2072         https://bugs.webkit.org/show_bug.cgi?id=122085
2073
2074         Reviewed by Anders Carlsson.
2075
2076         * html/HTMLMediaElement.h:
2077         * loader/FrameLoader.cpp:
2078         (WebCore::FrameLoader::completed):
2079         * loader/FrameLoader.h:
2080         * loader/SubresourceLoader.cpp:
2081         (WebCore::SubresourceLoader::checkForHTTPStatusCodeError):
2082         (WebCore::SubresourceLoader::didFinishLoading):
2083         (WebCore::SubresourceLoader::didFail):
2084         (WebCore::SubresourceLoader::willCancel):
2085         * loader/SubresourceLoader.h:
2086         Store the PageActivityAssertionToken as a std::unique_ptr.
2087
2088         * page/Page.cpp:
2089         (WebCore::Page::Page):
2090         Use createOwned and pass this by reference for the PageThrottler and PageConsole.
2091         (WebCore::Page::~Page):
2092         Remove unnecessary clearing of an OwnPtr that is about to be destroyed.
2093         * page/Page.h:
2094         Make m_pageThrottler const and return it as a reference.
2095
2096         * page/PageActivityAssertionToken.cpp:
2097         (WebCore::PageActivityAssertionToken::PageActivityAssertionToken):
2098         (WebCore::PageActivityAssertionToken::~PageActivityAssertionToken):
2099         * page/PageActivityAssertionToken.h:
2100         Take the PageThrottler by reference in the constructor. It is never null.
2101
2102         * page/PageConsole.cpp:
2103         (WebCore::PageConsole::PageConsole):
2104         (WebCore::PageConsole::~PageConsole):
2105         (WebCore::PageConsole::addMessage):
2106         * page/PageConsole.h:
2107         Pass and store the Page as a reference and remove an extraneous null check. Remove
2108         the create function.
2109
2110         * page/PageThrottler.cpp:
2111         (WebCore::PageThrottler::PageThrottler):
2112         (WebCore::PageThrottler::~PageThrottler):
2113         (WebCore::PageThrottler::createActivityToken):
2114         (WebCore::PageThrottler::throttlePage):
2115         (WebCore::PageThrottler::unthrottlePage):
2116         (WebCore::PageThrottler::addActivityToken):
2117         (WebCore::PageThrottler::removeActivityToken):
2118         * page/PageThrottler.h:
2119         Pass and store the Page as a reference. Move the creation of PageActivityAssertionToken here
2120         to aid encapsulation.
2121
2122 2013-09-29  Darin Adler  <darin@apple.com>
2123
2124         Try to fix Windows build.
2125
2126         * bindings/js/WebCoreTypedArrayController.cpp: Windows has a symbol named Handle, so we need
2127         to call JSC::Handle out by name. To fix that, I removed "using namespace JSC" entirely. And
2128         just for fun, sort of "rewrote" this file.
2129         (WebCore::WebCoreTypedArrayController::WebCoreTypedArrayController): Removed unneeded explicit
2130         initialization of m_owner.
2131         (WebCore::WebCoreTypedArrayController::~WebCoreTypedArrayController): Fixed formatting.
2132         (WebCore::WebCoreTypedArrayController::toJS): Added lots of explicit JSC and got rid of local.
2133         (WebCore::WebCoreTypedArrayController::JSArrayBufferOwner::isReachableFromOpaqueRoots): Cut
2134         down on locals, used auto& for type, and called it "wrapper" since that's what JSArrayBuffer is.
2135         (WebCore::WebCoreTypedArrayController::JSArrayBufferOwner::finalize): More of the same.
2136
2137 2013-09-29  Darin Adler  <darin@apple.com>
2138
2139         Use RenderElement instead of RenderObject in many places
2140         https://bugs.webkit.org/show_bug.cgi?id=122078
2141
2142         Reviewed by Andreas Kling.
2143
2144         * WebCore.exp.in: Updated for name changes.
2145
2146         * dom/ContainerNode.h: Moved renderer() here from Element.
2147         * dom/Element.h: Moved renderer() from here to ContainerNode.
2148         * render/RenderElement.h: Moved renderer() from Element to ContainerNode.
2149
2150         * accessibility/AccessibilityImageMapLink.cpp:
2151         (WebCore::AccessibilityImageMapLink::imageMapLinkRenderer):
2152         (WebCore::AccessibilityImageMapLink::detachFromParent):
2153         (WebCore::AccessibilityImageMapLink::elementPath):
2154         (WebCore::AccessibilityImageMapLink::elementRect):
2155         * accessibility/AccessibilityImageMapLink.h:
2156         * accessibility/AccessibilityRenderObject.cpp:
2157         (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
2158         * bindings/objc/DOM.mm:
2159         (-[DOMElement image]):
2160         (-[DOMElement _font]):
2161         (-[DOMElement _imageTIFFRepresentation]):
2162         * css/CSSCanvasValue.cpp:
2163         (WebCore::CSSCanvasValue::canvasChanged):
2164         (WebCore::CSSCanvasValue::canvasResized):
2165         (WebCore::CSSCanvasValue::canvasDestroyed):
2166         (WebCore::CSSCanvasValue::fixedSize):
2167         (WebCore::CSSCanvasValue::image):
2168         * css/CSSCanvasValue.h:
2169         * css/CSSComputedStyleDeclaration.cpp:
2170         (WebCore::computeRenderStyleForProperty):
2171         * css/CSSCrossfadeValue.cpp:
2172         (WebCore::subimageKnownToBeOpaque):
2173         (WebCore::CSSCrossfadeValue::fixedSize):
2174         (WebCore::CSSCrossfadeValue::knownToBeOpaque):
2175         (WebCore::CSSCrossfadeValue::image):
2176         (WebCore::CSSCrossfadeValue::crossfadeChanged):
2177         * css/CSSCrossfadeValue.h:
2178         * css/CSSFilterImageValue.cpp:
2179         (WebCore::CSSFilterImageValue::fixedSize):
2180         (WebCore::CSSFilterImageValue::knownToBeOpaque):
2181         (WebCore::CSSFilterImageValue::image):
2182         (WebCore::CSSFilterImageValue::filterImageChanged):
2183         * css/CSSFilterImageValue.h:
2184         * css/CSSFontSelector.cpp:
2185         * css/CSSGradientValue.cpp:
2186         (WebCore::CSSGradientValue::image):
2187         (WebCore::CSSGradientValue::addStops):
2188         (WebCore::CSSGradientValue::knownToBeOpaque):
2189         (WebCore::CSSLinearGradientValue::createGradient):
2190         (WebCore::CSSRadialGradientValue::createGradient):
2191         * css/CSSGradientValue.h:
2192         (WebCore::CSSGradientValue::fixedSize):
2193         * css/CSSImageGeneratorValue.cpp:
2194         (WebCore::CSSImageGeneratorValue::addClient):
2195         (WebCore::CSSImageGeneratorValue::removeClient):
2196         (WebCore::CSSImageGeneratorValue::image):
2197         (WebCore::CSSImageGeneratorValue::fixedSize):
2198         (WebCore::CSSImageGeneratorValue::knownToBeOpaque):
2199         * css/CSSImageGeneratorValue.h:
2200         (WebCore::CSSImageGeneratorValue::clients):
2201         * css/CSSImageValue.cpp:
2202         (WebCore::CSSImageValue::knownToBeOpaque):
2203         * css/CSSImageValue.h:
2204         * css/DeprecatedStyleBuilder.cpp:
2205         * dom/DocumentMarkerController.cpp:
2206         (WebCore::DocumentMarkerController::removeMarkersFromList):
2207         (WebCore::DocumentMarkerController::repaintMarkers):
2208         * dom/Element.cpp:
2209         (WebCore::localZoomForRenderer):
2210         (WebCore::adjustForLocalZoom):
2211         (WebCore::Element::offsetParent):
2212         (WebCore::Element::updateExistingPseudoElement):
2213         * dom/ElementRareData.h:
2214         (WebCore::ElementRareData::create):
2215         (WebCore::ElementRareData::ElementRareData):
2216         * dom/Node.cpp:
2217         (WebCore::Node::ensureRareData):
2218         * editing/DeleteButtonController.cpp:
2219         (WebCore::isDeletableElement):
2220         * editing/Editor.cpp:
2221         (WebCore::Editor::hasBidiSelection):
2222         (WebCore::Editor::baseWritingDirectionForSelectionStart):
2223         * editing/EditorCommand.cpp:
2224         (WebCore::verticalScrollDistance):
2225         * editing/htmlediting.cpp:
2226         (WebCore::directionOfEnclosingBlock):
2227         * editing/ios/EditorIOS.mm:
2228         (WebCore::Editor::fontForSelection):
2229         (WebCore::getImage):
2230         * editing/mac/EditorMac.mm:
2231         (WebCore::Editor::fontForSelection):
2232         (WebCore::getImage):
2233         * editing/markup.cpp:
2234         * html/HTMLAreaElement.cpp:
2235         (WebCore::HTMLAreaElement::computePath):
2236         (WebCore::HTMLAreaElement::computeRect):
2237         (WebCore::HTMLAreaElement::setFocus):
2238         * html/HTMLAreaElement.h:
2239         * html/HTMLCanvasElement.cpp:
2240         (WebCore::HTMLCanvasElement::reset):
2241         * html/HTMLElement.cpp:
2242         (WebCore::HTMLElement::setInnerText):
2243         * html/HTMLFormControlElement.cpp:
2244         (WebCore::updateFromElementCallback):
2245         * html/HTMLFormElement.cpp:
2246         (WebCore::HTMLFormElement::rendererIsNeeded):
2247         * html/HTMLFrameOwnerElement.h:
2248         * html/HTMLImageElement.cpp:
2249         (WebCore::HTMLImageElement::x):
2250         (WebCore::HTMLImageElement::y):
2251         (WebCore::HTMLImageElement::willRespondToMouseClickEvents):
2252         * html/HTMLMapElement.cpp:
2253         * html/HTMLMediaElement.cpp:
2254         (WebCore::HTMLMediaElement::defaultEventHandler):
2255         * html/HTMLMeterElement.cpp:
2256         (WebCore::HTMLMeterElement::renderMeter):
2257         * html/HTMLOptionElement.cpp:
2258         (WebCore::HTMLOptionElement::didRecalcStyle):
2259         * html/HTMLPlugInElement.cpp:
2260         (WebCore::HTMLPlugInElement::willRespondToMouseClickEvents):
2261         (WebCore::HTMLPlugInElement::defaultEventHandler):
2262         (WebCore::HTMLPlugInElement::isKeyboardFocusable):
2263         * html/HTMLPlugInImageElement.cpp:
2264         (WebCore::HTMLPlugInImageElement::defaultEventHandler):
2265         * html/HTMLProgressElement.cpp:
2266         (WebCore::HTMLProgressElement::renderProgress):
2267         * html/HTMLSelectElement.cpp:
2268         (WebCore::HTMLSelectElement::scrollToSelection):
2269         (WebCore::HTMLSelectElement::setOptionsChangedOnRenderer):
2270         (WebCore::HTMLSelectElement::selectOption):
2271         * html/HTMLTableCellElement.cpp:
2272         (WebCore::HTMLTableCellElement::cellAbove):
2273         * html/HTMLTextFormControlElement.cpp:
2274         (WebCore::hasVisibleTextArea):
2275         (WebCore::HTMLTextFormControlElement::setSelectionRange):
2276         * html/InputType.h:
2277         * html/parser/HTMLResourcePreloader.cpp:
2278         * html/shadow/MediaControlElementTypes.cpp:
2279         (WebCore::MediaControlElement::setDisplayType):
2280         * html/shadow/MediaControlElements.cpp:
2281         (WebCore::MediaControlPanelElement::startDrag):
2282         (WebCore::MediaControlTextTrackContainerElement::createTextTrackRepresentationImage):
2283         * html/shadow/MeterShadowElement.cpp:
2284         (WebCore::MeterShadowElement::rendererIsNeeded):
2285         (WebCore::MeterInnerElement::rendererIsNeeded):
2286         * inspector/InspectorOverlay.cpp:
2287         * inspector/InspectorTimelineAgent.cpp:
2288         * inspector/InspectorTimelineAgent.h:
2289         * loader/ImageLoader.cpp:
2290         (WebCore::ImageLoader::renderImageResource):
2291         * loader/cache/CachedImage.cpp:
2292         (WebCore::CachedImage::currentFrameKnownToBeOpaque):
2293         * loader/cache/CachedImage.h:
2294         * mathml/MathMLElement.cpp:
2295         * page/ContextMenuController.cpp:
2296         * page/DragController.cpp:
2297         (WebCore::DragController::draggableElement):
2298         * page/EventHandler.cpp:
2299         (WebCore::EventHandler::EventHandler):
2300         (WebCore::EventHandler::clear):
2301         (WebCore::EventHandler::startPanScrolling):
2302         (WebCore::EventHandler::autoscrollRenderer):
2303         (WebCore::EventHandler::scrollOverflow):
2304         (WebCore::EventHandler::logicalScrollOverflow):
2305         (WebCore::EventHandler::subframeForTargetNode):
2306         (WebCore::EventHandler::selectCursor):
2307         (WebCore::layerForNode):
2308         (WebCore::EventHandler::handleWheelEvent):
2309         (WebCore::EventHandler::clearGestureScrollNodes):
2310         * page/EventHandler.h:
2311         * page/FocusController.cpp:
2312         * page/Frame.cpp:
2313         (WebCore::Frame::ownerRenderer):
2314         (WebCore::Frame::visiblePositionForPoint):
2315         (WebCore::Frame::nodeImage):
2316         * page/FrameView.cpp:
2317         (WebCore::FrameView::applyOverflowToViewport):
2318         (WebCore::FrameView::applyPaginationToViewport):
2319         (WebCore::FrameView::calculateScrollbarModesForLayout):
2320         (WebCore::FrameView::isEnclosedInCompositingLayer):
2321         (WebCore::FrameView::embeddedContentBox):
2322         (WebCore::FrameView::addSlowRepaintObject):
2323         (WebCore::FrameView::removeSlowRepaintObject):
2324         (WebCore::FrameView::addViewportConstrainedObject):
2325         (WebCore::FrameView::removeViewportConstrainedObject):
2326         (WebCore::FrameView::scrollContentsFastPath):
2327         (WebCore::FrameView::repaintSlowRepaintObjects):
2328         (WebCore::FrameView::setViewportConstrainedObjectsNeedLayout):
2329         (WebCore::FrameView::updateOverflowStatus):
2330         (WebCore::FrameView::updateScrollCorner):
2331         (WebCore::FrameView::paintContents):
2332         (WebCore::FrameView::convertFromRenderer):
2333         (WebCore::FrameView::convertToRenderer):
2334         * page/FrameView.h:
2335         * page/PageSerializer.cpp:
2336         (WebCore::PageSerializer::addImageToResources):
2337         * page/PageSerializer.h:
2338         * page/animation/AnimationBase.cpp:
2339         (WebCore::AnimationBase::AnimationBase):
2340         (WebCore::AnimationBase::updateStateMachine):
2341         * page/animation/AnimationBase.h:
2342         (WebCore::AnimationBase::renderer):
2343         * page/animation/AnimationController.cpp:
2344         (WebCore::AnimationControllerPrivate::ensureCompositeAnimation):
2345         (WebCore::AnimationControllerPrivate::clear):
2346         (WebCore::AnimationControllerPrivate::updateAnimations):
2347         (WebCore::AnimationControllerPrivate::updateAnimationTimerForRenderer):
2348         (WebCore::AnimationControllerPrivate::isRunningAnimationOnRenderer):
2349         (WebCore::AnimationControllerPrivate::isRunningAcceleratedAnimationOnRenderer):
2350         (WebCore::AnimationControllerPrivate::suspendAnimationsForDocument):
2351         (WebCore::AnimationControllerPrivate::resumeAnimationsForDocument):
2352         (WebCore::AnimationControllerPrivate::pauseAnimationAtTime):
2353         (WebCore::AnimationControllerPrivate::pauseTransitionAtTime):
2354         (WebCore::AnimationControllerPrivate::getAnimatedStyleForRenderer):
2355         (WebCore::AnimationControllerPrivate::numberOfActiveAnimations):
2356         (WebCore::AnimationController::cancelAnimations):
2357         (WebCore::AnimationController::updateAnimations):
2358         (WebCore::AnimationController::getAnimatedStyleForRenderer):
2359         (WebCore::AnimationController::notifyAnimationStarted):
2360         (WebCore::AnimationController::pauseAnimationAtTime):
2361         (WebCore::AnimationController::pauseTransitionAtTime):
2362         (WebCore::AnimationController::isRunningAnimationOnRenderer):
2363         (WebCore::AnimationController::isRunningAcceleratedAnimationOnRenderer):
2364         * page/animation/AnimationController.h:
2365         * page/animation/AnimationControllerPrivate.h:
2366         * page/animation/CSSPropertyAnimation.cpp:
2367         (WebCore::crossfadeBlend):
2368         * page/animation/CompositeAnimation.cpp:
2369         (WebCore::CompositeAnimation::updateTransitions):
2370         (WebCore::CompositeAnimation::updateKeyframeAnimations):
2371         (WebCore::CompositeAnimation::animate):
2372         * page/animation/CompositeAnimation.h:
2373         * page/animation/ImplicitAnimation.cpp:
2374         (WebCore::ImplicitAnimation::ImplicitAnimation):
2375         (WebCore::ImplicitAnimation::animate):
2376         (WebCore::ImplicitAnimation::pauseAnimation):
2377         (WebCore::ImplicitAnimation::sendTransitionEvent):
2378         * page/animation/ImplicitAnimation.h:
2379         (WebCore::ImplicitAnimation::create):
2380         * page/animation/KeyframeAnimation.cpp:
2381         (WebCore::KeyframeAnimation::KeyframeAnimation):
2382         (WebCore::KeyframeAnimation::animate):
2383         (WebCore::KeyframeAnimation::pauseAnimation):
2384         (WebCore::KeyframeAnimation::endAnimation):
2385         (WebCore::KeyframeAnimation::sendAnimationEvent):
2386         * page/animation/KeyframeAnimation.h:
2387         * page/mac/EventHandlerMac.mm:
2388         (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
2389         (WebCore::EventHandler::passSubframeEventToSubframe):
2390         * page/mac/FrameSnapshottingMac.mm:
2391         (WebCore::snapshotDragImage):
2392         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
2393         (WebCore::MediaPlayerPrivateQTKit::paint):
2394         * rendering/CounterNode.cpp:
2395         (WebCore::CounterNode::CounterNode):
2396         (WebCore::CounterNode::create):
2397         * rendering/CounterNode.h:
2398         (WebCore::CounterNode::owner):
2399         * rendering/FilterEffectRenderer.cpp:
2400         (WebCore::FilterEffectRenderer::buildReferenceFilter):
2401         (WebCore::FilterEffectRenderer::build):
2402         * rendering/FilterEffectRenderer.h:
2403         * rendering/HitTestResult.cpp:
2404         (WebCore::HitTestResult::spellingToolTip):
2405         (WebCore::HitTestResult::title):
2406         (WebCore::HitTestResult::innerTextIfTruncated):
2407         (WebCore::HitTestResult::image):
2408         * rendering/LayoutRepainter.cpp:
2409         (WebCore::LayoutRepainter::LayoutRepainter):
2410         * rendering/LayoutRepainter.h:
2411         * rendering/LayoutState.h:
2412         (WebCore::LayoutState::LayoutState):
2413         * rendering/LineWidth.h:
2414         * rendering/LogicalSelectionOffsetCaches.h:
2415         (WebCore::isContainingBlockCandidateForAbsolutelyPositionedObject):
2416         (WebCore::isNonRenderBlockInline):
2417         (WebCore::containingBlockForFixedPosition):
2418         (WebCore::containingBlockForAbsolutePosition):
2419         (WebCore::containingBlockForObjectInFlow):
2420         (WebCore::LogicalSelectionOffsetCaches::LogicalSelectionOffsetCaches):
2421         * rendering/PaintInfo.h:
2422         (WebCore::PaintInfo::PaintInfo):
2423         (WebCore::PaintInfo::updateSubtreePaintRootForChildren):
2424         * rendering/RenderBox.cpp:
2425         (WebCore::RenderBox::paintFillLayers):
2426         (WebCore::RenderBox::paintFillLayer):
2427         * rendering/RenderBox.h:
2428         * rendering/RenderBoxModelObject.cpp:
2429         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
2430         (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):
2431         * rendering/RenderBoxModelObject.h:
2432         * rendering/RenderCounter.cpp:
2433         (WebCore::nextInPreOrder):
2434         (WebCore::planCounter):
2435         (WebCore::makeCounterNode):
2436         (WebCore::RenderCounter::originalText):
2437         * rendering/RenderElement.cpp:
2438         (WebCore::RenderElement::~RenderElement):
2439         (WebCore::RenderElement::insertChildInternal):
2440         (WebCore::RenderElement::removeChildInternal):
2441         (WebCore::RenderElement::willBeDestroyed):
2442         (WebCore::RenderElement::rendererForRootBackground):
2443         * rendering/RenderImageResource.cpp:
2444         (WebCore::RenderImageResource::initialize):
2445         * rendering/RenderImageResource.h:
2446         * rendering/RenderImageResourceStyleImage.cpp:
2447         (WebCore::RenderImageResourceStyleImage::initialize):
2448         * rendering/RenderImageResourceStyleImage.h:
2449         (WebCore::RenderImageResourceStyleImage::create):
2450         * rendering/RenderLayerCompositor.cpp:
2451         (WebCore::RenderLayerCompositor::shouldPropagateCompositingToEnclosingFrame):
2452         (WebCore::RenderLayerCompositor::requiresCompositingLayer):
2453         (WebCore::RenderLayerCompositor::canBeComposited):
2454         (WebCore::RenderLayerCompositor::requiresOwnBackingStore):
2455         (WebCore::RenderLayerCompositor::reasonsForCompositing):
2456         (WebCore::RenderLayerCompositor::requiresCompositingForTransform):
2457         (WebCore::RenderLayerCompositor::requiresCompositingForVideo):
2458         (WebCore::RenderLayerCompositor::requiresCompositingForCanvas):
2459         (WebCore::RenderLayerCompositor::requiresCompositingForPlugin):
2460         (WebCore::RenderLayerCompositor::requiresCompositingForFrame):
2461         (WebCore::RenderLayerCompositor::requiresCompositingForAnimation):
2462         (WebCore::RenderLayerCompositor::requiresCompositingForIndirectReason):
2463         (WebCore::RenderLayerCompositor::requiresCompositingForFilters):
2464         (WebCore::RenderLayerCompositor::requiresCompositingForBlending):
2465         (WebCore::RenderLayerCompositor::requiresCompositingForPosition):
2466         (WebCore::RenderLayerCompositor::isRunningAcceleratedTransformAnimation):
2467         * rendering/RenderLayerCompositor.h:
2468         * rendering/RenderObject.cpp:
2469         (WebCore::RenderObject::containingBlock):
2470         (WebCore::mustRepaintFillLayers):
2471         (WebCore::RenderObject::borderImageIsLoadedAndCanBeRendered):
2472         (WebCore::RenderObject::willBeDestroyed):
2473         * rendering/RenderScrollbarPart.cpp:
2474         (WebCore::RenderScrollbarPart::rendererOwningScrollbar):
2475         * rendering/RenderScrollbarPart.h:
2476         * rendering/RenderTableCell.cpp:
2477         (WebCore::RenderTableCell::paintBackgroundsBehindCell):
2478         * rendering/RenderTableCell.h:
2479         * rendering/RenderView.cpp:
2480         (WebCore::RenderView::RenderView):
2481         * rendering/style/FillLayer.cpp:
2482         (WebCore::FillLayer::hasOpaqueImage):
2483         * rendering/style/FillLayer.h:
2484         * rendering/style/KeyframeList.h:
2485         (WebCore::KeyframeList::KeyframeList):
2486         * rendering/style/StyleCachedImage.cpp:
2487         (WebCore::StyleCachedImage::imageSize):
2488         (WebCore::StyleCachedImage::computeIntrinsicDimensions):
2489         (WebCore::StyleCachedImage::setContainerSizeForRenderer):
2490         (WebCore::StyleCachedImage::addClient):
2491         (WebCore::StyleCachedImage::removeClient):
2492         (WebCore::StyleCachedImage::image):
2493         (WebCore::StyleCachedImage::knownToBeOpaque):
2494         * rendering/style/StyleCachedImage.h:
2495         * rendering/style/StyleCachedImageSet.cpp:
2496         (WebCore::StyleCachedImageSet::imageSize):
2497         (WebCore::StyleCachedImageSet::computeIntrinsicDimensions):
2498         (WebCore::StyleCachedImageSet::setContainerSizeForRenderer):
2499         (WebCore::StyleCachedImageSet::addClient):
2500         (WebCore::StyleCachedImageSet::removeClient):
2501         (WebCore::StyleCachedImageSet::image):
2502         (WebCore::StyleCachedImageSet::knownToBeOpaque):
2503         * rendering/style/StyleCachedImageSet.h:
2504         * rendering/style/StyleGeneratedImage.cpp:
2505         (WebCore::StyleGeneratedImage::imageSize):
2506         (WebCore::StyleGeneratedImage::computeIntrinsicDimensions):
2507         (WebCore::StyleGeneratedImage::addClient):
2508         (WebCore::StyleGeneratedImage::removeClient):
2509         (WebCore::StyleGeneratedImage::image):
2510         (WebCore::StyleGeneratedImage::knownToBeOpaque):
2511         * rendering/style/StyleGeneratedImage.h:
2512         * rendering/style/StyleImage.h:
2513         (WebCore::StyleImage::imagesEquivalent):
2514         * rendering/style/StylePendingImage.h:
2515         (WebCore::StylePendingImage::cssImageValue):
2516         (WebCore::StylePendingImage::cssImageGeneratorValue):
2517         (WebCore::StylePendingImage::cssCursorImageValue):
2518         (WebCore::StylePendingImage::cssImageSetValue):
2519         (WebCore::StylePendingImage::computeIntrinsicDimensions):
2520         * testing/Internals.cpp:
2521         (WebCore::Internals::boundingBox):
2522         (WebCore::Internals::isSelectPopupVisible):
2523         (WebCore::Internals::isPluginUnavailabilityIndicatorObscured):
2524         Use RenderElement instead of RenderObject where it was easy to do so.
2525         For local variables holding the return value of renderer() functions,
2526         use auto instead, so the most-specific possible type will be used,
2527         without having to figure out what that is in each case. Also use some
2528         more OVERRIDE and FINAL and use nullptr instead of 0. And replace some
2529         cryptic short local variable names with words.
2530
2531 2013-09-29  Philip Rogers  <pdr@google.com>
2532
2533         Repaint borders and outlines on pseudo content changes
2534         https://bugs.webkit.org/show_bug.cgi?id=122070
2535
2536         Reviewed by Andreas Kling.
2537
2538         This patch fixes a regression from wkrev.com/150259 where pseudo content with
2539         borders or outlines would fail to repaint if the color property changed.
2540         The root bug is that border-color and outline-color properties use 'color' if
2541         no explicit border-color or outline-color are given, and changing color should
2542         repaint borders and outlines even if the text content is empty.
2543
2544         Relevant spec sections:
2545         border: http://www.w3.org/TR/CSS1/#border-color
2546         outline: http://www.w3.org/TR/CSS2/ui.html#propdef-outline-color
2547
2548         This patch also renames StyleDifferenceRepaintIfText to
2549         StyleDifferenceRepaintIfTextOrBorderOrOutline and updates the relevant functions.
2550
2551         Test: fast/repaint/hover-pseudo-borders.html
2552
2553         * rendering/RenderElement.cpp:
2554         (WebCore::RenderElement::hasImmediateNonWhitespaceTextChildOrBorderOrOutline):
2555
2556             This function has been renamed to reflect that it returns true for borders
2557             or outlines as well.
2558
2559         (WebCore::RenderElement::shouldRepaintForStyleDifference):
2560         * rendering/RenderElement.h:
2561         * rendering/style/RenderStyle.cpp:
2562         (WebCore::RenderStyle::changeRequiresRepaintIfTextOrBorderOrOutline):
2563         (WebCore::RenderStyle::diff):
2564         * rendering/style/RenderStyle.h:
2565         * rendering/style/RenderStyleConstants.h:
2566         * rendering/svg/SVGResourcesCache.cpp:
2567         (WebCore::SVGResourcesCache::clientStyleChanged):
2568             These have also been renamed to reflect the new borders and outlines check.
2569
2570 2013-09-29  Antti Koivisto  <antti@apple.com>
2571
2572         Tighten typing in inline rendering
2573         https://bugs.webkit.org/show_bug.cgi?id=122076
2574
2575         Reviewed by Andreas Kling.
2576         
2577         More RenderElement, const, &, etc.
2578
2579         * dom/Position.cpp:
2580         (WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight):
2581         * rendering/InlineFlowBox.cpp:
2582         (WebCore::isLastChildForRenderer):
2583         (WebCore::isAncestorAndWithinBlock):
2584         (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
2585         (WebCore::InlineFlowBox::nodeAtPoint):
2586         * rendering/InlineIterator.h:
2587         (WebCore::InlineIterator::InlineIterator):
2588         (WebCore::InlineIterator::root):
2589         (WebCore::isEmptyInline):
2590         (WebCore::bidiNextShared):
2591         (WebCore::bidiNextSkippingEmptyInlines):
2592         (WebCore::bidiNextIncludingEmptyInlines):
2593         (WebCore::bidiFirstSkippingEmptyInlines):
2594         * rendering/RenderBlockLineLayout.cpp:
2595         (WebCore::inlineLogicalWidth):
2596         (WebCore::alwaysRequiresLineBox):
2597         (WebCore::requiresLineBox):
2598         (WebCore::canBreakAtThisPosition):
2599         (WebCore::LineBreaker::nextSegmentBreak):
2600         * rendering/shapes/ShapeInsideInfo.h:
2601         (WebCore::LineSegmentIterator::LineSegmentIterator):
2602
2603 2013-09-28  Sam Weinig  <sam@webkit.org>
2604
2605         Merge ScriptControllerBase into ScriptController
2606         https://bugs.webkit.org/show_bug.cgi?id=122071
2607
2608         Reviewed by Antti Koivisto.
2609
2610         There is no need for ScriptControllerBase. Remove it.
2611
2612         * CMakeLists.txt:
2613         * GNUmakefile.list.am:
2614         * Target.pri:
2615         * WebCore.vcxproj/WebCore.vcxproj:
2616         * WebCore.vcxproj/WebCore.vcxproj.filters:
2617         * WebCore.xcodeproj/project.pbxproj:
2618         * bindings/ScriptControllerBase.cpp: Removed.
2619         * bindings/ScriptControllerBase.h: Removed.
2620         * bindings/js/ScriptController.cpp:
2621         (WebCore::ScriptController::canExecuteScripts):
2622         (WebCore::ScriptController::executeScript):
2623         (WebCore::ScriptController::executeIfJavaScriptURL):
2624         * bindings/js/ScriptController.h:
2625
2626 2013-09-28  Zan Dobersek  <zdobersek@igalia.com>
2627
2628         Unreviewed build fix after r156613 for ports enabling CSS3_TEXT.
2629
2630         * rendering/RenderBlockLineLayout.cpp:
2631         (WebCore::requiresIndent): Use the RenderStyle reference.
2632
2633 2013-09-28  Antti Koivisto  <antti@apple.com>
2634
2635         Switch inline boxes to use const RenderStyle&
2636         https://bugs.webkit.org/show_bug.cgi?id=122068
2637
2638         Reviewed by Sam Weinig.
2639
2640 2013-09-28  Antti Koivisto  <antti@apple.com>
2641
2642         Add first()/last() to ElementIteratorAdapters
2643         https://bugs.webkit.org/show_bug.cgi?id=122067
2644
2645         Reviewed by Darin Adler.
2646
2647         Add a convenient way for getting the first and last element if it exists.
2648         
2649         Use it in some places.
2650
2651         * accessibility/AccessibilityNodeObject.cpp:
2652         (WebCore::AccessibilityNodeObject::canvasHasFallbackContent):
2653         * css/CSSFontFaceSource.cpp:
2654         (WebCore::CSSFontFaceSource::getFontData):
2655         * dom/Document.cpp:
2656         (WebCore::Document::childrenChanged):
2657         (WebCore::Document::removeTitle):
2658         * dom/ElementChildIterator.h:
2659         (WebCore::::first):
2660         (WebCore::::last):
2661         * dom/ElementDescendantIterator.h:
2662         (WebCore::::first):
2663         (WebCore::::last):
2664         * html/HTMLFieldSetElement.cpp:
2665         (WebCore::HTMLFieldSetElement::legend):
2666         * html/HTMLLegendElement.cpp:
2667         (WebCore::HTMLLegendElement::associatedControl):
2668         * html/HTMLMediaElement.cpp:
2669         (WebCore::HTMLMediaElement::finishParsingChildren):
2670         (WebCore::HTMLMediaElement::selectMediaResource):
2671         * svg/SVGElement.cpp:
2672         (WebCore::SVGElement::title):
2673         * svg/SVGFontFaceElement.cpp:
2674         (WebCore::SVGFontFaceElement::rebuildFontFace):
2675         * svg/graphics/SVGImage.cpp:
2676         (WebCore::SVGImage::hasSingleSecurityOrigin):
2677
2678 2013-09-28  Mark Rowe  <mrowe@apple.com>
2679
2680         Fix some failures with newer versions of clang.
2681
2682         Some CoreGraphics headers generate warnings under newer versions of clang. Since they're system headers the warnings would
2683         usually be suppressed, but we're adding the frameworks to the non-system framework search path so they're no longer treated
2684         as system headers. We address this by removing the system paths from FRAMEWORK_SEARCH_PATHS and using the -iframework compiler
2685         flag in OTHER_CFLAGS to add the paths to the system framework search path. We have to set OTHER_CFLAGS at the target level
2686         in order for it to coexist with the ASAN-related OTHER_CFLAGS that's set in DebugRelease.xcconfig.
2687
2688         Reviewed by Dan Bernstein.
2689
2690         * Configurations/WebCore.xcconfig:
2691
2692 2013-09-28  Mark Rowe  <mrowe@apple.com>
2693
2694         Take Xcode's advice and enable some extra warnings.
2695
2696         Reviewed by Sam Weinig.
2697
2698         * Configurations/Base.xcconfig:
2699         * WebCore.xcodeproj/project.pbxproj:
2700         * dom/NamedNodeMap.cpp:
2701         (WebCore::NamedNodeMap::removeNamedItemNS): Use the correct constant.
2702
2703 2013-09-28  Sam Weinig  <sam@webkit.org>
2704
2705         CTTE: VisitedLinkState should hold a Document&
2706         https://bugs.webkit.org/show_bug.cgi?id=122066
2707
2708         Reviewed by Antti Koivisto.
2709
2710         The Document can never be null, so use a reference.
2711
2712 2013-09-27  Antti Koivisto  <antti@apple.com>
2713
2714         Clean up code for getting first line style
2715         https://bugs.webkit.org/show_bug.cgi?id=122037
2716
2717         Reviewed by Andreas Kling.
2718
2719         We have confusing RenderObject::style(bool firstLine). Get rid of it in favour of 
2720         just using RenderObject::firstLineStyle() where appropriate.
2721         
2722         Also switch to RenderStyle references in many places and move first line style caching
2723         code down to RenderElement.
2724
2725 2013-09-28  Darin Adler  <darin@apple.com>
2726
2727         Add Frame::mainFrame and Frame::isMainFrame
2728         https://bugs.webkit.org/show_bug.cgi?id=122064
2729
2730         Reviewed by Andreas Kling.
2731
2732         * WebCore.exp.in: Removed exports of FrameView::isMainFrameView and
2733         Page::frameIsMainFrame. Since the new isMainFrame function is inline, it
2734         does not need to be exported.
2735
2736         * history/PageCache.cpp:
2737         (WebCore::PageCache::markPagesForFullStyleRecalc):
2738         (WebCore::PageCache::markPagesForDeviceScaleChanged):
2739         These two were the only functions I found that really wanted the equivalent
2740         of Page::frameIsMainFrame, so wrote it out here instead of using a function
2741         call.
2742
2743         * inspector/InspectorAgent.cpp: Removed the unused isMainResourceLoader function.
2744         * inspector/InspectorAgent.h: Removed declarations of a few nonexistent or
2745         unused private member functions. Also removed the InjectedScriptForOriginMap
2746         typedef: It's mor readable to use the type directly
2747
2748         * loader/FrameLoader.h: Removed isLoadingMainFrame. It's not better than
2749         calling frame().isMainFrame() directly.
2750
2751         * page/Frame.cpp:
2752         (WebCore::Frame::Frame): Initialize m_mainFrame and call selfOnlyRef, keeping
2753         the MainFrame alive as long as any of its subframes is alive.
2754         (WebCore::Frame::~Frame): Call selfOnlyDeref.
2755         (WebCore::Frame::createView): Use isMainFrame.
2756         (WebCore::Frame::setPageAndTextZoomFactors): Ditto.
2757
2758         * page/Frame.h: Added Frame::mainFrame, Frame::isMainFrame, and Frame::m_mainFrame.
2759
2760         * page/FrameView.h: Removed the isMainFrameView function. It's not better than
2761         calling frame().isMainFrame() directly.
2762
2763         * page/MainFrame.cpp:
2764         (WebCore::MainFrame::MainFrame): Initialize m_selfOnlyRefCount to 0.
2765         (WebCore::MainFrame::selfOnlyRef): Added.
2766         (WebCore::MainFrame::selfOnlyDeref): Added.
2767         (WebCore::MainFrame::dropChildren): Added. Called when the self-only reference
2768         count reaches 0 to avoid a reference cycle with subframes.
2769
2770         * page/MainFrame.h: Added new data members as mentioned above. Also, the
2771         definition of the Frame::isMainFrame inline function goes here, since it can't
2772         compile without the MainFrame class definition. This means that callers of
2773         isMainFrame need to include MainFrame.h, which seems reasonable and is easy
2774         to do.
2775
2776         * page/Page.cpp:
2777         * page/Page.h: Added assertion to Page::mainFrame since it returns a reference.
2778         Removed Page::frameIsMainFrame since it's not better than calling isMainFrame
2779         on the frame.
2780
2781         * dom/Document.cpp:
2782         (WebCore::Document::setVisualUpdatesAllowed):
2783         (WebCore::Document::didBecomeCurrentDocumentInFrame):
2784         (WebCore::Document::updateViewportArguments):
2785         (WebCore::Document::setInPageCache):
2786         (WebCore::Document::ensurePlugInsInjectedScript):
2787         * history/CachedFrame.cpp:
2788         (WebCore::CachedFrame::CachedFrame):
2789         * history/CachedPage.cpp:
2790         (WebCore::CachedPage::restore):
2791         * html/HTMLPlugInImageElement.cpp:
2792         (WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn):
2793         * html/ImageDocument.cpp:
2794         (WebCore::ImageDocument::shouldShrinkToFit):
2795         * inspector/InspectorController.cpp:
2796         (WebCore::InspectorController::didClearWindowObjectInWorld):
2797         * inspector/InspectorInstrumentation.cpp:
2798         (WebCore::InspectorInstrumentation::didCommitLoadImpl):
2799         * inspector/InspectorPageAgent.cpp:
2800         (WebCore::InspectorPageAgent::didClearWindowObjectInWorld):
2801         (WebCore::InspectorPageAgent::frameNavigated):
2802         * loader/DocumentLoader.cpp:
2803         (WebCore::DocumentLoader::willSendRequest):
2804         * loader/FrameLoader.cpp:
2805         (WebCore::FrameLoader::transitionToCommitted):
2806         (WebCore::FrameLoader::prepareForCachedPageRestore):
2807         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
2808         (WebCore::FrameLoader::didLayout):
2809         (WebCore::FrameLoader::checkLoadComplete):
2810         (WebCore::FrameLoader::addExtraFieldsToRequest):
2811         (WebCore::FrameLoader::loadResourceSynchronously):
2812         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
2813         (WebCore::FrameLoader::dispatchDidCommitLoad):
2814         (WebCore::FrameLoader::loadProgressingStatusChanged):
2815         * loader/HistoryController.cpp:
2816         (WebCore::HistoryController::saveScrollPositionAndViewStateToItem):
2817         (WebCore::HistoryController::restoreScrollPositionAndViewState):
2818         (WebCore::HistoryController::updateForCommit):
2819         (WebCore::HistoryController::updateForSameDocumentNavigation):
2820         (WebCore::HistoryController::updateBackForwardListClippedAtTarget):
2821         (WebCore::HistoryController::pushState):
2822         * loader/icon/IconController.cpp:
2823         (WebCore::IconController::startLoader):
2824         * page/AutoscrollController.cpp:
2825         (WebCore::AutoscrollController::stopAutoscrollTimer):
2826         * page/ContextMenuController.cpp:
2827         (WebCore::ContextMenuController::populate):
2828         * page/DOMWindow.cpp:
2829         (WebCore::allowsBeforeUnloadListeners):
2830         (WebCore::DOMWindow::focus):
2831         (WebCore::DOMWindow::blur):
2832         (WebCore::DOMWindow::close):
2833         (WebCore::DOMWindow::allowedToChangeWindowGeometry):
2834         * page/EventHandler.cpp:
2835         (WebCore::EventHandler::hitTestResultAtPoint):
2836         (WebCore::EventHandler::selectCursor):
2837         (WebCore::EventHandler::handleMousePressEvent):
2838         (WebCore::EventHandler::keyEvent):
2839         * page/FrameTree.cpp:
2840         (WebCore::FrameTree::find):
2841         (WebCore::FrameTree::traverseNextWithWrap):
2842         * page/FrameView.cpp:
2843         (WebCore::FrameView::FrameView):
2844         (WebCore::FrameView::setFrameRect):
2845         (WebCore::FrameView::createScrollbar):
2846         (WebCore::FrameView::applyOverflowToViewport):
2847         (WebCore::FrameView::setHeaderHeight):
2848         (WebCore::FrameView::setFooterHeight):
2849         (WebCore::FrameView::minimumScrollPosition):
2850         (WebCore::FrameView::maximumScrollPosition):
2851         (WebCore::FrameView::shouldUpdateFixedElementsAfterScrolling):
2852         (WebCore::FrameView::beginDeferredRepaints):
2853         (WebCore::FrameView::endDeferredRepaints):
2854         (WebCore::FrameView::performPostLayoutTasks):
2855         (WebCore::FrameView::sendResizeEventIfNeeded):
2856         (WebCore::FrameView::pagination):
2857         (WebCore::FrameView::visibleContentScaleFactor):
2858         (WebCore::FrameView::setVisibleScrollerThumbRect):
2859         (WebCore::FrameView::scrollbarStyleChanged):
2860         (WebCore::FrameView::paintScrollCorner):
2861         (WebCore::FrameView::paintScrollbar):
2862         (WebCore::FrameView::paintOverhangAreas):
2863         * page/scrolling/ScrollingCoordinator.cpp:
2864         (WebCore::ScrollingCoordinator::coordinatesScrollingForFrameView):
2865         * rendering/RenderLayerBacking.cpp:
2866         (WebCore::RenderLayerBacking::RenderLayerBacking):
2867         Use the new functions where possible instead of Page::frameIsMainFrame,
2868         Page::mainFrame, FrameLoader::isLoadingMainFrame, and FrameView::isMainFrameView.
2869
2870 2013-09-28  Gurpreet Kaur  <k.gurpreet@samsung.com>
2871
2872         filter: drop-shadow doesnot support viewport units
2873         https://bugs.webkit.org/show_bug.cgi?id=122053
2874
2875         Reviewed by Darin Adler.
2876
2877         drop-shadow properties were not applied incase its values
2878         were given in vh, vw, vmax, vmin units.
2879
2880         Tests: fast/css/drop-shadow-viewport-height.html
2881                fast/css/drop-shadow-viewport-vmax.html
2882                fast/css/drop-shadow-viewport-vmin.html
2883                fast/css/drop-shadow-viewport-width.html
2884
2885         * css/StyleResolver.cpp:
2886         (WebCore::StyleResolver::createFilterOperations):
2887         Calculating the drop-shadow values which has been specified in viewport
2888         units.The vh/vw units are calcultated as percent of viewport height and
2889         viewport width respectively. 1vmax: 1vw or 1vh, whatever is largest.
2890         1vmin: 1vw or 1vh, whatever is smallest.
2891
2892 2013-09-28  Gurpreet Kaur  <k.gurpreet@samsung.com>
2893
2894         REGRESSION (r154614): Setting the document scroll position isn't symmetric; can successfully set document.body.scrollTop, but can only read from document.documentElement.scrollTop
2895         https://bugs.webkit.org/show_bug.cgi?id=121876
2896
2897         Reviewed by Darin Adler.
2898
2899         Non-Quirks mode should set/get scrolltop/scrollleft through
2900         document.documentElement.scrollTop/document.documentElement.scrollLeft
2901         Quirks mode should set/get scrolltop/scrollleft through
2902         document.body.scrollTop/document.body.scrollLeft.
2903
2904         Tests: fast/dom/Element/body-scrollLeft-Quirks.html
2905                fast/dom/Element/body-scrollLeft.html
2906                fast/dom/Element/body-scrollTop-Quirks.html
2907                fast/dom/Element/body-scrollTop.html
2908                fast/dom/Element/documentElement-scrollLeft-Quirks.html
2909                fast/dom/Element/documentElement-scrollLeft.html
2910                fast/dom/Element/documentElement-scrollTop-Quirks.html
2911                fast/dom/Element/documentElement-scrollTop.html
2912
2913         * dom/Element.cpp:
2914         (WebCore::Element::setScrollLeft):
2915         (WebCore::Element::setScrollTop):
2916         * html/HTMLBodyElement.cpp:
2917         (WebCore::HTMLBodyElement::setScrollLeft):
2918         (WebCore::HTMLBodyElement::setScrollTop):
2919         Need to set the scrollTop and scrollLeft after checking if document
2920         is in quirks or non-quirks mode. Incase it is body.scrollLeft/
2921         body.scrollTop set only if document is in quirks mode. If document is
2922         non-quirks mode set documentElement.scrollLeft/documentElement.scrollTop.
2923
2924 2013-09-28  Andreas Kling  <akling@apple.com>
2925
2926         Pass VM instead of ExecState to JSFunction constructors.
2927         <https://webkit.org/b/122014>
2928
2929         Reviewed by Geoffrey Garen.
2930
2931         Updated for new JSFunction::create() signature.
2932
2933 2013-09-28  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2934
2935         Generate toCSSFooValue() for CSSImageValue 
2936         https://bugs.webkit.org/show_bug.cgi?id=122051
2937
2938         Reviewed by Andreas Kling.
2939
2940         Clean up static_cast<CSSImageValue*> type casts. It will help to
2941         detect bad cast as well as improve code readability.
2942
2943         Removed unnecessary local variables as well.
2944
2945         No new tests, no behavior changes.
2946
2947         * css/CSSCrossfadeValue.cpp:
2948         (WebCore::subimageKnownToBeOpaque):
2949         * css/CSSCursorImageValue.cpp:
2950         (WebCore::CSSCursorImageValue::~CSSCursorImageValue):
2951         (WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed):
2952         (WebCore::CSSCursorImageValue::cachedImage):
2953         (WebCore::CSSCursorImageValue::isSVGCursor):
2954         * css/CSSImageGeneratorValue.cpp:
2955         (WebCore::CSSImageGeneratorValue::subimageIsPending):
2956         (WebCore::CSSImageGeneratorValue::cachedImageForCSSValue):
2957         * css/CSSImageSetValue.cpp:
2958         (WebCore::CSSImageSetValue::fillImageSet):
2959         * css/CSSImageValue.h:
2960         * css/CSSValue.cpp:
2961         (WebCore::CSSValue::destroy):
2962         * css/StyleResolver.cpp:
2963         (WebCore::StyleResolver::applyProperty):
2964         (WebCore::StyleResolver::styleImage):
2965         * page/PageSerializer.cpp:
2966         (WebCore::PageSerializer::retrieveResourcesForProperties):
2967         * rendering/style/StylePendingImage.h:
2968         (WebCore::StylePendingImage::data):
2969         (WebCore::StylePendingImage::cssImageValue):
2970
2971 2013-09-28  Mark Rowe  <mrowe@apple.com>
2972
2973         WebCore fails to build with newer versions of clang.
2974
2975         Reviewed by Sam Weinig.
2976
2977         * Modules/indexeddb/IDBIndex.cpp: Remove an unused constant.
2978         * Modules/indexeddb/IDBObjectStore.cpp: Ditto.
2979         * Modules/webaudio/AudioContext.cpp: Ditto.
2980         * Modules/webaudio/ScriptProcessorNode.cpp: Ditto.
2981         * Modules/webdatabase/SQLResultSet.cpp: Ditto.
2982         * Modules/webdatabase/SQLTransactionBackend.cpp: Ditto.
2983         * Modules/websockets/WebSocketHandshake.cpp: Ditto.
2984         * bindings/objc/DOM.mm: Disable a warning about overriding a protocol method in a cateogry around the one
2985         place we do it. I don't understand why this generates a warning, nor can I see a different approach that
2986         would not result in the warning being emitted.
2987         * css/CSSGrammar.y.in: #if a function that's only used inside an #if.
2988         * html/track/TextTrackCue.cpp: Remove an unused constant.
2989         * loader/TextResourceDecoder.cpp: Remove two unused functions.
2990         * page/ContentSecurityPolicy.cpp: Add #if's around constants and functions that are only used when CSP_NEXT is enabled.
2991         (WebCore::CSPDirectiveList::checkSourceAndReportViolation): Reorder the ifs slightly to make the #if'ing easier.
2992         * page/ContentSecurityPolicy.h: Add #if's around functions that are only used when CSP_NEXT is enabled.
2993         * page/DOMSecurityPolicy.cpp: Ditto.
2994         * page/DOMSecurityPolicy.h: Ditto.
2995         * page/animation/CSSPropertyAnimation.cpp: Remove an unused function.
2996         * platform/mac/DisplaySleepDisabler.cpp: Add an #if around a constant that's only used on iOS.
2997         * platform/mac/WebCoreFullScreenWarningView.mm: Remove three unused constants.
2998         * rendering/RenderLayer.cpp: Remove two unused constants.
2999         * rendering/RenderLayerCompositor.cpp:
3000         (WebCore::compositingLogEnabled): Move the #if around the function definition.
3001         * svg/SVGAnimatedAngle.cpp: Remove an unused function.
3002         * svg/SVGUseElement.cpp: #if a function that's only used inside an ASSERT.
3003         * xml/XPathStep.cpp: Ditto.
3004
3005 2013-09-27  Brady Eidson  <beidson@apple.com>
3006
3007         IndexedDB IDL Refactoring.
3008         https://bugs.webkit.org/show_bug.cgi?id=121996
3009
3010         Reviewed by Alexey Proskuryakov.
3011
3012         This includes:
3013         1 - Leveraging EventTarget.idl inheritance
3014         2 - Removing comments
3015         3 - Reordering to match the spec's IDLs
3016         4 - Removing nonstandard, WebKit-specific methods
3017         5 - Updating interfaces to match the spec (versions are only uint64_t's now...)
3018         6 - Updating implementation code as needed (versions are only uint64_t's now...)
3019
3020         IDL changes:
3021         * Modules/indexeddb/IDBCursor.idl:
3022         * Modules/indexeddb/IDBDatabase.idl:
3023         * Modules/indexeddb/IDBFactory.idl:
3024         * Modules/indexeddb/IDBIndex.idl:
3025         * Modules/indexeddb/IDBKeyRange.idl:
3026         * Modules/indexeddb/IDBObjectStore.idl:
3027         * Modules/indexeddb/IDBRequest.idl:
3028         * Modules/indexeddb/IDBTransaction.idl:
3029         * Modules/indexeddb/IDBVersionChangeEvent.idl:
3030
3031         * Modules/indexeddb/IndexedDB.h: Add new enum to represent version nullness.
3032
3033         Adapt to new IDLs, and also refactor representation of initial, null versioning:
3034         * Modules/indexeddb/IDBCallbacks.h:
3035         (WebCore::IDBCallbacks::onBlocked):
3036         (WebCore::IDBCallbacks::onUpgradeNeeded):
3037
3038         * Modules/indexeddb/IDBDatabase.cpp:
3039         (WebCore::IDBDatabase::version):
3040         (WebCore::IDBDatabase::onVersionChange):
3041         * Modules/indexeddb/IDBDatabase.h:
3042
3043         * Modules/indexeddb/IDBDatabaseCallbacks.h:
3044         * Modules/indexeddb/IDBDatabaseCallbacksImpl.cpp:
3045         (WebCore::IDBDatabaseCallbacksImpl::onVersionChange):
3046         * Modules/indexeddb/IDBDatabaseCallbacksImpl.h:
3047
3048         * Modules/indexeddb/IDBFactory.cpp:
3049         (WebCore::IDBFactory::open):
3050         (WebCore::IDBFactory::openInternal):
3051         (WebCore::IDBFactory::deleteDatabase):
3052         * Modules/indexeddb/IDBFactory.h:
3053
3054         * Modules/indexeddb/IDBMetadata.h:
3055         (WebCore::IDBDatabaseMetadata::IDBDatabaseMetadata):
3056
3057         * Modules/indexeddb/IDBOpenDBRequest.cpp:
3058         (WebCore::IDBOpenDBRequest::create):
3059         (WebCore::IDBOpenDBRequest::IDBOpenDBRequest):
3060         (WebCore::IDBOpenDBRequest::onBlocked):
3061         (WebCore::IDBOpenDBRequest::onUpgradeNeeded):
3062         * Modules/indexeddb/IDBOpenDBRequest.h:
3063
3064         * Modules/indexeddb/IDBRequest.cpp:
3065         * Modules/indexeddb/IDBRequest.h:
3066
3067         * Modules/indexeddb/IDBTransaction.cpp:
3068         * Modules/indexeddb/IDBTransaction.h:
3069
3070         * Modules/indexeddb/IDBVersionChangeEvent.cpp:
3071         (WebCore::IDBVersionChangeEvent::IDBVersionChangeEvent):
3072         * Modules/indexeddb/IDBVersionChangeEvent.h:
3073         (WebCore::IDBVersionChangeEvent::create):
3074         (WebCore::IDBVersionChangeEvent::oldVersion):
3075         (WebCore::IDBVersionChangeEvent::newVersion):
3076
3077         Keep leveldb building with minimal adaptations to the new IDLs,
3078         but note that the LevelDB implementation is now incompatible with the spec:
3079         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
3080         (WebCore::IDBBackingStore::getIDBDatabaseMetaData):
3081         (WebCore::objectStoreCursorOptions):
3082         (WebCore::indexCursorOptions):
3083
3084         * Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp:
3085         (WebCore::IDBDatabaseBackendLevelDB::IDBDatabaseBackendLevelDB):
3086         (WebCore::IDBDatabaseBackendLevelDB::openInternal):
3087         (WebCore::IDBDatabaseBackendLevelDB::VersionChangeOperation::perform):
3088         (WebCore::IDBDatabaseBackendLevelDB::processPendingCalls):
3089         (WebCore::IDBDatabaseBackendLevelDB::openConnection):
3090         (WebCore::IDBDatabaseBackendLevelDB::runIntVersionChangeTransaction):
3091         (WebCore::IDBDatabaseBackendLevelDB::deleteDatabase):
3092         (WebCore::IDBDatabaseBackendLevelDB::deleteDatabaseFinal):
3093         (WebCore::IDBDatabaseBackendLevelDB::VersionChangeAbortOperation::perform):
3094
3095         * Modules/indexeddb/leveldb/IDBLevelDBCoding.cpp:
3096         (WebCore::IDBLevelDBCoding::compareEncodedIDBKeys):
3097
3098         * inspector/InspectorIndexedDBAgent.cpp: Update for metadata change.
3099
3100 2013-09-27  Enrica Casucci  <enrica@apple.com>
3101
3102         Upstream changes to Pasteboard implementation for iOS.
3103         https://bugs.webkit.org/show_bug.cgi?id=121818
3104
3105         Reviewed by Benjamin Poulain.
3106
3107         * WebCore.exp.in:
3108         * editing/Editor.cpp:
3109         (WebCore::Editor::dispatchCPPEvent):
3110         * editing/ios/EditorIOS.mm:
3111         (WebCore::Editor::WebContentReader::addFragment):
3112         (WebCore::Editor::WebContentReader::readWebArchive):
3113         (WebCore::Editor::WebContentReader::readFilenames):
3114         (WebCore::Editor::WebContentReader::readHTML):
3115         (WebCore::Editor::WebContentReader::readRTFD):
3116         (WebCore::Editor::WebContentReader::readRTF):
3117         (WebCore::uniqueURLWithRelativePart):
3118         (WebCore::Editor::WebContentReader::readImage):
3119         (WebCore::Editor::WebContentReader::readURL):
3120         (WebCore::Editor::WebContentReader::readPlainText):
3121         (WebCore::Editor::webContentFromPasteboard):
3122         (WebCore::Editor::pasteWithPasteboard):
3123         (WebCore::Editor::createFragmentAndAddResources):
3124         (WebCore::Editor::createFragmentForImageResourceAndAddResource):
3125         * platform/Pasteboard.h:
3126         * platform/PasteboardStrategy.h:
3127         * platform/PlatformPasteboard.h:
3128         * platform/ios/PasteboardIOS.mm:
3129         (WebCore::PasteboardWebContent::PasteboardWebContent):
3130         (WebCore::PasteboardWebContent::~PasteboardWebContent):
3131         (WebCore::PasteboardImage::PasteboardImage):
3132         (WebCore::PasteboardImage::~PasteboardImage):
3133         (WebCore::Pasteboard::Pasteboard):
3134         (WebCore::Pasteboard::clear):
3135         (WebCore::Pasteboard::readString):
3136         (WebCore::Pasteboard::writeString):
3137         (WebCore::Pasteboard::types):
3138         * platform/ios/PlatformPasteboardIOS.mm:
3139         (WebCore::PlatformPasteboard::changeCount):
3140         (WebCore::PlatformPasteboard::write):
3141         (WebCore::PlatformPasteboard::count):
3142         (WebCore::PlatformPasteboard::readBuffer):
3143         (WebCore::PlatformPasteboard::readString):
3144         (WebCore::PlatformPasteboard::readURL):
3145         * platform/mac/PasteboardMac.mm:
3146         (WebCore::PasteboardWebContent::PasteboardWebContent):
3147         (WebCore::PasteboardWebContent::~PasteboardWebContent):
3148         (WebCore::PasteboardImage::PasteboardImage):
3149         (WebCore::PasteboardImage::~PasteboardImage):
3150         * platform/mac/PlatformPasteboardMac.mm:
3151
3152 2013-09-27  Hans Muller  <hmuller@adobe.com>
3153
3154         Crash on shape-outside when using calc()
3155         https://bugs.webkit.org/show_bug.cgi?id=121020
3156
3157         Reviewed by Dirk Schulze.
3158
3159         This change prevents a crash caused by specifying a CSS Shape geometry
3160         Length attribute with a calc() expression. It adds support for converting
3161         Lengths to CSSPrimitive Values, in large part by migrating Blink changes
3162         made to the calc classes since the split. Doing so required a few supporting
3163         changes in some related classes, notably CSSPrimitiveValue.
3164
3165         Tests: fast/shapes/shape-inside/shape-inside-calc-crash.html
3166                css3/calc/simplification.html
3167
3168         * css/BasicShapeFunctions.cpp:
3169         (WebCore::convertToCSSPrimitiveValue): Effectively use the new CSSPrimtiveValue(length,style) constructor to convert Lengths to CSSValues.
3170         (WebCore::valueForBasicShape): Use the convertToCSSPrimitiveValue() function.
3171         (WebCore::convertToLength): Added the CalculatedConversion convertToLength() flag to enable support for calc() valued Length Shape attributes.
3172         * css/BasicShapeFunctions.h:
3173         * css/CSSCalculationValue.cpp:
3174         (WebCore::hasDoubleValue):
3175         (WebCore::buildCssText):
3176         (WebCore::CSSCalcValue::clampToPermittedRange):
3177         (WebCore::CSSCalcValue::doubleValue):
3178         (WebCore::CSSCalcExpressionNode::~CSSCalcExpressionNode):
3179         (WebCore::CSSCalcPrimitiveValue::create):
3180         (WebCore::CSSCalcPrimitiveValue::toCalcValue):
3181         (WebCore::CSSCalcPrimitiveValue::doubleValue):
3182         (WebCore::CSSCalcPrimitiveValue::computeLengthPx):
3183         (WebCore::CSSCalcPrimitiveValue::primitiveType):
3184         (WebCore::CSSCalcPrimitiveValue::CSSCalcPrimitiveValue):
3185         (WebCore::determineCategory):
3186         (WebCore::isIntegerResult):
3187         (WebCore::CSSCalcBinaryOperation::create):
3188         (WebCore::CSSCalcBinaryOperation::createSimplified):
3189         (WebCore::CSSCalcBinaryOperation::doubleValue):
3190         (WebCore::CSSCalcBinaryOperation::buildCssText):
3191         (WebCore::CSSCalcBinaryOperation::primitiveType):
3192         (WebCore::CSSCalcBinaryOperation::CSSCalcBinaryOperation):
3193         (WebCore::CSSCalcBinaryOperation::getNumberSide):
3194         (WebCore::CSSCalcBinaryOperation::evaluate):
3195         (WebCore::CSSCalcBinaryOperation::evaluateOperator):
3196         (WebCore::CSSCalcExpressionNodeParser::parseValue):
3197         (WebCore::CSSCalcExpressionNodeParser::parseValueTerm):
3198         (WebCore::CSSCalcExpressionNodeParser::parseValueMultiplicativeExpression):
3199         (WebCore::CSSCalcExpressionNodeParser::parseAdditiveValueExpression):
3200         (WebCore::CSSCalcValue::createExpressionNode):
3201         (WebCore::CSSCalcValue::create):
3202         * css/CSSCalculationValue.h:
3203         (WebCore::CSSCalcExpressionNode::category):
3204         (WebCore::CSSCalcValue::create):
3205         (WebCore::CSSCalcValue::isInt):
3206         (WebCore::CSSCalcValue::permittedValueRange):
3207         (WebCore::CSSCalcValue::expressionNode):
3208         (WebCore::CSSCalcValue::CSSCalcValue):
3209         (WebCore::toCSSCalcValue):
3210         * css/CSSComputedStyleDeclaration.cpp:
3211         (WebCore::ComputedStyleExtractor::propertyValue): Pass the style along to the new valueForBasicShape() function.
3212         * css/CSSPrimitiveValue.cpp:
3213         (WebCore::CSSPrimitiveValue::unitCategory): Made this function public so that CSSCalculationValue could use it.
3214         (WebCore::CSSPrimitiveValue::conversionToCanonicalUnitsScaleFactor): Ditto.
3215         (WebCore::CSSPrimitiveValue::primitiveType): Cleared trailing whitespace.
3216         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Construct a CSSPrimitiveValue from a Length and a RenderStyle*.
3217         (WebCore::CSSPrimitiveValue::init): The common part of the two Length CSSPrimitiveValue constructors.
3218         (WebCore::CSSPrimitiveValue::computeLengthDouble): Moved the case labels to the left per check-webkit-style.
3219         (WebCore::CSSPrimitiveValue::getStringValue): Ditto.
3220         (WebCore::CSSPrimitiveValue::getDoubleValue): Removed trailing whitespace.
3221         * css/CSSPrimitiveValue.h:
3222         (WebCore::CSSPrimitiveValue::create): Construct a CSSPrimitiveValue from a Length and a RenderStyle*.
3223         (WebCore::toCSSPrimitiveValue): Check the CSSValue*'s validity with ASSERT_WITH_SECURITY_IMPLICATION before casting to CSSPrimitiveValue*.
3224         * css/CSSValuePool.h:
3225         (WebCore::CSSValuePool::createValue): A new overload that delegates to the new CSSPrimitiveValue(length,style) constructor.
3226         * platform/CalculationValue.h:
3227         (WebCore::CalculationValue::operator==):
3228         (WebCore::CalculationValue::isNonNegative):
3229         (WebCore::CalculationValue::expression):
3230         (WebCore::CalcExpressionNumber::value):
3231         (WebCore::toCalcExpressionNumber):
3232         (WebCore::CalcExpressionLength::CalcExpressionLength):
3233         (WebCore::CalcExpressionLength::length):
3234         (WebCore::toCalcExpressionLength):
3235         (WebCore::CalcExpressionBinaryOperation::leftSide):
3236         (WebCore::CalcExpressionBinaryOperation::rightSide):
3237         (WebCore::CalcExpressionBinaryOperation::getOperator):
3238         (WebCore::toCalcExpressionBinaryOperation):
3239         (WebCore::CalcExpressionBlendLength::CalcExpressionBlendLength):
3240         (WebCore::CalcExpressionBlendLength::from):
3241         (WebCore::CalcExpressionBlendLength::to):
3242         (WebCore::CalcExpressionBlendLength::progress):
3243         (WebCore::toCalcExpressionBlendLength):
3244
3245 2013-09-27  Andreas Kling  <akling@apple.com>
3246
3247         REGRESSION(r154219): 30% more malloc memory used on html5-full-render.
3248         <https://webkit.org/b/122034>
3249
3250         Reviewed by Antti Koivisto.
3251
3252         canExecuteScripts() used to rely on Frame::settings() returning null
3253         when the Frame was disconnected from its Page, and giving Frame its
3254         own handle on the Settings broke this mechanism.
3255
3256         This caused us to hold on for some objects for a bit longer than we
3257         needed to in the run-perf-tests harness, showing up as a massive 30%
3258         regression in malloc memory use.
3259
3260         Fixed it by added an explicit null check of Frame::page().
3261
3262 2013-09-27  Alexey Proskuryakov  <ap@apple.com>
3263
3264         Updating bindings test results after KURL->URL rename.
3265
3266         Includes were now in the wrong order.
3267
3268         * bindings/scripts/test/CPP/WebDOMTestActiveDOMObject.cpp:
3269         * bindings/scripts/test/CPP/WebDOMTestCustomNamedGetter.cpp:
3270         * bindings/scripts/test/CPP/WebDOMTestEventConstructor.cpp:
3271         * bindings/scripts/test/CPP/WebDOMTestEventTarget.cpp:
3272         * bindings/scripts/test/CPP/WebDOMTestException.cpp:
3273         * bindings/scripts/test/CPP/WebDOMTestInterface.cpp:
3274         * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
3275         * bindings/scripts/test/CPP/WebDOMTestTypedefs.cpp:
3276         * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
3277         * bindings/scripts/test/JS/JSTestException.cpp:
3278         * bindings/scripts/test/JS/JSTestObj.cpp:
3279         * bindings/scripts/test/JS/JSTestTypedefs.cpp:
3280         * bindings/scripts/test/ObjC/DOMTestActiveDOMObject.mm:
3281         * bindings/scripts/test/ObjC/DOMTestCallback.mm:
3282         * bindings/scripts/test/ObjC/DOMTestCustomNamedGetter.mm:
3283         * bindings/scripts/test/ObjC/DOMTestEventConstructor.mm:
3284         * bindings/scripts/test/ObjC/DOMTestEventTarget.mm:
3285         * bindings/scripts/test/ObjC/DOMTestException.mm:
3286         * bindings/scripts/test/ObjC/DOMTestInterface.mm:
3287         * bindings/scripts/test/ObjC/DOMTestObj.mm:
3288         * bindings/scripts/test/ObjC/DOMTestTypedefs.mm:
3289
3290 2013-09-27  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
3291
3292         Get MediaStreamCenterGStreamer compiling again
3293         https://bugs.webkit.org/show_bug.cgi?id=122029
3294
3295         After MediaStream cleanup commit, it was not building anymore.
3296
3297         Reviewed by Eric Carlson.
3298
3299         No new tests needed.
3300
3301         * platform/mediastream/gstreamer/MediaStreamCenterGStreamer.cpp:
3302
3303 2013-09-27  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
3304
3305         Storing a reference to MediaStreamTrack in RTCStatsRequest
3306         https://bugs.webkit.org/show_bug.cgi?id=122030
3307
3308         Reviewed by Eric Carlson.
3309
3310         The spec[1] says that the stats is related to a MediaStreamTrack object.
3311         It also says: "Evaluate the need for other selectors than MediaStreamTrack".
3312         So a MediaStreamTrack object is more suitable in this case.
3313
3314         [1]http://dev.w3.org/2011/webrtc/editor/webrtc.html#stats-selector
3315
3316         No new tests needed.
3317
3318         * Modules/mediastream/RTCStatsRequestImpl.cpp:
3319         (WebCore::RTCStatsRequestImpl::RTCStatsRequestImpl):
3320         (WebCore::RTCStatsRequestImpl::hasSelector):
3321         (WebCore::RTCStatsRequestImpl::track):
3322         * Modules/mediastream/RTCStatsRequestImpl.h:
3323         * platform/mediastream/RTCStatsRequest.h:
3324
3325 2013-09-27  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
3326
3327         [Nix] Updating Nix trunk files
3328         https://bugs.webkit.org/show_bug.cgi?id=121752
3329
3330         Reviewed by Benjamin Poulain.
3331
3332         No new tests needed.
3333
3334         * page/nix/EventHandlerNix.cpp:
3335         (WebCore::EventHandler::focusDocumentView):
3336         (WebCore::EventHandler::passWheelEventToWidget):
3337         (WebCore::EventHandler::passMousePressEventToSubframe):
3338         (WebCore::EventHandler::passMouseMoveEventToSubframe):
3339         (WebCore::EventHandler::passMouseReleaseEventToSubframe):
3340         * platform/DragImage.h:
3341         * platform/graphics/GraphicsContext3D.h:
3342         * platform/nix/DragImageNix.cpp:
3343         (WebCore::createDragImageFromImage):
3344         * platform/nix/GamepadsNix.cpp:
3345         (WebCore::sampleGamepads):
3346         * platform/nix/LanguageNix.cpp:
3347         (WebCore::platformLanguage):
3348         * platform/nix/LocalizedStringsNix.cpp:
3349         (WebCore::unacceptableTLSCertificate):
3350         * platform/nix/PasteboardNix.cpp:
3351         (WebCore::Pasteboard::types):
3352         * platform/nix/RenderThemeNix.cpp:
3353         (WebCore::toColor):
3354         (WebCore::themeEngine):
3355         (WebCore::webCanvas):
3356         (WebCore::getWebThemeState):
3357         (WebCore::RenderThemeNix::paintButton):
3358         (WebCore::RenderThemeNix::paintTextField):
3359         (WebCore::RenderThemeNix::paintCheckbox):
3360         (WebCore::RenderThemeNix::paintRadio):
3361         (WebCore::RenderThemeNix::paintMenuList):
3362         (WebCore::RenderThemeNix::paintProgressBar):
3363         (WebCore::RenderThemeNix::paintInnerSpinButton):
3364         (WebCore::RenderThemeNix::paintMeter):
3365
3366 2013-09-27  Anders Carlsson  <andersca@apple.com>
3367
3368         Use std::unique_ptr for GraphicsLayer creation
3369         https://bugs.webkit.org/show_bug.cgi?id=122020
3370
3371         Reviewed by Antti Koivisto.
3372
3373         * platform/graphics/GraphicsLayer.h:
3374         * platform/graphics/GraphicsLayerFactory.h:
3375         * platform/graphics/ca/GraphicsLayerCA.cpp:
3376         (WebCore::GraphicsLayer::create):
3377         * platform/graphics/ca/GraphicsLayerCA.h:
3378         * platform/graphics/texmap/coordinated/CompositingCoordinator.cpp:
3379         (WebCore::CompositingCoordinator::createGraphicsLayer):
3380         * platform/graphics/texmap/coordinated/CompositingCoordinator.h:
3381         * rendering/RenderLayerBacking.cpp:
3382         (WebCore::RenderLayerBacking::createGraphicsLayer):
3383         (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
3384         (WebCore::RenderLayerBacking::paintIntoLayer):
3385         * rendering/RenderLayerBacking.h:
3386         (WebCore::RenderLayerBacking::hasScrollingLayer):
3387         * rendering/RenderLayerCompositor.cpp:
3388         (WebCore::RenderLayerCompositor::updateRootLayerPosition):
3389         * rendering/RenderLayerCompositor.h:
3390
3391 2013-09-27  Beth Dakin  <bdakin@apple.com>
3392
3393         ScrollbarPainterController should adopt the api to lock overlay scrollbar state
3394         https://bugs.webkit.org/show_bug.cgi?id=121928
3395
3396         Reviewed by Sam Weinig.
3397
3398         ScrollbarPainterController should adopt the api to lock overlay scrollbar state. 
3399         This will allow the ScrollbarPainterController and ScrollAnimatorMac to have 
3400         control over knowing whether or not the scrollbars are currently active, which 
3401         will allow us to remove a bunch of functions previously implemented in 
3402         ScrollableArea subclasses to answer that question.
3403
3404         ScrollableArea::scrollbarsCanBeActive() is not longer virtual. It used to 
3405         implemented on ScrollableArea subclasses, but now ScrollableArea can just get the 
3406         information from the ScrollAnimator.
3407         * WebCore.exp.in:
3408
3409         When ScrollableArea subclasses implemented scrollbarsCanBeActive(), they would 
3410         check to see if the document was in the page cache. Instead of that model, this 
3411         patch adopts a model where ScrollbarPainterController is told directly whether or 
3412         not it is active via shouldLockOverlayScrollbarsToHidden(bool).
3413         * dom/Document.cpp:
3414         (WebCore::Document::setInPageCache):
3415
3416         setAnimatorsAreActive() is no longer necessary. The functionality can be bundled 
3417         into shouldLockOverlayScrollbarsToHidden(bool).
3418         (WebCore::Document::documentDidResumeFromPageCache):
3419
3420         Remove implementations of scrollbarsCanBeActive(), setAnimatorsAreActive(), and 
3421         scrollbarAnimationsAreSuppressed(). 
3422         * page/FrameView.cpp:
3423         (WebCore::FrameView::notifyPageThatContentAreaWillPaint):
3424         * page/FrameView.h:
3425
3426         setShouldSuppressScrollbarAnimations(bool) now calls 
3427         setShouldLockOverlayScrollbars(bool). 
3428         * page/Page.cpp:
3429         (WebCore::Page::setShouldSuppressScrollbarAnimations):
3430         (WebCore::Page::setShouldLockOverlayScrollbars):
3431         * page/Page.h:
3432
3433         setIsActive() is now implemented in the ScrollAnimator instead of ScrollableArea 
3434         subclasses. finishCurrentScrollAnimations() is replaced by 
3435         lockOverlayScrollbarStateToHidden(bool).
3436         * platform/ScrollAnimator.h:
3437         (WebCore::ScrollAnimator::lockOverlayScrollbarStateToHidden):
3438         (WebCore::ScrollAnimator::scrollbarsCanBeActive):
3439
3440         New enum ScrollbarOverlayState.
3441         * platform/ScrollTypes.h:
3442
3443         Go to the animator for both of these functions.
3444         * platform/ScrollableArea.cpp:
3445         (WebCore::ScrollableArea::lockOverlayScrollbarStateToHidden):
3446         (WebCore::ScrollableArea::scrollbarsCanBeActive):
3447         * platform/ScrollableArea.h:
3448         (WebCore::ScrollableArea::setVisibleScrollerThumbRect):
3449
3450         Three new pieces of ScrollbarPainterController api.
3451         * platform/mac/NSScrollerImpDetails.h:
3452
3453         Instead of asking the ScrollableArea if scrollbars can be active, just find out if 
3454         the ScrollbarPaintController has been locked.
3455         * platform/mac/ScrollAnimatorMac.h:
3456         * platform/mac/ScrollAnimatorMac.mm:
3457         (-[WebScrollbarPainterControllerDelegate scrollerImpPair:setContentAreaNeedsDisplayInRect:]):
3458         (-[WebScrollbarPainterDelegate scrollerImp:animateKnobAlphaTo:duration:]):
3459         (WebCore::ScrollAnimatorMac::contentAreaWillPaint):
3460         (WebCore::ScrollAnimatorMac::mouseEnteredContentArea):