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