bccff959c774e26f7dd9d6064e674b7d756eda08
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-09-09  Dean Jackson  <dino@apple.com>
2
3         [WebGL] Allow multithreaded OpenGL contexts
4         https://bugs.webkit.org/show_bug.cgi?id=121062
5
6         Reviewed by Simon Fraser.
7
8         Expose a new preference "multithreadedWebGLEnabled".
9
10         Also examine the value of that preference and, on Mac,
11         tell the CGLContext that it should go to multithreaded mode.
12
13         * html/canvas/WebGLRenderingContext.cpp:
14         (WebCore::WebGLRenderingContext::create): Look at the value of the new setting, and
15         toggle a flag on the context attributes.
16         * page/Settings.in: New Setting "multithreadedWebGLEnabled".
17         * platform/graphics/GraphicsContext3D.h:
18         (WebCore::GraphicsContext3D::Attributes::Attributes): Add a "multithreaded" flag.
19         * platform/graphics/mac/GraphicsContext3DMac.mm:
20         (WebCore::GraphicsContext3D::GraphicsContext3D): If the context attributes
21         suggest we should, tell the OpenGL context to go into multithreaded mode.
22
23 2013-09-09  Ryosuke Niwa  <rniwa@webkit.org>
24
25         Remove HTMLTextFormControl::fixPlaceholderRenderer
26         https://bugs.webkit.org/show_bug.cgi?id=121058
27
28         Reviewed by Kent Tamura.
29
30         HTMLTextFormControl::fixPlaceholderRenderer was added in r118733 to swap the order in which placeholder appears.
31         Namely, when a text form control element is focused, placeholder should be rendered behind the text for the caret
32         to render on top of, not behind, the placeholder text.  However, we can achieve the same effect by changing
33         the order of elements in the shadow DOM instead of manually manipuating the render tree as the assertion failure
34         mentioned in the change log is a bogus one.
35
36         Cleaned up the code by removing HTMLTextFormControl::fixPlaceholderRenderer and changed the order in which inner
37         text element and placeholder element appear. Also fixed the assertion in Position's constructor.
38
39         * dom/Position.cpp:
40         (WebCore::Position::Position): The original assertion was bogus. What we don't want have is for a Position to be
41         before or after a shadow root. It's fine for it be anchroed against the shadow root as long as it's inside.
42
43         * html/HTMLTextAreaElement.cpp:
44         (WebCore::HTMLTextAreaElement::updatePlaceholderText): Insert the placeholder before the inner text element.
45         * html/HTMLTextAreaElement.h:
46         * html/HTMLTextFormControlElement.cpp:
47         * html/HTMLTextFormControlElement.h:
48         * html/TextFieldInputType.cpp:
49         (WebCore::TextFieldInputType::updatePlaceholderText): Ditto.
50         * html/TextFieldInputType.h:
51
52 2013-09-09  Andreas Kling  <akling@apple.com>
53
54         Hide node() below RenderSVGModelObject, use element() instead.
55         <https://webkit.org/b/121051>
56
57         Reviewed by Darin Adler.
58
59         This was almost already there, just delete node() and add an element() that returns a SVGElement*.
60         The SVG render tree is crazy casual about compile-time types, this is only scratching the surface.
61
62 2013-09-09  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
63
64         Fixing EFL build
65         https://bugs.webkit.org/show_bug.cgi?id=121048
66
67         Reviewed by Darin Adler.
68
69         No new tests needed.
70
71         * platform/efl/RenderThemeEfl.cpp:
72         (WebCore::RenderThemeEfl::applyEdjeRTLState):
73
74 2013-09-09  Bem Jones-Bey  <bjonesbe@adobe.com>
75
76         Move Floats out of RenderBlock
77         https://bugs.webkit.org/show_bug.cgi?id=120779
78
79         Reviewed by Alexandru Chiculita.
80
81         Move FloatingObject, FloatingObjects and related code into
82         FloatingObjects.{h,cpp}. This not only makes the code more readable
83         and maintainable, it also will allow for more decoupling of
84         RenderBlock and the FloatingObjects, hopefully making it possible for
85         FloatingObjects to be more central and not need to have one for each
86         RenderBlock that is affected by floats.
87
88         No new tests, no behavior change.
89
90         * CMakeLists.txt:
91         * GNUmakefile.list.am:
92         * Target.pri:
93         * WebCore.vcxproj/WebCore.vcxproj:
94         * WebCore.xcodeproj/project.pbxproj:
95         * rendering/FloatingObjects.cpp: Added.
96         (WebCore::ComputeFloatOffsetAdapter::ComputeFloatOffsetAdapter):
97         (WebCore::ComputeFloatOffsetAdapter::lowValue):
98         (WebCore::ComputeFloatOffsetAdapter::highValue):
99         (WebCore::ComputeFloatOffsetAdapter::outermostFloat):
100         (WebCore::FloatingObjects::FloatingObjects):
101         (WebCore::FloatingObjects::~FloatingObjects):
102         (WebCore::FloatingObjects::clearLineBoxTreePointers):
103         (WebCore::FloatingObjects::clear):
104         (WebCore::FloatingObjects::increaseObjectsCount):
105         (WebCore::FloatingObjects::decreaseObjectsCount):
106         (WebCore::FloatingObjects::intervalForFloatingObject):
107         (WebCore::FloatingObjects::addPlacedObject):
108         (WebCore::FloatingObjects::removePlacedObject):
109         (WebCore::FloatingObjects::add):
110         (WebCore::FloatingObjects::remove):
111         (WebCore::FloatingObjects::computePlacedFloatsTree):
112         (WebCore::FloatingObjects::logicalLeftOffset):
113         (WebCore::FloatingObjects::logicalRightOffset):
114         (WebCore::rangesIntersect):
115         (WebCore::::updateOffsetIfNeeded):
116         (WebCore::::collectIfNeeded):
117         (WebCore::::getHeightRemaining):
118         (WebCore::::string):
119         * rendering/FloatingObjects.h: Added.
120         (WebCore::FloatingObject::FloatingObject):
121         (WebCore::FloatingObject::clone):
122         (WebCore::FloatingObject::type):
123         (WebCore::FloatingObject::renderer):
124         (WebCore::FloatingObject::isPlaced):
125         (WebCore::FloatingObject::setIsPlaced):
126         (WebCore::FloatingObject::x):
127         (WebCore::FloatingObject::maxX):
128         (WebCore::FloatingObject::y):
129         (WebCore::FloatingObject::maxY):
130         (WebCore::FloatingObject::width):
131         (WebCore::FloatingObject::height):
132         (WebCore::FloatingObject::setX):
133         (WebCore::FloatingObject::setY):
134         (WebCore::FloatingObject::setWidth):
135         (WebCore::FloatingObject::setHeight):
136         (WebCore::FloatingObject::frameRect):
137         (WebCore::FloatingObject::setFrameRect):
138         (WebCore::FloatingObject::paginationStrut):
139         (WebCore::FloatingObject::setPaginationStrut):
140         (WebCore::FloatingObject::isInPlacedTree):
141         (WebCore::FloatingObject::setIsInPlacedTree):
142         (WebCore::FloatingObject::shouldPaint):
143         (WebCore::FloatingObject::setShouldPaint):
144         (WebCore::FloatingObject::isDescendant):
145         (WebCore::FloatingObject::setIsDescendant):
146         (WebCore::FloatingObject::setRenderer):
147         (WebCore::FloatingObject::originatingLine):
148         (WebCore::FloatingObject::setOriginatingLine):
149         (WebCore::FloatingObject::logicalTop):
150         (WebCore::FloatingObject::logicalBottom):
151         (WebCore::FloatingObject::logicalLeft):
152         (WebCore::FloatingObject::logicalRight):
153         (WebCore::FloatingObject::logicalWidth):
154         (WebCore::FloatingObject::pixelSnappedLogicalTop):
155         (WebCore::FloatingObject::pixelSnappedLogicalBottom):
156         (WebCore::FloatingObject::pixelSnappedLogicalLeft):
157         (WebCore::FloatingObject::pixelSnappedLogicalRight):
158         (WebCore::FloatingObject::setLogicalTop):
159         (WebCore::FloatingObject::setLogicalLeft):
160         (WebCore::FloatingObject::setLogicalHeight):
161         (WebCore::FloatingObject::setLogicalWidth):
162         (WebCore::FloatingObjectHashFunctions::hash):
163         (WebCore::FloatingObjectHashFunctions::equal):
164         (WebCore::FloatingObjectHashTranslator::hash):
165         (WebCore::FloatingObjectHashTranslator::equal):
166         (WebCore::FloatingObjects::setHorizontalWritingMode):
167         (WebCore::FloatingObjects::hasLeftObjects):
168         (WebCore::FloatingObjects::hasRightObjects):
169         (WebCore::FloatingObjects::set):
170         (WebCore::FloatingObjects::placedFloatsTree):
171         * rendering/RenderBlock.cpp:
172         (WebCore::RenderBlock::RenderBlock):
173         (WebCore::RenderBlock::insertFloatingObject):
174         * rendering/RenderBlock.h:
175         * rendering/RenderBlockLineLayout.cpp:
176         (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded):
177         (WebCore::LineLayoutState::lastFloat):
178         (WebCore::LineLayoutState::setLastFloat):
179         * rendering/RenderView.cpp:
180         (WebCore::RenderView::intervalArena):
181
182 2013-09-09  David Hyatt  <hyatt@apple.com>
183
184         REGRESSION (r155377): Convert the media elements that were RenderBlocks to RenderBlockFlows
185         https://bugs.webkit.org/show_bug.cgi?id=121052
186
187         Reviewed by Anders Carlsson.
188
189         Convert a couple of media renderers that I missed from RenderBlock to RenderBlockFlow.
190         The previous patch that I landed added asserts that get triggered now when this
191         situation occurs.
192
193         * rendering/RenderMediaControlElements.cpp:
194         (WebCore::RenderMediaVolumeSliderContainer::RenderMediaVolumeSliderContainer):
195         (WebCore::RenderMediaVolumeSliderContainer::layout):
196         (WebCore::RenderTextTrackContainerElement::RenderTextTrackContainerElement):
197         (WebCore::RenderTextTrackContainerElement::layout):
198         * rendering/RenderMediaControlElements.h:
199
200 2013-09-09  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
201
202         [Bug Fix] Calling m_audioComponents.remove in removeAudioComponent (MediaStreamDescriptor)
203         https://bugs.webkit.org/show_bug.cgi?id=121034
204
205         Reviewed by Eric Carlson.
206
207         No new tests needed.
208
209         * platform/mediastream/MediaStreamDescriptor.h:
210         (WebCore::MediaStreamDescriptor::removeAudioComponent):
211
212 2013-09-09  Anders Carlsson  <andersca@apple.com>
213
214         Stop using WTF type traits in WebCore
215         https://bugs.webkit.org/show_bug.cgi?id=121042
216
217         Reviewed by Andreas Kling.
218
219         Replace uses of WTF type traits in CrossThreadCopier with a simpler solution
220         that uses std::is_convertible_to and some helpers.
221
222         * dom/CrossThreadTask.h:
223         * platform/CrossThreadCopier.h:
224         * platform/MainThreadTask.h:
225
226 2013-09-06  Ryosuke Niwa  <rniwa@webkit.org>
227
228         Internals should always cause a layout before calling into TextIterator
229         https://bugs.webkit.org/show_bug.cgi?id=120891
230
231         Reviewed by Antti Koivisto.
232
233         Inspired by https://chromium.googlesource.com/chromium/blink/+/5fee5da7b04a710171c79bd6e87eca3533188e45.
234
235         Force a layout in the constructors of TextIterator, and SimplifiedBackwardsTextIterator and remove
236         superfluous calls to updateLayout() in other places.
237
238         As much as I hate for a constructor to have a side effect like this, I couldn't think of a better place
239         to update the layout. Unfortunately, we're slowly moving away from manually createing TextIterator and
240         wrapping them in a static function.
241
242         * editing/TextIterator.cpp:
243         (WebCore::TextIterator::TextIterator):
244         (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator):
245         (WebCore::TextIterator::rangeFromLocationAndLength):
246         (WebCore::findPlainText):
247
248 2013-09-09  David Hyatt  <hyatt@apple.com>
249
250         Move layoutBlock and layoutBlockChildren into RenderBlockFlow
251         https://bugs.webkit.org/show_bug.cgi?id=121036
252
253         Reviewed by Dean Jackson.
254
255         Move layoutBlock into RenderBlockFlow and make the base class version of
256         the method ASSERT_NOT_REACHED. Begin the process of moving block layout 
257         into RenderBlockFlow by putting layoutBlockChildren there as well.
258         
259         This patch also puts clearFloats into RenderBlockFlow and just ditches the
260         SVG-specific forceLayoutInlineChildren by letting RenderSVGText do what it
261         needs in its own file.
262
263         Convert RenderListBox to be a RenderBlockFlow, since this is necessary for it
264         to get the correct layoutBlock method.
265         
266         Patch RenderRegion to call RenderBlockFlow::layoutBlock rather than RenderBlock::layoutBlock.
267         
268         Fix run-ins so that they create block flows rather than blocks, and restrict run-ins to
269         only be block flows.
270
271         * rendering/RenderBlock.cpp:
272         (WebCore::RenderBlock::layoutBlock):
273         (WebCore::RenderBlock::createReplacementRunIn):
274         (WebCore::RenderBlock::moveRunInUnderSiblingBlockIfNeeded):
275         * rendering/RenderBlock.h:
276         * rendering/RenderBlockFlow.cpp:
277         (WebCore::RenderBlockFlow::clearFloats):
278         (WebCore::RenderBlockFlow::layoutBlock):
279         (WebCore::RenderBlockFlow::layoutBlockChildren):
280         * rendering/RenderBlockFlow.h:
281         * rendering/RenderBlockLineLayout.cpp:
282         (WebCore::RenderBlockFlow::layoutInlineChildren):
283         * rendering/RenderListBox.cpp:
284         (WebCore::RenderListBox::RenderListBox):
285         (WebCore::RenderListBox::layout):
286         (WebCore::RenderListBox::paintObject):
287         (WebCore::RenderListBox::addFocusRingRects):
288         (WebCore::RenderListBox::nodeAtPoint):
289         * rendering/RenderListBox.h:
290         * rendering/RenderRegion.cpp:
291         (WebCore::RenderRegion::paintObject):
292         (WebCore::RenderRegion::styleDidChange):
293         (WebCore::RenderRegion::layoutBlock):
294         (WebCore::RenderRegion::insertedIntoTree):
295         (WebCore::RenderRegion::willBeRemovedFromTree):
296         (WebCore::RenderRegion::computeIntrinsicLogicalWidths):
297         (WebCore::RenderRegion::computePreferredLogicalWidths):
298         (WebCore::RenderRegion::updateLogicalHeight):
299         * rendering/RenderTextControlSingleLine.cpp:
300         (WebCore::RenderTextControlSingleLine::layout):
301         * rendering/svg/RenderSVGText.cpp:
302         (WebCore::RenderSVGText::layout):
303
304 2013-09-09  Antti Koivisto  <antti@apple.com>
305
306         Try to fix GTK build.
307         
308         Not reviewed.
309
310         * accessibility/AccessibilityTable.cpp:
311         (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
312
313 2013-09-09  Antti Koivisto  <antti@apple.com>
314
315         Hide node() below RenderLayerModelObject, use element() instead
316         https://bugs.webkit.org/show_bug.cgi?id=121038
317
318         Reviewed by Dave Hyatt.
319
320         Switch all call sites to element(). Remove now unnecessary casts, type checks and dead code.
321         Make constructors below RenderLayerModelObject take an Element instead of a ContainerNode.
322         
323         This also removes a branch from many hasTagName() and isFooElement() calls.
324
325         * accessibility/AccessibilityRenderObject.cpp:
326         (WebCore::startOfContinuations):
327         * accessibility/AccessibilityTable.cpp:
328         (WebCore::AccessibilityTable::isDataTable):
329         * accessibility/AccessibilityTableCell.cpp:
330         (WebCore::AccessibilityTableCell::titleUIElement):
331         * accessibility/AccessibilityTableColumn.cpp:
332         (WebCore::AccessibilityTableColumn::headerObjectForSection):
333         * editing/markup.cpp:
334         (WebCore::highestAncestorToWrapMarkup):
335         * html/HTMLTableCellElement.cpp:
336         (WebCore::HTMLTableCellElement::cellAbove):
337         * html/shadow/SliderThumbElement.cpp:
338         (WebCore::RenderSliderThumb::updateAppearance):
339         (WebCore::RenderSliderContainer::computeLogicalHeight):
340         (WebCore::RenderSliderContainer::layout):
341         * page/Frame.cpp:
342         (WebCore::Frame::frameForWidget):
343         * rendering/RenderBlock.cpp:
344         (WebCore::OverflowEventDispatcher::~OverflowEventDispatcher):
345         (WebCore::RenderBlock::RenderBlock):
346         (WebCore::RenderBlock::clone):
347         (WebCore::RenderBlock::createReplacementRunIn):
348         (WebCore::RenderBlock::paintObject):
349         (WebCore::RenderBlock::isSelectionRoot):
350         (WebCore::RenderBlock::nodeForHitTest):
351         (WebCore::RenderBlock::hasLineIfEmpty):
352         (WebCore::RenderBlock::addFocusRingRects):
353         * rendering/RenderBlock.h:
354         * rendering/RenderBlockFlow.cpp:
355         (WebCore::RenderBlockFlow::RenderBlockFlow):
356         * rendering/RenderBlockFlow.h:
357         * rendering/RenderBlockLineLayout.cpp:
358         (WebCore::RenderBlock::addOverflowFromInlineChildren):
359         * rendering/RenderBox.cpp:
360         (WebCore::RenderBox::RenderBox):
361         (WebCore::RenderBox::updateFromStyle):
362         (WebCore::RenderBox::scroll):
363         (WebCore::RenderBox::logicalScroll):
364         (WebCore::RenderBox::canBeProgramaticallyScrolled):
365         (WebCore::RenderBox::nodeAtPoint):
366         (WebCore::RenderBox::paintCustomHighlight):
367         (WebCore::RenderBox::computeLogicalWidthInRegion):
368         (WebCore::RenderBox::sizesLogicalWidthToFitContent):
369         (WebCore::RenderBox::localCaretRect):
370         * rendering/RenderBox.h:
371         * rendering/RenderBoxModelObject.cpp:
372         (WebCore::RenderBoxModelObject::RenderBoxModelObject):
373         * rendering/RenderBoxModelObject.h:
374         * rendering/RenderButton.cpp:
375         (WebCore::RenderButton::updateFromElement):
376         (WebCore::RenderButton::canHaveGeneratedChildren):
377         * rendering/RenderButton.h:
378         * rendering/RenderEmbeddedObject.cpp:
379         (WebCore::RenderEmbeddedObject::paintContents):
380         (WebCore::RenderEmbeddedObject::isReplacementObscured):
381         (WebCore::RenderEmbeddedObject::layout):
382         (WebCore::RenderEmbeddedObject::viewCleared):
383         (WebCore::RenderEmbeddedObject::handleUnavailablePluginIndicatorEvent):
384         * rendering/RenderFileUploadControl.cpp:
385         (WebCore::RenderFileUploadControl::updateFromElement):
386         (WebCore::RenderFileUploadControl::maxFilenameWidth):
387         (WebCore::RenderFileUploadControl::paintObject):
388         (WebCore::RenderFileUploadControl::computeIntrinsicLogicalWidths):
389         (WebCore::RenderFileUploadControl::uploadButton):
390         (WebCore::RenderFileUploadControl::fileTextValue):
391         * rendering/RenderFrame.cpp:
392         (WebCore::RenderFrame::edgeInfo):
393         (WebCore::RenderFrame::viewCleared):
394         * rendering/RenderFrameBase.cpp:
395         (WebCore::RenderFrameBase::layoutWithFlattening):
396         * rendering/RenderFrameSet.cpp:
397         (WebCore::RenderFrameSet::frameSet):
398         * rendering/RenderHTMLCanvas.cpp:
399         (WebCore::RenderHTMLCanvas::requiresLayer):
400         (WebCore::RenderHTMLCanvas::paintReplaced):
401         (WebCore::RenderHTMLCanvas::canvasSizeChanged):
402         * rendering/RenderIFrame.cpp:
403         (WebCore::RenderIFrame::isSeamless):
404         (WebCore::RenderIFrame::flattenFrame):
405         * rendering/RenderImage.cpp:
406         (WebCore::RenderImage::imageChanged):
407         (WebCore::RenderImage::paintAreaElementFocusRing):
408         (WebCore::RenderImage::areaElementFocusChanged):
409         (WebCore::RenderImage::paintIntoRect):
410         (WebCore::RenderImage::imageMap):
411         (WebCore::RenderImage::nodeAtPoint):
412         (WebCore::RenderImage::updateAltText):
413         * rendering/RenderInline.cpp:
414         (WebCore::RenderInline::clone):
415         (WebCore::RenderInline::hitTestCulledInline):
416         (WebCore::RenderInline::updateHitTestResult):
417         * rendering/RenderInline.h:
418         * rendering/RenderLayer.cpp:
419         (WebCore::RenderLayer::RenderLayer):
420         (WebCore::RenderLayer::~RenderLayer):
421         (WebCore::RenderLayer::name):
422         (WebCore::RenderLayer::isTransparent):
423         (WebCore::RenderLayer::scrollTo):
424         (WebCore::RenderLayer::resize):
425         (WebCore::RenderLayer::filterNeedsRepaint):
426         * rendering/RenderLayerBacking.cpp:
427         (WebCore::RenderLayerBacking::createPrimaryGraphicsLayer):
428         (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
429         * rendering/RenderLayerCompositor.cpp:
430         (WebCore::RenderLayerCompositor::frameContentsCompositor):
431         * rendering/RenderLayerFilterInfo.cpp:
432         (WebCore::RenderLayer::FilterInfo::notifyFinished):
433         (WebCore::RenderLayer::FilterInfo::updateReferenceFilterClients):
434         (WebCore::RenderLayer::FilterInfo::notifyCustomFilterProgramLoaded):
435         * rendering/RenderLayerModelObject.cpp:
436         (WebCore::RenderLayerModelObject::RenderLayerModelObject):
437         * rendering/RenderLayerModelObject.h:
438         (WebCore::RenderLayerModelObject::element):
439         * rendering/RenderListBox.cpp:
440         (WebCore::RenderListBox::selectElement):
441         (WebCore::RenderListBox::paintItemForeground):
442         (WebCore::RenderListBox::paintItemBackground):
443         (WebCore::RenderListBox::scrollTo):
444         (WebCore::RenderListBox::createScrollbar):
445         * rendering/RenderListItem.cpp:
446         (WebCore::isList):
447         (WebCore::enclosingList):
448         (WebCore::nextListItem):
449         (WebCore::previousListItem):
450         (WebCore::RenderListItem::calcValue):
451         (WebCore::RenderListItem::explicitValueChanged):
452         (WebCore::RenderListItem::setExplicitValue):
453         (WebCore::RenderListItem::clearExplicitValue):
454         (WebCore::previousOrNextItem):
455         (WebCore::RenderListItem::updateListMarkerNumbers):
456         * rendering/RenderMarquee.cpp:
457         (WebCore::RenderMarquee::marqueeSpeed):
458         * rendering/RenderMedia.cpp:
459         (WebCore::RenderMedia::mediaElement):
460         * rendering/RenderMediaControlElements.cpp:
461         (WebCore::RenderMediaControlTimelineContainer::layout):
462         (WebCore::RenderTextTrackContainerElement::layout):
463         * rendering/RenderMenuList.cpp:
464         (WebCore::RenderMenuList::selectElement):
465         (WebCore::RenderMenuList::valueChanged):
466         (WebCore::RenderMenuList::createScrollbar):
467         * rendering/RenderMeter.cpp:
468         (WebCore::RenderMeter::meterElement):
469         * rendering/RenderPart.cpp:
470         (WebCore::RenderPart::requiresAcceleratedCompositing):
471         (WebCore::RenderPart::embeddedContentBox):
472         * rendering/RenderProgress.cpp:
473         (WebCore::RenderProgress::progressElement):
474         * rendering/RenderReplaced.cpp:
475         (WebCore::RenderReplaced::positionForPoint):
476         (WebCore::RenderReplaced::isSelected):
477         * rendering/RenderSearchField.cpp:
478         (WebCore::RenderSearchField::autosaveName):
479         (WebCore::RenderSearchField::createScrollbar):
480         * rendering/RenderSlider.cpp:
481         (WebCore::RenderSlider::layout):
482         (WebCore::RenderSlider::inDragMode):
483         * rendering/RenderSnapshottedPlugIn.cpp:
484         (WebCore::RenderSnapshottedPlugIn::plugInImageElement):
485         * rendering/RenderTable.cpp:
486         (WebCore::RenderTable::convertStyleLogicalWidthToComputedWidth):
487         (WebCore::RenderTable::convertStyleLogicalHeightToComputedHeight):
488         (WebCore::RenderTable::nodeAtPoint):
489         * rendering/RenderTableCell.cpp:
490         (WebCore::RenderTableCell::parseColSpanFromDOM):
491         (WebCore::RenderTableCell::parseRowSpanFromDOM):
492         (WebCore::RenderTableCell::updateColAndRowSpanFlags):
493         (WebCore::RenderTableCell::colSpanOrRowSpanChanged):
494         (WebCore::RenderTableCell::computePreferredLogicalWidths):
495         * rendering/RenderTableCol.cpp:
496         (WebCore::RenderTableCol::updateFromElement):
497         * rendering/RenderTextControl.cpp:
498         (WebCore::RenderTextControl::textFormControlElement):
499         (WebCore::RenderTextControl::adjustInnerTextStyle):
500         (WebCore::RenderTextControl::updateFromElement):
501         (WebCore::RenderTextControl::layoutSpecialExcludedChild):
502         * rendering/RenderTextControlMultiLine.cpp:
503         (WebCore::RenderTextControlMultiLine::~RenderTextControlMultiLine):
504         (WebCore::RenderTextControlMultiLine::nodeAtPoint):
505         (WebCore::RenderTextControlMultiLine::preferredContentLogicalWidth):
506         (WebCore::RenderTextControlMultiLine::computeControlLogicalHeight):
507         * rendering/RenderTextControlSingleLine.cpp:
508         (WebCore::RenderTextControlSingleLine::nodeAtPoint):
509         (WebCore::RenderTextControlSingleLine::capsLockStateMayHaveChanged):
510         (WebCore::RenderTextControlSingleLine::textShouldBeTruncated):
511         (WebCore::RenderTextControlSingleLine::inputElement):
512         * rendering/RenderThemeMac.mm:
513         (WebCore::RenderThemeMac::paintSnapshottedPluginOverlay):
514         * rendering/RenderTreeAsText.cpp:
515         (WebCore::writeRenderRegionList):
516         * rendering/RenderVideo.cpp:
517         (WebCore::RenderVideo::updateIntrinsicSize):
518         (WebCore::RenderVideo::videoElement):
519         * rendering/RenderWidget.cpp:
520         (WebCore::RenderWidget::setWidgetGeometry):
521         (WebCore::RenderWidget::updateWidgetPosition):
522         (WebCore::RenderWidget::nodeAtPoint):
523         * rendering/mathml/RenderMathMLFenced.cpp:
524         (WebCore::RenderMathMLFenced::updateFromElement):
525         (WebCore::RenderMathMLFenced::createMathMLOperator):
526         (WebCore::RenderMathMLFenced::styleDidChange):
527         * rendering/mathml/RenderMathMLFraction.cpp:
528         (WebCore::RenderMathMLFraction::updateFromElement):
529         * rendering/mathml/RenderMathMLOperator.cpp:
530         (WebCore::RenderMathMLOperator::updateFromElement):
531         (WebCore::RenderMathMLOperator::createGlyph):
532         * rendering/mathml/RenderMathMLSpace.cpp:
533         (WebCore::RenderMathMLSpace::updateFromElement):
534         * rendering/svg/RenderSVGForeignObject.cpp:
535         (WebCore::RenderSVGForeignObject::layout):
536         * rendering/svg/RenderSVGRoot.cpp:
537         (WebCore::RenderSVGRoot::computeIntrinsicRatioInformation):
538         (WebCore::RenderSVGRoot::isEmbeddedThroughSVGImage):
539         (WebCore::RenderSVGRoot::isEmbeddedThroughFrameContainingSVGDocument):
540         (WebCore::RenderSVGRoot::computeReplacedLogicalWidth):
541         (WebCore::RenderSVGRoot::computeReplacedLogicalHeight):
542         (WebCore::RenderSVGRoot::layout):
543         (WebCore::RenderSVGRoot::paintReplaced):
544         (WebCore::RenderSVGRoot::buildLocalToBorderBoxTransform):
545         (WebCore::RenderSVGRoot::nodeAtPoint):
546         (WebCore::RenderSVGRoot::hasRelativeDimensions):
547         (WebCore::RenderSVGRoot::hasRelativeIntrinsicLogicalWidth):
548         (WebCore::RenderSVGRoot::hasRelativeLogicalHeight):
549         * rendering/svg/RenderSVGText.cpp:
550         (WebCore::RenderSVGText::layout):
551         (WebCore::RenderSVGText::strokeBoundingBox):
552         * rendering/svg/RenderSVGTextPath.cpp:
553         (WebCore::RenderSVGTextPath::layoutPath):
554         (WebCore::RenderSVGTextPath::startOffset):
555         (WebCore::RenderSVGTextPath::exactAlignment):
556         (WebCore::RenderSVGTextPath::stretchMethod):
557
558 2013-09-09  Antti Koivisto  <antti@apple.com>
559
560         Make RenderView anonymous
561         https://bugs.webkit.org/show_bug.cgi?id=121013
562
563         Reviewed by Darin Adler and Dave Hyatt.
564
565         RenderView is currently the only renderer that has an associated Node that is not either Element or Text.
566         By making it anonymous (not have associated node, RenderView::node() returns null) we will be able to 
567         significantly tighten typing in both render and DOM trees.
568
569         * accessibility/AccessibilityRenderObject.cpp:
570         (WebCore::AccessibilityRenderObject::node):
571         
572             We need to grab document() instead of node() in a few places for RenderViews to keep existing code
573             behaving like it did.
574
575         * inspector/InspectorLayerTreeAgent.cpp:
576         (WebCore::InspectorLayerTreeAgent::buildObjectForLayer):
577         
578             Don't tell inspector that the root layer is anonymous for now to avoid changing behavior.
579
580         * rendering/RenderBlock.cpp:
581         (WebCore::RenderBlock::nodeForHitTest):
582         * rendering/RenderBox.cpp:
583         (WebCore::RenderBox::canBeProgramaticallyScrolled):
584         
585             The old non-virtual RenderView test renderer->node == &renderer->document() does not work anymore.
586             Switch to isRenderView() which is now non-virtual in a number of places.
587
588         (WebCore::RenderBox::canAutoscroll):
589         (WebCore::RenderBox::findAutoscrollable):
590         (WebCore::RenderBox::computeReplacedLogicalHeightUsing):
591         * rendering/RenderBoxModelObject.cpp:
592         (WebCore::RenderBoxModelObject::hasAutoHeightOrContainingBlockWithAutoHeight):
593         * rendering/RenderLayerBacking.cpp:
594         (WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer):
595         * rendering/RenderObject.h:
596         (WebCore::RenderObject::isRenderReplaced):
597         (WebCore::RenderObject::isAnonymousBlock):
598         
599             RenderView is anonymous but not a CSS anonymous block.
600
601         (WebCore::RenderObject::isText):
602         (WebCore::RenderObject::isRenderView):
603         
604             Make isRenderView non-virtual since it is now hot. Reuse existing bits.
605
606         (WebCore::RenderObject::setIsText):
607         (WebCore::RenderObject::setIsRenderView):
608         (WebCore::RenderObject::RenderObjectBitfields::RenderObjectBitfields):
609         * rendering/RenderTreeAsText.cpp:
610         (WebCore::writeSelection):
611         * rendering/RenderView.cpp:
612         
613             Make anonymous.
614
615         (WebCore::RenderView::RenderView):
616         * rendering/RenderView.h:
617         * rendering/svg/RenderSVGRoot.cpp:
618         (WebCore::RenderSVGRoot::computeReplacedLogicalHeight):
619
620 2013-09-09  Bem Jones-Bey  <bjonesbe@adobe.com>
621
622         Move logical(Left|Right)FloatOffsetForLine methods into FloatingObjects
623         https://bugs.webkit.org/show_bug.cgi?id=120705
624
625         Reviewed by Sam Weinig.
626
627         These are the only consumers of the CalculateFloatOffsetAdapter and
628         the placed floats tree, so it will allow us to reduce the public
629         interface of FloatingObjects and make the placed floats tree private.
630
631         No new tests, no behavior change.
632
633         * rendering/RenderBlock.cpp:
634         (WebCore::RenderBlock::logicalLeftFloatOffsetForLine):
635         (WebCore::RenderBlock::logicalRightFloatOffsetForLine):
636         (WebCore::RenderBlock::FloatingObjects::logicalLeftOffset):
637         (WebCore::RenderBlock::FloatingObjects::logicalRightOffset):
638         * rendering/RenderBlock.h:
639         (WebCore::RenderBlock::FloatingObjects::placedFloatsTree):
640
641 2013-09-09  Christophe Dumez  <ch.dumez@sisa.samsung.com>
642
643         Add support for BeforeUnloadEvent interface
644         https://bugs.webkit.org/show_bug.cgi?id=120849
645
646         Reviewed by Darin Adler.
647
648         Add support for BeforeUnloadEvent as per the specification:
649         http://www.whatwg.org/specs/web-apps/current-work/#beforeunloadevent
650
651         BeforeUnloadEvent has a returnValue attribute. Setting returnValue to a non-empty
652         string in an event handler causes the user agent should ask the user to confirm
653         that they wish to unload the document. This is equivalent to returning a non-empty
654         string in the EventHandler:
655         http://www.whatwg.org/specs/web-apps/current-work/#onbeforeunloadeventhandler
656
657         BeforeUnloadEvent and returnValue are already supported by IE and Firefox. Previously,
658         WebKit was passing a base Event type to the beforeunload event handlers instead of
659         a BeforeUnloadEvent.
660
661         Note that this patch keeps support for the legacy Event.returnValue attribute. This used
662         to be an IE extension but this is no longer supported by IE (nor Firefox). The standard
663         preventDefault() should be used instead however (supported in IE >= 9).
664
665         Test: fast/events/before-unload-returnValue.html
666
667         * CMakeLists.txt:
668         * DerivedSources.cpp:
669         * DerivedSources.make:
670         * DerivedSources.pri:
671         * GNUmakefile.list.am:
672         * WebCore.order:
673         * WebCore.vcxproj/WebCore.vcxproj:
674         * bindings/js/JSEventListener.cpp:
675         (WebCore::JSEventListener::handleEvent):
676         * dom/BeforeUnloadEvent.cpp:
677         (WebCore::BeforeUnloadEvent::isBeforeUnloadEvent):
678         (WebCore::BeforeUnloadEvent::~BeforeUnloadEvent):
679         * dom/BeforeUnloadEvent.h:
680         (WebCore::BeforeUnloadEvent::create):
681         (WebCore::BeforeUnloadEvent::returnValue):
682         (WebCore::BeforeUnloadEvent::setReturnValue):
683         (WebCore::toBeforeUnloadEvent):
684         * dom/BeforeUnloadEvent.idl: Added.
685         * dom/Event.cpp:
686         (WebCore::Event::isBeforeUnloadEvent):
687         * dom/Event.h:
688         (WebCore::Event::legacyReturnValue):
689         (WebCore::Event::setLegacyReturnValue):
690         * dom/Event.idl:
691         * dom/EventNames.in:
692         * loader/FrameLoader.cpp:
693         (WebCore::FrameLoader::handleBeforeUnloadEvent):
694
695 2013-09-06  David Hyatt  <hyatt@apple.com>
696
697         Get rid of isBlockFlowFlexBoxOrGrid().
698         https://bugs.webkit.org/show_bug.cgi?id=120897
699
700         Convert all callers and get rid of this method.
701
702         Reviewed by Beth Dakin.
703
704         * accessibility/AccessibilityRenderObject.cpp:
705         (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
706         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
707         * dom/Position.cpp:
708         (WebCore::Position::isCandidate):
709         (WebCore::Position::getInlineBoxAndOffset):
710         (WebCore::Position::primaryDirection):
711         * dom/PositionIterator.cpp:
712         (WebCore::PositionIterator::isCandidate):
713         * editing/CompositeEditCommand.cpp:
714         (WebCore::CompositeEditCommand::addBlockPlaceholderIfNeeded):
715         * editing/Editor.cpp:
716         (WebCore::Editor::baseWritingDirectionForSelectionStart):
717         * editing/FrameSelection.cpp:
718         (WebCore::caretRenderer):
719         * editing/TextIterator.cpp:
720         (WebCore::TextIterator::shouldRepresentNodeOffsetZero):
721         * editing/TypingCommand.cpp:
722         (WebCore::TypingCommand::makeEditableRootEmpty):
723         * editing/htmlediting.cpp:
724         (WebCore::isBlockFlowElement):
725         * rendering/LayoutState.cpp:
726         (WebCore::LayoutState::LayoutState):
727         * rendering/RenderBlock.cpp:
728         (WebCore::RenderBlock::layoutBlock):
729         (WebCore::RenderBlock::collapseMargins):
730         (WebCore::RenderBlock::selectionGaps):
731         (WebCore::RenderBlock::firstLineBoxBaseline):
732         (WebCore::RenderBlock::lastLineBoxBaseline):
733         (WebCore::RenderBlock::firstLineBlock):
734         (WebCore::findFirstLetterBlock):
735         (WebCore::shouldCheckLines):
736         (WebCore::RenderBlock::adjustForBorderFit):
737         * rendering/RenderBox.cpp:
738         (WebCore::RenderBox::computeRectForRepaint):
739         (WebCore::RenderBox::positionForPoint):
740         * rendering/RenderBoxModelObject.h:
741         (WebCore::RenderBoxModelObject::canHaveBoxInfoInRegion):
742         * rendering/RenderInline.cpp:
743         (WebCore::RenderInline::computeRectForRepaint):
744         * rendering/RenderLineBoxList.cpp:
745         (WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
746         * rendering/RenderObject.cpp:
747         (WebCore::RenderObject::computeRectForRepaint):
748         (WebCore::RenderObject::styleWillChange):
749         (WebCore::firstLineStyleForCachedUncachedType):
750         * rendering/RenderObject.h:
751         * rendering/RenderObjectChildList.cpp:
752         (WebCore::RenderObjectChildList::insertChildNode):
753         * rendering/RenderView.h:
754
755 2013-09-09  Eric Carlson  <eric.carlson@apple.com>
756
757         MediaStream API: Stop means stop
758         https://bugs.webkit.org/show_bug.cgi?id=120873
759
760         Reviewed by Jer Noble.
761
762         Merge blink https://chromium.googlesource.com/chromium/blink/+/9a97b0f3892320fa5741485e06a78183b77c3635
763         by Tommy Widenflycht.
764
765         Removing notification functionality from MediaStreamTrack::stop because the world is being torn down.
766
767         No new tests, the original author was unable to come up with a reliable test case.
768
769         * Modules/mediastream/MediaStreamTrack.cpp:
770         (WebCore::MediaStreamTrack::stop): Don't call didEndTrack, the world is going away.
771
772 2013-09-09  Filip Pizlo  <fpizlo@apple.com>
773
774         Unreviewed, fix build.
775
776         * Modules/encryptedmedia/MediaKeySession.h:
777
778 2013-09-09  Eric Carlson  <eric.carlson@apple.com>
779
780         MediaStream API: Moving Add/Remove track from WebMediaStreamCenterClient to WebMediaStream
781         https://bugs.webkit.org/show_bug.cgi?id=120872
782
783         Reviewed by Jer Noble.
784
785         Merge https://chromium.googlesource.com/chromium/blink/+/7d740fd27c1f345b59c846df01c3adce53c18e6e
786         Simple cleanup that makes the API cleaner.
787
788         * Modules/mediastream/MediaStream.cpp:
789         (WebCore::MediaStream::removeTrack):
790         (WebCore::MediaStream::addRemoteTrack):
791         (WebCore::MediaStream::removeRemoteTrack):
792         * platform/mediastream/MediaStreamCenter.cpp:
793         * platform/mediastream/MediaStreamCenter.h:
794         * platform/mediastream/MediaStreamDescriptor.h:
795         (WebCore::MediaStreamDescriptor::removeAudioComponent):
796         (WebCore::MediaStreamDescriptor::addRemoteTrack):
797         (WebCore::MediaStreamDescriptor::removeRemoteTrack):
798
799 2013-09-09  ChangSeok Oh  <changseok.oh@collabora.com>
800
801         [WK2] Assertion failure in WebCore::Page::checkSubframeCountConsistency when going back
802         https://bugs.webkit.org/show_bug.cgi?id=119781
803
804         Reviewed by Alexey Proskuryakov.
805
806         We should pair restoring a cached frame and adding it to FrameTree so that
807         actual added frame count in FrameTree keeps same with restored frame count.
808         Otherwise assert failure occurs in Page::CheckSubframeCountConsistency.
809         We have added cached frames to FrameTree ahead and then restored them by tree travelsal.
810         But this way doesn't guarantee subframecount of Page and the number of child of FrameTree are equal.
811         In addition, we still make sure that adding a cached frame to FrameTree should happen
812         before opening it. Because FrameTree might be used while restoring a cached page.
813
814         Test: fast/history/go-back-to-iframe-with-plugin.html
815
816         * history/CachedFrame.cpp:
817         (WebCore::CachedFrameBase::restore):
818         (WebCore::CachedFrame::open):
819
820 2013-09-09  Luciano Wolf  <luciano.wolf@openbossa.org>
821
822         Nix upstreaming - Adding stubs and Nix specific platform files
823         https://bugs.webkit.org/show_bug.cgi?id=118358
824
825         Reviewed by Benjamin Poulain.
826
827         Basically adding all files that have "Nix" in their names and
828         are related to WebCore module.
829
830         No new tests. They will be uploaded on another patch during the
831         upstreaming process.
832
833         * css/mediaControlsNix.css: Added.
834         * css/mediaControlsNixFullscreen.css: Added.
835         * page/nix/EventHandlerNix.cpp: Added.
836         * platform/graphics/egl/GLContextFromCurrentEGL.cpp: Added.
837         * platform/graphics/egl/GLContextFromCurrentEGL.h: Added.
838         * platform/graphics/gstreamer/PlatformVideoWindowNix.cpp: Added.
839         * platform/graphics/nix/IconNix.cpp: Added.
840         * platform/graphics/nix/ImageNix.cpp: Added.
841         * platform/nix/CursorNix.cpp: Added.
842         * platform/nix/DragDataNix.cpp: Added.
843         * platform/nix/DragImageNix.cpp: Added.
844         * platform/nix/GamepadsNix.cpp: Added.
845         * platform/nix/LanguageNix.cpp: Added.
846         * platform/nix/LocalizedStringsNix.cpp: Added.
847         * platform/nix/NixKeyboardUtilities.cpp: Added.
848         * platform/nix/NixKeyboardUtilities.h: Added.
849         * platform/nix/PasteboardNix.cpp: Added.
850         * platform/nix/PlatformKeyboardEventNix.cpp: Added.
851         * platform/nix/PlatformScreenNix.cpp: Added.
852         * platform/nix/SoundNix.cpp: Added.
853         * platform/nix/WidgetNix.cpp: Added.
854         * platform/text/nix/TextBreakIteratorInternalICUNix.cpp: Added.
855
856 2013-09-09  Hugo Parente Lima  <hugo.lima@openbossa.org>
857
858         Preparing WebCore to receive Nix Port
859         https://bugs.webkit.org/show_bug.cgi?id=118326
860
861         Reviewed by Eric Carlson.
862
863         Only adding the compilation directives that are Nix specific, in the
864         existent WebCore files
865
866         * loader/FrameLoader.cpp:
867         (WebCore::FrameLoader::defaultObjectContentType):
868         * platform/Cursor.h:
869         * platform/DragData.h:
870         * platform/DragImage.h:
871         * platform/FileSystem.h:
872         * platform/RunLoop.h:
873         * platform/Widget.h:
874         * platform/audio/FFTFrame.h:
875         * platform/audio/HRTFElevation.cpp:
876         * platform/cairo/WidgetBackingStore.h:
877         * platform/graphics/ANGLEWebKitBridge.h:
878         * platform/graphics/FontPlatformData.h:
879         * platform/graphics/GraphicsContext3D.cpp:
880         * platform/graphics/GraphicsContext3D.h:
881         * platform/graphics/OpenGLESShims.h:
882         * platform/graphics/OpenGLShims.cpp:
883         (WebCore::getProcAddress):
884         * platform/graphics/OpenGLShims.h:
885         * platform/graphics/PlatformLayer.h:
886         * platform/graphics/cairo/GLContext.cpp:
887         (WebCore::GLContext::createContextForWindow):
888         * platform/graphics/cairo/GraphicsContext3DPrivate.cpp:
889         (WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
890         * platform/graphics/freetype/FontPlatformDataFreeType.cpp:
891         * platform/graphics/opengl/Extensions3DOpenGL.cpp:
892         (WebCore::Extensions3DOpenGL::createVertexArrayOES):
893         (WebCore::Extensions3DOpenGL::deleteVertexArrayOES):
894         (WebCore::Extensions3DOpenGL::isVertexArrayOES):
895         (WebCore::Extensions3DOpenGL::bindVertexArrayOES):
896         (WebCore::Extensions3DOpenGL::supportsExtension):
897         * platform/graphics/opengl/Extensions3DOpenGL.h:
898         * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
899         * platform/graphics/opengl/Extensions3DOpenGLES.h:
900         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
901         * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
902         (WebCore::GraphicsContext3D::reshape):
903         * platform/graphics/texmap/TextureMapper.h:
904         * plugins/PluginPackage.cpp:
905         * plugins/PluginView.cpp:
906         (WebCore::PluginView::PluginView):
907         * plugins/PluginView.h:
908         * plugins/PluginViewNone.cpp:
909
910 2013-09-08  Darin Adler  <darin@apple.com>
911
912         Tighten up EventQueue classes a bit, less indirection and memory allocation
913         https://bugs.webkit.org/show_bug.cgi?id=121016
914
915         Reviewed by Andreas Kling.
916
917         * Modules/encryptedmedia/MediaKeySession.cpp:
918         (WebCore::MediaKeySession::MediaKeySession): Updated since event queue is now
919         a member rather than an OwnPtr.
920         (WebCore::MediaKeySession::close): Ditto.
921         (WebCore::MediaKeySession::keyRequestTimerFired): Ditto.
922         (WebCore::MediaKeySession::addKeyTimerFired): Ditto.
923         * Modules/encryptedmedia/MediaKeySession.h: Ditto.
924
925         * Modules/indexeddb/IDBDatabase.cpp:
926         (WebCore::IDBDatabase::closeConnection): Updated since ScriptExecutionContext's
927         eventQueue function now returns a reference rather than a pointer. Also, the
928         cancelEvent function takes a reference instead of a pointer.
929         (WebCore::IDBDatabase::enqueueEvent): Ditto.
930         * Modules/indexeddb/IDBRequest.cpp:
931         (WebCore::IDBRequest::abort): Ditto.
932         (WebCore::IDBRequest::enqueueEvent): Ditto.
933         * Modules/indexeddb/IDBTransaction.cpp:
934         (WebCore::IDBTransaction::enqueueEvent): Ditto.
935
936         * Modules/mediasource/MediaSource.cpp:
937         (WebCore::MediaSource::MediaSource): Updated since event queue is now a
938         member rather than an OwnPtr. Also use initialization instead of assignment
939         to set up source buffers.
940         (WebCore::MediaSource::hasPendingActivity): Ditto.
941         (WebCore::MediaSource::stop): Ditto.
942         (WebCore::MediaSource::scheduleEvent): Ditto.
943         * Modules/mediasource/MediaSource.h: Ditto.
944
945         * Modules/mediasource/SourceBufferList.cpp:
946         (WebCore::SourceBufferList::SourceBufferList): Take references instead of
947         pointers.
948         (WebCore::SourceBufferList::length): Changed type to unsigned instead of
949         unsigned long. This is an IDL "unsigned long", which corresponds to "unsigned"
950         in our C++ DOM implementation.
951         (WebCore::SourceBufferList::createAndFireEvent): Updated since event queue is
952         now a reference.
953         (WebCore::SourceBufferList::scriptExecutionContext): Updated since script
954         execution context is now a reference.
955         * Modules/mediasource/SourceBufferList.h: Ditto.
956
957         * dom/Document.cpp:
958         (WebCore::Document::Document): Updated since event queue is now a member rather
959         than a RefPtr.
960         (WebCore::Document::detach): Ditto.
961         (WebCore::Document::enqueueWindowEvent): Ditto.
962         (WebCore::Document::enqueueDocumentEvent): Ditto.
963         * dom/Document.h: Ditto.
964
965         * dom/DocumentEventQueue.cpp: Renamed DocumentEventQueueTimer to just Timer and
966         made it a class member of DocumentEventQueue. Also changed it to use references
967         instead of pointers and removed unneeded ScriptExecutionContext argument.
968         (WebCore::DocumentEventQueue::DocumentEventQueue): Updated to take a document
969         reference instead of a script execution context pointer.
970         (WebCore::DocumentEventQueue::enqueueEvent): Wrote the assertions in a clearer
971         style and do the assertions even when the queue is closed.
972         (WebCore::DocumentEventQueue::enqueueOrDispatchScrollEvent): Removed the unneeded
973         ScrollEventTargetType argument, since the policy is specific to the document node.
974         Made the argument a reference instead of a PassRefPtr, and rewrote the function
975         to be more straightforward and readable.
976         (WebCore::DocumentEventQueue::cancelEvent): Use the return value recently added to
977         the remove function to avoid the need for use of iterators and a find/remove pair.
978         (WebCore::DocumentEventQueue::pendingEventTimerFired): Rewrote this to use the
979         recently added ListHashSet takeFirst function. Also protect the document instead
980         of protecting just this object during the dispatch. Can't really protect the
981         event queue since it's no longer separately reference counted.
982         (WebCore::DocumentEventQueue::dispatchEvent): Changed this to take a reference and
983         added a FIXME about some curious code in here that needs a "why" comment.
984         * dom/DocumentEventQueue.h: Removed many unneeded includes, some unneeded forward
985         declarations, marked the class final, made it no longer derive from RefCounted,
986         removed ScrollEventTargetType and create, and did the other changes mentioned above.
987
988         * dom/EventQueue.h: Got rid of many uneeded includes, changed the argument type
989         of cancelEvent to Event& and rewrote the comment for close.
990
991         * dom/GenericEventQueue.cpp:
992         (WebCore::GenericEventQueue::GenericEventQueue): Updated to take a reference.
993         (WebCore::GenericEventQueue::enqueueEvent): Ditto.
994         (WebCore::GenericEventQueue::timerFired): Ditto.
995         * dom/GenericEventQueue.h: Changed this class to no longer derive from EventQueue
996         since there was no value coming from that polymorphism. Removed all the virtual
997         keywords from the class. Switched from pointers to references. Removed the unused
998         cancelEvent function. Removed the create function since this is always used as a
999         data member, not a pointer on the heap.
1000
1001         * dom/ScriptExecutionContext.h: Changed the return type of eventQueue to a reference.
1002
1003         * html/HTMLMediaElement.cpp:
1004         (WebCore::HTMLMediaElement::HTMLMediaElement): Updated since event queue is now a
1005         member rather than an OwnPtr.
1006         (WebCore::HTMLMediaElement::~HTMLMediaElement): Ditto.
1007         (WebCore::HTMLMediaElement::scheduleEvent): Ditto.
1008         (WebCore::HTMLMediaElement::updateActiveTextTrackCues): Ditto.
1009         (WebCore::HTMLMediaElement::cancelPendingEventsAndCallbacks): Ditto.
1010         (WebCore::HTMLMediaElement::mediaPlayerKeyAdded): Ditto.
1011         (WebCore::HTMLMediaElement::mediaPlayerKeyError): Ditto.
1012         (WebCore::HTMLMediaElement::mediaPlayerKeyMessage): Ditto.
1013         (WebCore::HTMLMediaElement::mediaPlayerKeyNeeded): Ditto.
1014         (WebCore::HTMLMediaElement::stop): Ditto.
1015         (WebCore::HTMLMediaElement::hasPendingActivity): Ditto.
1016         * html/HTMLMediaElement.h: Ditto.
1017
1018         * page/EventHandler.cpp:
1019         (WebCore::EventHandler::sendScrollEvent): Updated to remove the now-uneeded
1020         ScrollEventTargetType argument, and also to use references instead of pointers.
1021         * rendering/RenderLayer.cpp:
1022         (WebCore::RenderLayer::scrollTo): Ditto.
1023         * rendering/RenderListBox.cpp:
1024         (WebCore::RenderListBox::scrollTo): Ditto.
1025
1026         * workers/WorkerEventQueue.cpp:
1027         (WebCore::WorkerEventQueue::WorkerEventQueue): Updated to work with references
1028         instead of pointers.
1029         (WebCore::WorkerEventQueue::enqueueEvent): Ditto.
1030         (WebCore::WorkerEventQueue::cancelEvent): Use the take function instead of a
1031         get/remove pair, to eliminate double hashing.
1032         * workers/WorkerEventQueue.h: Removed unneeded includes, forward declarations,
1033         the create function, and the private removeEvent function. Marked class final.
1034
1035         * workers/WorkerGlobalScope.cpp:
1036         (WebCore::WorkerGlobalScope::WorkerGlobalScope): Updated since eventQueue is
1037         now a data member.
1038         (WebCore::WorkerGlobalScope::eventQueue): Ditto.
1039         * workers/WorkerGlobalScope.h: Made m_eventQueue a queue instead of a pointer
1040         to a queue. Also made the eventQueue function private and final.
1041
1042 2013-09-09  Hans Muller  <hmuller@adobe.com>
1043
1044         [CSS Shapes] Heap-buffer-overflow in WebCore::ShapeInterval<float>::subtractShapeIntervals
1045         https://bugs.webkit.org/show_bug.cgi?id=120802
1046
1047         Reviewed by Darin Adler.
1048
1049         Revised the implementation of subtractShapeIntervals() to isloate and check the
1050         places where it dereferences ShapeInterval vector iterators.
1051
1052         Test: fast/shapes/shape-inside/shape-inside-subtract-intervals-crash.html
1053
1054         * rendering/shapes/ShapeInterval.h:
1055         (WebCore::ShapeInterval::subtractShapeIntervals):
1056
1057 2013-09-09  Darin Adler  <darin@apple.com>
1058
1059         matchingShorthandsForLonghand builds map using a giant function
1060         https://bugs.webkit.org/show_bug.cgi?id=121029
1061
1062         Reviewed by Anders Carlsson.
1063
1064         There is no need to use a map for this; a switch statement is fine.
1065         Also, these structures are simple enough that we can build them
1066         every time; we don't need to keep them in globals.
1067
1068         * css/CSSParser.cpp:
1069         (WebCore::CSSParser::addProperty): Got rid of non-helpful local in
1070         CSS_VARIABLES code. Updated for change in return value of the
1071         matchingShorthandsForLonghand.
1072         (WebCore::CSSParser::parseShorthand): Updated for change in return
1073         type of propertiesForInitialization.
1074
1075         * css/CSSProperty.cpp:
1076         (WebCore::StylePropertyMetadata::shorthandID): Updated for change in
1077         return value of matchingShorthandsForLonghand.
1078
1079         * css/StylePropertyShorthand.cpp:
1080         (WebCore::backgroundShorthand): Got rid of local variable, constructing
1081         the StylePropertyShorthand every time.
1082         (WebCore::backgroundPositionShorthand): Ditto.
1083         (WebCore::backgroundRepeatShorthand): Ditto.
1084         (WebCore::borderShorthand): Ditto.
1085         (WebCore::borderAbridgedShorthand): Ditto.
1086         (WebCore::borderBottomShorthand): Ditto.
1087         (WebCore::borderColorShorthand): Ditto.
1088         (WebCore::borderImageShorthand): Ditto.
1089         (WebCore::borderLeftShorthand): Ditto.
1090         (WebCore::borderRadiusShorthand): Ditto.
1091         (WebCore::webkitBorderRadiusShorthand): Ditto.
1092         (WebCore::borderRightShorthand): Ditto.
1093         (WebCore::borderSpacingShorthand): Ditto.
1094         (WebCore::borderStyleShorthand): Ditto.
1095         (WebCore::borderTopShorthand): Ditto.
1096         (WebCore::borderWidthShorthand): Ditto.
1097         (WebCore::listStyleShorthand): Ditto.
1098         (WebCore::fontShorthand): Ditto.
1099         (WebCore::marginShorthand): Ditto. Ditto.
1100         (WebCore::markerShorthand): Ditto.
1101         (WebCore::outlineShorthand): Ditto.
1102         (WebCore::overflowShorthand): Ditto.
1103         (WebCore::paddingShorthand): Ditto.
1104         (WebCore::transitionShorthand): Ditto.
1105         (WebCore::webkitAnimationShorthand): Ditto.
1106         (WebCore::webkitAnimationShorthandForParsing): Ditto.
1107         (WebCore::webkitBorderAfterShorthand): Ditto.
1108         (WebCore::webkitBorderBeforeShorthand): Ditto.
1109         (WebCore::webkitBorderEndShorthand): Ditto.
1110         (WebCore::webkitBorderStartShorthand): Ditto.
1111         (WebCore::webkitColumnsShorthand): Ditto.
1112         (WebCore::webkitColumnRuleShorthand): Ditto.
1113         (WebCore::webkitFlexFlowShorthand): Ditto.
1114         (WebCore::webkitFlexShorthand): Ditto.
1115         (WebCore::webkitMarginCollapseShorthand): Ditto.
1116         (WebCore::webkitGridColumnShorthand): Ditto.
1117         (WebCore::webkitGridRowShorthand): Ditto.
1118         (WebCore::webkitMarqueeShorthand): Ditto.
1119         (WebCore::webkitMaskShorthand): Ditto.
1120         (WebCore::webkitMaskPositionShorthand): Ditto.
1121         (WebCore::webkitMaskRepeatShorthand): Ditto.
1122         (WebCore::webkitTextDecorationShorthand): Ditto.
1123         (WebCore::webkitTextEmphasisShorthand): Ditto.
1124         (WebCore::webkitTextStrokeShorthand): Ditto.
1125         (WebCore::webkitTransitionShorthand): Ditto.
1126         (WebCore::webkitTransformOriginShorthand): Ditto.
1127         (WebCore::widthShorthand): Ditto.
1128         (WebCore::heightShorthand): Ditto.
1129         (WebCore::shorthandForProperty): Ditto.
1130         (WebCore::makeVector): Added. Helper function for the cases in the
1131         switch inside matchingShorthandsForLonghand.
1132         (WebCore::matchingShorthandsForLonghand): Rewrote this to use a switch
1133         instead of a map.
1134         (WebCore::indexOfShorthandForLonghand): Tightened up the coding style a bit.
1135
1136         * css/StylePropertyShorthand.h: Changed type of StylePropertyShorthand's
1137         propertiesForInitialization to be an array of shorthands rather than an
1138         array of pointers to shorthands. Changed return types of the shorthand
1139         functions to return a shorthand object rather than a reference. Did the same
1140         for the other functions.
1141
1142 2013-09-09  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1143
1144         MouseEnter and MouseLeave may be emitted on Document nodes
1145         https://bugs.webkit.org/show_bug.cgi?id=120862
1146
1147         Reviewed by Antonio Gomes.
1148
1149         Replace the overgeneric use of Nodes with Elements in updateHoverActiveState.
1150         This also fixes the bug of emitting mouseenter/mouseleave events on Document,
1151         since Document is not an Element.
1152
1153         This is tested by fast/events/mouseenterleave-on-subframe.html
1154
1155         * dom/Document.cpp:
1156         (WebCore::Document::updateHoverActiveState):
1157
1158 2013-09-09  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1159
1160         MouseLeave not always emitted when cursor leaves subframe
1161         https://bugs.webkit.org/show_bug.cgi?id=121026
1162
1163         Reviewed by Antonio Gomes.
1164
1165         Forward the PlatformMouseEvent in the recursive calls so nested documents
1166         also get a chance to emit mouseleave when the hover moves out.
1167
1168         Test: fast/events/mouseenterleave-on-subframe.html
1169
1170         * dom/Document.cpp:
1171         (WebCore::Document::updateHoverActiveState):
1172
1173 2013-09-09  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
1174
1175         Adding username to RTCIceServer
1176         https://bugs.webkit.org/show_bug.cgi?id=120861
1177
1178         Reviewed by Eric Carlson.
1179
1180         No new tests needed. Existing media stream tests already cover it
1181
1182         * Modules/mediastream/RTCPeerConnection.cpp:
1183         (WebCore::RTCPeerConnection::parseConfiguration):
1184         * platform/mediastream/RTCConfiguration.h:
1185         (WebCore::RTCIceServer::create):
1186         (WebCore::RTCIceServer::username):
1187         (WebCore::RTCIceServer::RTCIceServer):
1188
1189 2013-09-09  Antti Koivisto  <antti@apple.com>
1190
1191         Hide Document::renderer()
1192         https://bugs.webkit.org/show_bug.cgi?id=121028
1193
1194         Reviewed by Andreas Kling.
1195
1196         Use less generic Document::renderView() instead.
1197
1198         * accessibility/AXObjectCache.cpp:
1199         (WebCore::AXObjectCache::postNotification):
1200         * accessibility/AccessibilityObject.cpp:
1201         (WebCore::appendAccessibilityObject):
1202         * accessibility/AccessibilityScrollView.cpp:
1203         (WebCore::AccessibilityScrollView::webAreaObject):
1204         * css/CSSFontSelector.cpp:
1205         (WebCore::CSSFontSelector::dispatchInvalidationCallbacks):
1206         * css/StyleResolver.cpp:
1207         (WebCore::StyleResolver::appendAuthorStyleSheets):
1208         * dom/Document.cpp:
1209         (WebCore::Document::~Document):
1210         (WebCore::Document::webkitGetNamedFlows):
1211         (WebCore::Document::setVisualUpdatesAllowed):
1212         (WebCore::Document::elementFromPoint):
1213         (WebCore::Document::caretRangeFromPoint):
1214         (WebCore::Document::updateLayout):
1215         (WebCore::Document::existingAXObjectCache):
1216         (WebCore::Document::axObjectCache):
1217         (WebCore::Document::setVisuallyOrdered):
1218         (WebCore::Document::implicitClose):
1219         (WebCore::Document::prepareMouseEvent):
1220         (WebCore::Document::styleResolverChanged):
1221         (WebCore::Document::documentWillBecomeInactive):
1222         (WebCore::Document::documentDidResumeFromPageCache):
1223         * dom/Document.h:
1224         * dom/DocumentStyleSheetCollection.cpp:
1225         (WebCore::DocumentStyleSheetCollection::updateActiveStyleSheets):
1226         * dom/Element.cpp:
1227         (WebCore::Element::~Element):
1228         * dom/InlineStyleSheetOwner.cpp:
1229         (WebCore::InlineStyleSheetOwner::removedFromDocument):
1230         * dom/ProcessingInstruction.cpp:
1231         (WebCore::ProcessingInstruction::removedFrom):
1232         * editing/FrameSelection.cpp:
1233         (WebCore::FrameSelection::contains):
1234         * html/HTMLElement.cpp:
1235         (WebCore::HTMLElement::adjustDirectionalityIfNeededAfterChildrenChanged):
1236         * html/HTMLLinkElement.cpp:
1237         (WebCore::HTMLLinkElement::removedFrom):
1238         * html/HTMLStyleElement.cpp:
1239         (WebCore::HTMLStyleElement::parseAttribute):
1240         (WebCore::HTMLStyleElement::registerWithScopingNode):
1241         (WebCore::HTMLStyleElement::unregisterWithScopingNode):
1242         * html/parser/HTMLResourcePreloader.cpp:
1243         (WebCore::HTMLResourcePreloader::preload):
1244         * loader/ImageLoader.cpp:
1245         (WebCore::ImageLoader::updateFromElement):
1246         * page/EventHandler.cpp:
1247         (WebCore::EventHandler::handleWheelEvent):
1248         (WebCore::EventHandler::handleGestureScrollBegin):
1249         * page/Frame.cpp:
1250         (WebCore::Frame::setPageAndTextZoomFactors):
1251         * page/FrameView.cpp:
1252         (WebCore::FrameView::layout):
1253         (WebCore::FrameView::doLayoutWithFrameFlattening):
1254         * page/Page.cpp:
1255         (WebCore::Page::setPageScaleFactor):
1256         * page/PrintContext.cpp:
1257         (WebCore::PrintContext::spoolAllPagesWithBoundaries):
1258         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1259         (WebCore::MediaPlayerPrivateQTKit::paint):
1260         * style/StyleResolveTree.cpp:
1261         (WebCore::Style::resolveTree):
1262         * svg/SVGDocument.cpp:
1263         (WebCore::SVGDocument::updatePan):
1264
1265 2013-09-09  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1266
1267         [DOM4] Have ProcessingInstruction inherit CharacterData
1268         https://bugs.webkit.org/show_bug.cgi?id=120691
1269
1270         Reviewed by Darin Adler.
1271
1272         Have ProcessingInstruction inherit CharacterData as per the latest DOM4
1273         specification:
1274         http://dom.spec.whatwg.org/#processinginstruction
1275
1276         Previously, ProcessingInstruction was inheriting from Node as per DOM
1277         Level 3.
1278
1279         Firefox and Blink already follow DOM4 here but not IE10.
1280         This change leads to less code duplication.
1281
1282         Test: fast/dom/processing-instruction-inherit-characterdata.xhtml
1283
1284         * bindings/objc/PublicDOMInterfaces.h:
1285         * dom/CharacterData.cpp:
1286         (WebCore::CharacterData::setDataAndUpdate):
1287         * dom/ProcessingInstruction.cpp:
1288         (WebCore::ProcessingInstruction::ProcessingInstruction):
1289         (WebCore::ProcessingInstruction::cloneNode):
1290         (WebCore::ProcessingInstruction::checkStyleSheet):
1291         (WebCore::ProcessingInstruction::insertedInto):
1292         (WebCore::ProcessingInstruction::removedFrom):
1293         (WebCore::ProcessingInstruction::finishParsingChildren):
1294         * dom/ProcessingInstruction.h:
1295         (WebCore::toProcessingInstruction):
1296         * dom/ProcessingInstruction.idl:
1297
1298 2013-09-09  Krzysztof Czech  <k.czech@samsung.com>
1299
1300         [AX][ATK] AccessibilityObject representing ProgressBar element should be ATK_VALUE type
1301         https://bugs.webkit.org/show_bug.cgi?id=121023
1302
1303         Reviewed by Mario Sanchez Prada.
1304
1305         Test: accessibility/progressbar.html
1306
1307         ProgressBar element should support ATK_VALUE interface.
1308
1309         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
1310         (getInterfaceMaskFromObject):
1311
1312 2013-09-09  Claudio Saavedra  <csaavedra@igalia.com>
1313
1314         [GTK]  ghost cursor when mouse hovers over an image file in a tab
1315         https://bugs.webkit.org/show_bug.cgi?id=120675
1316
1317         Reviewed by Carlos Garcia Campos.
1318
1319         No new tests, covered by existing.
1320
1321         * platform/gtk/CursorGtk.cpp:
1322         (WebCore::createNamedCursor): Use new gdk_cursor_new_from_surface()
1323         when compiling against GTK+ 3.9.12 or newer.
1324
1325 2013-09-08  Santosh Mahto  <santosh.ma@samsung.com>
1326
1327         HTMLDocument.h : Removing unnecessary forward declaration.
1328         https://bugs.webkit.org/show_bug.cgi?id=121002
1329
1330         Reviewed by Darin Adler.
1331
1332         Just code cleanup.
1333         Removed the two forward declaration in HTMLDocument.h file.
1334
1335         * html/HTMLDocument.h:
1336
1337 2013-09-08  Gurpreet Kaur  <k.gurpreet@samsung.com>
1338
1339         defining line height affects height of text box
1340         https://bugs.webkit.org/show_bug.cgi?id=17619
1341
1342         Reviewed by Darin Adler.
1343
1344         Giving line height to input elements increase the height
1345         of the element. To make it work similiar as Mozilla and IE
1346         line-height :normal should be applied for input elements.
1347
1348         Test: fast/dom/HTMLInputElement/input-line-height.html
1349
1350         * css/html.css:
1351         (input):
1352         Made the line-height: normal as !important so that it does not
1353         consider any other line-height specified through internal or 
1354         external styles.
1355
1356 2013-09-08  Gurpreet Kaur  <k.gurpreet@samsung.com>
1357
1358         Scrollbar width is not applied when element hidden
1359         https://bugs.webkit.org/show_bug.cgi?id=90546
1360
1361         Reviewed by Simon Fraser.
1362
1363         Webkit has css properties through which custom scroll
1364         bars can be added. Incase the element's visible property
1365         is hidden and custom scrollbar properties are applied
1366         the scrollbar width is not considered when quering the 
1367         element.clientWidth. Incase of non-custom scrollbars 
1368         whether the element's visible property is hidden or not
1369         correct scrollbar width is considered.
1370
1371         Tests: fast/dom/Element/scroll-width-hidden.html
1372                fast/dom/Element/scroll-width-visible.html
1373
1374         * rendering/RenderScrollbar.cpp:
1375         (WebCore::RenderScrollbar::updateScrollbarPart):
1376         Incase custom scrollbar is created there is a check whether
1377         the renderer to which scrollbar is added is visible or not.
1378         This check is not required since for non-custom scrollbars same
1379         check is not present. Also whether element's visible property is
1380         hidden or not a placeholder is set for the element. Both behavoiur
1381         i.e custom and non-custom scrollbars should be same.
1382
1383 2013-09-08  Tamas Czene  <tczene@inf.u-szeged.hu>
1384
1385         GStreamer 0.10 build fix after r155251.
1386
1387         Reviewed by Csaba Osztrogonác.
1388
1389         * platform/graphics/gstreamer/GStreamerVersioning.cpp:
1390
1391 2013-09-08  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1392
1393         [wk2] REGRESSION (r154673): PDF scrolling moves very slowly
1394         https://bugs.webkit.org/show_bug.cgi?id=120542
1395
1396         Reviewed by Tim Horton.
1397
1398         Handle 'wheel' events in addition to 'mousewheel'.
1399
1400         * html/shadow/MediaControlsApple.cpp:
1401         Listen for the standard 'wheel' event instead of the legacy 'mousewheel' one.
1402         While not strictly needed, we should use the legacy events as little as
1403         possible.
1404         * plugins/PluginView.cpp:
1405         Handle 'wheel' events in addition to 'mousewheel'.
1406
1407 2013-09-08  Darin Adler  <darin@apple.com>
1408
1409         Make Editor::deleteButtonController a reference
1410         https://bugs.webkit.org/show_bug.cgi?id=121019
1411
1412         Reviewed by Andreas Kling.
1413
1414         * dom/ContainerNode.cpp:
1415         (WebCore::ContainerNode::cloneChildNodes): Updated to use . instead of ->.
1416         * editing/DeleteButton.cpp:
1417         (WebCore::DeleteButton::defaultEventHandler): Ditto.
1418
1419         * editing/DeleteButtonController.cpp:
1420         (WebCore::DeleteButtonController::DeleteButtonController): Updated to take a Frame&
1421         instead of a Frame*.
1422         (WebCore::DeleteButtonController::respondToChangedSelection): Ditto.
1423         (WebCore::DeleteButtonController::createDeletionUI): Ditto.
1424         (WebCore::DeleteButtonController::show): Ditto.
1425         (WebCore::DeleteButtonController::enable): Ditto.
1426         (WebCore::DeleteButtonController::deleteTarget): Ditto.
1427         * editing/DeleteButtonController.h: Ditto.
1428
1429         * editing/Editor.cpp:
1430         (WebCore::Editor::avoidIntersectionWithDeleteButtonController): Removed bogus
1431         null check from both versions of this function.
1432         (WebCore::Editor::Editor): Use construction rather than assignment and pass
1433         a reference instead of a pointer to make m_deleteButtonController.
1434         (WebCore::Editor::clear): Ditto.
1435
1436         * editing/Editor.h: Made deleteButtonController return a reference.
1437         Also reorganized the header to put all the conditional functions together,
1438         and not mixed in with non-conditional ones.
1439
1440         * editing/markup.cpp:
1441         (WebCore::createMarkup): Updated to use . instead of -> and also to use
1442         emptyString() instead of constructing a new empty string.
1443
1444 2013-09-08  Andreas Kling  <akling@apple.com>
1445
1446         InlineBox::root() should return a reference.
1447         <https://webkit.org/b/121014>
1448
1449         Reviewed by Antti Koivisto.
1450
1451         There is always a root inline box, so make root() return a reference.
1452         Also make some effort to cache the result in a local at call sites.
1453
1454 2013-09-08  Andreas Kling  <akling@apple.com>
1455
1456         FrameView::scheduleEvent() is over-engineered.
1457         <https://webkit.org/b/121004>
1458
1459         Reviewed by Antti Koivisto.
1460
1461         Remove gratuitous FrameActionScheduler class that was really only being used
1462         to defer the occassional "overflowchanged" event until layout had finished.
1463
1464         * CMakeLists.txt:
1465         * GNUmakefile.list.am:
1466         * Target.pri:
1467         * WebCore.vcxproj/WebCore.vcxproj:
1468         * WebCore.vcxproj/WebCore.vcxproj.filters:
1469         * WebCore.xcodeproj/project.pbxproj:
1470         * page/FrameActionScheduler.cpp:
1471         * page/FrameActionScheduler.h:
1472
1473             Removed FrameActionScheduler.
1474
1475         * page/FrameView.h:
1476         * page/FrameView.cpp:
1477         (WebCore::FrameView::FrameView):
1478         (WebCore::FrameView::~FrameView):
1479         (WebCore::FrameView::layout):
1480         (WebCore::FrameView::ScheduledEvent::ScheduledEvent):
1481         (WebCore::FrameView::scheduleEvent):
1482         (WebCore::FrameView::pauseScheduledEvents):
1483         (WebCore::FrameView::resumeScheduledEvents):
1484         (WebCore::FrameView::performPostLayoutTasks):
1485         (WebCore::FrameView::updateOverflowStatus):
1486
1487             Replaced it with a Vector<ScheduledEvent> and a suppression counter.
1488             A ScheduledEvent is just a { Node, Event } pair.
1489
1490 2013-09-08  Anders Carlsson  <andersca@apple.com>
1491
1492         Move WTF::notFound to Vector.h and delete NotFound.h
1493         https://bugs.webkit.org/show_bug.cgi?id=120990
1494
1495         Reviewed by Sam Weinig.
1496
1497         * html/HTMLImageElement.cpp:
1498         * loader/archive/mhtml/MHTMLParser.cpp:
1499         * platform/graphics/cairo/GraphicsContext3DCairo.cpp:
1500         * platform/graphics/win/GraphicsContext3DWin.cpp:
1501         * platform/network/soup/SocketStreamHandleSoup.cpp:
1502
1503 2013-09-08  Commit Queue  <commit-queue@webkit.org>
1504
1505         Unreviewed, rolling out r155069 and r155138.
1506         http://trac.webkit.org/changeset/155069
1507         http://trac.webkit.org/changeset/155138
1508         https://bugs.webkit.org/show_bug.cgi?id=121008
1509
1510         Seems to have broken many tests (bug 120963) (Requested by ap
1511         on #webkit).
1512
1513         * WebCore.xcodeproj/project.pbxproj:
1514         * platform/graphics/cg/PDFDocumentImage.cpp:
1515         (WebCore::PDFDocumentImage::PDFDocumentImage):
1516         (WebCore::PDFDocumentImage::~PDFDocumentImage):
1517         (WebCore::PDFDocumentImage::size):
1518         (WebCore::PDFDocumentImage::dataChanged):
1519         (WebCore::PDFDocumentImage::adjustCTM):
1520         (WebCore::PDFDocumentImage::setCurrentPage):
1521         (WebCore::PDFDocumentImage::pageCount):
1522         (WebCore::PDFDocumentImage::draw):
1523         * platform/graphics/cg/PDFDocumentImage.h:
1524         (WebCore::PDFDocumentImage::create):
1525         (WebCore::PDFDocumentImage::hasSingleSecurityOrigin):
1526         (WebCore::PDFDocumentImage::destroyDecodedData):
1527         (WebCore::PDFDocumentImage::decodedSize):
1528         * platform/graphics/mac/PDFDocumentImageMac.mm: Removed.
1529         * platform/mac/SoftLinking.h:
1530
1531 2013-09-08  Andreas Kling  <akling@apple.com>
1532
1533         ScriptExecutionContext: Use FINAL instead of foo() { virtualFoo() }
1534         <https://webkit.org/b/120827>
1535
1536         Reviewed by Darin Adler.
1537
1538         Now that we have FINAL, we can just use that to have fast versions of url()
1539         and completeURL() when calling through a Document or WorkerGlobalScope pointer.
1540
1541         * dom/Document.cpp:
1542         * dom/Document.h:
1543         * dom/ScriptExecutionContext.h:
1544         * workers/WorkerGlobalScope.cpp:
1545         * workers/WorkerGlobalScope.h:
1546
1547 2013-09-08  Antti Koivisto  <antti@apple.com>
1548
1549         Rename needsShadowTreeWalker
1550         https://bugs.webkit.org/show_bug.cgi?id=121005
1551
1552         Reviewed by Andreas Kling.
1553
1554         Rename to needsNodeRenderingTraversalSlowPath.
1555
1556         * dom/ContainerNode.h:
1557         (WebCore::Node::needsNodeRenderingTraversalSlowPath):
1558         * dom/Element.cpp:
1559         (WebCore::shouldUseNodeRenderingTraversalSlowPath):
1560         (WebCore::Element::resetNeedsNodeRenderingTraversalSlowPath):
1561
1562             Only Elements can have this flag. Move the code here from Node.
1563
1564         (WebCore::Element::addShadowRoot):
1565         (WebCore::Element::setBeforePseudoElement):
1566         (WebCore::Element::setAfterPseudoElement):
1567         (WebCore::Element::clearBeforePseudoElement):
1568         (WebCore::Element::clearAfterPseudoElement):
1569
1570             Reset after clear too.
1571
1572         * dom/Element.h:
1573         * dom/Element.h:
1574         * dom/Node.cpp:
1575         * dom/Node.h:
1576         (WebCore::Node::isInsertionPoint):
1577         (WebCore::Node::setNeedsNodeRenderingTraversalSlowPath):
1578         
1579             Make protected.
1580
1581         * dom/NodeRenderingTraversal.h:
1582         (WebCore::NodeRenderingTraversal::parent):
1583         (WebCore::NodeRenderingTraversal::nextSibling):
1584         (WebCore::NodeRenderingTraversal::previousSibling):
1585
1586 2013-09-08  Andreas Kling  <akling@apple.com>
1587
1588         Render{Block,Inline}::lineBoxes() should return a reference.
1589         <https://webkit.org/b/120995>
1590
1591         Reviewed by Antti Koivisto.
1592
1593         This function was already just returning the address of a member variable.
1594
1595 2013-09-08  Andreas Kling  <akling@apple.com>
1596
1597         Move "using software CSS filters" optimization flag to RenderView.
1598         <https://webkit.org/b/120999>
1599
1600         Reviewed by Antti Koivisto.
1601
1602         This flag is used to avoid an extra tree walk when there are no software CSS filters in use.
1603         Move it from FrameView to RenderView where it belongs.
1604
1605         * page/FrameView.h:
1606         * rendering/RenderLayer.cpp:
1607         (WebCore::RenderLayer::updateOrRemoveFilterEffectRenderer):
1608         * rendering/RenderObject.cpp:
1609         (WebCore::RenderObject::containerForRepaint):
1610         * rendering/RenderView.cpp:
1611         (WebCore::RenderView::RenderView):
1612         * rendering/RenderView.h:
1613
1614 2013-09-08  Andreas Kling  <akling@apple.com>
1615
1616         FrameLoader::icon() should return a reference.
1617         <https://webkit.org/b/120993>
1618
1619         Reviewed by Antti Koivisto.
1620
1621         This function never returns null. Make it return a reference!
1622
1623 2013-09-08  Andreas Kling  <akling@apple.com>
1624
1625         Remove unused Scrollbar tickmark stuff.
1626         <https://webkit.org/b/121000>
1627
1628         Reviewed by Antti Koivisto.
1629
1630         This code is no longer used by any ports.
1631
1632         * page/FrameView.cpp:
1633         * page/FrameView.h:
1634         * platform/ScrollableArea.h:
1635         * platform/Scrollbar.cpp:
1636         * platform/Scrollbar.h:
1637         * platform/ScrollbarThemeClient.h:
1638
1639 2013-09-08  Antti Koivisto  <antti@apple.com>
1640
1641         Remove ComposedShadowTreeWalker
1642         https://bugs.webkit.org/show_bug.cgi?id=120997
1643
1644         Reviewed by Andreas Kling.
1645
1646         Move the code to NodeRenderingTraversal which is the only client besides Internals.
1647
1648         * CMakeLists.txt:
1649         * GNUmakefile.list.am:
1650         * Target.pri:
1651         * WebCore.exp.in:
1652         * WebCore.vcxproj/WebCore.vcxproj:
1653         * WebCore.xcodeproj/project.pbxproj:
1654         * dom/ComposedShadowTreeWalker.cpp: Removed.
1655         * dom/ComposedShadowTreeWalker.h: Removed.
1656         * dom/NodeRenderingTraversal.cpp:
1657         (WebCore::NodeRenderingTraversal::nodeCanBeDistributed):
1658         (WebCore::NodeRenderingTraversal::findFirstSiblingEnteringInsertionPoints):
1659         (WebCore::NodeRenderingTraversal::findFirstEnteringInsertionPoints):
1660         (WebCore::NodeRenderingTraversal::findFirstFromDistributedNode):
1661         (WebCore::NodeRenderingTraversal::findLastSiblingEnteringInsertionPoints):
1662         (WebCore::NodeRenderingTraversal::findLastEnteringInsertionPoints):
1663         (WebCore::NodeRenderingTraversal::findLastFromDistributedNode):
1664         (WebCore::NodeRenderingTraversal::traverseParent):
1665         (WebCore::NodeRenderingTraversal::traverseFirstChild):
1666         (WebCore::NodeRenderingTraversal::traverseLastChild):
1667         (WebCore::NodeRenderingTraversal::traverseNextSibling):
1668         (WebCore::NodeRenderingTraversal::traversePreviousSibling):
1669         
1670             Make former members of ComposedShadowTreeWalker standalone functions in NodeRenderingTraversal.
1671
1672         (WebCore::NodeRenderingTraversal::parentSlow):
1673         (WebCore::NodeRenderingTraversal::nextSiblingSlow):
1674         (WebCore::NodeRenderingTraversal::previousSiblingSlow):
1675         (WebCore::NodeRenderingTraversal::nextInScope):
1676         (WebCore::NodeRenderingTraversal::previousInScope):
1677         (WebCore::NodeRenderingTraversal::parentInScope):
1678         (WebCore::NodeRenderingTraversal::lastChildInScope):
1679         * testing/Internals.cpp:
1680         * testing/Internals.h:
1681         * testing/Internals.idl:
1682
1683 2013-09-08  Andreas Kling  <akling@apple.com>
1684
1685         FrameLoader::policyChecker() should return a reference.
1686         <https://webkit.org/b/120991>
1687
1688         Reviewed by Antti Koivisto.
1689
1690         This function never returns null. Make it return a reference!
1691
1692 2013-09-08  Andreas Kling  <akling@apple.com>
1693
1694         FrameLoader::mixedContentChecker() should return a reference.
1695         <https://webkit.org/b/120992>
1696
1697         Reviewed by Antti Koivisto.
1698
1699         This function was already just returning the address of a member variable.
1700
1701 2013-09-07  Antti Koivisto  <antti@apple.com>
1702
1703         Separate forward and backward paths in ComposedShadowTreeWalker
1704         https://bugs.webkit.org/show_bug.cgi?id=120979
1705
1706         Reviewed by Andreas Kling.
1707
1708         Have separate first/last and next/previous paths instead of using a direction enum.
1709         
1710         Reduce the number of helper functions and give them more understandable names.
1711
1712         * dom/ComposedShadowTreeWalker.cpp:
1713         (WebCore::findFirstSiblingEnteringInsertionPoints):
1714         (WebCore::findFirstEnteringInsertionPoints):
1715         (WebCore::findFirstFromDistributedNode):
1716         (WebCore::findLastSiblingEnteringInsertionPoints):
1717         (WebCore::findLastEnteringInsertionPoints):
1718         (WebCore::findLastFromDistributedNode):
1719         (WebCore::ComposedShadowTreeWalker::firstChild):
1720         (WebCore::ComposedShadowTreeWalker::traverseFirstChild):
1721         (WebCore::ComposedShadowTreeWalker::lastChild):
1722         (WebCore::ComposedShadowTreeWalker::traverseLastChild):
1723         (WebCore::ComposedShadowTreeWalker::nextSibling):
1724         (WebCore::ComposedShadowTreeWalker::previousSibling):
1725         (WebCore::ComposedShadowTreeWalker::traverseNextSibling):
1726         (WebCore::ComposedShadowTreeWalker::traversePreviousSibling):
1727         * dom/ComposedShadowTreeWalker.h:
1728
1729 2013-09-07  Andreas Kling  <akling@apple.com>
1730
1731         Beat FrameView with the FINAL stick.
1732         <https://webkit.org/b/120989>
1733
1734         Reviewed by Anders Carlsson.
1735
1736         ... and mark everything virtual with OVERRIDE, exposing a couple of things
1737         that didn't actually override anything.
1738
1739         * WebCore.exp.in:
1740         * page/FrameView.h:
1741
1742 2013-09-07  Anders Carlsson  <andersca@apple.com>
1743
1744         Remove NonCopyableSort.h from WTF
1745         https://bugs.webkit.org/show_bug.cgi?id=120984
1746
1747         Reviewed by Andreas Kling.
1748
1749         * css/MediaQuery.cpp:
1750         (WebCore::MediaQuery::MediaQuery):
1751         * html/HTMLMediaElement.cpp:
1752         (WebCore::HTMLMediaElement::updateActiveTextTrackCues):
1753         * html/RangeInputType.cpp:
1754         (WebCore::RangeInputType::updateTickMarkValues):
1755         * inspector/InspectorMemoryAgent.cpp:
1756         * page/CaptionUserPreferences.cpp:
1757         (WebCore::CaptionUserPreferences::sortedTrackListForMenu):
1758         * page/CaptionUserPreferences.h:
1759         * page/CaptionUserPreferencesMediaAF.cpp:
1760         (WebCore::CaptionUserPreferencesMediaAF::sortedTrackListForMenu):
1761         * platform/graphics/texmap/TextureMapper.cpp:
1762         (WebCore::BitmapTexturePool::releaseUnusedTexturesTimerFired):
1763
1764 2013-09-07  Antti Koivisto  <antti@apple.com>
1765
1766         Simplify ComposedShadowTreeWalker parent traversal
1767         https://bugs.webkit.org/show_bug.cgi?id=120971
1768
1769         Reviewed by Andreas Kling.
1770
1771         Combine a bunch of parent traversal functions into one.
1772
1773         * dom/ComposedShadowTreeWalker.cpp:
1774         (WebCore::ComposedShadowTreeWalker::traverseParent):
1775         (WebCore::ComposedShadowTreeWalker::previous):
1776         * dom/ComposedShadowTreeWalker.h:
1777         
1778             Remove unused fromFirstChild.
1779
1780 2013-09-07  Anders Carlsson  <andersca@apple.com>
1781
1782         Get rid of PassOwnArrayPtr
1783         https://bugs.webkit.org/show_bug.cgi?id=120964
1784
1785         Reviewed by Andreas Kling.
1786
1787         Use OwnArrayPtr instead of PassOwnArrayPtr.
1788
1789         * html/canvas/WebGLRenderingContext.cpp:
1790         * platform/Length.cpp:
1791         (WebCore::newCoordsArray):
1792         (WebCore::newLengthArray):
1793         * platform/Length.h:
1794         * platform/audio/FFTFrame.h:
1795         * platform/graphics/GraphicsContext3D.cpp:
1796         * platform/graphics/GraphicsContext3D.h:
1797         * platform/graphics/texmap/TextureMapperGL.cpp:
1798         * platform/graphics/wince/SharedBitmap.cpp:
1799
1800 2013-09-07  Antti Koivisto  <antti@apple.com>
1801
1802         Remove unnecessary sibling text renderers after attach
1803         https://bugs.webkit.org/show_bug.cgi?id=120953
1804
1805         Reviewed by the Swedish Review Team: Anders Carlsson and Andreas Kling.
1806
1807         The current createTextRenderersForSiblingsAfterAttachIfNeeded code only adds text renderers, never removes them. 
1808         Style changes can go either way.
1809         
1810         The patch causes no visible changes in rendered output. The whitespace nodes that it affects are leftovers that
1811         have no rendering effect. However it does change results of many dumpAsText and render tree dump based layout
1812         tests as unnecessary text nodes disappear.
1813         
1814         The main goal is to make results of dynamic attach and parsing time attach produce more similar results. As
1815         an added bonus we get slightly simpler rendering trees.
1816         
1817         Rendering tree dumps show us still leaving behind empty anonymous blocks when removing whitespace text nodes.
1818         Those should collapse away too.
1819
1820         * style/StyleResolveTree.cpp:
1821         (WebCore::Style::reattachTextRenderersForWhitespaceOnlySiblingsAfterAttachIfNeeded):
1822         
1823             Allow the code both create and remove text renderers.
1824             Tighten to bail out faster if case is not the exact one that matters.
1825             Use NodeRenderingTraversal to mirror textRendererIsNeeded.
1826             Renamed for clarity.
1827
1828         (WebCore::Style::updateTextRendererAfterContentChange):
1829         (WebCore::Style::resolveLocal):
1830         (WebCore::Style::updateTextStyle):
1831         (WebCore::Style::attachRenderTree):
1832
1833 2013-09-07  Anders Carlsson  <andersca@apple.com>
1834
1835         Get rid of FastAllocBase.h
1836         https://bugs.webkit.org/show_bug.cgi?id=120952
1837
1838         Reviewed by Antti Koivisto.
1839
1840         Include FastMalloc.h instead of FastAllocBase.h.
1841
1842         * Modules/webdatabase/SQLTransactionClient.h:
1843         * bindings/js/GCController.h:
1844         * bridge/Bridge.h:
1845         * bridge/IdentifierRep.h:
1846         * dom/DocumentStyleSheetCollection.h:
1847         * dom/TransformSource.h:
1848         * html/InputType.h:
1849         * inspector/InspectorCounters.h:
1850         * inspector/InstrumentingAgents.h:
1851         * inspector/WorkerInspectorController.h:
1852         * loader/cache/CachedResourceClient.h:
1853         * page/FrameActionScheduler.h:
1854         * platform/Length.h:
1855         * platform/MemoryPressureHandler.h:
1856         * platform/ScrollAnimator.h:
1857         * platform/SharedTimer.h:
1858         * platform/audio/gstreamer/FFTFrameGStreamer.cpp:
1859         * platform/cairo/WidgetBackingStore.h:
1860         * platform/graphics/Color.h:
1861         * platform/graphics/FontData.h:
1862         * platform/graphics/Path.h:
1863         * platform/graphics/qt/FontCustomPlatformData.h:
1864         * platform/graphics/transforms/AffineTransform.h:
1865         * platform/graphics/transforms/TransformationMatrix.h:
1866         * platform/gtk/GtkDragAndDropHelper.h:
1867         * platform/gtk/GtkPopupMenu.h:
1868         * platform/network/NetworkStateNotifier.h:
1869         * platform/sql/SQLiteTransaction.h:
1870         * platform/text/enchant/TextCheckerEnchant.h:
1871         * rendering/RenderArena.h:
1872         * rendering/TableLayout.h:
1873         * rendering/style/StyleCustomFilterProgram.h:
1874         * rendering/style/StyleCustomFilterProgramCache.h:
1875         * svg/SVGPathConsumer.h:
1876         * workers/WorkerScriptLoader.h:
1877
1878 2013-09-07  Eric Carlson  <eric.carlson@apple.com>
1879
1880         MediaStream should fire ended event when all tracks are ended
1881         https://bugs.webkit.org/show_bug.cgi?id=120871
1882
1883         Reviewed by Jer Noble.
1884
1885         Merge https://chromium.googlesource.com/chromium/blink/+/bebd179b65be69e46f2f434a3ec8b1e4aa85cc42
1886
1887         Test: fast/mediastream/MediaStream-onended.html
1888
1889         * Modules/mediastream/MediaStream.cpp:
1890         (WebCore::MediaStream::trackEnded): New.
1891         * Modules/mediastream/MediaStream.h:
1892
1893         * Modules/mediastream/MediaStreamTrack.cpp:
1894         (WebCore::MediaStreamTrack::sourceChangedState): Call didEndTrack when state changes to ReadyStateEnded. 
1895         (WebCore::MediaStreamTrack::didEndTrack): New.
1896         (WebCore::MediaStreamTrack::stop): Call didEndTrack.
1897         * Modules/mediastream/MediaStreamTrack.h:
1898
1899         * platform/mediastream/MediaStreamDescriptor.h:
1900         (WebCore::MediaStreamDescriptor::MediaStreamDescriptor): Require didEndTrack.
1901
1902 2013-09-06  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
1903
1904         Get MEDIA_STREAM compiling for other ports (EFL and GTK)
1905         https://bugs.webkit.org/show_bug.cgi?id=120811
1906
1907         Reviewed by Eric Carlson.
1908
1909         * CMakeLists.txt:
1910         * GNUmakefile.list.am:
1911         * Modules/mediastream/LocalMediaStream.h:
1912         * Modules/mediastream/MediaStreamRegistry.cpp:
1913         (WebCore::MediaStreamRegistry::lookupMediaStreamDescriptor):
1914         * Modules/mediastream/RTCStatsResponse.h:
1915
1916 2013-09-06  Bem Jones-Bey  <bjonesbe@adobe.com>
1917
1918         [CSS Shapes] Floats with shape-outside aren't painting in the correct order
1919         https://bugs.webkit.org/show_bug.cgi?id=118492
1920
1921         Reviewed by Darin Adler.
1922
1923         When removing the old positioning behavior, the code that makes a
1924         float with shape-outside gain a layer was left behind. This patch
1925         removes that, so now floats with shape-outside are painted just like
1926         floats without shape-outside.
1927
1928         Also remove the isFloatingWithShapeOutside helper method because its
1929         use is now somewhat redundant, and the check it does is now only
1930         needed in one place.
1931
1932         Test: fast/shapes/shape-outside-floats/shape-outside-floats-not-a-layer.html
1933
1934         * rendering/RenderBox.h:
1935         (WebCore::RenderBox::shapeOutsideInfo):
1936         * rendering/RenderObject.h:
1937         * rendering/shapes/ShapeOutsideInfo.cpp:
1938         (WebCore::ShapeOutsideInfo::isEnabledFor): 
1939
1940 2013-09-06  Anders Carlsson  <andersca@apple.com>
1941
1942         Add a new smart pointer type for fastMalloc'ed memory
1943         https://bugs.webkit.org/show_bug.cgi?id=120911
1944
1945         Reviewed by Andreas Kling.
1946
1947         Update for WTF changes.
1948
1949         * platform/network/cf/FormDataStreamCFNet.cpp:
1950         (WebCore::advanceCurrentStream):
1951
1952 2013-09-06  Dirk Schulze  <krit@webkit.org>
1953
1954         Interpolate between CSS filter() and cached images
1955         https://bugs.webkit.org/show_bug.cgi?id=120602
1956
1957         Reviewed by Simon Fraser.
1958
1959         Interpolate from a filter() image function to a url() image reference and
1960         the other way around, if the input image on the filter function is the same
1961         as the referenced image on url().
1962
1963         * page/animation/CSSPropertyAnimation.cpp: Replaced old
1964             filterBlend function with blendFilter function which is more generic
1965             and can be reused in multiple places.
1966         (WebCore::blendFilterOperations):
1967         (WebCore::blendFunc):
1968         (WebCore::blendFilter):
1969
1970 2013-09-06  Ryosuke Niwa  <rniwa@webkit.org>
1971
1972         Elements retained by AccessibilityImageMapLink leak
1973         https://bugs.webkit.org/show_bug.cgi?id=120917
1974
1975         Reviewed by Chris Fleizach.
1976
1977         Merge https://chromium.googlesource.com/chromium/blink/+/df0bd288efe65e5e38425fbdcdfc68b5a2a79e42
1978
1979         Unfortunately, the test added by the Blink change doesn't reproduce a leak in WebKit.
1980
1981         * accessibility/AccessibilityImageMapLink.cpp:
1982         (WebCore::AccessibilityImageMapLink::detachFromParent):
1983         * accessibility/AccessibilityImageMapLink.h:
1984         * accessibility/AccessibilityMockObject.h:
1985         (WebCore::AccessibilityMockObject::detachFromParent):
1986
1987 2013-09-06  Andreas Kling  <akling@apple.com>
1988
1989         Make Obj-C bindings generator less #include-happy.
1990         <https://webkit.org/b/120913>
1991
1992         Reviewed by Anders Carlsson.
1993
1994         Knock out an old FIXME in CodeGeneratorObjC.pm and avoid including unrelated
1995         interface declarations from implementation files where they are not needed.
1996
1997         * bindings/scripts/CodeGeneratorObjC.pm:
1998         (GenerateImplementation):
1999
2000             Only include DOMFooInternal.h relevant to the current interface.
2001
2002         * bindings/scripts/test/ObjC/*
2003
2004             Rebaseline Obj-C bindings tests now that they include fewer things.
2005
2006 2013-09-06  Andreas Kling  <akling@apple.com>
2007
2008         Rebaseline bindings tests after Swedish breakage.
2009
2010 2013-09-06  Andreas Kling  <akling@apple.com>
2011
2012         Don't include Document.h from JSDOMBinding.h
2013         <https://webkit.org/b/120909>
2014
2015         Reviewed by Anders Carlsson.
2016
2017         Move DOMConstructorWithDocument out of JSDOMBinding.h to its own header.
2018         This was the only part of JSDOMBinding.h that needed Document's definition.
2019
2020         This reduces the include dependency graph of many bindings files.
2021
2022         * WebCore.xcodeproj/project.pbxproj:
2023         * bindings/js/DOMConstructorWithDocument.h:
2024         * bindings/js/JSDOMBinding.cpp:
2025         * bindings/js/JSDOMBinding.h:
2026         * bindings/scripts/CodeGeneratorJS.pm:
2027         * bindings/scripts/CodeGeneratorGObject.pm:
2028
2029 2013-09-06  Ryosuke Niwa  <rniwa@webkit.org>
2030
2031         Range::ownerDocument should return Document&
2032         https://bugs.webkit.org/show_bug.cgi?id=120908
2033
2034         Reviewed by Andreas Kling.
2035
2036         Return Document& in Range::ownerDocument(). Also make setDocument take Document& so that this invariant is self-evident.
2037
2038         * bindings/objc/DOM.mm:
2039         (-[DOMRange boundingBox]):
2040         (-[DOMRange renderedImageForcingBlackText:]):
2041         (-[DOMRange textRects]):
2042         * dom/Range.cpp:
2043         (WebCore::Range::setDocument):
2044         (WebCore::Range::setStart):
2045         (WebCore::Range::setEnd):
2046         (WebCore::Range::selectNode):
2047         (WebCore::Range::selectNodeContents):
2048         * dom/Range.h:
2049         (WebCore::Range::ownerDocument):
2050         * editing/AlternativeTextController.cpp:
2051         (WebCore::AlternativeTextController::handleAlternativeTextUIResult):
2052         * editing/Editor.cpp:
2053         (WebCore::Editor::avoidIntersectionWithDeleteButtonController):
2054         (WebCore::isFrameInRange):
2055         (WebCore::Editor::countMatchesForText):
2056         * editing/EditorCommand.cpp:
2057         (WebCore::unionDOMRanges):
2058         * editing/TextCheckingHelper.cpp:
2059         (WebCore::TextCheckingHelper::unifiedTextCheckerEnabled):
2060         * editing/TextIterator.cpp:
2061         (WebCore::plainText):
2062         (WebCore::findPlainText):
2063         * editing/htmlediting.cpp:
2064         (WebCore::extendRangeToWrappingNodes):
2065         * editing/markup.cpp:
2066         (WebCore::createMarkup):
2067         (WebCore::createFragmentFromText):
2068         * page/DragController.cpp:
2069         (WebCore::documentFragmentFromDragData):
2070         (WebCore::DragController::concludeEditDrag):
2071         * page/Page.cpp:
2072         (WebCore::Page::rangeOfString):
2073         * rendering/RenderObject.cpp:
2074         (WebCore::RenderObject::absoluteBoundingBoxRectForRange):
2075         * testing/Internals.cpp:
2076         (WebCore::Internals::addTextMatchMarker):
2077
2078 2013-09-06  Brent Fulgham  <bfulgham@apple.com>
2079
2080         [Windows] StructuredExceptionHandlerSuppressor Causes Bad Interactions with Support Libraries
2081         https://bugs.webkit.org/show_bug.cgi?id=120901
2082
2083         Reviewed by Anders Carlsson.
2084
2085         Change from old "crash on any exception" implementation to a new version that leaves normal
2086         exception handling infrastructure in place for use by support libraries. We check exceptions
2087         and decide whether to abort or not based on the failure type.
2088
2089         * WebCore.vcxproj/WebCore.vcxproj: Add new implementation files.
2090         * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
2091         * platform/graphics/ca/win/LayerChangesFlusher.cpp:
2092         (WebCore::LayerChangesFlusher::hookCallback): Allocate handler struct on stack.
2093         * platform/win/StructuredExceptionHandlerSuppressor.cpp: Added.
2094         (exceptionShouldTerminateProgram): New.
2095         (exceptionHandler): New.
2096         (WebCore::StructuredExceptionHandlerSuppressor::StructuredExceptionHandlerSuppressor): Moved
2097         from header, and updated to add our new exception handler.
2098         (WebCore::StructuredExceptionHandlerSuppressor::~StructuredExceptionHandlerSuppressor): Moved
2099         from header.
2100         * platform/win/StructuredExceptionHandlerSuppressor.h: Move implementation of constructor and
2101         destructor from header file.
2102         * platform/win/makesafeseh.asm: Added.
2103
2104 2013-09-06  Vivek Galatage  <vivek.vg@samsung.com>
2105
2106         Refactor XMLDocumentParser to defer creation of XMLErrors until error occurs
2107         https://bugs.webkit.org/show_bug.cgi?id=120850
2108
2109         Reviewed by Darin Adler.
2110
2111         XMLErrors is created as soon as XMLDocumentParser is constructed. It may not be required 
2112         for all the valid XML documents. Deferring its creation until an error for the invalid
2113         XML document.
2114
2115         No new tests as code refactoring.
2116
2117         * xml/parser/XMLDocumentParser.cpp:
2118         (WebCore::XMLDocumentParser::handleError):
2119         (WebCore::XMLDocumentParser::insertErrorMessageBlock):
2120         * xml/parser/XMLDocumentParser.h:
2121         * xml/parser/XMLDocumentParserLibxml2.cpp:
2122         (WebCore::XMLDocumentParser::XMLDocumentParser):
2123         * xml/parser/XMLDocumentParserQt.cpp:
2124         (WebCore::XMLDocumentParser::XMLDocumentParser):
2125
2126 2013-09-06  Anders Carlsson  <andersca@apple.com>
2127
2128         Remove fastNew/fastDelete
2129         https://bugs.webkit.org/show_bug.cgi?id=120904
2130
2131         Reviewed by Andreas Kling.
2132
2133         Call operator delete directly.
2134
2135         * css/CSSSelectorList.cpp:
2136         (WebCore::CSSSelectorList::adoptSelectorVector):
2137
2138 2013-09-06  Anders Carlsson  <andersca@apple.com>
2139
2140         Stop using fastNew/fastDelete in JavaScriptCore
2141         https://bugs.webkit.org/show_bug.cgi?id=120898
2142
2143         Reviewed by Oliver Hunt.
2144
2145         Update for changes to JavaScriptCore.
2146
2147         * bindings/js/DOMObjectHashTableMap.h:
2148         (WebCore::DOMObjectHashTableMap::get):
2149         * bindings/js/JSDOMBinding.cpp:
2150         (WebCore::getHashTableForGlobalData):
2151         * bindings/js/JSDOMBinding.h:
2152         * bindings/js/JSDOMWindowCustom.cpp:
2153         (WebCore::JSDOMWindow::put):
2154         * bindings/js/JSPluginElementFunctions.h:
2155         (WebCore::pluginElementCustomGetOwnPropertySlot):
2156         * bindings/js/JSStorageCustom.cpp:
2157         (WebCore::JSStorage::deleteProperty):
2158         (WebCore::JSStorage::putDelegate):
2159         * bindings/scripts/CodeGeneratorJS.pm:
2160         (hashTableAccessor):
2161         (prototypeHashTableAccessor):
2162         (constructorHashTableAccessor):
2163         (GenerateGetOwnPropertySlotBody):
2164         (GenerateImplementation):
2165         (GenerateConstructorHelperMethods):
2166
2167 2013-09-06  Andreas Kling  <akling@apple.com>
2168
2169         Include Frame.h in fewer places.
2170         <https://webkit.org/b/120868>
2171
2172         Reviewed by Anders Carlsson.
2173
2174         - Move JSMainThreadExecState::instrumentFunctionCall() to a separate header.
2175           This avoids including InspectorInstrumentation.h from JSMainThreadExecState.h
2176           which caused all JS and Objective-C bindings to depend on Frame.h
2177
2178         - Out-of-line the three methods on FrameView that were operating on Frames.
2179           Most of the call sites were in FrameView.cpp so they will still get inlined.
2180
2181         - Removed GenericBinding.h, nothing was using it anyway.
2182
2183         After this, touching Frame.h and doing a (debug) rebuild goes from 9m30 to 3m30
2184         on my laptop.
2185
2186         * GNUmakefile.list.am:
2187         * WebCore.exp.in:
2188         * WebCore.vcxproj/WebCore.vcxproj:
2189         * WebCore.vcxproj/WebCore.vcxproj.filters:
2190         * WebCore.xcodeproj/project.pbxproj:
2191         * bindings/generic/GenericBinding.h: Removed.
2192         * bindings/js/JSCallbackData.cpp:
2193         * bindings/js/JSEventListener.cpp:
2194         * bindings/js/JSMainThreadExecState.h:
2195         * bindings/js/JSMainThreadExecStateInstrumentation.h: Added.
2196         (WebCore::JSMainThreadExecState::instrumentFunctionCall):
2197         * bindings/js/JSMutationCallback.cpp:
2198         * bindings/js/ScheduledAction.cpp:
2199         * css/DeprecatedStyleBuilder.cpp:
2200         * css/ElementRuleCollector.cpp:
2201         * css/MediaQueryEvaluator.cpp:
2202         * css/SelectorChecker.h:
2203         * dom/StyledElement.cpp:
2204         * html/HTMLPlugInImageElement.cpp:
2205         * inspector/InspectorPageAgent.h:
2206         * inspector/NetworkResourcesData.h:
2207         * inspector/PageRuntimeAgent.cpp:
2208         * loader/cache/CachedImage.cpp:
2209         * page/FrameView.cpp:
2210         (WebCore::FrameView::renderView):
2211         (WebCore::FrameView::mapFromLayoutToCSSUnits):
2212         (WebCore::FrameView::mapFromCSSToLayoutUnits):
2213         * page/FrameView.h:
2214         * page/TouchAdjustment.cpp:
2215         * rendering/RenderBoxModelObject.cpp:
2216         * rendering/RenderLayer.cpp:
2217         * rendering/RenderLayerCompositor.h:
2218         * rendering/RenderText.cpp:
2219         * svg/graphics/SVGImage.cpp:
2220
2221 2013-09-06  Brent Fulgham  <bfulgham@apple.com>
2222
2223         [Windows] Unreviewed gardening: Spell 'Suppressor' properly
2224
2225         * WebCore.vcxproj/WebCore.vcxproj: Change StructuredExceptionHandlerSupressor to StructuredExceptionHandlerSuppressor
2226         * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto
2227         * platform/graphics/ca/win/LayerChangesFlusher.cpp:
2228         (WebCore::LayerChangesFlusher::hookCallback): Ditto
2229         * platform/win/StructuredExceptionHandlerSuppressor.h: Copied from platform/win/StructuredExceptionHandlerSupressor.h.
2230         * platform/win/StructuredExceptionHandlerSupressor.h: Removed.
2231
2232 2013-09-06  David Hyatt  <hyatt@apple.com>
2233
2234         Add new RenderBlockFlow class.
2235         https://bugs.webkit.org/show_bug.cgi?id=120777
2236
2237         Reviewed by Beth Dakin.
2238
2239         This patch adds a new RenderBlockFlow class. The idea is to get all of the line/float/margin
2240         code out of RenderBlock and into the subclass, and then we can make RenderBlock an abstract
2241         base. This will save memory for all of the classes that derive from RenderBlock but have
2242         their own layout systems (e.g., flexbox, grid, table), and it will let us tighten up
2243         types to make it more clear when we're talking about block layout code vs. a more generic
2244         block-level object that can have any kind of layout.
2245
2246         This patch adds the new class and it makes sure all the objects that should be block flows
2247         inherit from the new class.
2248         
2249         isBlockFlow() proved to be a problematic method (and was the source of regressions when I
2250         landed this patch the first time). When the method was first implemented, it was added as
2251         "I'm a block but not a table." and at the time table was the only subclass of block. However
2252         when new subclasses were added, this function was never patched to account for them. This
2253         means, for example, that flexible boxes and grids claim to be block flows in the codebase
2254         and have for years. This is obviously wrong, since flexible boxes are not in fact block
2255         flows, but because of this mistake, code has started relying on the incorrect behavior of
2256         isBlockFlow() (form controls mostly).
2257         
2258         What I've done to deal with this problem is renamed isBlockFlow() to be
2259         isBlockFlowFlexBoxOrGrid() in order to make it obvious that this method is returning true
2260         for pretty much all blocks other than tables. This makes a lot of call sites look pretty
2261         stupid, since they obviously never intended to include flexible boxes or grids, but at least
2262         it is clear what the method is doing now.
2263         
2264         The plan is to land this patch and then start converting call sites from 
2265         isBlockFlowFlexBoxOrGrid() to isRenderBlockFlow() one by one, and that way we can figure
2266         out which code is making bad assumptions and change those callers to be isRenderBlock()
2267         instead. Ultimately this isBlockFlowFlexBoxOrGrid() method will go away with callers either
2268         changing to use isRenderBlock() or isRenderBlockFlow().
2269
2270         * CMakeLists.txt:
2271         * GNUmakefile.list.am:
2272         * Target.pri:
2273         * WebCore.vcxproj/WebCore.vcxproj:
2274         * WebCore.xcodeproj/project.pbxproj:
2275         * accessibility/AccessibilityRenderObject.cpp:
2276         (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
2277         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
2278         * dom/Position.cpp:
2279         (WebCore::Position::isCandidate):
2280         (WebCore::Position::getInlineBoxAndOffset):
2281         (WebCore::Position::primaryDirection):
2282         * dom/PositionIterator.cpp:
2283         (WebCore::PositionIterator::isCandidate):
2284         * editing/ApplyStyleCommand.cpp:
2285         (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown):
2286         * editing/CompositeEditCommand.cpp:
2287         (WebCore::CompositeEditCommand::addBlockPlaceholderIfNeeded):
2288         * editing/Editor.cpp:
2289         (WebCore::Editor::baseWritingDirectionForSelectionStart):
2290         * editing/FrameSelection.cpp:
2291         (WebCore::caretRenderer):
2292         * editing/TextIterator.cpp:
2293         (WebCore::TextIterator::shouldRepresentNodeOffsetZero):
2294         * editing/TypingCommand.cpp:
2295         (WebCore::TypingCommand::makeEditableRootEmpty):
2296         * editing/htmlediting.cpp:
2297         (WebCore::isBlockFlowElement):
2298         * html/HTMLDetailsElement.cpp:
2299         (WebCore::HTMLDetailsElement::createRenderer):
2300         * html/HTMLSummaryElement.cpp:
2301         (WebCore::HTMLSummaryElement::createRenderer):
2302         * html/shadow/SliderThumbElement.cpp:
2303         (WebCore::RenderSliderThumb::RenderSliderThumb):
2304         * html/shadow/SliderThumbElement.h:
2305         * rendering/LayoutState.cpp:
2306         (WebCore::LayoutState::LayoutState):
2307         * rendering/RenderBlock.cpp:
2308         (WebCore::RenderBlock::createAnonymous):
2309         (WebCore::RenderBlock::layoutBlock):
2310         (WebCore::RenderBlock::collapseMargins):
2311         (WebCore::RenderBlock::selectionGaps):
2312         (WebCore::RenderBlock::firstLineBoxBaseline):
2313         (WebCore::RenderBlock::lastLineBoxBaseline):
2314         (WebCore::RenderBlock::firstLineBlock):
2315         (WebCore::findFirstLetterBlock):
2316         (WebCore::shouldCheckLines):
2317         (WebCore::RenderBlock::adjustForBorderFit):
2318         * rendering/RenderBlock.h:
2319         * rendering/RenderBox.cpp:
2320         (WebCore::RenderBox::computeRectForRepaint):
2321         (WebCore::RenderBox::positionForPoint):
2322         * rendering/RenderBoxModelObject.h:
2323         (WebCore::RenderBoxModelObject::canHaveBoxInfoInRegion):
2324         * rendering/RenderDeprecatedFlexibleBox.cpp:
2325         (WebCore::RenderDeprecatedFlexibleBox::applyLineClamp):
2326         (WebCore::RenderDeprecatedFlexibleBox::clearLineClamp):
2327         * rendering/RenderDetailsMarker.cpp:
2328         (WebCore::RenderDetailsMarker::RenderDetailsMarker):
2329         * rendering/RenderDetailsMarker.h:
2330         * rendering/RenderFieldset.cpp:
2331         (WebCore::RenderFieldset::RenderFieldset):
2332         * rendering/RenderFieldset.h:
2333         * rendering/RenderFileUploadControl.cpp:
2334         (WebCore::RenderFileUploadControl::RenderFileUploadControl):
2335         * rendering/RenderFileUploadControl.h:
2336         * rendering/RenderFlowThread.cpp:
2337         (WebCore::RenderFlowThread::RenderFlowThread):
2338         * rendering/RenderFlowThread.h:
2339         * rendering/RenderFullScreen.cpp:
2340         * rendering/RenderInline.cpp:
2341         (WebCore::RenderInline::computeRectForRepaint):
2342         * rendering/RenderLineBoxList.cpp:
2343         (WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
2344         * rendering/RenderListItem.cpp:
2345         (WebCore::RenderListItem::RenderListItem):
2346         (WebCore::RenderListItem::willBeDestroyed):
2347         (WebCore::RenderListItem::willBeRemovedFromTree):
2348         (WebCore::RenderListItem::layout):
2349         (WebCore::RenderListItem::addOverflowFromChildren):
2350         (WebCore::RenderListItem::computePreferredLogicalWidths):
2351         (WebCore::RenderListItem::paint):
2352         * rendering/RenderListItem.h:
2353         * rendering/RenderMeter.cpp:
2354         (WebCore::RenderMeter::RenderMeter):
2355         * rendering/RenderMeter.h:
2356         * rendering/RenderMultiColumnBlock.cpp:
2357         (WebCore::RenderMultiColumnBlock::RenderMultiColumnBlock):
2358         * rendering/RenderMultiColumnBlock.h:
2359         * rendering/RenderObject.cpp:
2360         (WebCore::RenderObject::createObject):
2361         (WebCore::RenderObject::computeRectForRepaint):
2362         (WebCore::RenderObject::styleWillChange):
2363         (WebCore::firstLineStyleForCachedUncachedType):
2364         * rendering/RenderObject.h:
2365         (WebCore::RenderObject::isBR):
2366         (WebCore::RenderObject::isRenderBlockFlow):
2367         (WebCore::RenderObject::isBlockFlowFlexBoxOrGrid):
2368         * rendering/RenderObjectChildList.cpp:
2369         (WebCore::RenderObjectChildList::insertChildNode):
2370         * rendering/RenderProgress.cpp:
2371         (WebCore::RenderProgress::RenderProgress):
2372         * rendering/RenderProgress.h:
2373         * rendering/RenderRegion.cpp:
2374         (WebCore::RenderRegion::RenderRegion):
2375         * rendering/RenderRegion.h:
2376         * rendering/RenderRuby.cpp:
2377         (WebCore::RenderRubyAsBlock::RenderRubyAsBlock):
2378         * rendering/RenderRuby.h:
2379         * rendering/RenderRubyBase.cpp:
2380         (WebCore::RenderRubyBase::RenderRubyBase):
2381         * rendering/RenderRubyBase.h:
2382         * rendering/RenderRubyRun.cpp:
2383         (WebCore::RenderRubyRun::RenderRubyRun):
2384         * rendering/RenderRubyRun.h:
2385         * rendering/RenderRubyText.cpp:
2386         (WebCore::RenderRubyText::RenderRubyText):
2387         * rendering/RenderRubyText.h:
2388         * rendering/RenderTableCaption.cpp:
2389         (WebCore::RenderTableCaption::RenderTableCaption):
2390         * rendering/RenderTableCaption.h:
2391         * rendering/RenderTableCell.cpp:
2392         (WebCore::RenderTableCell::RenderTableCell):
2393         * rendering/RenderTableCell.h:
2394         * rendering/RenderTextControl.cpp:
2395         (WebCore::RenderTextControl::RenderTextControl):
2396         * rendering/RenderTextControl.h:
2397         * rendering/RenderTextControlSingleLine.h:
2398         (WebCore::RenderTextControlInnerBlock::RenderTextControlInnerBlock):
2399         * rendering/RenderTextTrackCue.cpp:
2400         (WebCore::RenderTextTrackCue::RenderTextTrackCue):
2401         * rendering/RenderTextTrackCue.h:
2402         * rendering/RenderView.cpp:
2403         (WebCore::RenderView::RenderView):
2404         * rendering/RenderView.h:
2405         * rendering/RenderingAllInOne.cpp:
2406         * rendering/mathml/RenderMathMLOperator.cpp:
2407         (WebCore::RenderMathMLOperator::createGlyph):
2408         * rendering/svg/RenderSVGBlock.cpp:
2409         (WebCore::RenderSVGBlock::RenderSVGBlock):
2410         * rendering/svg/RenderSVGBlock.h:
2411
2412 2013-09-06  Vivek Galatage  <vivek.vg@samsung.com>
2413
2414         Calling window.close() should indicate failure with warning message
2415         https://bugs.webkit.org/show_bug.cgi?id=120156
2416
2417         Reviewed by Darin Adler.
2418
2419         Closing of window is allowed for the tests for the automation.
2420
2421         * page/DOMWindow.cpp:
2422         (WebCore::DOMWindow::close):
2423
2424 2013-09-06  Mike West  <mkwst@chromium.org>
2425
2426         Revalidation header blacklisting should be case-insensitive.
2427         https://bugs.webkit.org/show_bug.cgi?id=120832
2428
2429         Reviewed by Alexey Proskuryakov.
2430
2431         Headers like 'content-type' should be ignored for 304 responses,
2432         even if they are delivered as 'Content-Type', or 'CoNtEnT-TyPe', etc.
2433
2434         I broke this behavior in http://trac.webkit.org/changeset/142068
2435         ("Entity-header extension headers honored on 304 responses"). Pages like
2436         https://learndev.unm.edu/ currently break on reload, as they incorrectly
2437         send 'Content-Type: text/plain' for 304 responses for resources like
2438         CSS and JavaScript. The browser should drop these headers, but because
2439         we're comparing in a case-sensitive fashion, we don't.
2440
2441         https://code.google.com/p/chromium/issues/detail?id=246875 documents the
2442         Blink-side fix; this patch is a port of that patch.
2443
2444         Test: http/tests/cache/content-type-ignored-during-revalidation.html
2445
2446         * loader/cache/CachedResource.cpp:
2447         (WebCore::shouldUpdateHeaderAfterRevalidation):
2448         Compare the provided AtomicString 'header' to the revalidation
2449         blacklists in a case-insensitive fashion.
2450
2451 2013-09-06  Eric Carlson  <eric.carlson@apple.com>
2452
2453         [MediaStream API] Allow empty MediaStreams
2454         https://bugs.webkit.org/show_bug.cgi?id=120815
2455
2456         Reviewed by Jer Noble.
2457
2458         The spec is a bit unclear ecactly what should happen with newly created MediaStreams 
2459         that doesn't have any tracks. The current implementation is too strict and the spec 
2460         is being worked upon to be clearer. In the meantime this patch doesn't set eneded to 
2461         true in the constructor. 
2462
2463         No new tests, existing test updated.
2464
2465         (WebCore::MediaStreamRegistry::lookupMediaStreamDescriptor):
2466         * platform/mediastream/MediaStreamDescriptor.h:
2467         (WebCore::MediaStreamDescriptor::MediaStreamDescriptor):
2468
2469 2013-09-06  Anders Carlsson  <andersca@apple.com>
2470
2471         Stop using fastNew/fastDelete in WebCore
2472         https://bugs.webkit.org/show_bug.cgi?id=120867
2473
2474         Reviewed by Geoffrey Garen.
2475
2476         Using fastNew/fastDelete can be dangerous, especially when put into a smart pointer
2477         such as OwnPtr which uses regular delete. Because of this I'd like to remove fastNew/fastDelete.
2478         Turns out it's only used in a couple of places in WebCore, so just use new/delete here instead.
2479
2480         * platform/audio/FFTFrame.h:
2481         * platform/audio/gstreamer/FFTFrameGStreamer.cpp:
2482         (WebCore::FFTFrame::FFTFrame):
2483         (WebCore::FFTFrame::~FFTFrame):
2484         (WebCore::FFTFrame::doFFT):
2485         (WebCore::FFTFrame::doInverseFFT):
2486         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
2487         (WebCore::MediaPlayerPrivateGStreamerBase::MediaPlayerPrivateGStreamerBase):
2488         (WebCore::MediaPlayerPrivateGStreamerBase::~MediaPlayerPrivateGStreamerBase):
2489         * platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
2490         (webkitVideoSinkDispose):
2491
2492 2013-09-06  Anders Carlsson  <andersca@apple.com>
2493
2494         Fix fastMalloc/delete mismatches in CSS parser
2495         https://bugs.webkit.org/show_bug.cgi?id=120864
2496
2497         Reviewed by Andreas Kling.
2498
2499         Stop putting fastMalloced memory inside an OwnPtr.
2500
2501         * css/CSSParserValues.cpp:
2502         (WebCore::CSSParserSelector::CSSParserSelector):
2503         (WebCore::CSSParserSelector::adoptSelectorVector):
2504
2505 2013-09-06  Andreas Kling  <akling@apple.com>
2506
2507         FrameLoader::subresourceLoader() should return a reference.
2508         <https://webkit.org/b/120830>
2509
2510         Reviewed by Anders Carlsson.
2511
2512         There is always a SubresourceLoader, so this method could never return null.
2513         Also made m_subresourceLoader an OwnPtr to reduce header dependencies.
2514
2515 2013-09-06  Chris Fleizach  <cfleizach@apple.com>
2516
2517         AX: aria-relevant does not expose AXARIARelevant
2518         https://bugs.webkit.org/show_bug.cgi?id=120373
2519
2520         Reviewed by Darin Adler.
2521
2522         When global ARIA attributes are present on an Element we need to ignore
2523         a presentational role, if set on that Element.
2524
2525         Test: accessibility/global-aria-attributes-invalidate-presentational.html
2526
2527         * accessibility/AccessibilityNodeObject.cpp:
2528         (WebCore::AccessibilityNodeObject::determineAriaRoleAttribute):
2529         * accessibility/AccessibilityObject.cpp:
2530         (WebCore::AccessibilityObject::supportsARIAAttributes):
2531
2532 2013-09-06  Brendan Long  <b.long@cablelabs.com>
2533
2534         [Qt][BlackBerry] Text track localized string functions are named wrong
2535         https://bugs.webkit.org/show_bug.cgi?id=120788
2536
2537         Reviewed by Philippe Normand.
2538
2539         This renames textTrackOffText() to textTrackOffMenuItemText(), and
2540         adds textTrackAutomaticMenuItemText(), to make them match the
2541         definitions in LocalizedStrings.h.
2542
2543         * platform/blackberry/LocalizedStringsBlackBerry.cpp:
2544         * platform/qt/LocalizedStringsQt.cpp:
2545
2546 2013-09-06  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2547
2548         [Qt][WK2] Cached credentials not cleared between tests
2549         https://bugs.webkit.org/show_bug.cgi?id=120775
2550
2551         Reviewed by Jocelyn Turcotte.
2552
2553         Clear the access credentials when resetting the state of a page for testing.
2554
2555         * testing/Internals.cpp:
2556         (WebCore::Internals::resetToConsistentState):
2557
2558 2013-09-06  Sergio Villar Senin  <svillar@igalia.com>
2559
2560         [CSS Grid Layout] Resolve named grid lines
2561         https://bugs.webkit.org/show_bug.cgi?id=119632
2562
2563         Reviewed by Andreas Kling.
2564
2565         From Blink r152659, r153794 by <jchaffraix@chromium.org>
2566
2567         Test: fast/css-grid-layout/grid-item-named-grid-line-resolution.html
2568
2569         This change adds the code which translates from a raw named grid
2570         line (stored in RenderStyle) to its actual grid position. This
2571         even includes named grid resolution for grid lines with the 'span'
2572         keyword.
2573
2574         * rendering/RenderGrid.cpp:
2575         (WebCore::RenderGrid::explicitGridSizeForSide):
2576         (WebCore::adjustGridPositionForRowEndColumnEndSide):
2577         (WebCore::adjustGridPositionForSide):
2578         (WebCore::RenderGrid::resolveNamedGridLinePositionFromStyle):
2579         (WebCore::RenderGrid::resolveGridPositionFromStyle):
2580         (WebCore::RenderGrid::resolveGridPositionAgainstOppositePosition):
2581         (WebCore::RenderGrid::resolveNamedGridLinePositionAgainstOppositePosition):
2582         (WebCore::RenderGrid::resolveRowStartColumnStartNamedGridLinePositionAgainstOppositePosition):
2583         (WebCore::RenderGrid::resolveRowEndColumnEndNamedGridLinePositionAgainstOppositePosition):
2584         * rendering/RenderGrid.h:
2585
2586 2013-09-06  Dirk Schulze  <krit@webkit.org>
2587
2588         Allow string as image reference on filter()
2589         https://bugs.webkit.org/show_bug.cgi?id=120829
2590
2591         Reviewed by Andreas Kling.
2592
2593         Beside <image> (which already includes url(), gradients, cross-fade() and
2594         image-set()), the filter() image function should support <string> as image
2595         reference.
2596
2597         http://dev.w3.org/fxtf/filters/#FilterCSSImageValue
2598
2599         * css/CSSParser.cpp:
2600         (WebCore::CSSParser::parseFilterImage): Create CSSImageValue from string.
2601
2602 2013-09-05  Dirk Schulze  <krit@webkit.org>
2603
2604         Support SVG filters on -webkit-filter() function
2605         https://bugs.webkit.org/show_bug.cgi?id=120806
2606
2607         Reviewed by Darin Adler.
2608
2609         Add support for SVG Filters on CSS -webkit-filter() image function.
2610
2611         Test: fast/filter-image/filter-image-svg.html
2612
2613         * css/CSSFilterImageValue.cpp:
2614         (WebCore::CSSFilterImageValue::image): Pass renderer to filter builder.
2615
2616 2013-09-05  Yoav Weiss  <yoav@yoav.ws>
2617
2618         DRY out srcset related deviceScaleFactor calculations
2619         https://bugs.webkit.org/show_bug.cgi?id=120791
2620
2621         Identical deviceScaleFactor calculations were performed in 3 different locations.
2622         I've added that calculation as a method of Document.
2623         Previous calculations are replaced by calls to this method.
2624
2625         Reviewed by Andreas Kling.
2626
2627         No new tests since this is a refactoring change. No functionality have changed.
2628
2629         * dom/Document.cpp:
2630         (WebCore::Document::deviceScaleFactor):
2631         * dom/Document.h:
2632         * html/HTMLImageElement.cpp:
2633         (WebCore::HTMLImageElement::parseAttribute):
2634         * html/parser/HTMLDocumentParser.cpp:
2635         (WebCore::HTMLDocumentParser::pumpTokenizer):
2636         (WebCore::HTMLDocumentParser::insert):
2637
2638 2013-09-05  Brendan Long  <b.long@cablelabs.com>
2639
2640         [Qt] DefaultFullScreenVideoHandler and PlatformVideoWindow are included in the build when they are disabled
2641         https://bugs.webkit.org/show_bug.cgi?id=117206
2642
2643         Reviewed by Philippe Normand.
2644
2645         No new tests because this just fixes a build warning.
2646
2647         * Target.pri: Don't include PlatformVideoWindow* files in the build when they are disabled.
2648
2649 2013-09-05  Andreas Kling  <akling@apple.com>
2650
2651         FrameView: Constructor should take Frame&.
2652         <https://webkit.org/b/120824>
2653
2654         Reviewed by Anders Carlsson.
2655
2656         * WebCore.exp.in:
2657         * inspector/InspectorOverlay.cpp:
2658         (WebCore::InspectorOverlay::overlayPage):
2659         * page/Frame.cpp:
2660         (WebCore::Frame::createView):
2661         * page/FrameView.cpp:
2662         (WebCore::FrameView::FrameView):
2663         (WebCore::FrameView::create):
2664         * page/FrameView.h:
2665         * svg/graphics/SVGImage.cpp:
2666         (WebCore::SVGImage::dataChanged):
2667
2668 2013-09-05  Jinwoo Song  <jinwoo7.song@samsung.com>
2669
2670         Fix build warnings by unused parameter
2671         https://bugs.webkit.org/show_bug.cgi?id=120821
2672
2673         Reviewed by Anders Carlsson.
2674
2675         Fix warning by removing unused parameter.
2676
2677         * platform/graphics/gstreamer/TextSinkGStreamer.cpp:
2678         (webkitTextSinkGetProperty):
2679         (webkitTextSinkSetProperty):
2680         * platform/network/soup/SynchronousLoaderClientSoup.cpp:
2681         (WebCore::SynchronousLoaderClient::didReceiveAuthenticationChallenge):
2682
2683 2013-09-05  Andreas Kling  <akling@apple.com>
2684
2685         FrameLoader: Convert three little loops to using Vector<Ref<Frame>>.
2686         <https://webkit.org/b/120798>
2687
2688         Reviewed by Antti Koivisto.
2689
2690         Also apply a bit of inline capacity + reserveInitialCapacity + uncheckedAppend
2691         in FrameLoader::detachChildren() since we know the final size from the start.
2692
2693         * loader/FrameLoader.cpp:
2694         (WebCore::FrameLoader::detachChildren):
2695         (WebCore::FrameLoader::checkLoadComplete):
2696         (WebCore::FrameLoader::shouldClose):
2697
2698 2013-09-05  Andreas Kling  <akling@apple.com>
2699
2700         ContainerNode: Apply Ref<T> to some popular DOM functions.
2701         <https://webkit.org/b/120800>
2702
2703         Reviewed by Antti Koivisto.
2704
2705         Use Ref to avoid a bunch of null checks in some popular DOM functions.
2706
2707         * dom/ContainerNode.cpp:
2708         (WebCore::ContainerNode::insertBefore):
2709
2710             'refChild' is never null here, so store it in a Ref.
2711
2712         (WebCore::ContainerNode::replaceChild):
2713
2714             'removedChild' is never null here, so store it in a Ref.
2715
2716         (WebCore::ContainerNode::removeChild):
2717
2718             'child' is never null here, so store it in a Ref.
2719             Also return "true" at the end of the function since we can't
2720             null-check 'child' anymore (not that it would ever be false!)
2721
2722         (WebCore::dispatchChildInsertionEvents):
2723         (WebCore::dispatchChildRemovalEvents):
2724
2725             Use Ref<Document> in both of these methods.
2726
2727 2013-09-05  Andreas Kling  <akling@apple.com>
2728
2729         ScrollView::children() should return a reference.
2730         <https://webkit.org/b/120795>
2731
2732         Reviewed by Anders Carlsson.
2733
2734         This function was already just returning the address of a member variable.
2735         Modernized some loops that were using it.
2736
2737         * bindings/js/PageScriptDebugServer.cpp:
2738         (WebCore::PageScriptDebugServer::setJavaScriptPaused):
2739         * page/FrameView.cpp:
2740         (WebCore::FrameView::hasCustomScrollbars):
2741         (WebCore::FrameView::updateLayoutAndStyleIfNeededRecursive):
2742         * page/Page.cpp:
2743         (WebCore::Page::pluginViews):
2744         * page/scrolling/ScrollingCoordinator.cpp:
2745         (WebCore::ScrollingCoordinator::computeNonFastScrollableRegion):
2746         * platform/ScrollView.h:
2747         (WebCore::ScrollView::children):
2748         * plugins/IFrameShimSupport.cpp:
2749         (WebCore::getPluginOcclusions):
2750
2751 2013-09-05  Beth Dakin  <bdakin@apple.com>
2752
2753         Reverting revisions 155139, 155141, 155142, and 155145 since they appear to have 
2754         caused about 50 new test failures. 
2755
2756         * CMakeLists.txt:
2757         * GNUmakefile.list.am:
2758         * Target.pri:
2759         * WebCore.vcxproj/WebCore.vcxproj:
2760         * WebCore.xcodeproj/project.pbxproj:
2761         * accessibility/AccessibilityRenderObject.cpp:
2762         (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
2763         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
2764         * dom/Position.cpp:
2765         (WebCore::Position::isCandidate):
2766         (WebCore::Position::getInlineBoxAndOffset):
2767         (WebCore::Position::primaryDirection):
2768         * dom/PositionIterator.cpp:
2769         (WebCore::PositionIterator::isCandidate):
2770         * editing/ApplyStyleCommand.cpp:
2771         (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown):
2772         * editing/CompositeEditCommand.cpp:
2773         (WebCore::CompositeEditCommand::addBlockPlaceholderIfNeeded):
2774         * editing/Editor.cpp:
2775         (WebCore::Editor::baseWritingDirectionForSelectionStart):
2776         * editing/FrameSelection.cpp:
2777         (WebCore::caretRenderer):
2778         * editing/TextIterator.cpp:
2779         (WebCore::TextIterator::shouldRepresentNodeOffsetZero):
2780         * editing/TypingCommand.cpp:
2781         (WebCore::TypingCommand::makeEditableRootEmpty):
2782         * editing/htmlediting.cpp:
2783         (WebCore::isBlockFlowElement):
2784         * html/HTMLDetailsElement.cpp:
2785         (WebCore::HTMLDetailsElement::createRenderer):
2786         * html/HTMLSummaryElement.cpp:
2787         (WebCore::HTMLSummaryElement::createRenderer):
2788         * html/shadow/SliderThumbElement.cpp:
2789         (WebCore::RenderSliderThumb::RenderSliderThumb):
2790         * html/shadow/SliderThumbElement.h:
2791         * rendering/LayoutState.cpp:
2792         (WebCore::LayoutState::LayoutState):
2793         * rendering/RenderBlock.cpp:
2794         (WebCore::RenderBlock::createAnonymous):
2795         (WebCore::RenderBlock::layoutBlock):
2796         (WebCore::RenderBlock::collapseMargins):
2797         (WebCore::RenderBlock::selectionGaps):
2798         (WebCore::RenderBlock::firstLineBoxBaseline):
2799         (WebCore::RenderBlock::lastLineBoxBaseline):
2800         (WebCore::RenderBlock::firstLineBlock):
2801         (WebCore::findFirstLetterBlock):
2802         (WebCore::shouldCheckLines):
2803         (WebCore::RenderBlock::adjustForBorderFit):
2804         * rendering/RenderBlock.h:
2805         * rendering/RenderBlockFlow.cpp: Removed.
2806         * rendering/RenderBlockFlow.h: Removed.
2807         * rendering/RenderBox.cpp:
2808         (WebCore::RenderBox::computeRectForRepaint):
2809         (WebCore::RenderBox::positionForPoint):
2810         * rendering/RenderBoxModelObject.h:
2811         (WebCore::RenderBoxModelObject::canHaveBoxInfoInRegion):
2812         * rendering/RenderDeprecatedFlexibleBox.cpp:
2813         (WebCore::RenderDeprecatedFlexibleBox::applyLineClamp):
2814         (WebCore::RenderDeprecatedFlexibleBox::clearLineClamp):
2815         * rendering/RenderDetailsMarker.cpp:
2816         (WebCore::RenderDetailsMarker::RenderDetailsMarker):
2817         * rendering/RenderDetailsMarker.h:
2818         * rendering/RenderFieldset.cpp:
2819         (WebCore::RenderFieldset::RenderFieldset):
2820         * rendering/RenderFieldset.h:
2821         * rendering/RenderFileUploadControl.cpp:
2822         (WebCore::RenderFileUploadControl::RenderFileUploadControl):
2823         * rendering/RenderFileUploadControl.h:
2824         * rendering/RenderFlowThread.cpp:
2825         (WebCore::RenderFlowThread::RenderFlowThread):
2826         * rendering/RenderFlowThread.h:
2827         * rendering/RenderFullScreen.cpp:
2828         * rendering/RenderInline.cpp:
2829         (WebCore::RenderInline::computeRectForRepaint):
2830         * rendering/RenderLineBoxList.cpp:
2831         (WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
2832         * rendering/RenderListItem.cpp:
2833         (WebCore::RenderListItem::RenderListItem):
2834         (WebCore::RenderListItem::willBeDestroyed):
2835         (WebCore::RenderListItem::willBeRemovedFromTree):
2836         (WebCore::RenderListItem::layout):
2837         (WebCore::RenderListItem::addOverflowFromChildren):
2838         (WebCore::RenderListItem::computePreferredLogicalWidths):
2839         (WebCore::RenderListItem::paint):
2840         * rendering/RenderListItem.h:
2841         * rendering/RenderMeter.cpp:
2842         (WebCore::RenderMeter::RenderMeter):
2843         * rendering/RenderMeter.h:
2844         * rendering/RenderMultiColumnBlock.cpp:
2845         (WebCore::RenderMultiColumnBlock::RenderMultiColumnBlock):
2846         * rendering/RenderMultiColumnBlock.h:
2847         * rendering/RenderObject.cpp:
2848         (WebCore::RenderObject::createObject):
2849         (WebCore::RenderObject::computeRectForRepaint):
2850         (WebCore::RenderObject::styleWillChange):
2851         (WebCore::firstLineStyleForCachedUncachedType):
2852         * rendering/RenderObject.h:
2853         (WebCore::RenderObject::isBlockFlow):
2854         (WebCore::RenderObject::isRenderBlock):
2855         * rendering/RenderObjectChildList.cpp:
2856         (WebCore::RenderObjectChildList::insertChildNode):
2857         * rendering/RenderProgress.cpp:
2858         (WebCore::RenderProgress::RenderProgress):
2859         * rendering/RenderProgress.h:
2860         * rendering/RenderRegion.cpp:
2861         (WebCore::RenderRegion::RenderRegion):
2862         * rendering/RenderRegion.h:
2863         * rendering/RenderRuby.cpp:
2864         (WebCore::RenderRubyAsBlock::RenderRubyAsBlock):
2865         * rendering/RenderRuby.h:
2866         * rendering/RenderRubyBase.cpp:
2867         (WebCore::RenderRubyBase::RenderRubyBase):
2868         * rendering/RenderRubyBase.h:
2869         * rendering/RenderRubyRun.cpp:
2870         (WebCore::RenderRubyRun::RenderRubyRun):
2871         * rendering/RenderRubyRun.h:
2872         * rendering/RenderRubyText.cpp:
2873         (WebCore::RenderRubyText::RenderRubyText):
2874         * rendering/RenderRubyText.h:
2875         * rendering/RenderTableCaption.cpp:
2876         (WebCore::RenderTableCaption::RenderTableCaption):
2877         * rendering/RenderTableCaption.h:
2878         * rendering/RenderTableCell.cpp:
2879         (WebCore::RenderTableCell::RenderTableCell):
2880         * rendering/RenderTableCell.h:
2881         * rendering/RenderTextControl.cpp:
2882         (WebCore::RenderTextControl::RenderTextControl):
2883         * rendering/RenderTextControl.h:
2884         * rendering/RenderTextControlSingleLine.h:
2885         (WebCore::RenderTextControlInnerBlock::RenderTextControlInnerBlock):
2886         * rendering/RenderTextTrackCue.cpp:
2887         (WebCore::RenderTextTrackCue::RenderTextTrackCue):
2888         * rendering/RenderTextTrackCue.h:
2889         * rendering/RenderView.cpp:
2890         (WebCore::RenderView::RenderView):
2891         * rendering/RenderView.h:
2892         * rendering/RenderingAllInOne.cpp:
2893         * rendering/mathml/RenderMathMLOperator.cpp:
2894         (WebCore::RenderMathMLOperator::createGlyph):
2895         * rendering/svg/RenderSVGBlock.cpp:
2896         (WebCore::RenderSVGBlock::RenderSVGBlock):
2897         * rendering/svg/RenderSVGBlock.h:
2898
2899 2013-09-05  Alexey Proskuryakov  <ap@apple.com>
2900
2901         Flaky Test: platform/mac/editing/deleting/deletionUI-single-instance.html
2902         https://bugs.webkit.org/show_bug.cgi?id=114181
2903
2904         Reviewed by Ryosuke Niwa.
2905
2906         Editor survives navigations, and so did DeleteButtonController. But the state it holds
2907         is document specific (like nodes in the old document).
2908
2909         * editing/Editor.cpp: (WebCore::Editor::clear): Replace DeleteButtonController.
2910
2911 2013-09-05  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2912
2913         Generate toFooElement() functions from tagname data.
2914         https://bugs.webkit.org/show_bug.cgi?id=120676
2915
2916         Reviewed by Andreas Kling.
2917
2918         As r154965 introduced the isFooElement() generation, this patch adds generations of toFooElement() function
2919         to *generateTypeChecking* attribute. To represent isFooElement() and toFooElement(), *generateTypeChecking*
2920         is changed to *generateTypeHelpers*.
2921
2922         Removed all the hand-written toFooElement() that can be covered by the *generateTypeHelpers*.
2923
2924         * GNUmakefile.am:
2925         * GNUmakefile.list.am:
2926         * WebCore.vcxproj/WebCore.vcxproj:
2927         * WebCore.xcodeproj/project.pbxproj:
2928         * dom/make_names.pl:
2929         (defaultTagPropertyHash):
2930         (printTypeHelpers):
2931         (printTypeHelpersHeaderFile):
2932         * html/HTMLAnchorElement.h:
2933         * html/HTMLAreaElement.h:
2934         * html/HTMLAudioElement.h:
2935         * html/HTMLCanvasElement.h:
2936         * html/HTMLElement.h:
2937         * html/HTMLFormElement.h:
2938         * html/HTMLFrameSetElement.h:
2939         * html/HTMLImageElement.h:
2940         * html/HTMLInputElement.h:
2941         * html/HTMLLabelElement.h:
2942         * html/HTMLMapElement.h:
2943         * html/HTMLMeterElement.h:
2944         * html/HTMLOptGroupElement.h:
2945         * html/HTMLOptionElement.h:
2946         * html/HTMLProgressElement.h:
2947         * html/HTMLScriptElement.h:
2948         * html/HTMLStyleElement.h:
2949         * html/HTMLTableElement.h:
2950         * html/HTMLTableRowElement.h:
2951         * html/HTMLTagNames.in:
2952         * html/HTMLTextAreaElement.h:
2953         * html/HTMLTitleElement.h:
2954         * svg/SVGElement.h:
2955         * svg/SVGFontElement.h:
2956         * svg/SVGFontFaceElement.h:
2957         * svg/SVGImageElement.h:
2958         * svg/SVGScriptElement.h:
2959         * svg/svgtags.in:
2960
2961 2013-09-05  Andreas Kling  <akling@apple.com>
2962
2963         Cached Page and Frame don't need to be ref-counted.
2964         <https://webkit.org/b/120710>
2965
2966         Reviewed by Anders Carlsson.
2967
2968         - CachedPage is owned by HistoryItem.
2969         - CachedFrame is owned by CachedPage.
2970
2971         Remove the ref counting from these objects to make the code less confusing.
2972
2973         Added a new method:
2974
2975         - PassOwnPtr<CachedPage> PageCache::take(HistoryItem*)
2976
2977         ..which is what it looks like - a combined get() and remove() that transfers
2978         ownership of the CachedPage to the caller.
2979
2980         This is used by commitProvisionalLoad() and invalidateCurrentItemCachedPage()
2981         to accomplish in one swoop what they used to do in awkwardly spaced steps.
2982
2983         * history/CachedFrame.h:
2984         (WebCore::CachedFrame::create):
2985         * history/CachedPage.cpp:
2986         (WebCore::CachedPage::create):
2987         * history/CachedPage.h:
2988         * history/HistoryItem.h:
2989         * history/PageCache.cpp:
2990         (WebCore::PageCache::take):
2991         * history/PageCache.h:
2992         * loader/FrameLoader.cpp:
2993         (WebCore::FrameLoader::commitProvisionalLoad):
2994         (WebCore::FrameLoader::transitionToCommitted):
2995         * loader/FrameLoader.h:
2996         * loader/HistoryController.cpp:
2997         (WebCore::HistoryController::invalidateCurrentItemCachedPage):
2998
2999 2013-09-05  David Kilzer  <ddkilzer@apple.com>
3000
3001         BUILD FIX (r155108): Add SynchronousLoaderClientCFNet.cpp to Xcode project
3002
3003         * WebCore.xcodeproj/project.pbxproj: The iOS port defines
3004         USE(CFNETWORK), so it needs to compile
3005         SynchronousLoaderClientCFNet.cpp to build successfully.
3006
3007 2013-09-05  Anders Carlsson  <andersca@apple.com>
3008
3009         GCAssertions.h should use STL type traits and static_assert
3010         https://bugs.webkit.org/show_bug.cgi?id=120785
3011
3012         Reviewed by Andreas Kling.
3013
3014         Update for JavaScriptCore changes.
3015
3016         * bindings/js/JSDOMBinding.cpp:
3017         * bindings/js/JSImageConstructor.cpp:
3018
3019 2013-09-05  David Hyatt  <hyatt@apple.com>
3020
3021         Make RenderListItem inherit from RenderBlockFlow.
3022         https://bugs.webkit.org/show_bug.cgi?id=120789
3023
3024         Reviewed by Beth Dakin.
3025
3026         * rendering/RenderListItem.cpp:
3027         (WebCore::RenderListItem::RenderListItem):
3028         (WebCore::RenderListItem::willBeDestroyed):
3029         (WebCore::RenderListItem::willBeRemovedFromTree):
3030         (WebCore::RenderListItem::layout):
3031         (WebCore::RenderListItem::addOverflowFromChildren):
3032         (WebCore::RenderListItem::computePreferredLogicalWidths):
3033         (WebCore::RenderListItem::paint):
3034         * rendering/RenderListItem.h:
3035
3036 2013-09-05  David Hyatt  <hyatt@apple.com>
3037
3038         Make RenderBlock have a protected constructor..
3039         https://bugs.webkit.org/show_bug.cgi?id=120787
3040
3041         Reviewed by Beth Dakin.
3042
3043         Make sure nobody can create a RenderBlock directly. Make sure RenderBlockFlows
3044         get made when a display:block/inline-block/compact/run-in is seen.
3045
3046         * html/HTMLDetailsElement.cpp:
3047         (WebCore::HTMLDetailsElement::createRenderer):
3048         * html/HTMLSummaryElement.cpp:
3049         (WebCore::HTMLSummaryElement::createRenderer):
3050         * rendering/RenderBlock.cpp:
3051         (WebCore::RenderBlock::createAnonymous):
3052         * rendering/RenderBlock.h:
3053         * rendering/RenderObject.cpp:
3054         (WebCore::RenderObject::createObject):
3055
3056 2013-09-05  David Hyatt  <hyatt@apple.com>
3057
3058         Add new RenderBlockFlow class
3059         https://bugs.webkit.org/show_bug.cgi?id=120777
3060
3061         Reviewed by Simon Fraser.
3062
3063         This patch adds a new RenderBlockFlow class. The idea is to get all of the line/float/margin
3064         code out of RenderBlock and into the subclass, and then we can make RenderBlock an abstract
3065         base. This will save memory for all of the classes that derive from RenderBlock but have
3066         their own layout systems (e.g., flexbox, grid, table), and it will let us tighten up
3067         types to make it more clear when we're talking about block layout code vs. a more generic
3068         block-level object that can have any kind of layout.
3069
3070         The only real change here is that isBlockFlow() has been renamed to isRenderBlockFlow() and
3071         is now checking if the object is a RenderBlockFlow. All of the block subclasses have been patched
3072         to be a RenderBlock or RenderBlockFlow.
3073
3074         * CMakeLists.txt:
3075         * GNUmakefile.list.am:
3076         * Target.pri:
3077         * WebCore.vcxproj/WebCore.vcxproj:
3078         * WebCore.xcodeproj/project.pbxproj:
3079         * accessibility/AccessibilityRenderObject.cpp:
3080         (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
3081         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
3082         * dom/Position.cpp:
3083         (WebCore::Position::isCandidate):
3084         (WebCore::Position::getInlineBoxAndOffset):
3085         (WebCore::Position::primaryDirection):
3086         * dom/PositionIterator.cpp:
3087         (WebCore::PositionIterator::isCandidate):
3088         * editing/ApplyStyleCommand.cpp:
3089         (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown):
3090         * editing/CompositeEditCommand.cpp:
3091         (WebCore::CompositeEditCommand::addBlockPlaceholderIfNeeded):
3092         * editing/Editor.cpp:
3093         (WebCore::Editor::baseWritingDirectionForSelectionStart):
3094         * editing/FrameSelection.cpp:
3095         (WebCore::caretRenderer):
3096         * editing/TextIterator.cpp:
3097         (WebCore::TextIterator::shouldRepresentNodeOffsetZero):
3098         * editing/TypingCommand.cpp:
3099         (WebCore::TypingCommand::makeEditableRootEmpty):
3100         * editing/htmlediting.cpp:
3101         (WebCore::isBlockFlowElement):
3102         * html/shadow/SliderThumbElement.cpp:
3103         (WebCore::RenderSliderThumb::RenderSliderThumb):
3104         * html/shadow/SliderThumbElement.h:
3105         * rendering/LayoutState.cpp:
3106         (WebCore::LayoutState::LayoutState):
3107         * rendering/RenderBlock.cpp:
3108         (WebCore::RenderBlock::layoutBlock):
3109         (WebCore::RenderBlock::collapseMargins):
3110         (WebCore::RenderBlock::selectionGaps):
3111         (WebCore::RenderBlock::firstLineBoxBaseline):
3112         (WebCore::RenderBlock::lastLineBoxBaseline):
3113         (WebCore::RenderBlock::firstLineBlock):
3114         (WebCore::findFirstLetterBlock):
3115         (WebCore::shouldCheckLines):
3116         (WebCore::RenderBlock::adjustForBorderFit):
3117         * rendering/RenderBlock.h:
3118         * rendering/RenderBlockFlow.cpp: Added.
3119         (WebCore::RenderBlockFlow::RenderBlockFlow):
3120         (WebCore::RenderBlockFlow::~RenderBlockFlow):
3121         * rendering/RenderBlockFlow.h: Added.
3122         (WebCore::toRenderBlockFlow):
3123         * rendering/RenderBox.cpp:
3124         (WebCore::RenderBox::computeRectForRepaint):
3125         (WebCore::RenderBox::positionForPoint):
3126         * rendering/RenderBoxModelObject.h:
3127         (WebCore::RenderBoxModelObject::canHaveBoxInfoInRegion):
3128         * rendering/RenderDeprecatedFlexibleBox.cpp:
3129         (WebCore::RenderDeprecatedFlexibleBox::applyLineClamp):
3130         (WebCore::RenderDeprecatedFlexibleBox::clearLineClamp):
3131         * rendering/RenderDetailsMarker.cpp:
3132         (WebCore::RenderDetailsMarker::RenderDetailsMarker):
3133         * rendering/RenderDetailsMarker.h:
3134         * rendering/RenderFieldset.cpp:
3135         (WebCore::RenderFieldset::RenderFieldset):
3136         * rendering/RenderFieldset.h:
3137         * rendering/RenderFileUploadControl.cpp:
3138         (WebCore::RenderFileUploadControl::RenderFileUploadControl):
3139         * rendering/RenderFileUploadControl.h:
3140         * rendering/RenderFlowThread.cpp:
3141         (WebCore::RenderFlowThread::RenderFlowThread):
3142         * rendering/RenderFlowThread.h:
3143         * rendering/RenderFullScreen.cpp:
3144         * rendering/RenderInline.cpp:
3145         (WebCore::RenderInline::computeRectForRepaint):
3146         * rendering/RenderLineBoxList.cpp:
3147         (WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
3148         * rendering/RenderMeter.cpp:
3149         (WebCore::RenderMeter::RenderMeter):
3150         * rendering/RenderMeter.h:
3151         * rendering/RenderMultiColumnBlock.cpp:
3152         (WebCore::RenderMultiColumnBlock::RenderMultiColumnBlock):
3153         * rendering/RenderMultiColumnBlock.h:
3154         * rendering/RenderObject.cpp:
3155         (WebCore::RenderObject::computeRectForRepaint):
3156         (WebCore::RenderObject::styleWillChange):
3157         (WebCore::firstLineStyleForCachedUncachedType):
3158         * rendering/RenderObject.h:
3159         (WebCore::RenderObject::isBR):
3160         (WebCore::RenderObject::isRenderBlockFlow):
3161         * rendering/RenderObjectChildList.cpp:
3162         (WebCore::RenderObjectChildList::insertChildNode):
3163         * rendering/RenderProgress.cpp:
3164         (WebCore::RenderProgress::RenderProgress):
3165         * rendering/RenderProgress.h:
3166         * rendering/RenderRegion.cpp:
3167         (WebCore::RenderRegion::RenderRegion):
3168         * rendering/RenderRegion.h:
3169         * rendering/RenderRuby.cpp:
3170         (WebCore::RenderRubyAsBlock::RenderRubyAsBlock):
3171         * rendering/RenderRuby.h:
3172         * rendering/RenderRubyBase.cpp:
3173         (WebCore::RenderRubyBase::RenderRubyBase):
3174         * rendering/RenderRubyBase.h:
3175         * rendering/RenderRubyRun.cpp:
3176         (WebCore::RenderRubyRun::RenderRubyRun):
3177         * rendering/RenderRubyRun.h:
3178         * rendering/RenderRubyText.cpp:
3179         (WebCore::RenderRubyText::RenderRubyText):
3180         * rendering/RenderRubyText.h:
3181         * rendering/RenderTableCaption.cpp:
3182         (WebCore::RenderTableCaption::RenderTableCaption):
3183         * rendering/RenderTableCaption.h:
3184         * rendering/RenderTableCell.cpp:
3185         (WebCore::RenderTableCell::RenderTableCell):
3186         * rendering/RenderTableCell.h:
3187         * rendering/RenderTextControl.cpp:
3188         (WebCore::RenderTextControl::RenderTextControl):
3189         * rendering/RenderTextControl.h:
3190         * rendering/RenderTextControlSingleLine.h:
3191         (WebCore::RenderTextControlInnerBlock::RenderTextControlInnerBlock):
3192         * rendering/RenderTextTrackCue.cpp:
3193         (WebCore::RenderTextTrackCue::RenderTextTrackCue):
3194         * rendering/RenderTextTrackCue.h:
3195         * rendering/RenderView.cpp:
3196         (WebCore::RenderView::RenderView):
3197         * rendering/RenderView.h:
3198         * rendering/svg/RenderSVGBlock.cpp:
3199         (WebCore::RenderSVGBlock::RenderSVGBlock):
3200         * rendering/svg/RenderSVGBlock.h:
3201
3202 2013-09-05  Tim Horton  <timothy_horton@apple.com>
3203
3204         iOS build broke with change to make Mac use PDFKit for PDFDocumentImage
3205         https://bugs.webkit.org/show_bug.cgi?id=120771
3206
3207         Reviewed by Anders Carlsson.
3208
3209         * platform/graphics/cg/PDFDocumentImage.cpp:
3210         (WebCore::PDFDocumentImage::createPDFDocument):
3211         Use the (removed in r155069) PLATFORM(MAC) way of making a CGDataProvider from a SharedBuffer
3212         everywhere; this is what iOS was expecting to use (where I accidentally changed behavior),
3213         and it should also work for Windows, the only other USE(CG) platform.
3214
3215         Since we only createPDFDocument() after all data has been received, I'm not
3216         restoring the comment about the SharedBuffer being secretly written to behind its back.
3217
3218 2013-09-04  Dean Jackson  <dino@apple.com>
3219
3220         Rename supportsContext to probablySupportsContext
3221         https://bugs.webkit.org/show_bug.cgi?id=120716
3222         <rdar://problem/14914499>
3223
3224         Reviewed by Antoine Quint.
3225
3226         As decided in: http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2013-September/040680.html
3227
3228         * bindings/js/JSHTMLCanvasElementCustom.cpp:
3229         (WebCore::JSHTMLCanvasElement::probablySupportsContext):
3230         * html/HTMLCanvasElement.cpp:
3231         (WebCore::HTMLCanvasElement::probablySupportsContext):
3232         * html/HTMLCanvasElement.h:
3233         * html/HTMLCanvasElement.idl:
3234
3235 2013-09-05  Joseph Pecoraro  <pecoraro@apple.com>
3236
3237         Fix build warning about unused variable.
3238
3239         Unreviewed build fix.
3240
3241         * bindings/js/ScriptDebugServer.cpp:
3242         (WebCore::ScriptDebugServer::evaluateBreakpointAction):
3243
3244 2013-09-05  Anders Carlsson  <andersca@apple.com>
3245
3246         Enable C++11 wherever we build C++ files that include wtf/Platform.h
3247         https://bugs.webkit.org/show_bug.cgi?id=120782
3248
3249         Reviewed by Andreas Kling.
3250
3251         Pass -std=gnu++11 when preprocessing wtf/Platform.h.
3252
3253         * DerivedSources.make:
3254
3255 2013-09-05  Joseph Pecoraro  <pecoraro@apple.com>
3256
3257         Web Inspector: Breakpoint Actions
3258         https://bugs.webkit.org/show_bug.cgi?id=120576
3259
3260         Reviewed by Timothy Hatcher.
3261
3262         Tests: inspector-protocol/debugger/setBreakpoint-actions.html
3263                inspector-protocol/debugger/setBreakpoint-options-exception.html
3264
3265         * inspector/ScriptBreakpoint.h:
3266         (WebCore::ScriptBreakpointAction::ScriptBreakpointAction):
3267         (WebCore::ScriptBreakpoint::ScriptBreakpoint):
3268         Struct for a breakpoint action. Type and string of data.
3269
3270         * bindings/js/ScriptDebugServer.h:
3271         * bindings/js/ScriptDebugServer.cpp:
3272         (WebCore::ScriptDebugServer::hasBreakpoint):
3273         (WebCore::ScriptDebugServer::evaluateBreakpointAction):
3274         (WebCore::ScriptDebugServer::evaluateBreakpointActions):
3275         (WebCore::ScriptDebugServer::updateCallFrameAndPauseIfNeeded):
3276         (WebCore::ScriptDebugServer::pauseIfNeeded):
3277         When a breakpoint is triggered evaluate each of its breakpoint
3278         actions in order. If there are exceptions, log them.
3279
3280         * inspector/Inspector.json:
3281         * inspector/InspectorDebuggerAgent.cpp:
3282         (WebCore::buildObjectForBreakpointCookie):
3283         (WebCore::InspectorDebuggerAgent::didParseSource):
3284         Save and restore breakpoint actions where needed.
3285
3286         (WebCore::breakpointActionTypeForString):
3287         (WebCore::breakpointActionsFromProtocol):
3288         (WebCore::InspectorDebuggerAgent::setBreakpointByUrl):
3289         (WebCore::InspectorDebuggerAgent::setBreakpoint):
3290         Parse optional breakpoint actions from the protocol into
3291         ScriptBreakpointAction objects.
3292
3293 2013-09-05  Simon Fraser  <simon.fraser@apple.com>
3294
3295         Fix repaint issue on "paints into ancestor" filtered layers
3296         https://bugs.webkit.org/show_bug.cgi?id=120780
3297
3298         Reviewed by Tim Horton.
3299         
3300         When a repaint happened on a layer with a filter, and which paints into
3301         its compositing ancestor, we'd repaint the wrong layer (and assert).
3302         
3303         Fix by ensuring that RenderLayer::enclosingFilterLayer() takes paintsIntoCompositedAncestor()
3304         into account, by adding a function that we share between three callers who
3305         check isComposited() && !paintsIntoCompositedAncestor(). I didn't use a function
3306         on RenderLayer, because I wanted it to be inline but to not #include RenderLayerBacking
3307         in RenderLayer.h.
3308
3309         Test: compositing/filters/opacity-change-on-filtered-paints-into-ancestor.html
3310
3311         * dom/Node.cpp: Drive-by removal of #include "RenderLayer.h"
3312         * rendering/RenderLayer.cpp: 
3313         (WebCore::compositedWithOwnBackingStore):
3314         (WebCore::RenderLayer::enclosingCompositingLayerForRepaint):
3315         (WebCore::RenderLayer::enclosingFilterRepaintLayer):
3316         (WebCore::RenderLayer::clippingRootForPainting):
3317
3318 2013-09-05  Brent Fulgham  <bfulgham@apple.com>
3319
3320         [Windows] Unreviewed build/link improvement after r155127 to be
3321         consistent about using debug-build support libraries.
3322
3323         Now that <rdar://problem/9898937> is resolved, we should be linking
3324         to debug AVFoundationCF as well.
3325
3326         * page/CaptionUserPreferencesMediaAF.cpp: Link to AVFoundationCF_debug
3327         when building with the DEBUG_ALL target.
3328         * platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp: Ditto.
3329         * platform/graphics/avfoundation/cf/AVFoundationCFSoftLinking.h: Ditto.
3330
3331 2013-09-04  Anders Carlsson  <andersca@apple.com>
3332
3333         Vector::releaseBuffer should return an OwnPtr
3334         https://bugs.webkit.org/show_bug.cgi?id=120718
3335
3336         Reviewed by Andreas Kling.
3337
3338         Change FormStreamFields::currentData to an OwnPtr.
3339
3340         * platform/network/cf/FormDataStreamCFNet.cpp:
3341         (WebCore::closeCurrentStream):
3342         (WebCore::advanceCurrentStream):
3343         (WebCore::formCreate):
3344
3345 2013-09-05  Andreas Kling  <akling@apple.com>
3346
3347         Reverting "Cached Page and Frame don't need to be ref-counted.
3348         <https://webkit.org/b/120758>
3349
3350         This didn't work so well on Qt bots. Will have to take bigger steps
3351         here instead of iterating.
3352
3353         * history/CachedFrame.h:
3354         (WebCore::CachedFrame::create):
3355         * history/CachedPage.cpp:
3356         (WebCore::CachedPage::create):
3357         * history/CachedPage.h:
3358         * history/HistoryItem.h:
3359         * loader/FrameLoader.cpp:
3360         (WebCore::FrameLoader::commitProvisionalLoad):
3361         (WebCore::FrameLoader::transitionToCommitted):
3362         * loader/FrameLoader.h:
3363
3364 2013-09-04  Anders Carlsson  <andersca@apple.com>
3365
3366         Animations in an AnimationList are never null
3367         https://bugs.webkit.org/show_bug.cgi?id=120720
3368
3369         Reviewed by Andreas Kling.
3370
3371         Change AnimationList::operator[] to return an Animation& and fix up related code to also take references.
3372
3373         * css/CSSComputedStyleDeclaration.cpp:
3374         * css/DeprecatedStyleBuilder.cpp:
3375         * page/animation/CompositeAnimation.cpp:
3376         * page/animation/KeyframeAnimation.cpp:
3377         * platform/animation/Animation.h:
3378         * platform/animation/AnimationList.cpp:
3379         * platform/animation/AnimationList.h:
3380         * rendering/RenderLayerBacking.cpp:
3381
3382 2013-09-05  Antti Koivisto  <antti@apple.com>
3383
3384         Call createTextRenderersForSiblingsAfterAttachIfNeeded only for the attach root
3385         https://bugs.webkit.org/show_bug.cgi?id=120770
3386
3387         Reviewed by Andreas Kling.
3388
3389         There is no need to call this during recursive attach as siblings are going to be attached normally anyway.
3390         Move call sites to attach roots only.
3391
3392         * style/StyleResolveTree.cpp:
3393         (WebCore::Style::createTextRenderersForSiblingsAfterAttachIfNeeded):
3394         
3395             Factor to take reference and do the inital tests itself.
3396
3397         (WebCore::Style::createTextRendererIfNeeded):
3398         (WebCore::Style::updateTextRendererAfterContentChange):
3399         (WebCore::Style::attachChildren):
3400         
3401             Also tightened the condition where previously attached children may be encountered.
3402
3403         (WebCore::Style::attachRenderTree):
3404         (WebCore::Style::resolveLocal):
3405         (WebCore::Style::updateTextStyle):
3406         (WebCore::Style::reattachRenderTree):
3407
3408 2013-09-05  Enrique Ocaña González  <eocanha@igalia.com>
3409
3410         [GTK] Assertion fails when the mouse pointer is styled with a custom cursor
3411         https://bugs.webkit.org/show_bug.cgi?id=118905
3412
3413         Reviewed by Philippe Normand.
3414
3415         Checked that the custom cursor image and its pixbuf is valid and create a null
3416         cursor otherwise.
3417
3418         * platform/gtk/CursorGtk.cpp:
3419         (WebCore::createCustomCursor):
3420
3421 2013-09-05  Praveen R Jadhav  <praveen.j@samsung.com>
3422
3423         Precision updates in WebAudio.
3424         https://bugs.webkit.org/show_bug.cgi?id=119739
3425
3426         Reviewed by Philippe Normand.
3427
3428         WebAudio Specification suggests to use 'double' datatypes
3429         for minDecibels, maxDecibels and smoothingTimeConstant in
3430         AnalyserNode.idl and currentTime in AudioContext.idl.
3431         Current WebKit implementation has declared these attributes
3432         as 'float' type.
3433
3434         Spec: https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html#AudioContext-section
3435               https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html#AnalyserNode
3436
3437         No new tests, covered by existing tests.
3438
3439         * Modules/webaudio/AnalyserNode.cpp:
3440         (WebCore::AnalyserNode::setMinDecibels):
3441         (WebCore::AnalyserNode::setMaxDecibels):
3442         (WebCore::AnalyserNode::setSmoothingTimeConstant):
3443         * Modules/webaudio/AnalyserNode.h:
3444         (WebCore::AnalyserNode::minDecibels):
3445         (WebCore::AnalyserNode::maxDecibels):
3446         (WebCore::AnalyserNode::smoothingTimeConstant):
3447         * Modules/webaudio/AnalyserNode.idl:
3448         * Modules/webaudio/AudioContext.idl:
3449         * Modules/webaudio/RealtimeAnalyser.h:
3450         (WebCore::RealtimeAnalyser::setMinDecibels):
3451         (WebCore::RealtimeAnalyser::minDecibels):
3452         (WebCore::RealtimeAnalyser::setMaxDecibels):
3453         (WebCore::RealtimeAnalyser::maxDecibels):
3454         (WebCore::RealtimeAnalyser::setSmoothingTimeConstant):
3455         (WebCore::RealtimeAnalyser::smoothingTimeConstant):
3456
3457 2013-09-05  Mihnea Ovidenie  <mihnea@adobe.com>
3458
3459         Replace node() calls with generatingNode() for RenderRegion code
3460         https://bugs.webkit.org/show_bug.cgi?id=120397
3461
3462         Reviewed by Darin Adler.
3463
3464         As regions will become anonymous blocks nested inside elements with the flow-from property, a first step
3465         would be to change the calls to node() with calls to generatingNode(). In the case of regions, generatingNode()
3466         will always return an Element* and not a Node*. Therefore, to get rid of toElement() casts, i created
3467         a specific method RenderRegion::generatingElement that will return the generating node as Element.
3468         No new tests as no functional change was introduced.
3469
3470         Original patch by Catalin Badea.
3471
3472         * css/ElementRuleCollector.cpp:
3473         (WebCore::ElementRuleCollector::collectMatchingRulesForRegion):
3474         * dom/WebKitNamedFlow.cpp:
3475         (WebCore::WebKitNamedFlow::getRegionsByContent):
3476         (WebCore::WebKitNamedFlow::getRegions):
3477         * rendering/RenderRegion.cpp:
3478         (WebCore::RenderRegion::regionOversetState):
3479         (WebCore::RenderRegion::setRegionOversetState):
3480         (WebCore::RenderRegion::checkRegionStyle):
3481         * rendering/RenderRegion.h:
3482         (WebCore::RenderRegion::generatingElement):
3483         * rendering/RenderTreeAsText.cpp:
3484         (WebCore::writeRenderRegionList): For pseudo-elements as regions, i want to print
3485         {pseudo} instead of {div} marker for the parent.
3486
3487 2013-09-05  Csaba Osztrogonác  <ossy@webkit.org>
3488
3489         Fix SynchronousLoaderClient class for !USE(CFNETWORK) platforms
3490         https://bugs.webkit.org/show_bug.cgi?id=120532
3491
3492         Reviewed by Darin Adler.
3493
3494         * CMakeLists.txt:
3495         * PlatformEfl.cmake:
3496         * PlatformGTK.cmake:
3497         * WebCore.vcxproj/WebCore.vcxproj:
3498         * WebCore.vcxproj/WebCore.vcxproj.filters:
3499         * platform/network/SynchronousLoaderClient.cpp:
3500         * platform/network/cf/SynchronousLoaderClientCFNet.cpp: Added.
3501         (WebCore::SynchronousLoaderClient::didReceiveAuthenticationChallenge):
3502         (WebCore::SynchronousLoaderClient::platformBadResponseError):
3503         * platform/network/soup/SynchronousLoaderClientSoup.cpp: Added.
3504         (WebCore::SynchronousLoaderClient::didReceiveAuthenticationChallenge):
3505         (WebCore::SynchronousLoaderClient::platformBadResponseError):
3506
3507 2013-09-05  Jinwoo Song  <jinwoo7.song@samsung.com>
3508
3509         Fix unused parameter warning in WebKitAccessibleInterfaceText.cpp
3510         <https://webkit.org/b/120761>
3511
3512         Reviewed by Gyuyoung Kim.
3513
3514         Fix warning by removing unused parameter.
3515
3516         * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
3517         (sentenceAtPositionForAtkBoundary):
3518
3519 2013-09-05  Dirk Schulze  <krit@webkit.org>
3520
3521         NULL ptr in WebCore::RefCountedPropertyWrapper<WebCore::ClipPathOperation>::blend
3522         https://bugs.webkit.org/show_bug.cgi?id=105408
3523
3524         Reviewed by Dean Jackson.
3525
3526         Adding an early return if from or to clip-path values are 'none'. According to the
3527         specification we shall just interpolate between two basic shapes.
3528
3529         http://dev.w3.org/csswg/css-shapes/#basic-shape-interpolation
3530
3531         * page/animation/CSSPropertyAnimation.cpp:
3532         (WebCore::blendFunc):
3533
3534 2013-09-05  Andre Moreira Magalhaes   <andre.magalhaes@collabora.co.uk>
3535
3536         [Qt][WK1] REGRESSION(r154988): compositing/video/video-with-invalid-source.html
3537         https://bugs.webkit.org/show_bug.cgi?id=120683
3538
3539         Reviewed by Philippe Normand.
3540
3541         Do not set pipeline state to NULL on MediaPlayerPrivateGStreamer::loadingFailed()
3542         otherwise the bus is flushed and we never get a GST_MESSAGE_ERROR when failing to
3543         load uris.
3544         Also restore previous behaviour (before r154988) of not invoking loadingFailed() for
3545         all failed manual state change attempts.
3546
3547         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
3548         (WebCore::MediaPlayerPrivateGStreamer::changePipelineState):
3549         Do not call loadingFailed() if state change fails as all manual state changes are
3550         now done with changePipelineState().
3551         (WebCore::MediaPlayerPrivateGStreamer::play):
3552         (WebCore::MediaPlayerPrivateGStreamer::pause):
3553         (WebCore::MediaPlayerPrivateGStreamer::seek):
3554         (WebCore::MediaPlayerPrivateGStreamer::handleMessage):
3555         Restore previous behaviour (before changeset r154988) when calling changePipelineState().
3556         (WebCore::MediaPlayerPrivateGStreamer::updateStates):
3557         Do nothing if changing to READY on EOS (same behaviour as setting to NULL as it was before
3558         changeset r154988).
3559         (WebCore::MediaPlayerPrivateGStreamer::loadingFailed):
3560         Do not set pipeline state to NULL so we properly get GST_MESSAGE_ERROR on loading failures.
3561
3562 2013-09-05  Alberto Garcia  <berto@igalia.com>
3563
3564         [GTK] MediaControlsGtk: fix warning in constructor due to incorrect order of attributes
3565         https://bugs.webkit.org/show_bug.cgi?id=120703
3566
3567         Reviewed by Carlos Garcia Campos.
3568
3569         Fix member initialization so it matches their declaration [-Wreorder].
3570
3571         * html/shadow/MediaControlsGtk.cpp:
3572         (WebCore::MediaControlsGtk::MediaControlsGtk):
3573
3574 2013-09-04  Dirk Schulze  <krit@webkit.org>
3575
3576         Support interpolation between cross-fade() images
3577         https://bugs.webkit.org/show_bug.cgi?id=119955
3578
3579         Reviewed by Darin Adler.
3580
3581         With this patch, CSS can animate from one -webkit-cross-fade
3582         function to another, when the input images are the same in the
3583         same order.
3584
3585         * css/CSSCrossfadeValue.cpp: Added blend function.
3586         (WebCore::blendFunc):
3587         (WebCore::CSSCrossfadeValue::blend):
3588         (WebCore::CSSCrossfadeValue::equals):
3589         (WebCore::CSSCrossfadeValue::equalInputImages):
3590         * css/CSSCrossfadeValue.h: Added save casting functions.
3591         (WebCore::toCSSCrossfadeValue):
3592         * css/CSSValue.h:
3593         (WebCore::CSSValue::isCrossfadeValue):
3594         * page/animation/CSSPropertyAnimation.cpp: Add another condition to
3595             interpolate between two -webkit-cross-fade functions.
3596         (WebCore::blendFunc):
3597
3598 2013-09-04  Zoltan Herczeg  <zherczeg@webkit.org>
3599
3600         <https://webkit.org/b/118553> Hash navigation doesn't affect history when the page is retrieved from appcache
3601
3602         Reviewed by Darin Adler.
3603
3604         A new flag called keepInHistory is added to allow keeping
3605         certain pages in the history even if they have substitute data.
3606
3607         Test: http/tests/appcache/history-test.html
3608
3609         * loader/DocumentLoader.cpp:
3610         (WebCore::DocumentLoader::urlForHistory):
3611         * loader/SubstituteData.h:
3612         (WebCore::SubstituteData::SubstituteData):
3613         (WebCore::SubstituteData::shouldRevealToSessionHistory):
3614         (WebCore::SubstituteData::setShouldRevealToSessionHistory):
3615         * loader/appcache/ApplicationCacheHost.cpp:
3616         (WebCore::ApplicationCacheHost::maybeLoadMainResource):
3617
3618 2013-09-04  Grzegorz Czajkowski  <g.czajkowski@samsung.com>
3619
3620         Remove deprecated markersForNode(Node* node).
3621         https://bugs.webkit.org/show_bug.cgi?id=120679
3622
3623         Reviewed by Ryosuke Niwa.
3624
3625         DocumentMarkerController::markersForNode(Node* node) has been marked as
3626         deprecated in favor of markersFor(Node*, MarkerTypes = AllMarkers()).
3627
3628         No new tests, no behavior change.
3629
3630         * dom/DocumentMarkerController.cpp:
3631         * dom/DocumentMarkerController.h:
3632         Remove never used markersForNode(Node*).
3633
3634 2013-09-04  Andreas Kling  <akling@apple.com>
3635
3636         CachedPage construction should begin with a Page&.
3637         <https://webkit.org/b/120721>
3638
3639         Reviewed by Anders Carlsson.
3640
3641         We can't create a CachedPage from a null Page anyway.
3642
3643         * history/CachedPage.cpp:
3644         (WebCore::CachedPage::create):
3645         (WebCore::CachedPage::CachedPage):
3646         (WebCore::CachedPage::restore):
3647         * history/CachedPage.h:
3648         * history/PageCache.cpp:
3649         (WebCore::PageCache::add):
3650         * history/PageCache.h:
3651         * loader/FrameLoader.cpp:
3652         (WebCore::FrameLoader::commitProvisionalLoad):
3653
3654 2013-09-04  Arpita Bahuguna  <a.bah@samsung.com>
3655
3656         setAttributeNode() does not set the new value to an existing attribute if specified attribute is in a different case.
3657         https://bugs.webkit.org/show_bug.cgi?id=120293
3658
3659         Reviewed by Darin Adler.
3660
3661         setAttributeNode() performs a case-insensitive search for an existing
3662         attribute. If an existing attribute is found, it retrieves the index of
3663         such an attribute. For setting the attribute's new value, we call upon
3664         setAttributeInternal() to which both the index as well as the name of
3665         the attribute is passed.
3666         The name passed to this method is the same as the one passed to the
3667         setAttributeNode() API from the webpage and thus can be in any case.
3668
3669         However, setAttributeInternal() uses this name to get the corresponding
3670         existing attribute node. Since this retrieval is not case-insensitive,
3671         the existing node is not returned and thus the new value is not set on
3672         the existing node.
3673         We should instead use the passed index and use that to retrieve the
3674         existing node.
3675
3676         Note that obtaining the attribute's value using getAttributeNode() would
3677         still return the correct value, i.e. the new one.
3678
3679         Also, this change shall make our behavior similar to that of FF and IE.
3680
3681         Test: fast/dom/Element/setAttributeNode-for-existing-attribute.html
3682
3683         * dom/Element.cpp:
3684         (WebCore::Element::setAttributeInternal):
3685         If the passed index is not equal to attributeNotFound, we use that index
3686         to retrieve the existing attribute.
3687
3688 2013-09-04  Andreas Kling  <akling@apple.com>
3689
3690         CachedFrame construction should begin with a Frame&.
3691         <https://webkit.org/b/120719>
3692
3693         Reviewed by Anders Carlsson.
3694
3695         We can't create a CachedFrame from a null Frame anyway.
3696
3697         * bindings/js/ScriptCachedFrameData.cpp:
3698         (WebCore::ScriptCachedFrameData::ScriptCachedFrameData):
3699         (WebCore::ScriptCachedFrameData::restore):
3700         * bindings/js/ScriptCachedFrameData.h:
3701         * history/CachedFrame.cpp:
3702         (WebCore::CachedFrameBase::CachedFrameBase):
3703         (WebCore::CachedFrameBase::restore):
3704         (WebCore::CachedFrame::CachedFrame):
3705         * history/CachedFrame.h:
3706         (WebCore::CachedFrame::create):
3707         * history/CachedPage.cpp:
3708         (WebCore::CachedPage::CachedPage):
3709
3710 2013-09-04  Andreas Kling  <akling@apple.com>
3711
3712         Set "render tree being torn down" flag a bit earlier.
3713         <https://webkit.org/b/120717>
3714
3715         Reviewed by Anders Carlsson.
3716
3717         Set the flag at the start of Document::detach() so everyone can get a chance
3718         to avoid unnecessary work, not just renderers.
3719
3720         * dom/Document.cpp:
3721         (WebCore::Document::detach):
3722
3723 2013-09-04  Andreas Kling  <akling@apple.com>
3724
3725         Cached Page and Frame don't need to be ref-counted.
3726         <https://webkit.org/b/120710>
3727
3728         Reviewed by Anders Carlsson.
3729
3730         - CachedPage is owned by HistoryItem.
3731         - CachedFrame is owned by CachedPage.
3732
3733         Remove the ref counting from these objects to make the code less confusing.
3734
3735         The only place that used this was in FrameLoader::commitProvisionalLoad() which
3736         took a temporary ref on the CachedPage. Switched this to using a raw pointer.
3737
3738         * history/CachedFrame.h:
3739         (WebCore::CachedFrame::create):
3740         * history/CachedPage.cpp:
3741         (WebCore::CachedPage::create):
3742         * history/CachedPage.h:
3743         * history/HistoryItem.h:
3744         * loader/FrameLoader.cpp:
3745         (WebCore::FrameLoader::commitProvisionalLoad):
3746         (WebCore::FrameLoader::transitionToCommitted):
3747         * loader/FrameLoader.h:
3748
3749 2013-09-04  Roger Fong  <roger_fong@apple.com>
3750
3751         Link to libdispatch_debug.lib when using DebugSuffix configuration.
3752         https://bugs.webkit.org/show_bug.cgi?id=120712.
3753         <rdar://problem/14883216>.
3754
3755         Reviewed by Brent Fulgham.
3756
3757         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
3758
3759 2013-09-04  Roger Fong  <roger_fong@apple.com>
3760
3761         Unreviewed. Windows build fix and WebCore project cleanup.
3762
3763         * WebCore.vcxproj/WebCore.vcxproj.filters:
3764         * rendering/RenderingAllInOne.cpp:
3765
3766 2013-09-04  Mark Lam  <mark.lam@apple.com>
3767
3768         Renamed StackIterator to StackVisitor.
3769         https://bugs.webkit.org/show_bug.cgi?id=120706.
3770
3771         Reviewed by Geoffrey Garen.
3772
3773         No new tests.
3774
3775         * ForwardingHeaders/interpreter/StackIterator.h: Removed.
3776         * ForwardingHeaders/interpreter/StackVisitor.h: Copied from Source/WebCore/ForwardingHeaders/interpreter/StackIterator.h.
3777         * bindings/js/JSXMLHttpRequestCustom.cpp:
3778         (WebCore::SendFunctor::operator()):
3779         * bindings/js/ScriptCallStackFactory.cpp:
3780         (WebCore::CreateScriptCallStackFunctor::operator()):
3781         (WebCore::CreateScriptCallStackForConsoleFunctor::operator()):
3782
3783 2013-09-04  Samuel White  <samuel_white@apple.com>
3784
3785         AX: when no other label on provided on form elements, WebKit should fall back to using @title
3786         https://bugs.webkit.org/show_bug.cgi?id=112842
3787
3788         Reviewed by Chris Fleizach.
3789
3790         Don't let input elements include empty labels in their accessibility title.
3791
3792         Test: platform/mac/accessibility/input-title.html
3793
3794         * accessibility/AccessibilityNodeObject.cpp:
3795         (WebCore::AccessibilityNodeObject::titleElementText):
3796
3797 2013-09-04  Andreas Kling  <akling@apple.com>
3798
3799         Make ImageQualityController per-RenderView.
3800         <https://webkit.org/b/120702>
3801
3802         Reviewed by Anders Carlsson.
3803
3804         Move ImageQualityController to its own files and add a RenderView::imageQualityController()
3805         getter instead of using a global map for all render trees.
3806
3807         This avoids having to unregister every renderer (well, every RenderBoxModelObject) from the
3808         global hash map during render tree teardown.
3809
3810         It also simplifies the live resize optimization a bit since it can now short-circuit if
3811         the RenderView's FrameView is being resized. (Previously there could be any number of
3812         RenderViews present in the map.)
3813
3814         * CMakeLists.txt:
3815         * GNUmakefile.list.am:
3816         * Target.pri:
3817         * WebCore.vcxproj/WebCore.vcxproj:
3818         * WebCore.xcodeproj/project.pbxproj:
3819         * rendering/ImageQualityController.cpp: Added.
3820         * rendering/ImageQualityController.h: Added.
3821
3822 2013-09-04  Roger Fong  <roger_fong@apple.com>
3823
3824         Unreviewed Build fix for Windows DebugSuffix configuration.
3825
3826         * WebCore.vcxproj/WebCore.vcxproj:
3827         * WebCore.vcxproj/WebCore.vcxproj.filters:
3828
3829 2013-09-04  Mark Lam  <mark.lam@apple.com>
3830
3831         Refining the StackIterator callback interface.
3832         https://bugs.webkit.org/show_bug.cgi?id=120695.
3833
3834         Reviewed by Geoffrey Garen.
3835
3836         No new tests.
3837
3838         * bindings/js/JSXMLHttpRequestCustom.cpp:
3839         (WebCore::SendFunctor::SendFunctor):
3840         (WebCore::SendFunctor::line):
3841         (WebCore::SendFunctor::url):
3842         (WebCore::SendFunctor::operator()):
3843         (WebCore::JSXMLHttpRequest::send):
3844         * bindings/js/ScriptCallStackFactory.cpp:
3845         (WebCore::createScriptCallStack):
3846
3847 2013-09-04  Andreas Kling  <akling@apple.com>
3848
3849         Remove unnecessary RenderView.h inclusion from headers.
3850         <https://webkit.org/b/120365>
3851
3852         Reviewed by Anders Carlsson.
3853
3854         RenderView.h was overzealously included by RenderText and RenderTextTrackCue,
3855         making it unpleasant to edit on my laptop.
3856
3857         * rendering/RenderText.h:
3858         * rendering/RenderTextTrackCue.h:
3859
3860             Don't include RenderView.h here, do it in .cpp files.
3861
3862 2013-09-04  Alexey Proskuryakov  <ap@apple.com>
3863
3864         Editor::m_removedAnchor is unused
3865         https://bugs.webkit.org/show_bug.cgi?id=120701
3866
3867         Reviewed by Ryosuke Niwa.
3868
3869         * editing/Editor.h: Removed m_removedAnchor. It was not only unused, but also broken,
3870         as we didn't reset it when navigating.
3871
3872 2013-09-04  Pratik Solanki  <psolanki@apple.com>
3873
3874         Document::updateHoverActiveState() should allow for deferred style recalcs
3875         https://bugs.webkit.org/show_bug.cgi?id=120700
3876
3877         Reviewed by Simon Fraser.
3878
3879         Add an extra argument to Document::updateHoverActiveState() to specify if a style recalc
3880         should be done. The default value keeps the current behavior of doing a style recalc. iOS
3881         touch handling code will pass in DeferRecalcStyleIfNeeded to avoid the work.
3882
3883         No new tests because no functional changes.
3884
3885         * dom/Document.cpp:
3886         (WebCore::Document::updateHoverActiveState):
3887         * dom/Document.h:
3888
3889 2013-09-04  Tim Horton  <timothy_horton@apple.com>
3890
3891         [mac] PDFDocumentImage should use PDFKit to draw
3892         https://bugs.webkit.org/show_bug.cgi?id=120651
3893         <rdar://problem/12810731>
3894
3895         Reviewed by Alexey Proskuryakov.
3896
3897         Use PDFKit to draw PDF-in-<img> on Mac, so that annotations in PDF are painted.
3898
3899         Test: fast/images/pdf-as-image-with-annotations.html
3900
3901         * WebCore.xcodeproj/project.pbxproj:
3902         Add PDFDocumentImageMac.mm.
3903
3904         * platform/graphics/cg/PDFDocumentImage.cpp:
3905         (WebCore::PDFDocumentImage::PDFDocumentImage):
3906         We don't need to initialize m_document anymore because it's now a RetainPtr.
3907         Initialize m_hasPage to false.
3908
3909         (WebCore::PDFDocumentImage::~PDFDocumentImage):
3910         We don't need to manually release our CGPDFDocumentRef anymore because it's now a RetainPtr.
3911
3912         (WebCore::PDFDocumentImage::size):
3913         Use expandedIntSize for explicitness.
3914
3915         (WebCore::PDFDocumentImage::applyRotationForPainting):
3916         Rename adjustCTM to applyRotationForPainting, and move the one non-rotation related transformation out.
3917         We need to do this because PDFKit applies the rotation transformation itself, so we don't need to.
3918         Also, explicitly use std::min instead of importing the whole std namespace.
3919
3920         (WebCore::PDFDocumentImage::dataChanged):
3921         Assert that we don't re-enter dataChanged after we've created a document,
3922         because it seems like that shouldn't happen - we only create a document when
3923         we've supposedly received all data, and it would be nice if we didn't have
3924         all this varying code to deal with SharedBuffers changing out from under each other.
3925         Factor the code to create a CGPDFDocumentRef out into createPDFDocument, so we can
3926         replace it with a different implementation that creates a PDFDocument.
3927
3928         (WebCore::PDFDocumentImage::setCurrentPage):
3929         Make all page-number-related things unsigned, since they are in CG and PDFKit,
3930         and add m_hasPage to denote whether we've acquired a valid page yet.
3931         Factor code to retrieve the PDF box bounds into computeBoundsForCurrentPage.
3932         Remove setCurrentPage itself, as we never use a page other than the first page;
3933         we will call computeBoundsForCurrentPage and set hasPage in dataChanged, now.
3934
3935         (WebCore::PDFDocumentImage::draw):
3936         Fix a weird comment.
3937         Factor code that actually draws the PDF out into drawPDFPage.
3938
3939         The rest of the functions in this file are only built for USE(CG) && !PLATFORM(MAC):
3940
3941         (WebCore::PDFDocumentImage::createPDFDocument):
3942         Factored out of dataChanged(); I only kept the !PLATFORM(MAC) branch.
3943
3944         (WebCore::PDFDocumentImage::computeBoundsForCurrentPage):
3945         Factored out of setCurrentPage().
3946         Use deg2rad since we have it.
3947
3948         (WebCore::PDFDocumentImage::pageCount):
3949         (WebCore::PDFDocumentImage::drawPDFPage):
3950         Factored out of draw().
3951         Reduced an unnecessary transform (we were effectively doing mediaBox.origin - cropBox.origin - mediaBox.origin).
3952
3953         * platform/graphics/cg/PDFDocumentImage.h:
3954         Unindent all the things, as we don't indent the first level inside a namespace scope.
3955         Forward-declare PDFDocument.
3956         Make m_currentPage unsigned as it should be.
3957         Add m_hasPage.
3958         Make m_document a PDFDocument on PLATFORM(MAC) and a CGPDFDocumentRef on other platforms.
3959
3960         * platform/graphics/mac/PDFDocumentImageMac.mm: Added.
3961         Soft-link in PDFKit and specifically the PDFDocument class.
3962
3963         (WebCore::PDFDocumentImage::createPDFDocument):
3964         Create our PDFDocument from the SharedBuffer's NSData directly. This shouldn't be a problem
3965         (with respect to the SharedBuffer's data being appended to in secret), because we've waited
3966         for the document to finish loading before getting here.
3967
3968         (WebCore::PDFDocumentImage::computeBoundsForCurrentPage):
3969         Ask PDFKit for the page's media and crop boxes; it automatically performs the correct fallback.
3970         Ask PDFKit for the page's rotation.
3971
3972         (WebCore::PDFDocumentImage::pageCount):
3973         Ask PDFKit for the page count.
3974
3975         (WebCore::PDFDocumentImage::drawPDFPage):
3976         Paint the current page of the PDF. Note that we do not apply the rotation here
3977         via applyRotationForPainting because PDFKit will do it itself.
3978
3979         * platform/mac/SoftLinking.h:
3980         I couldn't find any clients of SOFT_LINK_FRAMEWORK_IN_CORESERVICES_UMBRELLA,
3981         so I made it the more generic SOFT_LINK_FRAMEWORK_IN_UMBRELLA, taking the name
3982         of the umbrella framework and the subframework, so I could use it to soft link
3983         Quartz.framework's PDFKit.framework.
3984
3985 2013-09-04  Roger Fong  <roger_fong@apple.com>
3986
3987         Unreviewed Windows build fix.
3988
3989         * WebCore.vcxproj/WebCoreCommon.props:
3990
3991 2013-09-04  Bem Jones-Bey  <bjonesbe@adobe.com>
3992
3993         FloatingObjects should manage cleaning it's line box tree pointers itself
3994         https://bugs.webkit.org/show_bug.cgi?id=120692
3995
3996         Reviewed by David Hyatt.
3997
3998         This is another step in properly encapsulating FloatingObjects.
3999         Instead of having RenderBlock walk and clear the line box tree
4000         pointers, create a method for the behavior, and have RenderBlock call
4001         that.
4002
4003         In addtion, add a proper destructor to FloatingObjects, so that
4004         RenderBlock does not have to explicitly delete the set in
4005         FloatingObjects.
4006
4007         And as a bonus, fix the ordering of an if to avoid the expensive
4008         descendantChild check.
4009
4010         This is a port of a Blink patch by Eric Seidel.
4011
4012         No new tests, no behavior change.
4013
4014         * rendering/RenderBlock.cpp:
4015         (WebCore::RenderBlock::~RenderBlock):
4016         (WebCore::RenderBlock::deleteLineBoxTree):
4017         (WebCore::RenderBlock::repaintOverhangingFloats):
4018         (WebCore::RenderBlock::FloatingObjects::~FloatingObjects):
4019         (WebCore::RenderBlock::FloatingObjects::clearLineBoxTreePointers):
4020         (WebCore::RenderBlock::FloatingObjects::clear):
4021         * rendering/RenderBlock.h:
4022
4023 2013-09-04  Tim Horton  <timothy_horton@apple.com>
4024
4025         Rename customCssText -> customCSSText to match WebKit style
4026         https://bugs.webkit.org/show_bug.cgi?id=120694
4027
4028         Reviewed by Simon Fraser.
4029
4030         No new tests, just a rename.
4031
4032         * WebCore.order:
4033         * css/CSSAspectRatioValue.cpp:
4034         (WebCore::CSSAspectRatioValue::customCSSText):
4035         * css/CSSAspectRatioValue.h:
4036         * css/CSSBorderImageSliceValue.cpp:
4037         (WebCore::CSSBorderImageSliceValue::customCSSText):
4038         * css/CSSBorderImageSliceValue.h:
4039         * css/CSSCalculationValue.cpp:
4040         (WebCore::CSSCalcValue::customCSSText):
4041         (WebCore::CSSCalcPrimitiveValue::customCSSText):
4042         (WebCore::CSSCalcBinaryOperation::customCSSText):
4043         * css/CSSCalculationValue.h:
4044         * css/CSSCanvasValue.cpp:
4045         (WebCore::CSSCanvasValue::customCSSText):
4046         * css/CSSCanvasValue.h:
4047         * css/CSSCrossfadeValue.cpp:
4048         (WebCore::CSSCrossfadeValue::customCSSText):
4049         * css/CSSCrossfadeValue.h:
4050         * css/CSSCursorImageValue.cpp:
4051         (WebCore::CSSCursorImageValue::customCSSText):
4052         * css/CSSCursorImageValue.h:
4053         * css/CSSFilterImageValue.cpp:
4054         (WebCore::CSSFilterImageValue::customCSSText):
4055         * css/CSSFilterImageValue.h:
4056         * css/CSSFontFaceSrcValue.cpp:
4057         (WebCore::CSSFontFaceSrcValue::customCSSText):
4058         * css/CSSFontFaceSrcValue.h:
4059         * css/CSSFunctionValue.cpp:
4060         (WebCore::CSSFunctionValue::customCSSText):
4061         * css/CSSFunctionValue.h:
4062         * css/CSSGradientValue.cpp:
4063         (WebCore::CSSLinearGradientValue::customCSSText):
4064         (WebCore::CSSRadialGradientValue::customCSSText):
4065         * css/CSSGradientValue.h:
4066         * css/CSSImageSetValue.cpp:
4067         (WebCore::CSSImageSetValue::customCSSText):
4068         * css/CSSImageSetValue.h:
4069         * css/CSSImageValue.cpp:
4070         (WebCore::CSSImageValue::customCSSText):
4071         * css/CSSImageValue.h:
4072         * css/CSSInheritedValue.cpp:
4073         (WebCore::CSSInheritedValue::customCSSText):
4074         * css/CSSInheritedValue.h:
4075         * css/CSSInitialValue.cpp:
4076         (WebCore::CSSInitialValue::customCSSText):
4077         * css/CSSInitialValue.h:
4078         * css/CSSLineBoxContainValue.cpp:
4079         (WebCore::CSSLineBoxContainValue::customCSSText):
4080         * css/CSSLineBoxContainValue.h:
4081         * css/CSSPrimitiveValue.cpp:
4082         (WebCore::CSSPrimitiveValue::customCSSText):
4083         (WebCore::CSSPrimitiveValue::customSerializeResolvingVariables):
4084         * css/CSSPrimitiveValue.h:
4085         * css/CSSReflectValue.cpp:
4086         (WebCore::CSSReflectValue::customCSSText):
4087         * css/CSSReflectValue.h:
4088         * css/CSSTimingFunctionValue.cpp:
4089         (WebCore::CSSLinearTimingFunctionValue::customCSSText):
4090         (WebCore::CSSCubicBezierTimingFunctionValue::customCSSText):
4091         (WebCore::CSSStepsTimingFunctionValue::customCSSText):
4092         * css/CSSTimingFunctionValue.h: