Move LineWidth out of RenderBlockLineLayout
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-09-11  Zoltan Horvath  <zoltan@webkit.org>
2
3         Move LineWidth out of RenderBlockLineLayout
4         https://bugs.webkit.org/show_bug.cgi?id=121107
5
6         Reviewed by David Hyatt.
7
8         Move LineWidth class and related code into LineWidth.{h,cpp}.
9
10         No new tests, no behavior change.
11
12         * CMakeLists.txt:
13         * GNUmakefile.list.am:
14         * Target.pri:
15         * WebCore.vcxproj/WebCore.vcxproj:
16         * WebCore.xcodeproj/project.pbxproj:
17         * rendering/LineWidth.cpp: Added.
18         (WebCore::LineWidth::applyOverhang):
19         (WebCore::LineWidth::fitBelowFloats):
20         * rendering/LineWidth.h: Added.
21         (WebCore::logicalHeightForLine):
22         (WebCore::LineWidth::LineWidth):
23         (WebCore::LineWidth::fitsOnLine):
24         (WebCore::LineWidth::fitsOnLineIncludingExtraWidth):
25         (WebCore::LineWidth::fitsOnLineExcludingTrailingWhitespace):
26         (WebCore::LineWidth::currentWidth):
27         (WebCore::LineWidth::uncommittedWidth):
28         (WebCore::LineWidth::committedWidth):
29         (WebCore::LineWidth::availableWidth):
30         (WebCore::LineWidth::addUncommittedWidth):
31         (WebCore::LineWidth::commit):
32         (WebCore::LineWidth::setTrailingWhitespaceWidth):
33         (WebCore::LineWidth::shouldIndentText):
34         (WebCore::LineWidth::computeAvailableWidthFromLeftAndRight):
35         (WebCore::LineWidth::fitsOnLineExcludingTrailingCollapsedWhitespace):
36         (WebCore::LineWidth::updateAvailableWidth):
37         (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded):
38         * rendering/RenderBlockLineLayout.cpp:
39
40 2013-09-11  Ryosuke Niwa  <rniwa@webkit.org>
41
42         HTMLEntityTable could use char to reduce binary size
43         https://bugs.webkit.org/show_bug.cgi?id=121176
44
45         Reviewed by Anders Carlsson.
46
47         Use LChar instead.
48
49         * html/parser/HTMLEntityParser.cpp:
50         (WebCore::HTMLEntityParser::consumeNamedEntity):
51         * html/parser/HTMLEntityTable.h:
52         (WebCore::HTMLEntityTableEntry::lastCharacter):
53         * html/parser/create-html-entity-table:
54
55 2013-09-11  Brent Fulgham  <bfulgham@apple.com>
56
57         [Windows] Revise GDI Create Functions to use GDIObject Smart Pointer.
58         https://bugs.webkit.org/show_bug.cgi?id=121100
59
60         Reviewed by Anders Carlsson.
61
62         * platform/graphics/FontPlatformData.h: Use GDIObject instead of bare pointer.
63         * platform/graphics/win/FontCacheWin.cpp:
64         (WebCore::createGDIFont): No longer need to leak the pointer; use move semantic
65         to pass ownership to FontPlatformData.
66         (WebCore::FontCache::createFontPlatformData):
67         * platform/graphics/win/FontCustomPlatformData.cpp:
68         (WebCore::FontCustomPlatformData::fontPlatformData): Use move operation.
69         * platform/graphics/win/FontCustomPlatformDataCairo.cpp:
70         (WebCore::FontCustomPlatformData::fontPlatformData): Ditto.
71         * platform/graphics/win/FontPlatformDataCGWin.cpp:
72         (WebCore::FontPlatformData::FontPlatformData): Ditto.
73         * platform/graphics/win/FontPlatformDataCairoWin.cpp:
74         (WebCore::FontPlatformData::FontPlatformData): Ditto.
75         * platform/graphics/win/FontPlatformDataWin.cpp:
76         (WebCore::FontPlatformData::FontPlatformData): Ditto.
77         * platform/graphics/win/GlyphPageTreeNodeCairoWin.cpp:
78         (WebCore::GlyphPage::fill): Use HWndDC smart pointer instead of bare HDC.
79         * platform/graphics/win/SimpleFontDataWin.cpp:
80         (WebCore::SimpleFontData::platformCreateScaledFontData): Use move operation.
81         * platform/win/DragImageCGWin.cpp:
82         (WebCore::allocImage): Change to use GDIObject.
83         (WebCore::scaleDragImage): Use smart pointers to avoid manual deallocs.
84         (WebCore::createDragImageFromImage): Ditto.
85         * platform/win/DragImageCairoWin.cpp:
86         (WebCore::allocImage): Change to use GDIObject.
87         (WebCore::scaleDragImage): Use smart pointers to avoid manual deallocs.
88         (WebCore::createDragImageFromImage): Ditto.
89         * platform/win/DragImageWin.cpp:
90         (WebCore::createDragImageForLink): Update for GDIObject.
91         * platform/win/PopupMenuWin.cpp:
92         (WebCore::PopupMenuWin::PopupMenuWin): Switch to GDIObject.
93         (WebCore::PopupMenuWin::~PopupMenuWin): Remove uneeded deallocs.
94         (WebCore::PopupMenuWin::paint): Update for GDIObject.
95         * platform/win/PopupMenuWin.h: Use smart pointers instead of bare GDI objects.
96
97 2013-09-11  Patrick Gansterer  <paroga@webkit.org>
98
99         Fix animations with !USE(ACCELERATED_COMPOSITING) after r147792.
100         https://bugs.webkit.org/show_bug.cgi?id=121159
101
102         Reviewed by Simon Fraser.
103
104         CSSPropertyAnimation::blendProperties() is available always
105         and needs to be called to make the animations work.
106
107         * page/animation/ImplicitAnimation.cpp:
108         (WebCore::ImplicitAnimation::animate):
109         * page/animation/KeyframeAnimation.cpp:
110         (WebCore::KeyframeAnimation::animate):
111
112 2013-09-11  David Hyatt  <hyatt@apple.com>
113
114         Move all collapsing margin code out of RenderBlock and into RenderBlockFlow.
115         https://bugs.webkit.org/show_bug.cgi?id=121049
116
117         Reviewed by Dean Jackson.
118
119         This patch begins the migration of the rare data struct of RenderBlock into
120         RenderBlockFlow. During this process we will temporarily have rare data structs
121         in both places, but ultimately all of the members are going to move down into
122         RenderBlockFlow, and if any don't, they will get forced into a hash.
123         
124         For this patch, the margin information is being shifted out of RenderBlock and into
125         RenderBlockFlow. Any functions that refer to MarginValues or to MarginInfo also got
126         moved down into RenderBlockFlow. Most of block child layout is now in RenderBlockFlow
127         after this patch.
128         
129         Note that in many cases the code didn't simply move. There is some type tightening
130         that happened as well, i.e., places that look for RenderBlock can now look for
131         RenderBlockFlow instead and let RenderBlock execute the base RenderBox functions.
132
133         * rendering/RenderBlock.cpp:
134         (WebCore::RenderBlock::RenderBlock):
135         (WebCore::RenderBlock::setPaginationStrut):
136         (WebCore::RenderBlock::setPageLogicalOffset):
137         (WebCore::RenderBlock::setBreakAtLineToAvoidWidow):
138         * rendering/RenderBlock.h:
139         (WebCore::RenderBlock::setLineGridBox):
140         (WebCore::RenderBlock::setShapeInsideInfo):
141         (WebCore::RenderBlock::RenderBlockRareData::RenderBlockRareData):
142         * rendering/RenderBlockFlow.cpp:
143         (WebCore::RenderBlockFlow::MarginInfo::MarginInfo):
144         (WebCore::RenderBlockFlow::RenderBlockFlow):
145         (WebCore::RenderBlockFlow::layoutBlockChild):
146         (WebCore::RenderBlockFlow::adjustPositionedBlock):
147         (WebCore::RenderBlockFlow::adjustFloatingBlock):
148         (WebCore::RenderBlockFlow::marginValuesForChild):
149         (WebCore::RenderBlockFlow::collapseMargins):
150         (WebCore::RenderBlockFlow::clearFloatsIfNeeded):
151         (WebCore::RenderBlockFlow::marginBeforeEstimateForChild):
152         (WebCore::RenderBlockFlow::estimateLogicalTopPosition):
153         (WebCore::RenderBlockFlow::setCollapsedBottomMargin):
154         (WebCore::RenderBlockFlow::handleAfterSideOfBlock):
155         (WebCore::RenderBlockFlow::setMaxMarginBeforeValues):
156         (WebCore::RenderBlockFlow::setMaxMarginAfterValues):
157         (WebCore::RenderBlockFlow::setMustDiscardMarginBefore):
158         (WebCore::RenderBlockFlow::setMustDiscardMarginAfter):
159         (WebCore::RenderBlockFlow::mustDiscardMarginBefore):
160         (WebCore::RenderBlockFlow::mustDiscardMarginAfter):
161         (WebCore::RenderBlockFlow::mustDiscardMarginBeforeForChild):
162         (WebCore::RenderBlockFlow::mustDiscardMarginAfterForChild):
163         (WebCore::RenderBlockFlow::mustSeparateMarginBeforeForChild):
164         (WebCore::RenderBlockFlow::mustSeparateMarginAfterForChild):
165         (WebCore::inNormalFlow):
166         (WebCore::RenderBlockFlow::applyBeforeBreak):
167         (WebCore::RenderBlockFlow::applyAfterBreak):
168         (WebCore::RenderBlockFlow::adjustBlockChildForPagination):
169         * rendering/RenderBlockFlow.h:
170         (WebCore::RenderBlockFlow::MarginValues::MarginValues):
171         (WebCore::RenderBlockFlow::MarginValues::positiveMarginBefore):
172         (WebCore::RenderBlockFlow::MarginValues::negativeMarginBefore):
173         (WebCore::RenderBlockFlow::MarginValues::positiveMarginAfter):
174         (WebCore::RenderBlockFlow::MarginValues::negativeMarginAfter):
175         (WebCore::RenderBlockFlow::MarginValues::setPositiveMarginBefore):
176         (WebCore::RenderBlockFlow::MarginValues::setNegativeMarginBefore):
177         (WebCore::RenderBlockFlow::MarginValues::setPositiveMarginAfter):
178         (WebCore::RenderBlockFlow::MarginValues::setNegativeMarginAfter):
179         (WebCore::RenderBlockFlow::RenderBlockFlowRareData::RenderBlockFlowRareData):
180         (WebCore::RenderBlockFlow::RenderBlockFlowRareData::positiveMarginBeforeDefault):
181         (WebCore::RenderBlockFlow::RenderBlockFlowRareData::negativeMarginBeforeDefault):
182         (WebCore::RenderBlockFlow::RenderBlockFlowRareData::positiveMarginAfterDefault):
183         (WebCore::RenderBlockFlow::RenderBlockFlowRareData::negativeMarginAfterDefault):
184         (WebCore::RenderBlockFlow::MarginInfo::setAtBeforeSideOfBlock):
185         (WebCore::RenderBlockFlow::MarginInfo::setAtAfterSideOfBlock):
186         (WebCore::RenderBlockFlow::MarginInfo::clearMargin):
187         (WebCore::RenderBlockFlow::MarginInfo::setHasMarginBeforeQuirk):
188         (WebCore::RenderBlockFlow::MarginInfo::setHasMarginAfterQuirk):
189         (WebCore::RenderBlockFlow::MarginInfo::setDeterminedMarginBeforeQuirk):
190         (WebCore::RenderBlockFlow::MarginInfo::setPositiveMargin):
191         (WebCore::RenderBlockFlow::MarginInfo::setNegativeMargin):
192         (WebCore::RenderBlockFlow::MarginInfo::setPositiveMarginIfLarger):
193         (WebCore::RenderBlockFlow::MarginInfo::setNegativeMarginIfLarger):
194         (WebCore::RenderBlockFlow::MarginInfo::setMargin):
195         (WebCore::RenderBlockFlow::MarginInfo::setCanCollapseMarginAfterWithChildren):
196         (WebCore::RenderBlockFlow::MarginInfo::setDiscardMargin):
197         (WebCore::RenderBlockFlow::MarginInfo::atBeforeSideOfBlock):
198         (WebCore::RenderBlockFlow::MarginInfo::canCollapseWithMarginBefore):
199         (WebCore::RenderBlockFlow::MarginInfo::canCollapseWithMarginAfter):
200         (WebCore::RenderBlockFlow::MarginInfo::canCollapseMarginBeforeWithChildren):
201         (WebCore::RenderBlockFlow::MarginInfo::canCollapseMarginAfterWithChildren):
202         (WebCore::RenderBlockFlow::MarginInfo::quirkContainer):
203         (WebCore::RenderBlockFlow::MarginInfo::determinedMarginBeforeQuirk):
204         (WebCore::RenderBlockFlow::MarginInfo::hasMarginBeforeQuirk):
205         (WebCore::RenderBlockFlow::MarginInfo::hasMarginAfterQuirk):
206         (WebCore::RenderBlockFlow::MarginInfo::positiveMargin):
207         (WebCore::RenderBlockFlow::MarginInfo::negativeMargin):
208         (WebCore::RenderBlockFlow::MarginInfo::discardMargin):
209         (WebCore::RenderBlockFlow::MarginInfo::margin):
210         (WebCore::RenderBlockFlow::maxPositiveMarginBefore):
211         (WebCore::RenderBlockFlow::maxNegativeMarginBefore):
212         (WebCore::RenderBlockFlow::maxPositiveMarginAfter):
213         (WebCore::RenderBlockFlow::maxNegativeMarginAfter):
214         (WebCore::RenderBlockFlow::initMaxMarginValues):
215         * rendering/RenderDeprecatedFlexibleBox.cpp:
216         (WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
217         * rendering/RenderTable.cpp:
218         (WebCore::RenderTable::layout):
219
220 2013-09-11  Myles C. Maxfield  <mmaxfield@apple.com>
221
222         Fix nested unicode-bidi: isolate
223         https://bugs.webkit.org/show_bug.cgi?id=120504
224
225         Reviewed by Darin Adler.
226
227         When we have a nested isolate renderer if the outer isolate has a text
228         and this text is not the first child, the isolated chain is not
229         rendered correctly. This happens because constructBidiRunsForSegment
230         uses always the first inner isolated renderer as isolated inline
231         container. This patch fixes the behavior described changing
232         containingIsolate to find the right isolated container.
233
234         Merged from Blink: https://chromium.googlesource.com/chromium/blink/+/840a57050eade39dd04dde0c6603e129b783151c
235
236         Tests: fast/text/international/unicode-bidi-isolate-nested-first-child-text.html
237                fast/text/international/unicode-bidi-isolate-nested-simple.html
238
239         * rendering/InlineIterator.h:
240         (WebCore::containingIsolate):
241         * rendering/RenderBlockLineLayout.cpp:
242         (WebCore::constructBidiRunsForSegment):
243
244 2013-09-11  Alexey Proskuryakov  <ap@apple.com>
245
246         https://bugs.webkit.org/show_bug.cgi?id=121169
247         media/track/track-cue-rendering-vertical.html is flaky on Mac
248
249         Reviewed by Eric Carlson.
250
251         * html/shadow/MediaControlElements.cpp:
252         (WebCore::MediaControlTextTrackContainerElement::updateSizes): Added a FIXME.
253
254 2013-09-11  Anders Carlsson  <andersca@apple.com>
255
256         Stop using deleteAllValues in SVG code
257         https://bugs.webkit.org/show_bug.cgi?id=121172
258
259         Reviewed by Antti Koivisto.
260
261         Use OwnPtr for values instead.
262
263         * rendering/svg/RenderSVGResourceClipper.cpp:
264         (WebCore::RenderSVGResourceClipper::~RenderSVGResourceClipper):
265         (WebCore::RenderSVGResourceClipper::removeAllClientsFromCache):
266         (WebCore::RenderSVGResourceClipper::removeClientFromCache):
267         (WebCore::RenderSVGResourceClipper::applyClippingToContext):
268         * rendering/svg/RenderSVGResourceClipper.h:
269         * rendering/svg/RenderSVGResourceFilter.cpp:
270         (WebCore::RenderSVGResourceFilter::~RenderSVGResourceFilter):
271         (WebCore::RenderSVGResourceFilter::removeAllClientsFromCache):
272         (WebCore::RenderSVGResourceFilter::removeClientFromCache):
273         (WebCore::RenderSVGResourceFilter::applyResource):
274         (WebCore::RenderSVGResourceFilter::postApplyResource):
275         (WebCore::RenderSVGResourceFilter::primitiveAttributeChanged):
276         * rendering/svg/RenderSVGResourceFilter.h:
277         * rendering/svg/RenderSVGResourceMasker.cpp:
278         (WebCore::RenderSVGResourceMasker::~RenderSVGResourceMasker):
279         (WebCore::RenderSVGResourceMasker::removeAllClientsFromCache):
280         (WebCore::RenderSVGResourceMasker::removeClientFromCache):
281         (WebCore::RenderSVGResourceMasker::applyResource):
282         * rendering/svg/RenderSVGResourceMasker.h:
283
284 2013-09-11  Ryosuke Niwa  <rniwa@webkit.org>
285
286         Make the table static const.
287
288         * css/makeprop.pl:
289
290 2013-09-11  Timothy Hatcher  <timothy@apple.com>
291
292         Remove TimelineTraceEventProcessor since no current ports use it
293         https://bugs.webkit.org/show_bug.cgi?id=121171
294
295         Reviewed by Joseph Pecoraro.
296
297         * CMakeLists.txt:
298         * GNUmakefile.list.am:
299         * Target.pri:
300         * WebCore.vcxproj/WebCore.vcxproj:
301         * WebCore.vcxproj/WebCore.vcxproj.filters:
302         * WebCore.xcodeproj/project.pbxproj:
303         * inspector/InspectorAllInOne.cpp:
304         * inspector/InspectorClient.h:
305         * inspector/InspectorInstrumentation.cpp:
306         * inspector/InspectorInstrumentation.h:
307         * inspector/InspectorTimelineAgent.cpp:
308         (WebCore::InspectorTimelineAgent::start):
309         (WebCore::InspectorTimelineAgent::stop):
310         * inspector/InspectorTimelineAgent.h:
311         * inspector/TimelineTraceEventProcessor.cpp: Removed.
312         * inspector/TimelineTraceEventProcessor.h: Removed.
313
314 2013-09-11  Commit Queue  <commit-queue@webkit.org>
315
316         Unreviewed, rolling out r155519.
317         http://trac.webkit.org/changeset/155519
318         https://bugs.webkit.org/show_bug.cgi?id=121174
319
320         Included regression test fails, and an existing test started
321         to crash (Requested by ap on #webkit).
322
323         * dom/Document.cpp:
324         (WebCore::Document::hoveredElementDidDetach):
325         * page/EventHandler.cpp:
326         (WebCore::EventHandler::EventHandler):
327         (WebCore::EventHandler::clear):
328         (WebCore::EventHandler::handleMouseMoveEvent):
329         (WebCore::EventHandler::scheduleHoverStateUpdate):
330         (WebCore::EventHandler::hoverTimerFired):
331         * page/EventHandler.h:
332
333 2013-09-11  Anders Carlsson  <andersca@apple.com>
334
335         Stop using deleteAllValues in SVG code
336         https://bugs.webkit.org/show_bug.cgi?id=121172
337
338         Reviewed by Antti Koivisto.
339
340         Use OwnPtr for values instead.
341
342         * rendering/svg/RenderSVGResourceClipper.cpp:
343         (WebCore::RenderSVGResourceClipper::~RenderSVGResourceClipper):
344         (WebCore::RenderSVGResourceClipper::removeAllClientsFromCache):
345         (WebCore::RenderSVGResourceClipper::removeClientFromCache):
346         (WebCore::RenderSVGResourceClipper::applyClippingToContext):
347         * rendering/svg/RenderSVGResourceClipper.h:
348         * rendering/svg/RenderSVGResourceFilter.cpp:
349         (WebCore::RenderSVGResourceFilter::~RenderSVGResourceFilter):
350         (WebCore::RenderSVGResourceFilter::removeAllClientsFromCache):
351         (WebCore::RenderSVGResourceFilter::removeClientFromCache):
352         (WebCore::RenderSVGResourceFilter::applyResource):
353         (WebCore::RenderSVGResourceFilter::postApplyResource):
354         (WebCore::RenderSVGResourceFilter::primitiveAttributeChanged):
355         * rendering/svg/RenderSVGResourceFilter.h:
356         * rendering/svg/RenderSVGResourceMasker.cpp:
357         (WebCore::RenderSVGResourceMasker::~RenderSVGResourceMasker):
358         (WebCore::RenderSVGResourceMasker::removeAllClientsFromCache):
359         (WebCore::RenderSVGResourceMasker::removeClientFromCache):
360         (WebCore::RenderSVGResourceMasker::applyResource):
361         * rendering/svg/RenderSVGResourceMasker.h:
362
363 2013-09-10  Simon Fraser  <simon.fraser@apple.com>
364
365         REGRESSION (143483): overflow:hidden doesn't quash big repaints from text-indent: -9999px
366         https://bugs.webkit.org/show_bug.cgi?id=121137
367
368         Reviewed by Ryosuke Niwa.
369         
370         The change in r143483 made it so that negative text-indent gets added
371         to visual oveflow even when we have overflow:hidden, which is really bad
372         because it causes large repaints (and large layers) for a common-on-the-web
373         pattern.
374         
375         Revert the change, and add a new test to make sure it doesn't regress.
376         
377         I can't reproduce the bug it was trying to fix with the change reverted.
378
379         Tests: compositing/geometry/negative-text-indent-with-overflow-hidden-layer.html
380                fast/repaint/negative-text-indent-with-overflow-hidden.html
381
382         * rendering/RenderBlock.cpp:
383         (WebCore::RenderBlock::computeOverflow):
384
385 2013-09-10  Simon Fraser  <simon.fraser@apple.com>
386
387         Optionally show visual and layout overflow rects in layer tree dumps
388         https://bugs.webkit.org/show_bug.cgi?id=121135
389
390         Reviewed by Beth Dakin.
391
392         When calling showLayerTree() from the debugger, show overflow rects
393         (visaul and layout) for renderers.
394         
395         Does not affect test output.
396
397         * rendering/RenderLayer.cpp:
398         (showLayerTree): Pass the new flag to show overflow rects.
399         * rendering/RenderTreeAsText.cpp:
400         (WebCore::RenderTreeAsText::writeRenderObject): Print the rects.
401         (WebCore::write): Don't force layout on subframes if the "dont' layout"
402         flag is set.
403         * rendering/RenderTreeAsText.h: New flag.
404
405 2013-09-11  Chris Fleizach  <cfleizach@apple.com>
406
407         AX: WebKit exposes AXTitleUIElement incorrectly on checkboxes and radio buttons
408         https://bugs.webkit.org/show_bug.cgi?id=121039
409
410         Reviewed by Sam Weinig.
411
412         Stop hiding <label> elements for radio buttons and checkboxes (and using the text inside them for the AXTitle).
413         Instead, expose the <label> element as the titleUIElement if appropriate for the input.
414
415         This implies:
416            1) The web will no longer match MacOS behavior exactly (the text and the checkbox control are combined on MacOS into one element)
417            2) But, the user will now be able to explore the <label> element which may include links or other important controls.
418         I think sacrificing 1) here is a good tradeoff. The user will likely never know the difference in terms of output.
419
420         Test: platform/mac/accessibility/label-elements-exposed-as-title-ui-elements.html
421
422         * accessibility/AccessibilityNodeObject.cpp:
423         (WebCore::AccessibilityNodeObject::titleElementText):
424         (WebCore::AccessibilityNodeObject::title):
425         * accessibility/AccessibilityRenderObject.cpp:
426         (WebCore::AccessibilityRenderObject::hasTextAlternative):
427         (WebCore::AccessibilityRenderObject::exposesTitleUIElement):
428
429 2013-09-11  Andreas Kling  <akling@apple.com>
430
431         Remove unnecessary Document::frame() null checks in rendererIsNeeded().
432         <https://webkit.org/b/121166>
433
434         Reviewed by Anders Carlsson.
435
436         rendererIsNeeded() is only called during style resolve, which only happens
437         while there's a Frame present.
438
439         * html/HTMLEmbedElement.cpp:
440         (WebCore::HTMLEmbedElement::rendererIsNeeded):
441         * html/HTMLMediaElement.cpp:
442         (WebCore::HTMLMediaElement::rendererIsNeeded):
443         * html/HTMLObjectElement.cpp:
444         * html/HTMLObjectElement.h:
445
446 2013-09-11  Csaba Osztrogon√°c  <ossy@webkit.org>
447
448         ARM buildfix after r155491
449         https://bugs.webkit.org/show_bug.cgi?id=121152
450
451         Reviewed by Anders Carlsson.
452
453         FELightingNEON.cpp and FELightingNEON.h is inside COMPILER(GCC) guard, so it's safe to use GCC attribute.
454
455         * platform/graphics/cpu/arm/filters/FELightingNEON.cpp: Use __aligned__ GCC attribute directly.
456         * platform/graphics/cpu/arm/filters/FELightingNEON.h: Use __aligned__ GCC attribute instead of ugly template magic.
457         (WebCore::FELighting::platformApplyNeon):
458
459 2013-09-11  peavo@outlook.com  <peavo@outlook.com>
460
461         [WinCairo] Compile errors.
462         https://bugs.webkit.org/show_bug.cgi?id=121153
463
464         Reviewed by Brent Fulgham.
465
466         * page/win/FrameCairoWin.cpp:
467         (WebCore::imageFromRect): Return empty GDIObject.
468         * platform/graphics/win/FontCustomPlatformDataCairo.cpp:
469         (WebCore::FontCustomPlatformData::fontPlatformData): Get actual handle from GDIObject.
470
471 2013-09-11  Darin Adler  <darin@apple.com>
472
473         Rework CSS parser, eliminating "floating" concept and using %destructor
474         https://bugs.webkit.org/show_bug.cgi?id=121161
475
476         Reviewed by Antti Koivisto.
477
478         This is some basic improvement, but there is still room for a lot more
479         consistent approach and formatting in this file. There is a mix of code that
480         works by side effects in the CSSParser class and code that works with the
481         values that bison generates in the union that is more or less random. And
482         the data structures seem too costly, with too much heap allocation. And the
483         CSSParser class has grown massive, with a mix of both function for use by
484         code that wants to trigger parsing, and helper functions called by code in
485         the grammar file. All of that can benefit from more refinement in the future.
486
487         * css/CSSGrammar.y.in: Made some incremental improvements to the structure
488         of the grammar file, including:
489         - Breaking up the %union so types are declared next to their use
490         - Eliminating one shift/reduce conflict caused by two "maybe_space" in a row
491         - Breaking the conditional sections out into their own sections instead of
492           scattering them in with the other code.
493         - Eliminating unused return values in productions such as charset,
494           ignored_charset, namespace, margin_box, invalid_rule, save_block,
495           invalid_at, and declarations_and_margins.
496         - Adding %destructor to productions that return values that need to be deleted
497           or deref'd. This removes the need for CSSParser to separately track these
498           as "floating" to clean up in case of errors.
499         - Removing unneeded productions such as media_feature, region_selector,
500           attr_name, and medium.
501         - Removing explicit code blocks that just say "$$ = $1" or empty blocks when
502           there is no return type, since those are default.
503         - Formatting many productions on single lines since I find them easier to read.
504           Later I think we could make many more CSSParser functions and make even
505           more of the production single lines in the grammar file.
506         - Using adoptPtr, adoptRef, delete, deref, leakPtr, and leakRef to put
507           heap allocated values into and out of the union without storage leaks.
508           
509         * css/CSSParser.cpp:
510         (WebCore::CSSParser::~CSSParser): Remove the now-unneeded deleteAllValues for
511         the various colections of floating things.
512         (WebCore::CSSParser::createFilterRule): Don't put the rule into m_parsedRules,
513         just return a PassRefPtr instead.
514         (WebCore::CSSParser::createImportRule): Ditto.
515         (WebCore::CSSParser::createMediaRule): Ditto.
516         (WebCore::CSSParser::createEmptyMediaRule): Ditto.
517         (WebCore::CSSParser::createSupportsRule): Ditto.
518         (WebCore::CSSParser::createKeyframesRule): Ditto.
519         (WebCore::CSSParser::createStyleRule): Ditto.
520         (WebCore::CSSParser::createFontFaceRule): Ditto.
521         (WebCore::CSSParser::createHostRule): Ditto.
522         (WebCore::CSSParser::rewriteSpecifiersWithNamespaceIfNeeded): Got rid of the
523         unused return value from this function and changed it to to take a reference
524         instead of a pointer.
525         (WebCore::CSSParser::rewriteSpecifiersWithElementName): Ditto.
526         (WebCore::CSSParser::rewriteSpecifiers): Changed this to take and return OwnPtr.
527         (WebCore::CSSParser::createPageRule): Don't put rule into m_parsedRules, return
528         PassRefPtr instead.
529         (WebCore::CSSParser::createSelectorVector): Added. Used to implement the
530         optimization where we recycle a single selector vector. Not sure we still need
531         this, or maybe we need more optimizations like it, but for now keep it.
532         (WebCore::CSSParser::recycleSelectorVector): Ditto.
533         (WebCore::CSSParser::createRegionRule): Don't put rule into m_parsedRules, return
534         PassRefPtr instead.
535         (WebCore::CSSParser::createMarginAtRule): Got rid of unused return value.
536         When this function is implemented for real, we might add a return value.
537         (WebCore::CSSParser::createKeyframe): Don't put keyframe into m_parsedKeyframes,
538         return PassRefPtr instead.
539         (WebCore::CSSParser::createViewportRule): Don't put rule into m_parsedRules, return
540         PassRefPtr instead.
541
542         * css/CSSParser.h: Removed many now-needed functions to manage floating items.
543         Changed rule creation functions to return PassRefPtr. Other changes as mentioned above.
544
545         * css/CSSParserValues.cpp:
546         (WebCore::destroy): Added.
547         (WebCore::CSSParserValueList::~CSSParserValueList): Updated to call destroy.
548         * css/CSSParserValues.h: Ditto.
549
550 2013-09-11  Mario Sanchez Prada  <mario.prada@samsung.com>
551
552         [GTK] Remove Gail dependency from build system for GTK3
553         https://bugs.webkit.org/show_bug.cgi?id=119673
554
555         Reviewed by Gustavo Noronha Silva.
556
557         * GNUmakefile.am: Removed GAIL_CFLAGS.
558         * PlatformGTK.cmake: Removed GAIL3_INCLUDE_DIRS and GAIL3_LIBRARIES.
559
560 2013-09-11  Andreas Kling  <akling@apple.com>
561
562         Remove Widget::widgetPositionsUpdated().
563         <https://webkit.org/b/121160>
564
565         Reviewed by Anders Carlsson.
566
567         Remove this no-op virtual that was only used by chromium.
568
569 2013-09-11  Andreas Kling  <akling@apple.com>
570
571         Page::backForward() should return a reference.
572         <https://webkit.org/b/121151>
573
574         Reviewed by Anders Carlsson.
575
576         There is always a BackForwardController, so make backForward() return a reference.
577         Also made it store a Page& internally since it's tied to the lifetime of Page.
578
579 2013-09-11  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
580
581         WTF::OwnPtr should behave similarly with the rest of WTF smart pointers
582         https://bugs.webkit.org/show_bug.cgi?id=120773
583
584         Reviewed by Anders Carlsson.
585
586         Before the change OwnPtr could take either the pointer type or the pointed-to type, which was bad
587         for the following reasons:
588         - It distinguished OwnPtr behaviour from other WTF smart pointer classes behaviour (so it was confusing for the Client).
589         - It was potential error-prone as it actually modified the type given by the Client in opaque way.
590
591         * page/animation/CSSPropertyAnimation.cpp:
592         (WebCore::PropertyWrapperShadow::blendSimpleOrMatchedShadowLists):
593         (WebCore::PropertyWrapperShadow::blendMismatchedShadowLists):
594
595 2013-09-11  Andreas Kling  <akling@apple.com>
596
597         FrameView: Tighten widget handling code.
598         <https://webkit.org/b/121155>
599
600         Reviewed by Antti Koivisto.
601
602         Harden typing in this code to work with RenderEmbeddedObject& instead of RenderObject*.
603         Functions and members renamed to reflect that they only deal with embedded objects.
604
605         * html/HTMLPlugInImageElement.h:
606         (WebCore::toHTMLPlugInImageElement):
607
608             Add a toHTMLPlugInImageElement that takes an Element&.
609
610         * html/HTMLTagNames.in:
611
612             Generate type helpers for applet and embed elements.
613
614         * page/FrameView.h:
615         * page/FrameView.cpp:
616         (WebCore::FrameView::addEmbeddedObjectToUpdate):
617         (WebCore::FrameView::removeEmbeddedObjectToUpdate):
618         (WebCore::FrameView::updateEmbeddedObjects):
619         (WebCore::FrameView::updateEmbeddedObject):
620
621             Re-ordered this function in early return style. Change locals into references.
622
623         * rendering/RenderEmbeddedObject.cpp:
624         (WebCore::RenderEmbeddedObject::~RenderEmbeddedObject):
625         (WebCore::RenderEmbeddedObject::layout):
626         * rendering/RenderSnapshottedPlugIn.cpp:
627         (WebCore::RenderSnapshottedPlugIn::layout):
628
629             Updated for new FrameView function signatures.
630
631 2013-09-11  Patrick Gansterer  <paroga@webkit.org>
632
633         [CMake] Split out generic Windows files into its own file
634         https://bugs.webkit.org/show_bug.cgi?id=119514
635
636         Reviewed by Gyuyoung Kim.
637
638         This allows us to add smaller CMakeLists.txt files when
639         adding additional Windows ports.
640
641         * PlatformWin.cmake: Copied from Source/WebCore/PlatformWinCE.cmake.
642         * PlatformWinCE.cmake:
643
644 2013-09-11  Mario Sanchez Prada  <mario.prada@samsung.com>
645
646         [GTK] Get rid of Pango/Gail dependencies in accessibility for ATK
647         https://bugs.webkit.org/show_bug.cgi?id=114867
648
649         Reviewed by Martin Robinson.
650
651         Removed all trace of Gail and Pango specific code from the AtkText
652         implementation, now everything has been reimplemented.
653
654         * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
655         (webkitAccessibleTextGetTextForOffset): Removed fallback code
656         relying in Gail/Pango, now all the related code has been
657         removed. Also, replaced the collection of if statements with a
658         switch, for better readability of the code.
659
660 2013-09-11  Allan Sandfeld Jensen  <allan.jensen@digia.com>
661
662         Mouseenter/-leave not triggered when element under cursor is moved/removed
663         https://bugs.webkit.org/show_bug.cgi?id=120786
664
665         Reviewed by Antonio Gomes.
666
667         When a hovered element is detached it will now emit a fake mousemove event
668         similar to what happens when a hovered element has CSS display set to none.
669
670         Test: fast/events/mouseenterleave-detached-element.html
671
672         * dom/Document.cpp:
673         (WebCore::Document::hoveredElementDidDetach):
674         * page/EventHandler.cpp:
675         (WebCore::EventHandler::EventHandler):
676         (WebCore::EventHandler::clear):
677         (WebCore::EventHandler::handleMouseMoveEvent):
678         * page/EventHandler.h:
679
680 2013-09-11  Krzysztof Czech  <k.czech@samsung.com>
681
682         [ATK] Adds mapping MenuItemRadioRole to ATK
683         https://bugs.webkit.org/show_bug.cgi?id=121149
684
685         Reviewed by Mario Sanchez Prada.
686
687         Adds mapping MenuItemRadioRole to ATK.
688
689         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
690         (atkRole):
691
692 2013-09-10  Mario Sanchez Prada  <mario.prada@samsung.com>
693
694         [GTK] Reimplement atk_text_get_text_*_offset for LINE boundaries
695         https://bugs.webkit.org/show_bug.cgi?id=114872
696
697         Reviewed by Gustavo Noronha Silva.
698
699         Re-implement these functions without using GailTextUtil nor Pango.
700
701         * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
702         (lineAtPositionForAtkBoundary): New helper function to find the
703         line at a given position considering values of AtkTextBoundary.
704         (webkitAccessibleTextLineForBoundary): New function,
705         implementing atk_text_get_text_*_offset for LINE.
706         (webkitAccessibleTextGetTextForOffset): Replace usage of Gail for
707         LINE boundaries with webkitAccessibleTextLineForBoundary().
708
709 2013-09-11  Andreas Kling  <akling@apple.com>
710
711         Missed one BackForwardListImpl.h in the last commit.
712
713         * history/BackForwardList.cpp:
714
715 2013-09-11  Andreas Kling  <akling@apple.com>
716
717         Rename BackForwardListImpl.{cpp,h} => BackForwardClient.{cpp,h}
718
719         Rubber-stamped by Antti Koivisto.
720
721 2013-09-10  Ryosuke Niwa  <rniwa@webkit.org>
722
723         CSSProperty::isInheritedProperty is large
724         https://bugs.webkit.org/show_bug.cgi?id=121083
725
726         Reviewed by Sam Weinig.
727
728         Support [Inherited] option in makeprop.pl and generate CSSProperty::isInheritedProperty in CSSPropertyNames.cpp
729         using a lookup table. We can pack the table better by using bitfield in the future but I think boolean lookup
730         table is a good first cut.
731
732         Updated CSSPropertyNames.in and SVGCSSPropertyNames.in to use the new option and removed the old code from
733         CSSProperty.cpp.
734
735         * css/CSSProperty.cpp:
736         * css/CSSPropertyNames.in:
737         * css/SVGCSSPropertyNames.in:
738         * css/makeprop.pl:
739
740 2013-09-11  Andreas Kling  <akling@apple.com>
741
742         Rename BackForwardListImpl => BackForwardList.
743         <https://webkit.org/b/121146>
744
745         Reviewed by Antti Koivisto.
746
747         Nuke another old FIXME.
748
749 2013-09-11  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
750
751         Generate more HTML type checks and casting
752         https://bugs.webkit.org/show_bug.cgi?id=121080
753
754         Reviewed by Andreas Kling.
755
756         Clean-up remained functions of HTML elements using auto-generated isFooElement(),
757         and replace toFooElement() with ELEMENT_TYPE_CASTS() macro.
758
759         Besides this patch clean-up unnecessary checks which are being supported by
760         auto-generated isFooElement().
761
762         No new tests, no behavior change.
763
764         * accessibility/atk/AXObjectCacheAtk.cpp:
765         (WebCore::notifyChildrenSelectionChange):
766         * html/HTMLFrameElementBase.h:
767         (WebCore::toHTMLFrameElementBase):
768         * html/HTMLIFrameElement.h:
769         * html/HTMLImageLoader.cpp:
770         (WebCore::HTMLImageLoader::dispatchLoadEvent):
771         (WebCore::HTMLImageLoader::notifyFinished):
772         * html/HTMLObjectElemenaeh:
773         * html/HTMLOptionsCollection.cpp:
774         (WebCore::HTMLOptionsCollection::HTMLOptionsCollection):
775         * html/HTMLSelectElement.h:
776         * html/HTMLTagNames.in:
777         * html/HTMLVideoElement.h:
778         * html/shadow/HTMLContentElement.h:
779         * loader/ImageLoader.cpp:
780         (WebCore::ImageLoader::dispatchPendingBeforeLoadEvent):
781         * loader/archive/cf/LegacyWebArchive.cpp:
782         (WebCore::LegacyWebArchive::create):
783         * page/PageSerializer.cpp:
784         (WebCore::frameOwnerURLAttributeName):
785         * page/SpatialNavigation.cpp:
786         (WebCore::canScrollInDirection):
787         * platform/gtk/PasteboardGtk.cpp:
788         (WebCore::getURLForImageNode):
789         * plugins/IFrameShimSupport.cpp:
790         (WebCore::getPluginOcclusions):
791         * rendering/HitTestResult.cpp:
792         (WebCore::HitTestResult::mediaSupportsFullscreen):
793         (WebCore::HitTestResult::mediaElement):
794         (WebCore::HitTestResult::enterFullscreenForVideo):
795         (WebCore::HitTestResult::mediaIsVideo):
796
797         * rendering/RenderLayerCompositor.cpp:
798         (WebCore::RenderLayerCompositor::requiresCompositingForVideo):
799         * rendering/RenderListBox.cpp:
800         (WebCore::RenderListBox::RenderListBox):
801         * rendering/RenderMenuList.cpp:
802         (WebCore::RenderMenuList::RenderMenuList):
803         * testing/Internals.cpp:
804         (WebCore::Internals::isSelectPopupVisible):
805
806 2013-09-11  Chris Fleizach  <cfleizach@apple.com>
807
808         AX: Mac platform is not using accessibilityTitle from the Base implementation
809         https://bugs.webkit.org/show_bug.cgi?id=121109
810
811         Reviewed by Sam Weinig.
812
813         Remove the Mac platform overrides of accessibilityTitle, Description, HelpText. 
814         The Base implementation has these and we can share them between iOS and Mac
815
816         * accessibility/mac/WebAccessibilityObjectWrapperBase.mm:
817         (-[WebAccessibilityObjectWrapperBase accessibilityTitle]):
818         (-[WebAccessibilityObjectWrapperBase accessibilityDescription]):
819         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
820
821 2013-09-11  Andreas Kling  <akling@apple.com>
822
823         Rename BackForwardList.h => BackForwardClient.h
824
825         Rubber-stamped by Antti Koivisto.
826
827 2013-09-11  Andreas Kling  <akling@apple.com>
828
829         Rename BackForwardList => BackForwardClient.
830         <https://webkit.org/b/121143>
831
832         Reviewed by Antti Koivisto.
833
834         Nuke a 3 year old FIXME about renaming this class.
835
836 2013-09-10  Daniel Bates  <dabates@apple.com>
837
838         [iOS] Upstream text autosizing
839         https://bugs.webkit.org/show_bug.cgi?id=121111
840
841         Reviewed by Andy Estes and Sam Weinig.
842
843         Tests: platform/iphone-simulator/text-autosizing/anonymous-block.html
844                platform/iphone-simulator/text-autosizing/contenteditable.html
845                platform/iphone-simulator/text-autosizing/first-letter.html
846                platform/iphone-simulator/text-autosizing/font-family-case-insensitive.html
847                platform/iphone-simulator/text-autosizing/lists.html
848                platform/iphone-simulator/text-autosizing/overflow.html
849                platform/iphone-simulator/text-autosizing/percent-adjust-length-line-height.html
850                platform/iphone-simulator/text-autosizing/percent-adjust-number-line-height.html
851                platform/iphone-simulator/text-autosizing/percent-adjust-percent-line-height.html
852
853         * WebCore.exp.in:
854         * WebCore.xcodeproj/project.pbxproj:
855         * css/CSSComputedStyleDeclaration.cpp:
856         (WebCore::ComputedStyleExtractor::propertyValue):
857         * css/CSSParser.cpp:
858         (WebCore::isValidKeywordPropertyAndValue):
859         (WebCore::CSSParser::parseValue):
860         * css/CSSProperty.cpp:
861         (WebCore::CSSProperty::isInheritedProperty):
862         * css/CSSPropertyNames.in: Add property -webkit-text-size-adjust.
863         * css/DeprecatedStyleBuilder.cpp:
864         (WebCore::ApplyPropertyLineHeightForIOSTextAutosizing::applyValue): Added.
865         (WebCore::ApplyPropertyLineHeightForIOSTextAutosizing::applyInitialValue): Added.
866         (WebCore::ApplyPropertyLineHeightForIOSTextAutosizing::applyInheritValue): Added.
867         (WebCore::ApplyPropertyLineHeightForIOSTextAutosizing::createHandler): Added.
868         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
869         * css/StyleResolver.cpp:
870         (WebCore::StyleResolver::updateFont):
871         (WebCore::StyleResolver::applyProperties): Add COMPILE_ASSERT to ensure that
872         all properties that affect font size, including -webkit-text-size-adjust, are
873         resolved before properties that depend on them; see <rdar://problem/13522835>.
874         (WebCore::StyleResolver::applyProperty):
875         (WebCore::StyleResolver::checkForTextSizeAdjust): Added.
876         * css/StyleResolver.h:
877         * dom/Document.cpp:
878         (WebCore::TextAutoSizingTraits::constructDeletedValue): Added.
879         (WebCore::TextAutoSizingTraits::isDeletedValue): Added.
880         (WebCore::Document::detach):
881         (WebCore::Document::addAutoSizingNode): Added.
882         (WebCore::Document::validateAutoSizingNodes): Added.
883         (WebCore::Document::resetAutoSizingNodes): Added.
884         * dom/Document.h:
885         * editing/EditingStyle.cpp:
886         * page/Frame.h: Add declarations for setTextAutosizingWidth(), textAutosizingWidth().
887         * page/FrameView.cpp:
888         (WebCore::FrameView::layout):
889         * page/Settings.in: Generate setter and getter for setting minimumZoomFontSize.
890         * platform/graphics/Font.h:
891         (WebCore::Font::equalForTextAutoSizing): Added.
892         * platform/graphics/FontDescription.cpp:
893         (WebCore::FontDescription::familiesEqualForTextAutoSizing): Added.
894         * platform/graphics/FontDescription.h:
895         (WebCore::FontDescription::equalForTextAutoSizing): Added.
896         * rendering/RenderBlock.cpp:
897         (WebCore::RenderBlock::RenderBlock):
898         (WebCore::isVisibleRenderText): Added.
899         (WebCore::resizeTextPermitted): Added.
900         (WebCore::RenderBlock::immediateLineCount): Added.
901         (WebCore::isNonBlocksOrNonFixedHeightListItems): Added.
902         (WebCore::oneLineTextMultiplier): Added.
903         (WebCore::textMultiplier): Added.
904         (WebCore::RenderBlock::adjustComputedFontSizes): Added.
905         * rendering/RenderBlock.h:
906         (WebCore::RenderBlock::resetComputedFontSize): Added.
907         * rendering/RenderObject.cpp:
908         (WebCore::RenderObject::traverseNext): Added.
909         (WebCore::includeNonFixedHeight): Added.
910         (WebCore::RenderObject::adjustComputedFontSizesOnBlocks): Added.
911         (WebCore::RenderObject::resetTextAutosizing): Added.
912         * rendering/RenderObject.h:
913         * rendering/RenderText.cpp:
914         (WebCore::RenderText::RenderText):
915         * rendering/RenderText.h:
916         (WebCore::RenderText::candidateComputedTextSize): Added.
917         (WebCore::RenderText::setCandidateComputedTextSize): Added.
918         * rendering/style/RenderStyle.cpp:
919         (WebCore::computeFontHash):
920         (WebCore::RenderStyle::hashForTextAutosizing): Added.
921         (WebCore::RenderStyle::equalForTextAutosizing): Added.
922         (WebCore::RenderStyle::changeRequiresLayout):
923         (WebCore::RenderStyle::specifiedLineHeight): Added; iOS-specific variant.
924         We should reconcile this getter with the getter of the same name that is
925         compiled when building with IOS_TEXT_AUTOSIZING disabled.
926         (WebCore::RenderStyle::setSpecifiedLineHeight): Added.
927         * rendering/style/RenderStyle.h:
928         (WebCore::RenderStyle::initialSpecifiedLineHeight): Added.
929         (WebCore::RenderStyle::initialTextSizeAdjust): Added.
930         (WebCore::RenderStyle::setTextSizeAdjust): Added.
931         (WebCore::RenderStyle::textSizeAdjust): Added.
932         * rendering/style/StyleInheritedData.cpp:
933         (WebCore::StyleInheritedData::StyleInheritedData):
934         (WebCore::StyleInheritedData::operator==):
935         * rendering/style/StyleInheritedData.h:
936         * rendering/style/StyleRareInheritedData.cpp:
937         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
938         (WebCore::StyleRareInheritedData::operator==):
939         * rendering/style/StyleRareInheritedData.h:
940         * rendering/style/TextSizeAdjustment.h: Added.
941         (TextSizeAdjustment::TextSizeAdjustment):
942         (TextSizeAdjustment::percentage):
943         (TextSizeAdjustment::multiplier):
944         (TextSizeAdjustment::isAuto):
945         (TextSizeAdjustment::isNone):
946         (TextSizeAdjustment::isPercentage):
947         (TextSizeAdjustment::operator == ):
948         (TextSizeAdjustment::operator != ):
949
950 2013-09-10  Chris Fleizach  <cfleizach@apple.com>
951
952         AX: AXValue/AXMenuItemMarkChar not defined for menuitemradio (should be false (0) with aria-checked=mixed | undefined)
953         https://bugs.webkit.org/show_bug.cgi?id=120372
954
955         Reviewed by Mario Sanchez Prada.
956
957         Add new roles to make the distinction between menu item, menu item radio and menu item checkbox.
958         Expose AXValue for menu items, so that they can convey the, on/off/mixed state of aria-checked.
959
960         Test: platform/mac/accessibility/menu-item-values.html
961
962         * accessibility/AccessibilityNodeObject.cpp:
963         (WebCore::AccessibilityNodeObject::isMenuRelated):
964         (WebCore::AccessibilityNodeObject::isMenuItem):
965         (WebCore::AccessibilityNodeObject::isChecked):
966         (WebCore::AccessibilityNodeObject::actionElement):
967         (WebCore::AccessibilityNodeObject::visibleText):
968         (WebCore::AccessibilityNodeObject::title):
969         * accessibility/AccessibilityObject.cpp:
970         (WebCore::createARIARoleMap):
971         (WebCore::AccessibilityObject::checkboxOrRadioValue):
972         * accessibility/AccessibilityObject.h:
973         * accessibility/AccessibilityRenderObject.cpp:
974         (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
975         * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
976         (-[WebAccessibilityObjectWrapper accessibilityCanFuzzyHitTest]):
977         (-[WebAccessibilityObjectWrapper accessibilityTraits]):
978         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
979         (-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):
980         (createAccessibilityRoleMap):
981         (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
982
983 2013-09-10  Anders Carlsson  <andersca@apple.com>
984
985         Remove wtf/Alignment.h
986         https://bugs.webkit.org/show_bug.cgi?id=121077
987
988         Reviewed by Andreas Kling.
989
990         * platform/PODArena.h:
991         (WebCore::PODArena::minAlignment):
992         * platform/graphics/cpu/arm/filters/FELightingNEON.h:
993         (WebCore::FELighting::platformApplyNeon):
994
995 2013-09-10  Zoltan Horvath  <zoltan@webkit.org>
996
997         [Qt] Add FloatingObjects.h to Target.pri
998         https://bugs.webkit.org/show_bug.cgi?id=121117
999
1000         Reviewed by Andreas Kling.
1001
1002         No new tests, no behavior change.
1003
1004         * Target.pri:
1005
1006 2013-09-10  Sergio Correia  <sergio.correia@openbossa.org>
1007
1008         Fix EFL build after r155477
1009         https://bugs.webkit.org/show_bug.cgi?id=121126
1010
1011         Reviewed by Antonio Gomes.
1012
1013         No new tests, build fix.
1014
1015         * CMakeLists.txt: MediaStreamComponent.cpp and MediaStreamDescriptor.cpp
1016         were added with an incorrect path.
1017
1018 2013-09-10  Andreas Kling  <akling@apple.com>
1019
1020         AnimationController should have a Frame& internally.
1021         <https://webkit.org/b/121078>
1022
1023         Reviewed by Anders Carlsson.
1024
1025         The AnimationController is owned by the Frame so make the back-pointer
1026         a reference. This knocks off a couple of null checks.
1027
1028 2013-09-10  Anders Carlsson  <andersca@apple.com>
1029
1030         More WTF/Alignment.h removal
1031         https://bugs.webkit.org/show_bug.cgi?id=121125
1032
1033         Reviewed by Andreas Kling.
1034
1035         * platform/PODArena.h:
1036
1037 2013-09-10  Eric Carlson  <eric.carlson@apple.com>
1038
1039         Make MediaStream objects ScriptWrappable
1040         https://bugs.webkit.org/show_bug.cgi?id=120879
1041
1042         Reviewed by Jer Noble.
1043
1044         * Modules/mediastream/MediaStream.h: Inherit from ScriptWrappable.
1045         * Modules/mediastream/MediaStreamTrack.h: Ditto.
1046         * Modules/mediastream/RTCDTMFSender.h: Ditto.
1047         * Modules/mediastream/RTCDataChannel.h: Ditto.
1048         * Modules/mediastream/RTCIceCandidate.h: Ditto.
1049         * Modules/mediastream/RTCPeerConnection.h: Ditto.
1050         * Modules/mediastream/RTCSessionDescription.h: Ditto.
1051         * Modules/mediastream/RTCStatsReport.h: Ditto.
1052         * Modules/mediastream/RTCStatsResponse.h: Ditto.
1053
1054 2013-09-10  Eric Carlson  <eric.carlson@apple.com>
1055
1056         Split MediaStreamDescriptor.h and MediaStreamComponent.h into .h and .cpp
1057         https://bugs.webkit.org/show_bug.cgi?id=120878
1058
1059         Reviewed by Jer Noble.
1060
1061         No new tests, no functional change.
1062
1063         * CMakeLists.txt: Add MediaStreamComponent.cpp and MediaStreamDescriptor.cpp.
1064         * GNUmakefile.list.am: Ditto.
1065
1066         * Modules/mediastream/LocalMediaStream.cpp:
1067         (WebCore::LocalMediaStream::create): MediaStreamDescriptor::create() doesn't take a UUID.
1068
1069         * Modules/mediastream/MediaStream.cpp:
1070         (WebCore::createFromSourceVectors): Ditto.
1071
1072         * WebCore.xcodeproj/project.pbxproj: Add MediaStreamComponent.cpp and MediaStreamDescriptor.cpp.
1073
1074         * platform/mediastream/MediaStreamComponent.cpp: Added.
1075         * platform/mediastream/MediaStreamComponent.h:
1076
1077         * platform/mediastream/MediaStreamDescriptor.cpp: Added.
1078         * platform/mediastream/MediaStreamDescriptor.h:
1079
1080 2013-09-10  Brent Fulgham  <bfulgham@apple.com>
1081
1082         [Windows] Create SharedGDIObject Class Template
1083         https://bugs.webkit.org/show_bug.cgi?id=121037
1084
1085         Reviewed by Anders Carlsson.
1086
1087         * WebCore.vcxproj/WebCore.vcxproj: Remove RefCountedGDIHandle.h, and
1088         add new SharedGDIObject.h file.
1089         * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
1090         * platform/graphics/FontPlatformData.h:
1091         (WebCore::FontPlatformData::hfont): Switch to new SharedGDIObject.
1092         * platform/graphics/win/FontPlatformDataCGWin.cpp:
1093         (WebCore::FontPlatformData::FontPlatformData): Ditto.
1094         * platform/graphics/win/FontPlatformDataCairoWin.cpp:
1095         (WebCore::FontPlatformData::FontPlatformData): Ditto.
1096         * platform/graphics/win/FontPlatformDataWin.cpp:
1097         (WebCore::FontPlatformData::FontPlatformData): Ditto.
1098         * platform/graphics/win/RefCountedGDIHandle.h: Removed.
1099         * platform/graphics/win/SharedGDIObject.h: Added.
1100         (WebCore::SharedGDIObject::create):
1101         (WebCore::SharedGDIObject::get):
1102         (WebCore::SharedGDIObject::hash):
1103         (WebCore::SharedGDIObject::SharedGDIObject):
1104
1105 2013-09-10  Tim Horton  <timothy_horton@apple.com>
1106
1107         [mac] PDFDocumentImage should use PDFKit to draw
1108         https://bugs.webkit.org/show_bug.cgi?id=120651
1109         <rdar://problem/12810731>
1110
1111         Unreviewed hopeful build fix.
1112
1113         * platform/graphics/mac/PDFDocumentImageMac.mm:
1114
1115 2013-09-10  Tim Horton  <timothy_horton@apple.com>
1116
1117         [mac] PDFDocumentImage should use PDFKit to draw
1118         https://bugs.webkit.org/show_bug.cgi?id=120651
1119         <rdar://problem/12810731>
1120
1121         Reviewed by Alexey Proskuryakov.
1122
1123         Use PDFKit to draw PDF-in-<img> on Mac, so that annotations in PDF are painted.
1124
1125         Test: fast/images/pdf-as-image-with-annotations.html
1126
1127         * WebCore.xcodeproj/project.pbxproj:
1128         Add PDFDocumentImageMac.mm.
1129
1130         * platform/graphics/cg/PDFDocumentImage.cpp:
1131         (WebCore::PDFDocumentImage::PDFDocumentImage):
1132         We don't need to initialize m_document anymore because it's now a RetainPtr.
1133         Initialize m_hasPage to false.
1134
1135         (WebCore::PDFDocumentImage::~PDFDocumentImage):
1136         We don't need to manually release our CGPDFDocumentRef anymore because it's now a RetainPtr.
1137
1138         (WebCore::PDFDocumentImage::size):
1139         Use expandedIntSize for explicitness.
1140
1141         (WebCore::PDFDocumentImage::applyRotationForPainting):
1142         Rename adjustCTM to applyRotationForPainting, and move the one non-rotation related transformation out.
1143         We need to do this because PDFKit applies the rotation transformation itself, so we don't need to.
1144         Also, explicitly use std::min instead of importing the whole std namespace.
1145
1146         (WebCore::PDFDocumentImage::dataChanged):
1147         Assert that we don't re-enter dataChanged after we've created a document,
1148         because it seems like that shouldn't happen - we only create a document when
1149         we've supposedly received all data, and it would be nice if we didn't have
1150         all this varying code to deal with SharedBuffers changing out from under each other.
1151         Factor the code to create a CGPDFDocumentRef out into createPDFDocument, so we can
1152         replace it with a different implementation that creates a PDFDocument.
1153
1154         (WebCore::PDFDocumentImage::setCurrentPage):
1155         Make all page-number-related things unsigned, since they are in CG and PDFKit,
1156         and add m_hasPage to denote whether we've acquired a valid page yet.
1157         Factor code to retrieve the PDF box bounds into computeBoundsForCurrentPage.
1158         Remove setCurrentPage itself, as we never use a page other than the first page;
1159         we will call computeBoundsForCurrentPage and set hasPage in dataChanged, now.
1160
1161         (WebCore::PDFDocumentImage::draw):
1162         Fix a weird comment.
1163         Factor code that actually draws the PDF out into drawPDFPage.
1164
1165         The rest of the functions in this file are only built for USE(CG) && !PLATFORM(MAC):
1166
1167         (WebCore::PDFDocumentImage::createPDFDocument):
1168         Factored out of dataChanged(). Use the PLATFORM(MAC) way of making a
1169         CGDataProvider from a SharedBuffer everywhere; we're already using it on
1170         iOS, and it should also work for Windows, the only other USE(CG) platform.
1171         Since we only createPDFDocument() after all data has been received, remove
1172         the comment about the SharedBuffer being secretly written to behind its back.
1173
1174         (WebCore::PDFDocumentImage::computeBoundsForCurrentPage):
1175         Factored out of setCurrentPage().
1176         Use deg2rad since we have it.
1177
1178         (WebCore::PDFDocumentImage::pageCount):
1179         (WebCore::PDFDocumentImage::drawPDFPage):
1180         Factored out of draw().
1181         Reduced an unnecessary transform (we were effectively doing mediaBox.origin - cropBox.origin - mediaBox.origin).
1182
1183         * platform/graphics/cg/PDFDocumentImage.h:
1184         Unindent all the things, as we don't indent the first level inside a namespace scope.
1185         Forward-declare PDFDocument.
1186         Make m_currentPage unsigned as it should be.
1187         Add m_hasPage.
1188         Make m_document a PDFDocument on PLATFORM(MAC) and a CGPDFDocumentRef on other platforms.
1189
1190         * platform/graphics/mac/PDFDocumentImageMac.mm: Added.
1191         Soft-link in PDFKit and specifically the PDFDocument class.
1192
1193         (WebCore::PDFDocumentImage::createPDFDocument):
1194         Create our PDFDocument from the SharedBuffer's NSData directly. This shouldn't be a problem
1195         (with respect to the SharedBuffer's data being appended to in secret), because we've waited
1196         for the document to finish loading before getting here.
1197
1198         (WebCore::PDFDocumentImage::computeBoundsForCurrentPage):
1199         Ask PDFKit for the page's media and crop boxes; it automatically performs the correct fallback.
1200         Ask PDFKit for the page's rotation.
1201
1202         (WebCore::PDFDocumentImage::pageCount):
1203         Ask PDFKit for the page count.
1204
1205         (WebCore::PDFDocumentImage::drawPDFPage):
1206         Paint the current page of the PDF. Note that we do not apply the rotation here
1207         via applyRotationForPainting because PDFKit will do it itself.
1208         Save and restore two bits of CG state which aren't saved and restored with the
1209         graphics state, as PDFKit can mutate them above us (<rdar://problem/14951759>).
1210
1211         * platform/mac/SoftLinking.h:
1212         I couldn't find any clients of SOFT_LINK_FRAMEWORK_IN_CORESERVICES_UMBRELLA,
1213         so I made it the more generic SOFT_LINK_FRAMEWORK_IN_UMBRELLA, taking the name
1214         of the umbrella framework and the subframework, so I could use it to soft link
1215         Quartz.framework's PDFKit.framework.
1216
1217 2013-09-10  Tim Horton  <timothy_horton@apple.com>
1218
1219         [mac] <progress> has rendering artifacts along the bottom
1220         https://bugs.webkit.org/show_bug.cgi?id=120865
1221         <rdar://problem/11571240>
1222
1223         Reviewed by Simon Fraser.
1224
1225         Allow RenderTheme to force the height of a <progress> bar.
1226
1227         Test: platform/mac/fast/forms/indeterminate-progress-inline-height.html
1228
1229         * rendering/RenderProgress.cpp:
1230         (WebCore::RenderProgress::computeLogicalHeight):
1231         Borrowed from RenderMeter, allow the theme to override the size of the progress bar.
1232
1233         * rendering/RenderProgress.h:
1234         Drive-by add OVERRIDE to a few things.
1235
1236         * rendering/RenderTheme.cpp:
1237         (WebCore::RenderTheme::progressBarRectForBounds):
1238         * rendering/RenderTheme.h:
1239         Add a default implementation of progressBarRectForBounds that just passes the bounds through.
1240
1241         * rendering/RenderThemeMac.h:
1242         * rendering/RenderThemeMac.mm:
1243         (WebCore::RenderThemeMac::progressBarRectForBounds):
1244         Override progressBarRectForBounds; the implementation is factored out of paintProgressBar.
1245
1246         (WebCore::RenderThemeMac::paintProgressBar):
1247         Make use of the factored-out progressBarRectForBounds().
1248
1249         Drive-by apply the device scale factor to the progress bar's image buffer,
1250         so that it is rendered at 2x on appropriate hardware. Also, multiply the
1251         progress animation phase by the device scale factor, as the phase value seems
1252         to be proportional to the actual pixel offset of the animation; without this,
1253         the animation would appear to progress half as slowly in HiDPI.
1254
1255 2013-09-10  Chris Fleizach  <cfleizach@apple.com>
1256
1257         AX: Expose DOM ID and ClassList to AX APIs for automation and AT element hashes
1258         https://bugs.webkit.org/show_bug.cgi?id=120552
1259
1260         Reviewed by Darin Adler.
1261
1262         Add Mac support for exposing the DOM ID and DOM class list so that accessibility
1263         clients can leverage that information.
1264
1265         Test: platform/mac/accessibility/id-class-attributes.html
1266
1267         * accessibility/AccessibilityObject.cpp:
1268         (WebCore::AccessibilityObject::domIdentifier):
1269         (WebCore::AccessibilityObject::domClassList):
1270         * accessibility/AccessibilityObject.h:
1271         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
1272         (-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):
1273         (convertStringsToNSArray):
1274         (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
1275
1276 2013-09-10  Denis Nomiyama  <d.nomiyama@samsung.com>
1277
1278         [GTK] accessibility/loading-iframe-sends-notification.html is failing
1279         https://bugs.webkit.org/show_bug.cgi?id=98370
1280
1281         Reviewed by Chris Fleizach.
1282
1283         Enabled AXLayoutComplete on the GTK platform.
1284
1285         No new tests are required because this feature will use an existing
1286         accessibility layout test that is currently failing on the GTK+ platform
1287         (e.g. loading-iframe-sends-notification.html).
1288
1289         * accessibility/atk/AXObjectCacheAtk.cpp:
1290         (WebCore::AXObjectCache::postPlatformNotification): Send layout-complete
1291         signal in case of AXLayoutComplete.
1292         * dom/Document.cpp:
1293         (WebCore::Document::implicitClose): Enabled AXLayoutComplete on the GTK
1294         platform.
1295         * page/FrameView.cpp:
1296         (WebCore::FrameView::layout): Enabled AXLayoutComplete on the GTK
1297         platform.
1298
1299 2013-09-09  Brent Fulgham  <bfulgham@apple.com>
1300
1301         [Windows] Change from using OwnPtr<GDI Stuff> to new GDIObject template.
1302         https://bugs.webkit.org/show_bug.cgi?id=120778
1303
1304         Reviewed by Anders Carlsson.
1305
1306         Change code to use a GDI-specific smart pointer, rather than OwnPtr. This
1307         is a first step to simplifying OwnPtr. It also gets rid of some Windows-
1308         specific code in WTF.
1309
1310         * WebCore.vcxproj/WebCore.vcxproj: Add the new header file.
1311         * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
1312         * page/win/FrameCGWin.cpp:
1313         (WebCore::imageFromRect): Switch to GDIObject.
1314         * page/win/FrameCairoWin.cpp:
1315         (WebCore::imageFromRect): Switch to GDIObject.
1316         * page/win/FrameWin.cpp:
1317         (WebCore::imageFromSelection): Switch to GDIObject.
1318         (WebCore::Frame::dragImageForSelection): Ditto.
1319         (WebCore::Frame::nodeImage): Ditto.
1320         * page/win/FrameWin.h:
1321         * platform/graphics/ca/win/CACFLayerTreeHost.cpp:
1322         (WebCore::getDirtyRects): Switch from OwnPtr to GDIObject.
1323         * platform/graphics/win/FontCacheWin.cpp:
1324         (WebCore::createGDIFont): Switch to GDIObject.
1325         (WebCore::FontCache::createFontPlatformData): Ditto.
1326         * platform/graphics/win/FontCustomPlatformData.cpp:
1327         (WebCore::FontCustomPlatformData::fontPlatformData): Switch to GDIObject.
1328         * platform/graphics/win/FontCustomPlatformDataCairo.cpp:
1329         (WebCore::FontCustomPlatformData::fontPlatformData): Switch to GDIObject.
1330         * platform/graphics/win/GraphicsContextCGWin.cpp:
1331         (WebCore::GraphicsContext::releaseWindowsContext): Switch to GDIObject.
1332         * platform/graphics/win/GraphicsContextCairoWin.cpp:
1333         (WebCore::GraphicsContext::releaseWindowsContext): Switch to GDIObject.
1334         * platform/graphics/win/GraphicsContextWin.cpp:
1335         (WebCore::GraphicsContext::getWindowsContext): Switch to GDIObject.
1336         * platform/graphics/win/SimpleFontDataWin.cpp:
1337         (WebCore::SimpleFontData::platformCreateScaledFontData): Switch to GDIObject.
1338         * platform/win/CursorWin.cpp:
1339         (WebCore::createSharedCursor): Switch to GDIObject.
1340         * platform/win/DragImageCGWin.cpp:
1341         (WebCore::scaleDragImage): Switch to GDIObject.
1342         (WebCore::createDragImageFromImage):
1343         * platform/win/DragImageCairoWin.cpp: 
1344         (WebCore::scaleDragImage): Switch to GDIObject.
1345         (WebCore::createDragImageFromImage): Ditto.
1346         * platform/win/DragImageWin.cpp:
1347         (WebCore::createDragImageForLink): Switch to GDIObject.
1348         * platform/win/PasteboardWin.cpp:
1349         (WebCore::Pasteboard::writeImage): Switch to GDIObject.
1350         * platform/win/ScrollbarThemeWin.cpp:
1351         (WebCore::ScrollbarThemeWin::paintTrackPiece): Switch to GDIObject.
1352         * plugins/win/PluginViewWin.cpp:
1353         (WebCore::PluginView::updatePluginWidget): Switch to GDIObject.
1354         (WebCore::PluginView::snapshot): Ditto.
1355         * rendering/RenderThemeWin.cpp:
1356         (WebCore::drawControl): Switch to GDIObject.
1357
1358 2013-09-10  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1359
1360         REGRESSION (r147454): Youtube annotation links to new window broken
1361         https://bugs.webkit.org/show_bug.cgi?id=114242
1362
1363         Reviewed by Anders Carlsson.
1364
1365         Set the UserGestureIndicator to allow popups the same way the issue was solved for WebKit2.
1366
1367         * plugins/PluginView.cpp:
1368         (WebCore::PluginView::performRequest):
1369
1370 2013-09-10  Alberto Garcia  <berto@igalia.com>
1371
1372         [GTK] The code generator produces a warning if a parameter can be NULL
1373         https://bugs.webkit.org/show_bug.cgi?id=121093
1374
1375         Reviewed by Christophe Dumez.
1376
1377         Return an empty string instead of an undefined value if a
1378         particular parameter doesn't need to be checked.
1379
1380         * bindings/scripts/CodeGeneratorGObject.pm:
1381         (GetGReturnMacro):
1382
1383 2013-09-10  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
1384
1385         MediaStream API: Enhance MediaStreamDescriptor add/remove component
1386         https://bugs.webkit.org/show_bug.cgi?id=120874
1387
1388         Merge blink https://chromium.googlesource.com/chromium/blink/+/67fcacf13ce922a762d7a1c6fb9e1b8e51e662ea
1389
1390         Reviewed by Eric Carlson.
1391
1392         No new tests needed.
1393
1394         * Modules/mediastream/MediaStream.cpp:
1395         (WebCore::MediaStream::addTrack):
1396         (WebCore::MediaStream::removeTrack):
1397         (WebCore::MediaStream::addRemoteTrack):
1398         (WebCore::MediaStream::removeRemoteTrack):
1399         * platform/mediastream/MediaStreamDescriptor.h:
1400         (WebCore::MediaStreamDescriptor::addRemoteTrack):
1401         (WebCore::MediaStreamDescriptor::removeRemoteTrack):
1402         (WebCore::MediaStreamDescriptor::addComponent):
1403         (WebCore::MediaStreamDescriptor::removeComponent):
1404
1405 2013-09-10  Andreas Kling  <akling@apple.com>
1406
1407         toFooElement() should use static_cast, not reinterpret_cast.
1408         <https://webkit.org/b/121087>
1409
1410         Reviewed by Antti Koivisto.
1411
1412         reinterpret_cast is not safe for downcasting with multiple inheritance.
1413         Add a ELEMENT_TYPE_CASTS(classname) macro that goes after class definitions.
1414         It expands into the following methods:
1415
1416             - FooElement* toFooElement(Node*)
1417             - const FooElement* toFooElement(const Node*)
1418             - FooElement& toFooElement(Node&)
1419             - const FooElement& toFooElement(const Node&)
1420
1421         As a bonus, it also adds these to catch unnecessary casting:
1422
1423             - void toFooElement(const Node*)
1424             - void toFooElement(const Node&)
1425
1426         There might be a more clever way of doing this, but this gets us to a
1427         correct place so we can think in peace.
1428
1429         * bridge/qt/qt_pixmapruntime.cpp:
1430         (JSC::Bindings::assignToHTMLImageElement):
1431         (JSC::Bindings::QtPixmapRuntime::toQt):
1432         * dom/Element.h:
1433         (WebCore::isElement):
1434         * dom/make_names.pl:
1435         (printTypeHelpers):
1436         * html/HTMLAnchorElement.h:
1437         * html/HTMLAreaElement.h:
1438         * html/HTMLAudioElement.h:
1439         * html/HTMLBaseElement.h:
1440         * html/HTMLCanvasElement.h:
1441         * html/HTMLElement.h:
1442         (WebCore::isHTMLElement):
1443         * html/HTMLFieldSetElement.h:
1444         * html/HTMLFormElement.h:
1445         * html/HTMLFrameSetElement.h:
1446         * html/HTMLImageElement.h:
1447         * html/HTMLInputElement.h:
1448         * html/HTMLLabelElement.h:
1449         * html/HTMLLegendElement.h:
1450         * html/HTMLMapElement.h:
1451         * html/HTMLMeterElement.h:
1452         * html/HTMLOptGroupElement.h:
1453         * html/HTMLOptionElement.h:
1454         * html/HTMLParamElement.h:
1455         * html/HTMLProgressElement.h:
1456         * html/HTMLScriptElement.h:
1457         * html/HTMLSourceElement.h:
1458         * html/HTMLStyleElement.h:
1459         * html/HTMLTableElement.h:
1460         * html/HTMLTableRowElement.h:
1461         * html/HTMLTextAreaElement.h:
1462         * html/HTMLTitleElement.h:
1463         * html/HTMLTrackElement.h:
1464         * svg/SVGAltGlyphDefElement.h:
1465         * svg/SVGAltGlyphElement.h:
1466         * svg/SVGAltGlyphItemElement.h:
1467         * svg/SVGAnimateMotionElement.h:
1468         * svg/SVGAnimateTransformElement.h:
1469         * svg/SVGCircleElement.h:
1470         * svg/SVGClipPathElement.h:
1471         * svg/SVGCursorElement.h:
1472         * svg/SVGEllipseElement.h:
1473         * svg/SVGFEDistantLightElement.h:
1474         * svg/SVGFEFuncAElement.h:
1475         * svg/SVGFEFuncBElement.h:
1476         * svg/SVGFEFuncGElement.h:
1477         * svg/SVGFEFuncRElement.h:
1478         * svg/SVGFEMergeNodeElement.h:
1479         * svg/SVGFEPointLightElement.h:
1480         * svg/SVGFESpotLightElement.h:
1481         * svg/SVGFilterElement.h:
1482         * svg/SVGFontElement.h:
1483         * svg/SVGFontFaceElement.h:
1484         * svg/SVGFontFaceNameElement.h:
1485         * svg/SVGFontFaceSrcElement.h:
1486         * svg/SVGFontFaceUriElement.h:
1487         * svg/SVGForeignObjectElement.h:
1488         * svg/SVGGlyphElement.h:
1489         * svg/SVGGlyphRefElement.h:
1490         * svg/SVGHKernElement.h:
1491         * svg/SVGImageElement.h:
1492         * svg/SVGLineElement.h:
1493         * svg/SVGLinearGradientElement.h:
1494         * svg/SVGMPathElement.h:
1495         * svg/SVGMarkerElement.h:
1496         * svg/SVGMaskElement.h:
1497         * svg/SVGMissingGlyphElement.h:
1498         * svg/SVGPathElement.h:
1499         * svg/SVGPatternElement.h:
1500         * svg/SVGRadialGradientElement.h:
1501         * svg/SVGRectElement.h:
1502         * svg/SVGSVGElement.h:
1503         * svg/SVGScriptElement.h:
1504         * svg/SVGStyleElement.h:
1505         * svg/SVGTextElement.h:
1506         * svg/SVGTextPathElement.h:
1507         * svg/SVGTitleElement.h:
1508         * svg/SVGUseElement.h:
1509         * svg/SVGVKernElement.h:
1510         * svg/SVGViewElement.h:
1511
1512 2013-09-10  Mario Sanchez Prada  <mario.prada@samsung.com>
1513
1514         [GTK] Test /webkit/atk/getTextInParagraphAndBodyModerate fails
1515         https://bugs.webkit.org/show_bug.cgi?id=105538
1516
1517         Reviewed by Chris Fleizach.
1518
1519         Expose '\n' for linebreaks when they were explicitly set by the
1520         author of the web content with a <br> tag.
1521
1522         Tests: accessibility/paragraph-with-linebreaks.html
1523
1524         * accessibility/AccessibilityNodeObject.cpp:
1525         (WebCore::shouldAddSpaceBeforeAppendingNextElement): Helper
1526         function to decide when to append spaces when building the text
1527         under an element, considering line breaks.
1528         (WebCore::AccessibilityNodeObject::textUnderElement): Use the
1529         shouldAddSpaceBeforeAppendingNextElement() function here.
1530         * accessibility/AccessibilityRenderObject.cpp:
1531         (WebCore::AccessibilityRenderObject::textUnderElement): Return the
1532         renderer's text for accessibility objects exposing <br> elements.
1533         * html/parser/HTMLParserIdioms.h:
1534         (WebCore::isHTMLSpaceButNotLineBreak): New helper function, useful
1535         to be passed to other functions like simplifyWhiteSpace().
1536
1537 2013-09-10  Arpita Bahuguna  <a.bah@samsung.com>
1538
1539         When deleting editable content, typing style should be reset when moving into another node.
1540         https://bugs.webkit.org/show_bug.cgi?id=120726
1541
1542         Reviewed by Ryosuke Niwa.
1543
1544         When moving from one text node to the other, while deleting characters,
1545         the deleted text node's style was being applied to any new characters
1546         added into the existing text node.
1547
1548         Typing Style in the frame selection maintains the editing style for the
1549         deleted text node, so that if new characters are inserted at the position
1550         of the deleted text node, it's style can be applied to them.
1551
1552         However, when moving into another text node, we should reset or clear the
1553         typing style maintained by the frame selection. This ensures that any new
1554         content inserted within the existing node does not take on any uncleared
1555         style of the deleted node.
1556
1557         Test: editing/deleting/maintain-style-after-delete.html
1558
1559         * editing/DeleteSelectionCommand.cpp:
1560         (WebCore::DeleteSelectionCommand::saveTypingStyleState):
1561         Calling clearTypingStyle() on frame selection whenever deletion occurs
1562         within the same text node. Thus any existing typing styleh held by the
1563         frame selection shall be cleared.
1564
1565 2013-09-09  Darin Adler  <darin@apple.com>
1566
1567         Some refinements in FrameView::layout
1568         https://bugs.webkit.org/show_bug.cgi?id=121076
1569
1570         Reviewed by Andreas Kling.
1571
1572         * page/FrameView.cpp:
1573         (WebCore::FrameView::layout): Use a reference for the document in
1574         this function since code assumes it's non-null anyway. Change code to
1575         only call styleResolverIfExists once. Rewrite comments about blocks
1576         and the scopes they create for better clarity. Make m_nestedLayoutCount
1577         easier to read. Use HTMLElement* for the pointer to the body element.
1578         Moved the call to calculateScrollbarModesForLayout in so we don't
1579         waste time doing it for subtree layouts. Get rid of the unhelpful
1580         currentHMode and currentVMode local variables. Get rid of an extra
1581         block scope we did not need.
1582
1583 2013-09-09  Santosh Mahto  <santosh.ma@samsung.com>
1584
1585         Adding "explicit" keyword in DOM related classes constructor
1586         https://bugs.webkit.org/show_bug.cgi?id=121031
1587
1588         Reviewed by Ryosuke Niwa.
1589
1590         Added the explicit keyword in constructors.
1591
1592         * dom/ActiveDOMObject.h:
1593         * dom/ContainerNode.h:
1594         * dom/DocumentStyleSheetCollection.h:
1595         * dom/ElementAncestorIterator.h:
1596         * dom/ElementData.h:
1597         * dom/ElementRareData.h:
1598         * dom/EventListenerMap.h:
1599         * dom/QualifiedName.h:
1600         (WebCore::QualifiedName::QualifiedName):
1601         * dom/TreeScope.h:
1602         * dom/ViewportArguments.h:
1603         (WebCore::ViewportArguments::ViewportArguments):
1604         * dom/VisitedLinkState.h:
1605
1606 2013-09-09  Andreas Kling  <akling@apple.com>
1607
1608         Remove unreviewed gunk I just accidentally committed :|
1609
1610 2013-09-09  Andreas Kling  <akling@apple.com>
1611
1612         HTMLTextAreaElement no longer needs custom style resolve callbacks.
1613         <https://webkit.org/b/121073>
1614
1615         Reviewed by Ryosuke Niwa.
1616
1617         After r155408 HTMLTextAreaElement doesn't override didAttachRenderer() anymore,
1618         so we don't need to fire callbacks on textarea elements during style resolve.
1619
1620         * html/HTMLTextAreaElement.cpp:
1621         (WebCore::HTMLTextAreaElement::HTMLTextAreaElement):
1622
1623 2013-09-09  Andreas Kling  <akling@apple.com>
1624
1625         ScriptController should have a Frame& internally.
1626         <https://webkit.org/b/121071>
1627
1628         Reviewed by Anders Carlsson.
1629
1630         Change ScriptController::m_frame to a reference since it's tied to
1631         the lifetime of the owning Frame.
1632
1633 2013-09-09  Andreas Kling  <akling@apple.com>
1634
1635         ScriptRunner should have a Document& internally.
1636         <https://webkit.org/b/121072>
1637
1638         Reviewed by Anders Carlsson.
1639
1640         Change ScriptRunner::m_document to a reference since it's tied to
1641         the lifetime of the Document.
1642
1643 2013-09-09  Andreas Kling  <akling@apple.com>
1644
1645         Ref-ify more stack guards.
1646         <https://webkit.org/b/121070>
1647
1648         Rubber-stamped by Anders Carlsson.
1649
1650         RefPtr<Foo> protect(this) => Ref<Foo> protect(*this).
1651
1652 2013-09-09  Andreas Kling  <akling@apple.com>
1653
1654         Generate more SVG type checks and conversions.
1655         <https://webkit.org/b/121066>
1656
1657         Reviewed by Anders Carlsson.
1658
1659         Switch another slew of SVG elements to auto-generated isFooElement()
1660         and toFooElement() helpers.
1661
1662         Removed now-unnecessary casts and assertions as appropriate.
1663         Converted some simple loops to childrenOfType iteration instead of
1664         traversing child Nodes.
1665
1666         PS. This patch also adds const versions of toFooElement().
1667
1668 2013-09-09  Dean Jackson  <dino@apple.com>
1669
1670         [WebGL] Allow multithreaded OpenGL contexts
1671         https://bugs.webkit.org/show_bug.cgi?id=121062
1672
1673         Reviewed by Simon Fraser.
1674
1675         Expose a new preference "multithreadedWebGLEnabled".
1676
1677         Also examine the value of that preference and, on Mac,
1678         tell the CGLContext that it should go to multithreaded mode.
1679
1680         * html/canvas/WebGLRenderingContext.cpp:
1681         (WebCore::WebGLRenderingContext::create): Look at the value of the new setting, and
1682         toggle a flag on the context attributes.
1683         * page/Settings.in: New Setting "multithreadedWebGLEnabled".
1684         * platform/graphics/GraphicsContext3D.h:
1685         (WebCore::GraphicsContext3D::Attributes::Attributes): Add a "multithreaded" flag.
1686         * platform/graphics/mac/GraphicsContext3DMac.mm:
1687         (WebCore::GraphicsContext3D::GraphicsContext3D): If the context attributes
1688         suggest we should, tell the OpenGL context to go into multithreaded mode.
1689
1690 2013-09-09  Ryosuke Niwa  <rniwa@webkit.org>
1691
1692         Remove HTMLTextFormControl::fixPlaceholderRenderer
1693         https://bugs.webkit.org/show_bug.cgi?id=121058
1694
1695         Reviewed by Kent Tamura.
1696
1697         HTMLTextFormControl::fixPlaceholderRenderer was added in r118733 to swap the order in which placeholder appears.
1698         Namely, when a text form control element is focused, placeholder should be rendered behind the text for the caret
1699         to render on top of, not behind, the placeholder text.  However, we can achieve the same effect by changing
1700         the order of elements in the shadow DOM instead of manually manipuating the render tree as the assertion failure
1701         mentioned in the change log is a bogus one.
1702
1703         Cleaned up the code by removing HTMLTextFormControl::fixPlaceholderRenderer and changed the order in which inner
1704         text element and placeholder element appear. Also fixed the assertion in Position's constructor.
1705
1706         * dom/Position.cpp:
1707         (WebCore::Position::Position): The original assertion was bogus. What we don't want have is for a Position to be
1708         before or after a shadow root. It's fine for it be anchroed against the shadow root as long as it's inside.
1709
1710         * html/HTMLTextAreaElement.cpp:
1711         (WebCore::HTMLTextAreaElement::updatePlaceholderText): Insert the placeholder before the inner text element.
1712         * html/HTMLTextAreaElement.h:
1713         * html/HTMLTextFormControlElement.cpp:
1714         * html/HTMLTextFormControlElement.h:
1715         * html/TextFieldInputType.cpp:
1716         (WebCore::TextFieldInputType::updatePlaceholderText): Ditto.
1717         * html/TextFieldInputType.h:
1718
1719 2013-09-09  Andreas Kling  <akling@apple.com>
1720
1721         Hide node() below RenderSVGModelObject, use element() instead.
1722         <https://webkit.org/b/121051>
1723
1724         Reviewed by Darin Adler.
1725
1726         This was almost already there, just delete node() and add an element() that returns a SVGElement*.
1727         The SVG render tree is crazy casual about compile-time types, this is only scratching the surface.
1728
1729 2013-09-09  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
1730
1731         Fixing EFL build
1732         https://bugs.webkit.org/show_bug.cgi?id=121048
1733
1734         Reviewed by Darin Adler.
1735
1736         No new tests needed.
1737
1738         * platform/efl/RenderThemeEfl.cpp:
1739         (WebCore::RenderThemeEfl::applyEdjeRTLState):
1740
1741 2013-09-09  Bem Jones-Bey  <bjonesbe@adobe.com>
1742
1743         Move Floats out of RenderBlock
1744         https://bugs.webkit.org/show_bug.cgi?id=120779
1745
1746         Reviewed by Alexandru Chiculita.
1747
1748         Move FloatingObject, FloatingObjects and related code into
1749         FloatingObjects.{h,cpp}. This not only makes the code more readable
1750         and maintainable, it also will allow for more decoupling of
1751         RenderBlock and the FloatingObjects, hopefully making it possible for
1752         FloatingObjects to be more central and not need to have one for each
1753         RenderBlock that is affected by floats.
1754
1755         No new tests, no behavior change.
1756
1757         * CMakeLists.txt:
1758         * GNUmakefile.list.am:
1759         * Target.pri:
1760         * WebCore.vcxproj/WebCore.vcxproj:
1761         * WebCore.xcodeproj/project.pbxproj:
1762         * rendering/FloatingObjects.cpp: Added.
1763         (WebCore::ComputeFloatOffsetAdapter::ComputeFloatOffsetAdapter):
1764         (WebCore::ComputeFloatOffsetAdapter::lowValue):
1765         (WebCore::ComputeFloatOffsetAdapter::highValue):
1766         (WebCore::ComputeFloatOffsetAdapter::outermostFloat):
1767         (WebCore::FloatingObjects::FloatingObjects):
1768         (WebCore::FloatingObjects::~FloatingObjects):
1769         (WebCore::FloatingObjects::clearLineBoxTreePointers):
1770         (WebCore::FloatingObjects::clear):
1771         (WebCore::FloatingObjects::increaseObjectsCount):
1772         (WebCore::FloatingObjects::decreaseObjectsCount):
1773         (WebCore::FloatingObjects::intervalForFloatingObject):
1774         (WebCore::FloatingObjects::addPlacedObject):
1775         (WebCore::FloatingObjects::removePlacedObject):
1776         (WebCore::FloatingObjects::add):
1777         (WebCore::FloatingObjects::remove):
1778         (WebCore::FloatingObjects::computePlacedFloatsTree):
1779         (WebCore::FloatingObjects::logicalLeftOffset):
1780         (WebCore::FloatingObjects::logicalRightOffset):
1781         (WebCore::rangesIntersect):
1782         (WebCore::::updateOffsetIfNeeded):
1783         (WebCore::::collectIfNeeded):
1784         (WebCore::::getHeightRemaining):
1785         (WebCore::::string):
1786         * rendering/FloatingObjects.h: Added.
1787         (WebCore::FloatingObject::FloatingObject):
1788         (WebCore::FloatingObject::clone):
1789         (WebCore::FloatingObject::type):
1790         (WebCore::FloatingObject::renderer):
1791         (WebCore::FloatingObject::isPlaced):
1792         (WebCore::FloatingObject::setIsPlaced):
1793         (WebCore::FloatingObject::x):
1794         (WebCore::FloatingObject::maxX):
1795         (WebCore::FloatingObject::y):
1796         (WebCore::FloatingObject::maxY):
1797         (WebCore::FloatingObject::width):
1798         (WebCore::FloatingObject::height):
1799         (WebCore::FloatingObject::setX):
1800         (WebCore::FloatingObject::setY):
1801         (WebCore::FloatingObject::setWidth):
1802         (WebCore::FloatingObject::setHeight):
1803         (WebCore::FloatingObject::frameRect):
1804         (WebCore::FloatingObject::setFrameRect):
1805         (WebCore::FloatingObject::paginationStrut):
1806         (WebCore::FloatingObject::setPaginationStrut):
1807         (WebCore::FloatingObject::isInPlacedTree):
1808         (WebCore::FloatingObject::setIsInPlacedTree):
1809         (WebCore::FloatingObject::shouldPaint):
1810         (WebCore::FloatingObject::setShouldPaint):
1811         (WebCore::FloatingObject::isDescendant):
1812         (WebCore::FloatingObject::setIsDescendant):
1813         (WebCore::FloatingObject::setRenderer):
1814         (WebCore::FloatingObject::originatingLine):
1815         (WebCore::FloatingObject::setOriginatingLine):
1816         (WebCore::FloatingObject::logicalTop):
1817         (WebCore::FloatingObject::logicalBottom):
1818         (WebCore::FloatingObject::logicalLeft):
1819         (WebCore::FloatingObject::logicalRight):
1820         (WebCore::FloatingObject::logicalWidth):
1821         (WebCore::FloatingObject::pixelSnappedLogicalTop):
1822         (WebCore::FloatingObject::pixelSnappedLogicalBottom):
1823         (WebCore::FloatingObject::pixelSnappedLogicalLeft):
1824         (WebCore::FloatingObject::pixelSnappedLogicalRight):
1825         (WebCore::FloatingObject::setLogicalTop):
1826         (WebCore::FloatingObject::setLogicalLeft):
1827         (WebCore::FloatingObject::setLogicalHeight):
1828         (WebCore::FloatingObject::setLogicalWidth):
1829         (WebCore::FloatingObjectHashFunctions::hash):
1830         (WebCore::FloatingObjectHashFunctions::equal):
1831         (WebCore::FloatingObjectHashTranslator::hash):
1832         (WebCore::FloatingObjectHashTranslator::equal):
1833         (WebCore::FloatingObjects::setHorizontalWritingMode):
1834         (WebCore::FloatingObjects::hasLeftObjects):
1835         (WebCore::FloatingObjects::hasRightObjects):
1836         (WebCore::FloatingObjects::set):
1837         (WebCore::FloatingObjects::placedFloatsTree):
1838         * rendering/RenderBlock.cpp:
1839         (WebCore::RenderBlock::RenderBlock):
1840         (WebCore::RenderBlock::insertFloatingObject):
1841         * rendering/RenderBlock.h:
1842         * rendering/RenderBlockLineLayout.cpp:
1843         (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded):
1844         (WebCore::LineLayoutState::lastFloat):
1845         (WebCore::LineLayoutState::setLastFloat):
1846         * rendering/RenderView.cpp:
1847         (WebCore::RenderView::intervalArena):
1848
1849 2013-09-09  David Hyatt  <hyatt@apple.com>
1850
1851         REGRESSION (r155377): Convert the media elements that were RenderBlocks to RenderBlockFlows
1852         https://bugs.webkit.org/show_bug.cgi?id=121052
1853
1854         Reviewed by Anders Carlsson.
1855
1856         Convert a couple of media renderers that I missed from RenderBlock to RenderBlockFlow.
1857         The previous patch that I landed added asserts that get triggered now when this
1858         situation occurs.
1859
1860         * rendering/RenderMediaControlElements.cpp:
1861         (WebCore::RenderMediaVolumeSliderContainer::RenderMediaVolumeSliderContainer):
1862         (WebCore::RenderMediaVolumeSliderContainer::layout):
1863         (WebCore::RenderTextTrackContainerElement::RenderTextTrackContainerElement):
1864         (WebCore::RenderTextTrackContainerElement::layout):
1865         * rendering/RenderMediaControlElements.h:
1866
1867 2013-09-09  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
1868
1869         [Bug Fix] Calling m_audioComponents.remove in removeAudioComponent (MediaStreamDescriptor)
1870         https://bugs.webkit.org/show_bug.cgi?id=121034
1871
1872         Reviewed by Eric Carlson.
1873
1874         No new tests needed.
1875
1876         * platform/mediastream/MediaStreamDescriptor.h:
1877         (WebCore::MediaStreamDescriptor::removeAudioComponent):
1878
1879 2013-09-09  Anders Carlsson  <andersca@apple.com>
1880
1881         Stop using WTF type traits in WebCore
1882         https://bugs.webkit.org/show_bug.cgi?id=121042
1883
1884         Reviewed by Andreas Kling.
1885
1886         Replace uses of WTF type traits in CrossThreadCopier with a simpler solution
1887         that uses std::is_convertible_to and some helpers.
1888
1889         * dom/CrossThreadTask.h:
1890         * platform/CrossThreadCopier.h:
1891         * platform/MainThreadTask.h:
1892
1893 2013-09-06  Ryosuke Niwa  <rniwa@webkit.org>
1894
1895         Internals should always cause a layout before calling into TextIterator
1896         https://bugs.webkit.org/show_bug.cgi?id=120891
1897
1898         Reviewed by Antti Koivisto.
1899
1900         Inspired by https://chromium.googlesource.com/chromium/blink/+/5fee5da7b04a710171c79bd6e87eca3533188e45.
1901
1902         Force a layout in the constructors of TextIterator, and SimplifiedBackwardsTextIterator and remove
1903         superfluous calls to updateLayout() in other places.
1904
1905         As much as I hate for a constructor to have a side effect like this, I couldn't think of a better place
1906         to update the layout. Unfortunately, we're slowly moving away from manually createing TextIterator and
1907         wrapping them in a static function.
1908
1909         * editing/TextIterator.cpp:
1910         (WebCore::TextIterator::TextIterator):
1911         (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator):
1912         (WebCore::TextIterator::rangeFromLocationAndLength):
1913         (WebCore::findPlainText):
1914
1915 2013-09-09  David Hyatt  <hyatt@apple.com>
1916
1917         Move layoutBlock and layoutBlockChildren into RenderBlockFlow
1918         https://bugs.webkit.org/show_bug.cgi?id=121036
1919
1920         Reviewed by Dean Jackson.
1921
1922         Move layoutBlock into RenderBlockFlow and make the base class version of
1923         the method ASSERT_NOT_REACHED. Begin the process of moving block layout 
1924         into RenderBlockFlow by putting layoutBlockChildren there as well.
1925         
1926         This patch also puts clearFloats into RenderBlockFlow and just ditches the
1927         SVG-specific forceLayoutInlineChildren by letting RenderSVGText do what it
1928         needs in its own file.
1929
1930         Convert RenderListBox to be a RenderBlockFlow, since this is necessary for it
1931         to get the correct layoutBlock method.
1932         
1933         Patch RenderRegion to call RenderBlockFlow::layoutBlock rather than RenderBlock::layoutBlock.
1934         
1935         Fix run-ins so that they create block flows rather than blocks, and restrict run-ins to
1936         only be block flows.
1937
1938         * rendering/RenderBlock.cpp:
1939         (WebCore::RenderBlock::layoutBlock):
1940         (WebCore::RenderBlock::createReplacementRunIn):
1941         (WebCore::RenderBlock::moveRunInUnderSiblingBlockIfNeeded):
1942         * rendering/RenderBlock.h:
1943         * rendering/RenderBlockFlow.cpp:
1944         (WebCore::RenderBlockFlow::clearFloats):
1945         (WebCore::RenderBlockFlow::layoutBlock):
1946         (WebCore::RenderBlockFlow::layoutBlockChildren):
1947         * rendering/RenderBlockFlow.h:
1948         * rendering/RenderBlockLineLayout.cpp:
1949         (WebCore::RenderBlockFlow::layoutInlineChildren):
1950         * rendering/RenderListBox.cpp:
1951         (WebCore::RenderListBox::RenderListBox):
1952         (WebCore::RenderListBox::layout):
1953         (WebCore::RenderListBox::paintObject):
1954         (WebCore::RenderListBox::addFocusRingRects):
1955         (WebCore::RenderListBox::nodeAtPoint):
1956         * rendering/RenderListBox.h:
1957         * rendering/RenderRegion.cpp:
1958         (WebCore::RenderRegion::paintObject):
1959         (WebCore::RenderRegion::styleDidChange):
1960         (WebCore::RenderRegion::layoutBlock):
1961         (WebCore::RenderRegion::insertedIntoTree):
1962         (WebCore::RenderRegion::willBeRemovedFromTree):
1963         (WebCore::RenderRegion::computeIntrinsicLogicalWidths):
1964         (WebCore::RenderRegion::computePreferredLogicalWidths):
1965         (WebCore::RenderRegion::updateLogicalHeight):
1966         * rendering/RenderTextControlSingleLine.cpp:
1967         (WebCore::RenderTextControlSingleLine::layout):
1968         * rendering/svg/RenderSVGText.cpp:
1969         (WebCore::RenderSVGText::layout):
1970
1971 2013-09-09  Antti Koivisto  <antti@apple.com>
1972
1973         Try to fix GTK build.
1974         
1975         Not reviewed.
1976
1977         * accessibility/AccessibilityTable.cpp:
1978         (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
1979
1980 2013-09-09  Antti Koivisto  <antti@apple.com>
1981
1982         Hide node() below RenderLayerModelObject, use element() instead
1983         https://bugs.webkit.org/show_bug.cgi?id=121038
1984
1985         Reviewed by Dave Hyatt.
1986
1987         Switch all call sites to element(). Remove now unnecessary casts, type checks and dead code.
1988         Make constructors below RenderLayerModelObject take an Element instead of a ContainerNode.
1989         
1990         This also removes a branch from many hasTagName() and isFooElement() calls.
1991
1992         * accessibility/AccessibilityRenderObject.cpp:
1993         (WebCore::startOfContinuations):
1994         * accessibility/AccessibilityTable.cpp:
1995         (WebCore::AccessibilityTable::isDataTable):
1996         * accessibility/AccessibilityTableCell.cpp:
1997         (WebCore::AccessibilityTableCell::titleUIElement):
1998         * accessibility/AccessibilityTableColumn.cpp:
1999         (WebCore::AccessibilityTableColumn::headerObjectForSection):
2000         * editing/markup.cpp:
2001         (WebCore::highestAncestorToWrapMarkup):
2002         * html/HTMLTableCellElement.cpp:
2003         (WebCore::HTMLTableCellElement::cellAbove):
2004         * html/shadow/SliderThumbElement.cpp:
2005         (WebCore::RenderSliderThumb::updateAppearance):
2006         (WebCore::RenderSliderContainer::computeLogicalHeight):
2007         (WebCore::RenderSliderContainer::layout):
2008         * page/Frame.cpp:
2009         (WebCore::Frame::frameForWidget):
2010         * rendering/RenderBlock.cpp:
2011         (WebCore::OverflowEventDispatcher::~OverflowEventDispatcher):
2012         (WebCore::RenderBlock::RenderBlock):
2013         (WebCore::RenderBlock::clone):
2014         (WebCore::RenderBlock::createReplacementRunIn):
2015         (WebCore::RenderBlock::paintObject):
2016         (WebCore::RenderBlock::isSelectionRoot):
2017         (WebCore::RenderBlock::nodeForHitTest):
2018         (WebCore::RenderBlock::hasLineIfEmpty):
2019         (WebCore::RenderBlock::addFocusRingRects):
2020         * rendering/RenderBlock.h:
2021         * rendering/RenderBlockFlow.cpp:
2022         (WebCore::RenderBlockFlow::RenderBlockFlow):
2023         * rendering/RenderBlockFlow.h:
2024         * rendering/RenderBlockLineLayout.cpp:
2025         (WebCore::RenderBlock::addOverflowFromInlineChildren):
2026         * rendering/RenderBox.cpp:
2027         (WebCore::RenderBox::RenderBox):
2028         (WebCore::RenderBox::updateFromStyle):
2029         (WebCore::RenderBox::scroll):
2030         (WebCore::RenderBox::logicalScroll):
2031         (WebCore::RenderBox::canBeProgramaticallyScrolled):
2032         (WebCore::RenderBox::nodeAtPoint):
2033         (WebCore::RenderBox::paintCustomHighlight):
2034         (WebCore::RenderBox::computeLogicalWidthInRegion):
2035         (WebCore::RenderBox::sizesLogicalWidthToFitContent):
2036         (WebCore::RenderBox::localCaretRect):
2037         * rendering/RenderBox.h:
2038         * rendering/RenderBoxModelObject.cpp:
2039         (WebCore::RenderBoxModelObject::RenderBoxModelObject):
2040         * rendering/RenderBoxModelObject.h:
2041         * rendering/RenderButton.cpp:
2042         (WebCore::RenderButton::updateFromElement):
2043         (WebCore::RenderButton::canHaveGeneratedChildren):
2044         * rendering/RenderButton.h:
2045         * rendering/RenderEmbeddedObject.cpp:
2046         (WebCore::RenderEmbeddedObject::paintContents):
2047         (WebCore::RenderEmbeddedObject::isReplacementObscured):
2048         (WebCore::RenderEmbeddedObject::layout):
2049         (WebCore::RenderEmbeddedObject::viewCleared):
2050         (WebCore::RenderEmbeddedObject::handleUnavailablePluginIndicatorEvent):
2051         * rendering/RenderFileUploadControl.cpp:
2052         (WebCore::RenderFileUploadControl::updateFromElement):
2053         (WebCore::RenderFileUploadControl::maxFilenameWidth):
2054         (WebCore::RenderFileUploadControl::paintObject):
2055         (WebCore::RenderFileUploadControl::computeIntrinsicLogicalWidths):
2056         (WebCore::RenderFileUploadControl::uploadButton):
2057         (WebCore::RenderFileUploadControl::fileTextValue):
2058         * rendering/RenderFrame.cpp:
2059         (WebCore::RenderFrame::edgeInfo):
2060         (WebCore::RenderFrame::viewCleared):
2061         * rendering/RenderFrameBase.cpp:
2062         (WebCore::RenderFrameBase::layoutWithFlattening):
2063         * rendering/RenderFrameSet.cpp:
2064         (WebCore::RenderFrameSet::frameSet):
2065         * rendering/RenderHTMLCanvas.cpp:
2066         (WebCore::RenderHTMLCanvas::requiresLayer):
2067         (WebCore::RenderHTMLCanvas::paintReplaced):
2068         (WebCore::RenderHTMLCanvas::canvasSizeChanged):
2069         * rendering/RenderIFrame.cpp:
2070         (WebCore::RenderIFrame::isSeamless):
2071         (WebCore::RenderIFrame::flattenFrame):
2072         * rendering/RenderImage.cpp:
2073         (WebCore::RenderImage::imageChanged):
2074         (WebCore::RenderImage::paintAreaElementFocusRing):
2075         (WebCore::RenderImage::areaElementFocusChanged):
2076         (WebCore::RenderImage::paintIntoRect):
2077         (WebCore::RenderImage::imageMap):
2078         (WebCore::RenderImage::nodeAtPoint):
2079         (WebCore::RenderImage::updateAltText):
2080         * rendering/RenderInline.cpp:
2081         (WebCore::RenderInline::clone):
2082         (WebCore::RenderInline::hitTestCulledInline):
2083         (WebCore::RenderInline::updateHitTestResult):
2084         * rendering/RenderInline.h:
2085         * rendering/RenderLayer.cpp:
2086         (WebCore::RenderLayer::RenderLayer):
2087         (WebCore::RenderLayer::~RenderLayer):
2088         (WebCore::RenderLayer::name):
2089         (WebCore::RenderLayer::isTransparent):
2090         (WebCore::RenderLayer::scrollTo):
2091         (WebCore::RenderLayer::resize):
2092         (WebCore::RenderLayer::filterNeedsRepaint):
2093         * rendering/RenderLayerBacking.cpp:
2094         (WebCore::RenderLayerBacking::createPrimaryGraphicsLayer):
2095         (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
2096         * rendering/RenderLayerCompositor.cpp:
2097         (WebCore::RenderLayerCompositor::frameContentsCompositor):
2098         * rendering/RenderLayerFilterInfo.cpp:
2099         (WebCore::RenderLayer::FilterInfo::notifyFinished):
2100         (WebCore::RenderLayer::FilterInfo::updateReferenceFilterClients):
2101         (WebCore::RenderLayer::FilterInfo::notifyCustomFilterProgramLoaded):
2102         * rendering/RenderLayerModelObject.cpp:
2103         (WebCore::RenderLayerModelObject::RenderLayerModelObject):
2104         * rendering/RenderLayerModelObject.h:
2105         (WebCore::RenderLayerModelObject::element):
2106         * rendering/RenderListBox.cpp:
2107         (WebCore::RenderListBox::selectElement):
2108         (WebCore::RenderListBox::paintItemForeground):
2109         (WebCore::RenderListBox::paintItemBackground):
2110         (WebCore::RenderListBox::scrollTo):
2111         (WebCore::RenderListBox::createScrollbar):
2112         * rendering/RenderListItem.cpp:
2113         (WebCore::isList):
2114         (WebCore::enclosingList):
2115         (WebCore::nextListItem):
2116         (WebCore::previousListItem):
2117         (WebCore::RenderListItem::calcValue):
2118         (WebCore::RenderListItem::explicitValueChanged):
2119         (WebCore::RenderListItem::setExplicitValue):
2120         (WebCore::RenderListItem::clearExplicitValue):
2121         (WebCore::previousOrNextItem):
2122         (WebCore::RenderListItem::updateListMarkerNumbers):
2123         * rendering/RenderMarquee.cpp:
2124         (WebCore::RenderMarquee::marqueeSpeed):
2125         * rendering/RenderMedia.cpp:
2126         (WebCore::RenderMedia::mediaElement):
2127         * rendering/RenderMediaControlElements.cpp:
2128         (WebCore::RenderMediaControlTimelineContainer::layout):
2129         (WebCore::RenderTextTrackContainerElement::layout):
2130         * rendering/RenderMenuList.cpp:
2131         (WebCore::RenderMenuList::selectElement):
2132         (WebCore::RenderMenuList::valueChanged):
2133         (WebCore::RenderMenuList::createScrollbar):
2134         * rendering/RenderMeter.cpp:
2135         (WebCore::RenderMeter::meterElement):
2136         * rendering/RenderPart.cpp:
2137         (WebCore::RenderPart::requiresAcceleratedCompositing):
2138         (WebCore::RenderPart::embeddedContentBox):
2139         * rendering/RenderProgress.cpp:
2140         (WebCore::RenderProgress::progressElement):
2141         * rendering/RenderReplaced.cpp:
2142         (WebCore::RenderReplaced::positionForPoint):
2143         (WebCore::RenderReplaced::isSelected):
2144         * rendering/RenderSearchField.cpp:
2145         (WebCore::RenderSearchField::autosaveName):
2146         (WebCore::RenderSearchField::createScrollbar):
2147         * rendering/RenderSlider.cpp:
2148         (WebCore::RenderSlider::layout):
2149         (WebCore::RenderSlider::inDragMode):
2150         * rendering/RenderSnapshottedPlugIn.cpp:
2151         (WebCore::RenderSnapshottedPlugIn::plugInImageElement):
2152         * rendering/RenderTable.cpp:
2153         (WebCore::RenderTable::convertStyleLogicalWidthToComputedWidth):
2154         (WebCore::RenderTable::convertStyleLogicalHeightToComputedHeight):
2155         (WebCore::RenderTable::nodeAtPoint):
2156         * rendering/RenderTableCell.cpp:
2157         (WebCore::RenderTableCell::parseColSpanFromDOM):
2158         (WebCore::RenderTableCell::parseRowSpanFromDOM):
2159         (WebCore::RenderTableCell::updateColAndRowSpanFlags):
2160         (WebCore::RenderTableCell::colSpanOrRowSpanChanged):
2161         (WebCore::RenderTableCell::computePreferredLogicalWidths):
2162         * rendering/RenderTableCol.cpp:
2163         (WebCore::RenderTableCol::updateFromElement):
2164         * rendering/RenderTextControl.cpp:
2165         (WebCore::RenderTextControl::textFormControlElement):
2166         (WebCore::RenderTextControl::adjustInnerTextStyle):
2167         (WebCore::RenderTextControl::updateFromElement):
2168         (WebCore::RenderTextControl::layoutSpecialExcludedChild):
2169         * rendering/RenderTextControlMultiLine.cpp:
2170         (WebCore::RenderTextControlMultiLine::~RenderTextControlMultiLine):
2171         (WebCore::RenderTextControlMultiLine::nodeAtPoint):
2172         (WebCore::RenderTextControlMultiLine::preferredContentLogicalWidth):
2173         (WebCore::RenderTextControlMultiLine::computeControlLogicalHeight):
2174         * rendering/RenderTextControlSingleLine.cpp:
2175         (WebCore::RenderTextControlSingleLine::nodeAtPoint):
2176         (WebCore::RenderTextControlSingleLine::capsLockStateMayHaveChanged):
2177         (WebCore::RenderTextControlSingleLine::textShouldBeTruncated):
2178         (WebCore::RenderTextControlSingleLine::inputElement):
2179         * rendering/RenderThemeMac.mm:
2180         (WebCore::RenderThemeMac::paintSnapshottedPluginOverlay):
2181         * rendering/RenderTreeAsText.cpp:
2182         (WebCore::writeRenderRegionList):
2183         * rendering/RenderVideo.cpp:
2184         (WebCore::RenderVideo::updateIntrinsicSize):
2185         (WebCore::RenderVideo::videoElement):
2186         * rendering/RenderWidget.cpp:
2187         (WebCore::RenderWidget::setWidgetGeometry):
2188         (WebCore::RenderWidget::updateWidgetPosition):
2189         (WebCore::RenderWidget::nodeAtPoint):
2190         * rendering/mathml/RenderMathMLFenced.cpp:
2191         (WebCore::RenderMathMLFenced::updateFromElement):
2192         (WebCore::RenderMathMLFenced::createMathMLOperator):
2193         (WebCore::RenderMathMLFenced::styleDidChange):
2194         * rendering/mathml/RenderMathMLFraction.cpp:
2195         (WebCore::RenderMathMLFraction::updateFromElement):
2196         * rendering/mathml/RenderMathMLOperator.cpp:
2197         (WebCore::RenderMathMLOperator::updateFromElement):
2198         (WebCore::RenderMathMLOperator::createGlyph):
2199         * rendering/mathml/RenderMathMLSpace.cpp:
2200         (WebCore::RenderMathMLSpace::updateFromElement):
2201         * rendering/svg/RenderSVGForeignObject.cpp:
2202         (WebCore::RenderSVGForeignObject::layout):
2203         * rendering/svg/RenderSVGRoot.cpp:
2204         (WebCore::RenderSVGRoot::computeIntrinsicRatioInformation):
2205         (WebCore::RenderSVGRoot::isEmbeddedThroughSVGImage):
2206         (WebCore::RenderSVGRoot::isEmbeddedThroughFrameContainingSVGDocument):
2207         (WebCore::RenderSVGRoot::computeReplacedLogicalWidth):
2208         (WebCore::RenderSVGRoot::computeReplacedLogicalHeight):
2209         (WebCore::RenderSVGRoot::layout):
2210         (WebCore::RenderSVGRoot::paintReplaced):
2211         (WebCore::RenderSVGRoot::buildLocalToBorderBoxTransform):
2212         (WebCore::RenderSVGRoot::nodeAtPoint):
2213         (WebCore::RenderSVGRoot::hasRelativeDimensions):
2214         (WebCore::RenderSVGRoot::hasRelativeIntrinsicLogicalWidth):
2215         (WebCore::RenderSVGRoot::hasRelativeLogicalHeight):
2216         * rendering/svg/RenderSVGText.cpp:
2217         (WebCore::RenderSVGText::layout):
2218         (WebCore::RenderSVGText::strokeBoundingBox):
2219         * rendering/svg/RenderSVGTextPath.cpp:
2220         (WebCore::RenderSVGTextPath::layoutPath):
2221         (WebCore::RenderSVGTextPath::startOffset):
2222         (WebCore::RenderSVGTextPath::exactAlignment):
2223         (WebCore::RenderSVGTextPath::stretchMethod):
2224
2225 2013-09-09  Antti Koivisto  <antti@apple.com>
2226
2227         Make RenderView anonymous
2228         https://bugs.webkit.org/show_bug.cgi?id=121013
2229
2230         Reviewed by Darin Adler and Dave Hyatt.
2231
2232         RenderView is currently the only renderer that has an associated Node that is not either Element or Text.
2233         By making it anonymous (not have associated node, RenderView::node() returns null) we will be able to 
2234         significantly tighten typing in both render and DOM trees.
2235
2236         * accessibility/AccessibilityRenderObject.cpp:
2237         (WebCore::AccessibilityRenderObject::node):
2238         
2239             We need to grab document() instead of node() in a few places for RenderViews to keep existing code
2240             behaving like it did.
2241
2242         * inspector/InspectorLayerTreeAgent.cpp:
2243         (WebCore::InspectorLayerTreeAgent::buildObjectForLayer):
2244         
2245             Don't tell inspector that the root layer is anonymous for now to avoid changing behavior.
2246
2247         * rendering/RenderBlock.cpp:
2248         (WebCore::RenderBlock::nodeForHitTest):
2249         * rendering/RenderBox.cpp:
2250         (WebCore::RenderBox::canBeProgramaticallyScrolled):
2251         
2252             The old non-virtual RenderView test renderer->node == &renderer->document() does not work anymore.
2253             Switch to isRenderView() which is now non-virtual in a number of places.
2254
2255         (WebCore::RenderBox::canAutoscroll):
2256         (WebCore::RenderBox::findAutoscrollable):
2257         (WebCore::RenderBox::computeReplacedLogicalHeightUsing):
2258         * rendering/RenderBoxModelObject.cpp:
2259         (WebCore::RenderBoxModelObject::hasAutoHeightOrContainingBlockWithAutoHeight):
2260         * rendering/RenderLayerBacking.cpp:
2261         (WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer):
2262         * rendering/RenderObject.h:
2263         (WebCore::RenderObject::isRenderReplaced):
2264         (WebCore::RenderObject::isAnonymousBlock):
2265         
2266             RenderView is anonymous but not a CSS anonymous block.
2267
2268         (WebCore::RenderObject::isText):
2269         (WebCore::RenderObject::isRenderView):
2270         
2271             Make isRenderView non-virtual since it is now hot. Reuse existing bits.
2272
2273         (WebCore::RenderObject::setIsText):
2274         (WebCore::RenderObject::setIsRenderView):
2275         (WebCore::RenderObject::RenderObjectBitfields::RenderObjectBitfields):
2276         * rendering/RenderTreeAsText.cpp:
2277         (WebCore::writeSelection):
2278         * rendering/RenderView.cpp:
2279         
2280             Make anonymous.
2281
2282         (WebCore::RenderView::RenderView):
2283         * rendering/RenderView.h:
2284         * rendering/svg/RenderSVGRoot.cpp:
2285         (WebCore::RenderSVGRoot::computeReplacedLogicalHeight):
2286
2287 2013-09-09  Bem Jones-Bey  <bjonesbe@adobe.com>
2288
2289         Move logical(Left|Right)FloatOffsetForLine methods into FloatingObjects
2290         https://bugs.webkit.org/show_bug.cgi?id=120705
2291
2292         Reviewed by Sam Weinig.
2293
2294         These are the only consumers of the CalculateFloatOffsetAdapter and
2295         the placed floats tree, so it will allow us to reduce the public
2296         interface of FloatingObjects and make the placed floats tree private.
2297
2298         No new tests, no behavior change.
2299
2300         * rendering/RenderBlock.cpp:
2301         (WebCore::RenderBlock::logicalLeftFloatOffsetForLine):
2302         (WebCore::RenderBlock::logicalRightFloatOffsetForLine):
2303         (WebCore::RenderBlock::FloatingObjects::logicalLeftOffset):
2304         (WebCore::RenderBlock::FloatingObjects::logicalRightOffset):
2305         * rendering/RenderBlock.h:
2306         (WebCore::RenderBlock::FloatingObjects::placedFloatsTree):
2307
2308 2013-09-09  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2309
2310         Add support for BeforeUnloadEvent interface
2311         https://bugs.webkit.org/show_bug.cgi?id=120849
2312
2313         Reviewed by Darin Adler.
2314
2315         Add support for BeforeUnloadEvent as per the specification:
2316         http://www.whatwg.org/specs/web-apps/current-work/#beforeunloadevent
2317
2318         BeforeUnloadEvent has a returnValue attribute. Setting returnValue to a non-empty
2319         string in an event handler causes the user agent should ask the user to confirm
2320         that they wish to unload the document. This is equivalent to returning a non-empty
2321         string in the EventHandler:
2322         http://www.whatwg.org/specs/web-apps/current-work/#onbeforeunloadeventhandler
2323
2324         BeforeUnloadEvent and returnValue are already supported by IE and Firefox. Previously,
2325         WebKit was passing a base Event type to the beforeunload event handlers instead of
2326         a BeforeUnloadEvent.
2327
2328         Note that this patch keeps support for the legacy Event.returnValue attribute. This used
2329         to be an IE extension but this is no longer supported by IE (nor Firefox). The standard
2330         preventDefault() should be used instead however (supported in IE >= 9).
2331
2332         Test: fast/events/before-unload-returnValue.html
2333
2334         * CMakeLists.txt:
2335         * DerivedSources.cpp:
2336         * DerivedSources.make:
2337         * DerivedSources.pri:
2338         * GNUmakefile.list.am:
2339         * WebCore.order:
2340         * WebCore.vcxproj/WebCore.vcxproj:
2341         * bindings/js/JSEventListener.cpp:
2342         (WebCore::JSEventListener::handleEvent):
2343         * dom/BeforeUnloadEvent.cpp:
2344         (WebCore::BeforeUnloadEvent::isBeforeUnloadEvent):
2345         (WebCore::BeforeUnloadEvent::~BeforeUnloadEvent):
2346         * dom/BeforeUnloadEvent.h:
2347         (WebCore::BeforeUnloadEvent::create):
2348         (WebCore::BeforeUnloadEvent::returnValue):
2349         (WebCore::BeforeUnloadEvent::setReturnValue):
2350         (WebCore::toBeforeUnloadEvent):
2351         * dom/BeforeUnloadEvent.idl: Added.
2352         * dom/Event.cpp:
2353         (WebCore::Event::isBeforeUnloadEvent):
2354         * dom/Event.h:
2355         (WebCore::Event::legacyReturnValue):
2356         (WebCore::Event::setLegacyReturnValue):
2357         * dom/Event.idl:
2358         * dom/EventNames.in:
2359         * loader/FrameLoader.cpp:
2360         (WebCore::FrameLoader::handleBeforeUnloadEvent):
2361
2362 2013-09-06  David Hyatt  <hyatt@apple.com>
2363
2364         Get rid of isBlockFlowFlexBoxOrGrid().
2365         https://bugs.webkit.org/show_bug.cgi?id=120897
2366
2367         Convert all callers and get rid of this method.
2368
2369         Reviewed by Beth Dakin.
2370
2371         * accessibility/AccessibilityRenderObject.cpp:
2372         (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
2373         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
2374         * dom/Position.cpp:
2375         (WebCore::Position::isCandidate):
2376         (WebCore::Position::getInlineBoxAndOffset):
2377         (WebCore::Position::primaryDirection):
2378         * dom/PositionIterator.cpp:
2379         (WebCore::PositionIterator::isCandidate):
2380         * editing/CompositeEditCommand.cpp:
2381         (WebCore::CompositeEditCommand::addBlockPlaceholderIfNeeded):
2382         * editing/Editor.cpp:
2383         (WebCore::Editor::baseWritingDirectionForSelectionStart):
2384         * editing/FrameSelection.cpp:
2385         (WebCore::caretRenderer):
2386         * editing/TextIterator.cpp:
2387         (WebCore::TextIterator::shouldRepresentNodeOffsetZero):
2388         * editing/TypingCommand.cpp:
2389         (WebCore::TypingCommand::makeEditableRootEmpty):
2390         * editing/htmlediting.cpp:
2391         (WebCore::isBlockFlowElement):
2392         * rendering/LayoutState.cpp:
2393         (WebCore::LayoutState::LayoutState):
2394         * rendering/RenderBlock.cpp:
2395         (WebCore::RenderBlock::layoutBlock):
2396         (WebCore::RenderBlock::collapseMargins):
2397         (WebCore::RenderBlock::selectionGaps):
2398         (WebCore::RenderBlock::firstLineBoxBaseline):
2399         (WebCore::RenderBlock::lastLineBoxBaseline):
2400         (WebCore::RenderBlock::firstLineBlock):
2401         (WebCore::findFirstLetterBlock):
2402         (WebCore::shouldCheckLines):
2403         (WebCore::RenderBlock::adjustForBorderFit):
2404         * rendering/RenderBox.cpp:
2405         (WebCore::RenderBox::computeRectForRepaint):
2406         (WebCore::RenderBox::positionForPoint):
2407         * rendering/RenderBoxModelObject.h:
2408         (WebCore::RenderBoxModelObject::canHaveBoxInfoInRegion):
2409         * rendering/RenderInline.cpp:
2410         (WebCore::RenderInline::computeRectForRepaint):
2411         * rendering/RenderLineBoxList.cpp:
2412         (WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
2413         * rendering/RenderObject.cpp:
2414         (WebCore::RenderObject::computeRectForRepaint):
2415         (WebCore::RenderObject::styleWillChange):
2416         (WebCore::firstLineStyleForCachedUncachedType):
2417         * rendering/RenderObject.h:
2418         * rendering/RenderObjectChildList.cpp:
2419         (WebCore::RenderObjectChildList::insertChildNode):
2420         * rendering/RenderView.h:
2421
2422 2013-09-09  Eric Carlson  <eric.carlson@apple.com>
2423
2424         MediaStream API: Stop means stop
2425         https://bugs.webkit.org/show_bug.cgi?id=120873
2426
2427         Reviewed by Jer Noble.
2428
2429         Merge blink https://chromium.googlesource.com/chromium/blink/+/9a97b0f3892320fa5741485e06a78183b77c3635
2430         by Tommy Widenflycht.
2431
2432         Removing notification functionality from MediaStreamTrack::stop because the world is being torn down.
2433
2434         No new tests, the original author was unable to come up with a reliable test case.
2435
2436         * Modules/mediastream/MediaStreamTrack.cpp:
2437         (WebCore::MediaStreamTrack::stop): Don't call didEndTrack, the world is going away.
2438
2439 2013-09-09  Filip Pizlo  <fpizlo@apple.com>
2440
2441         Unreviewed, fix build.
2442
2443         * Modules/encryptedmedia/MediaKeySession.h:
2444
2445 2013-09-09  Eric Carlson  <eric.carlson@apple.com>
2446
2447         MediaStream API: Moving Add/Remove track from WebMediaStreamCenterClient to WebMediaStream
2448         https://bugs.webkit.org/show_bug.cgi?id=120872
2449
2450         Reviewed by Jer Noble.
2451
2452         Merge https://chromium.googlesource.com/chromium/blink/+/7d740fd27c1f345b59c846df01c3adce53c18e6e
2453         Simple cleanup that makes the API cleaner.
2454
2455         * Modules/mediastream/MediaStream.cpp:
2456         (WebCore::MediaStream::removeTrack):
2457         (WebCore::MediaStream::addRemoteTrack):
2458         (WebCore::MediaStream::removeRemoteTrack):
2459         * platform/mediastream/MediaStreamCenter.cpp:
2460         * platform/mediastream/MediaStreamCenter.h:
2461         * platform/mediastream/MediaStreamDescriptor.h:
2462         (WebCore::MediaStreamDescriptor::removeAudioComponent):
2463         (WebCore::MediaStreamDescriptor::addRemoteTrack):
2464         (WebCore::MediaStreamDescriptor::removeRemoteTrack):
2465
2466 2013-09-09  ChangSeok Oh  <changseok.oh@collabora.com>
2467
2468         [WK2] Assertion failure in WebCore::Page::checkSubframeCountConsistency when going back
2469         https://bugs.webkit.org/show_bug.cgi?id=119781
2470
2471         Reviewed by Alexey Proskuryakov.
2472
2473         We should pair restoring a cached frame and adding it to FrameTree so that
2474         actual added frame count in FrameTree keeps same with restored frame count.
2475         Otherwise assert failure occurs in Page::CheckSubframeCountConsistency.
2476         We have added cached frames to FrameTree ahead and then restored them by tree travelsal.
2477         But this way doesn't guarantee subframecount of Page and the number of child of FrameTree are equal.
2478         In addition, we still make sure that adding a cached frame to FrameTree should happen
2479         before opening it. Because FrameTree might be used while restoring a cached page.
2480
2481         Test: fast/history/go-back-to-iframe-with-plugin.html
2482
2483         * history/CachedFrame.cpp:
2484         (WebCore::CachedFrameBase::restore):
2485         (WebCore::CachedFrame::open):
2486
2487 2013-09-09  Luciano Wolf  <luciano.wolf@openbossa.org>
2488
2489         Nix upstreaming - Adding stubs and Nix specific platform files
2490         https://bugs.webkit.org/show_bug.cgi?id=118358
2491
2492         Reviewed by Benjamin Poulain.
2493
2494         Basically adding all files that have "Nix" in their names and
2495         are related to WebCore module.
2496
2497         No new tests. They will be uploaded on another patch during the
2498         upstreaming process.
2499
2500         * css/mediaControlsNix.css: Added.
2501         * css/mediaControlsNixFullscreen.css: Added.
2502         * page/nix/EventHandlerNix.cpp: Added.
2503         * platform/graphics/egl/GLContextFromCurrentEGL.cpp: Added.
2504         * platform/graphics/egl/GLContextFromCurrentEGL.h: Added.
2505         * platform/graphics/gstreamer/PlatformVideoWindowNix.cpp: Added.
2506         * platform/graphics/nix/IconNix.cpp: Added.
2507         * platform/graphics/nix/ImageNix.cpp: Added.
2508         * platform/nix/CursorNix.cpp: Added.
2509         * platform/nix/DragDataNix.cpp: Added.
2510         * platform/nix/DragImageNix.cpp: Added.
2511         * platform/nix/GamepadsNix.cpp: Added.
2512         * platform/nix/LanguageNix.cpp: Added.
2513         * platform/nix/LocalizedStringsNix.cpp: Added.
2514         * platform/nix/NixKeyboardUtilities.cpp: Added.
2515         * platform/nix/NixKeyboardUtilities.h: Added.
2516         * platform/nix/PasteboardNix.cpp: Added.
2517         * platform/nix/PlatformKeyboardEventNix.cpp: Added.
2518         * platform/nix/PlatformScreenNix.cpp: Added.
2519         * platform/nix/SoundNix.cpp: Added.
2520         * platform/nix/WidgetNix.cpp: Added.
2521         * platform/text/nix/TextBreakIteratorInternalICUNix.cpp: Added.
2522
2523 2013-09-09  Hugo Parente Lima  <hugo.lima@openbossa.org>
2524
2525         Preparing WebCore to receive Nix Port
2526         https://bugs.webkit.org/show_bug.cgi?id=118326
2527
2528         Reviewed by Eric Carlson.
2529
2530         Only adding the compilation directives that are Nix specific, in the
2531         existent WebCore files
2532
2533         * loader/FrameLoader.cpp:
2534         (WebCore::FrameLoader::defaultObjectContentType):
2535         * platform/Cursor.h:
2536         * platform/DragData.h:
2537         * platform/DragImage.h:
2538         * platform/FileSystem.h:
2539         * platform/RunLoop.h:
2540         * platform/Widget.h:
2541         * platform/audio/FFTFrame.h:
2542         * platform/audio/HRTFElevation.cpp:
2543         * platform/cairo/WidgetBackingStore.h:
2544         * platform/graphics/ANGLEWebKitBridge.h:
2545         * platform/graphics/FontPlatformData.h:
2546         * platform/graphics/GraphicsContext3D.cpp:
2547         * platform/graphics/GraphicsContext3D.h:
2548         * platform/graphics/OpenGLESShims.h:
2549         * platform/graphics/OpenGLShims.cpp:
2550         (WebCore::getProcAddress):
2551         * platform/graphics/OpenGLShims.h:
2552         * platform/graphics/PlatformLayer.h:
2553         * platform/graphics/cairo/GLContext.cpp:
2554         (WebCore::GLContext::createContextForWindow):
2555         * platform/graphics/cairo/GraphicsContext3DPrivate.cpp:
2556         (WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
2557         * platform/graphics/freetype/FontPlatformDataFreeType.cpp:
2558         * platform/graphics/opengl/Extensions3DOpenGL.cpp:
2559         (WebCore::Extensions3DOpenGL::createVertexArrayOES):
2560         (WebCore::Extensions3DOpenGL::deleteVertexArrayOES):
2561         (WebCore::Extensions3DOpenGL::isVertexArrayOES):
2562         (WebCore::Extensions3DOpenGL::bindVertexArrayOES):
2563         (WebCore::Extensions3DOpenGL::supportsExtension):
2564         * platform/graphics/opengl/Extensions3DOpenGL.h:
2565         * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
2566         * platform/graphics/opengl/Extensions3DOpenGLES.h:
2567         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
2568         * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
2569         (WebCore::GraphicsContext3D::reshape):
2570         * platform/graphics/texmap/TextureMapper.h:
2571         * plugins/PluginPackage.cpp:
2572         * plugins/PluginView.cpp:
2573         (WebCore::PluginView::PluginView):
2574         * plugins/PluginView.h:
2575         * plugins/PluginViewNone.cpp:
2576
2577 2013-09-08  Darin Adler  <darin@apple.com>
2578
2579         Tighten up EventQueue classes a bit, less indirection and memory allocation
2580         https://bugs.webkit.org/show_bug.cgi?id=121016
2581
2582         Reviewed by Andreas Kling.
2583
2584         * Modules/encryptedmedia/MediaKeySession.cpp:
2585         (WebCore::MediaKeySession::MediaKeySession): Updated since event queue is now
2586         a member rather than an OwnPtr.
2587         (WebCore::MediaKeySession::close): Ditto.
2588         (WebCore::MediaKeySession::keyRequestTimerFired): Ditto.
2589         (WebCore::MediaKeySession::addKeyTimerFired): Ditto.
2590         * Modules/encryptedmedia/MediaKeySession.h: Ditto.
2591
2592         * Modules/indexeddb/IDBDatabase.cpp:
2593         (WebCore::IDBDatabase::closeConnection): Updated since ScriptExecutionContext's
2594         eventQueue function now returns a reference rather than a pointer. Also, the
2595         cancelEvent function takes a reference instead of a pointer.
2596         (WebCore::IDBDatabase::enqueueEvent): Ditto.
2597         * Modules/indexeddb/IDBRequest.cpp:
2598         (WebCore::IDBRequest::abort): Ditto.
2599         (WebCore::IDBRequest::enqueueEvent): Ditto.
2600         * Modules/indexeddb/IDBTransaction.cpp:
2601         (WebCore::IDBTransaction::enqueueEvent): Ditto.
2602
2603         * Modules/mediasource/MediaSource.cpp:
2604         (WebCore::MediaSource::MediaSource): Updated since event queue is now a
2605         member rather than an OwnPtr. Also use initialization instead of assignment
2606         to set up source buffers.
2607         (WebCore::MediaSource::hasPendingActivity): Ditto.
2608         (WebCore::MediaSource::stop): Ditto.
2609         (WebCore::MediaSource::scheduleEvent): Ditto.
2610         * Modules/mediasource/MediaSource.h: Ditto.
2611
2612         * Modules/mediasource/SourceBufferList.cpp:
2613         (WebCore::SourceBufferList::SourceBufferList): Take references instead of
2614         pointers.
2615         (WebCore::SourceBufferList::length): Changed type to unsigned instead of
2616         unsigned long. This is an IDL "unsigned long", which corresponds to "unsigned"
2617         in our C++ DOM implementation.
2618         (WebCore::SourceBufferList::createAndFireEvent): Updated since event queue is
2619         now a reference.
2620         (WebCore::SourceBufferList::scriptExecutionContext): Updated since script
2621         execution context is now a reference.
2622         * Modules/mediasource/SourceBufferList.h: Ditto.
2623
2624         * dom/Document.cpp:
2625         (WebCore::Document::Document): Updated since event queue is now a member rather
2626         than a RefPtr.
2627         (WebCore::Document::detach): Ditto.
2628         (WebCore::Document::enqueueWindowEvent): Ditto.
2629         (WebCore::Document::enqueueDocumentEvent): Ditto.
2630         * dom/Document.h: Ditto.
2631
2632         * dom/DocumentEventQueue.cpp: Renamed DocumentEventQueueTimer to just Timer and
2633         made it a class member of DocumentEventQueue. Also changed it to use references
2634         instead of pointers and removed unneeded ScriptExecutionContext argument.
2635         (WebCore::DocumentEventQueue::DocumentEventQueue): Updated to take a document
2636         reference instead of a script execution context pointer.
2637         (WebCore::DocumentEventQueue::enqueueEvent): Wrote the assertions in a clearer
2638         style and do the assertions even when the queue is closed.
2639         (WebCore::DocumentEventQueue::enqueueOrDispatchScrollEvent): Removed the unneeded
2640         ScrollEventTargetType argument, since the policy is specific to the document node.
2641         Made the argument a reference instead of a PassRefPtr, and rewrote the function
2642         to be more straightforward and readable.
2643         (WebCore::DocumentEventQueue::cancelEvent): Use the return value recently added to
2644         the remove function to avoid the need for use of iterators and a find/remove pair.
2645         (WebCore::DocumentEventQueue::pendingEventTimerFired): Rewrote this to use the
2646         recently added ListHashSet takeFirst function. Also protect the document instead
2647         of protecting just this object during the dispatch. Can't really protect the
2648         event queue since it's no longer separately reference counted.
2649         (WebCore::DocumentEventQueue::dispatchEvent): Changed this to take a reference and
2650         added a FIXME about some curious code in here that needs a "why" comment.
2651         * dom/DocumentEventQueue.h: Removed many unneeded includes, some unneeded forward
2652         declarations, marked the class final, made it no longer derive from RefCounted,
2653         removed ScrollEventTargetType and create, and did the other changes mentioned above.
2654
2655         * dom/EventQueue.h: Got rid of many uneeded includes, changed the argument type
2656         of cancelEvent to Event& and rewrote the comment for close.
2657
2658         * dom/GenericEventQueue.cpp:
2659         (WebCore::GenericEventQueue::GenericEventQueue): Updated to take a reference.
2660         (WebCore::GenericEventQueue::enqueueEvent): Ditto.
2661         (WebCore::GenericEventQueue::timerFired): Ditto.
2662         * dom/GenericEventQueue.h: Changed this class to no longer derive from EventQueue
2663         since there was no value coming from that polymorphism. Removed all the virtual
2664         keywords from the class. Switched from pointers to references. Removed the unused
2665         cancelEvent function. Removed the create function since this is always used as a
2666         data member, not a pointer on the heap.
2667
2668         * dom/ScriptExecutionContext.h: Changed the return type of eventQueue to a reference.
2669
2670         * html/HTMLMediaElement.cpp:
2671         (WebCore::HTMLMediaElement::HTMLMediaElement): Updated since event queue is now a
2672         member rather than an OwnPtr.
2673         (WebCore::HTMLMediaElement::~HTMLMediaElement): Ditto.
2674         (WebCore::HTMLMediaElement::scheduleEvent): Ditto.
2675         (WebCore::HTMLMediaElement::updateActiveTextTrackCues): Ditto.
2676         (WebCore::HTMLMediaElement::cancelPendingEventsAndCallbacks): Ditto.
2677         (WebCore::HTMLMediaElement::mediaPlayerKeyAdded): Ditto.
2678         (WebCore::HTMLMediaElement::mediaPlayerKeyError): Ditto.
2679         (WebCore::HTMLMediaElement::mediaPlayerKeyMessage): Ditto.
2680         (WebCore::HTMLMediaElement::mediaPlayerKeyNeeded): Ditto.
2681         (WebCore::HTMLMediaElement::stop): Ditto.
2682         (WebCore::HTMLMediaElement::hasPendingActivity): Ditto.
2683         * html/HTMLMediaElement.h: Ditto.
2684
2685         * page/EventHandler.cpp:
2686         (WebCore::EventHandler::sendScrollEvent): Updated to remove the now-uneeded
2687         ScrollEventTargetType argument, and also to use references instead of pointers.
2688         * rendering/RenderLayer.cpp:
2689         (WebCore::RenderLayer::scrollTo): Ditto.
2690         * rendering/RenderListBox.cpp:
2691         (WebCore::RenderListBox::scrollTo): Ditto.
2692
2693         * workers/WorkerEventQueue.cpp:
2694         (WebCore::WorkerEventQueue::WorkerEventQueue): Updated to work with references
2695         instead of pointers.
2696         (WebCore::WorkerEventQueue::enqueueEvent): Ditto.
2697         (WebCore::WorkerEventQueue::cancelEvent): Use the take function instead of a
2698         get/remove pair, to eliminate double hashing.
2699         * workers/WorkerEventQueue.h: Removed unneeded includes, forward declarations,
2700         the create function, and the private removeEvent function. Marked class final.
2701
2702         * workers/WorkerGlobalScope.cpp:
2703         (WebCore::WorkerGlobalScope::WorkerGlobalScope): Updated since eventQueue is
2704         now a data member.
2705         (WebCore::WorkerGlobalScope::eventQueue): Ditto.
2706         * workers/WorkerGlobalScope.h: Made m_eventQueue a queue instead of a pointer
2707         to a queue. Also made the eventQueue function private and final.
2708
2709 2013-09-09  Hans Muller  <hmuller@adobe.com>
2710
2711         [CSS Shapes] Heap-buffer-overflow in WebCore::ShapeInterval<float>::subtractShapeIntervals
2712         https://bugs.webkit.org/show_bug.cgi?id=120802
2713
2714         Reviewed by Darin Adler.
2715
2716         Revised the implementation of subtractShapeIntervals() to isloate and check the
2717         places where it dereferences ShapeInterval vector iterators.
2718
2719         Test: fast/shapes/shape-inside/shape-inside-subtract-intervals-crash.html
2720
2721         * rendering/shapes/ShapeInterval.h:
2722         (WebCore::ShapeInterval::subtractShapeIntervals):
2723
2724 2013-09-09  Darin Adler  <darin@apple.com>
2725
2726         matchingShorthandsForLonghand builds map using a giant function
2727         https://bugs.webkit.org/show_bug.cgi?id=121029
2728
2729         Reviewed by Anders Carlsson.
2730
2731         There is no need to use a map for this; a switch statement is fine.
2732         Also, these structures are simple enough that we can build them
2733         every time; we don't need to keep them in globals.
2734
2735         * css/CSSParser.cpp:
2736         (WebCore::CSSParser::addProperty): Got rid of non-helpful local in
2737         CSS_VARIABLES code. Updated for change in return value of the
2738         matchingShorthandsForLonghand.
2739         (WebCore::CSSParser::parseShorthand): Updated for change in return
2740         type of propertiesForInitialization.
2741
2742         * css/CSSProperty.cpp:
2743         (WebCore::StylePropertyMetadata::shorthandID): Updated for change in
2744         return value of matchingShorthandsForLonghand.
2745
2746         * css/StylePropertyShorthand.cpp:
2747         (WebCore::backgroundShorthand): Got rid of local variable, constructing
2748         the StylePropertyShorthand every time.
2749         (WebCore::backgroundPositionShorthand): Ditto.
2750         (WebCore::backgroundRepeatShorthand): Ditto.
2751         (WebCore::borderShorthand): Ditto.
2752         (WebCore::borderAbridgedShorthand): Ditto.
2753         (WebCore::borderBottomShorthand): Ditto.
2754         (WebCore::borderColorShorthand): Ditto.
2755         (WebCore::borderImageShorthand): Ditto.
2756         (WebCore::borderLeftShorthand): Ditto.
2757         (WebCore::borderRadiusShorthand): Ditto.
2758         (WebCore::webkitBorderRadiusShorthand): Ditto.
2759         (WebCore::borderRightShorthand): Ditto.
2760         (WebCore::borderSpacingShorthand): Ditto.
2761         (WebCore::borderStyleShorthand): Ditto.
2762         (WebCore::borderTopShorthand): Ditto.
2763         (WebCore::borderWidthShorthand): Ditto.
2764         (WebCore::listStyleShorthand): Ditto.
2765         (WebCore::fontShorthand): Ditto.
2766         (WebCore::marginShorthand): Ditto. Ditto.
2767         (WebCore::markerShorthand): Ditto.
2768         (WebCore::outlineShorthand): Ditto.
2769         (WebCore::overflowShorthand): Ditto.
2770         (WebCore::paddingShorthand): Ditto.
2771         (WebCore::transitionShorthand): Ditto.
2772         (WebCore::webkitAnimationShorthand): Ditto.
2773         (WebCore::webkitAnimationShorthandForParsing): Ditto.
2774         (WebCore::webkitBorderAfterShorthand): Ditto.
2775         (WebCore::webkitBorderBeforeShorthand): Ditto.
2776         (WebCore::webkitBorderEndShorthand): Ditto.
2777         (WebCore::webkitBorderStartShorthand): Ditto.
2778         (WebCore::webkitColumnsShorthand): Ditto.
2779         (WebCore::webkitColumnRuleShorthand): Ditto.
2780         (WebCore::webkitFlexFlowShorthand): Ditto.
2781         (WebCore::webkitFlexShorthand): Ditto.
2782         (WebCore::webkitMarginCollapseShorthand): Ditto.
2783         (WebCore::webkitGridColumnShorthand): Ditto.
2784         (WebCore::webkitGridRowShorthand): Ditto.
2785         (WebCore::webkitMarqueeShorthand): Ditto.
2786         (WebCore::webkitMaskShorthand): Ditto.
2787         (WebCore::webkitMaskPositionShorthand): Ditto.
2788         (WebCore::webkitMaskRepeatShorthand): Ditto.
2789         (WebCore::webkitTextDecorationShorthand): Ditto.
2790         (WebCore::webkitTextEmphasisShorthand): Ditto.
2791         (WebCore::webkitTextStrokeShorthand): Ditto.
2792         (WebCore::webkitTransitionShorthand): Ditto.
2793         (WebCore::webkitTransformOriginShorthand): Ditto.
2794         (WebCore::widthShorthand): Ditto.
2795         (WebCore::heightShorthand): Ditto.
2796         (WebCore::shorthandForProperty): Ditto.
2797         (WebCore::makeVector): Added. Helper function for the cases in the
2798         switch inside matchingShorthandsForLonghand.
2799         (WebCore::matchingShorthandsForLonghand): Rewrote this to use a switch
2800         instead of a map.
2801         (WebCore::indexOfShorthandForLonghand): Tightened up the coding style a bit.
2802
2803         * css/StylePropertyShorthand.h: Changed type of StylePropertyShorthand's
2804         propertiesForInitialization to be an array of shorthands rather than an
2805         array of pointers to shorthands. Changed return types of the shorthand
2806         functions to return a shorthand object rather than a reference. Did the same
2807         for the other functions.
2808
2809 2013-09-09  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2810
2811         MouseEnter and MouseLeave may be emitted on Document nodes
2812         https://bugs.webkit.org/show_bug.cgi?id=120862
2813
2814         Reviewed by Antonio Gomes.
2815
2816         Replace the overgeneric use of Nodes with Elements in updateHoverActiveState.
2817         This also fixes the bug of emitting mouseenter/mouseleave events on Document,
2818         since Document is not an Element.
2819
2820         This is tested by fast/events/mouseenterleave-on-subframe.html
2821
2822         * dom/Document.cpp:
2823         (WebCore::Document::updateHoverActiveState):
2824
2825 2013-09-09  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2826
2827         MouseLeave not always emitted when cursor leaves subframe
2828         https://bugs.webkit.org/show_bug.cgi?id=121026
2829
2830         Reviewed by Antonio Gomes.
2831
2832         Forward the PlatformMouseEvent in the recursive calls so nested documents
2833         also get a chance to emit mouseleave when the hover moves out.
2834
2835         Test: fast/events/mouseenterleave-on-subframe.html
2836
2837         * dom/Document.cpp:
2838         (WebCore::Document::updateHoverActiveState):
2839
2840 2013-09-09  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
2841
2842         Adding username to RTCIceServer
2843         https://bugs.webkit.org/show_bug.cgi?id=120861
2844
2845         Reviewed by Eric Carlson.
2846
2847         No new tests needed. Existing media stream tests already cover it
2848
2849         * Modules/mediastream/RTCPeerConnection.cpp:
2850         (WebCore::RTCPeerConnection::parseConfiguration):
2851         * platform/mediastream/RTCConfiguration.h:
2852         (WebCore::RTCIceServer::create):
2853         (WebCore::RTCIceServer::username):
2854         (WebCore::RTCIceServer::RTCIceServer):
2855
2856 2013-09-09  Antti Koivisto  <antti@apple.com>
2857
2858         Hide Document::renderer()
2859         https://bugs.webkit.org/show_bug.cgi?id=121028
2860
2861         Reviewed by Andreas Kling.
2862
2863         Use less generic Document::renderView() instead.
2864
2865         * accessibility/AXObjectCache.cpp:
2866         (WebCore::AXObjectCache::postNotification):
2867         * accessibility/AccessibilityObject.cpp:
2868         (WebCore::appendAccessibilityObject):
2869         * accessibility/AccessibilityScrollView.cpp:
2870         (WebCore::AccessibilityScrollView::webAreaObject):
2871         * css/CSSFontSelector.cpp:
2872         (WebCore::CSSFontSelector::dispatchInvalidationCallbacks):
2873         * css/StyleResolver.cpp:
2874         (WebCore::StyleResolver::appendAuthorStyleSheets):
2875         * dom/Document.cpp:
2876         (WebCore::Document::~Document):
2877         (WebCore::Document::webkitGetNamedFlows):
2878         (WebCore::Document::setVisualUpdatesAllowed):
2879         (WebCore::Document::elementFromPoint):
2880         (WebCore::Document::caretRangeFromPoint):
2881         (WebCore::Document::updateLayout):
2882         (WebCore::Document::existingAXObjectCache):
2883         (WebCore::Document::axObjectCache):
2884         (WebCore::Document::setVisuallyOrdered):
2885         (WebCore::Document::implicitClose):
2886         (WebCore::Document::prepareMouseEvent):
2887         (WebCore::Document::styleResolverChanged):
2888         (WebCore::Document::documentWillBecomeInactive):
2889         (WebCore::Document::documentDidResumeFromPageCache):
2890         * dom/Document.h:
2891         * dom/DocumentStyleSheetCollection.cpp:
2892         (WebCore::DocumentStyleSheetCollection::updateActiveStyleSheets):
2893         * dom/Element.cpp:
2894         (WebCore::Element::~Element):
2895         * dom/InlineStyleSheetOwner.cpp:
2896         (WebCore::InlineStyleSheetOwner::removedFromDocument):
2897         * dom/ProcessingInstruction.cpp:
2898         (WebCore::ProcessingInstruction::removedFrom):
2899         * editing/FrameSelection.cpp:
2900         (WebCore::FrameSelection::contains):
2901         * html/HTMLElement.cpp:
2902         (WebCore::HTMLElement::adjustDirectionalityIfNeededAfterChildrenChanged):
2903         * html/HTMLLinkElement.cpp:
2904         (WebCore::HTMLLinkElement::removedFrom):
2905         * html/HTMLStyleElement.cpp:
2906         (WebCore::HTMLStyleElement::parseAttribute):
2907         (WebCore::HTMLStyleElement::registerWithScopingNode):
2908         (WebCore::HTMLStyleElement::unregisterWithScopingNode):
2909         * html/parser/HTMLResourcePreloader.cpp:
2910         (WebCore::HTMLResourcePreloader::preload):
2911         * loader/ImageLoader.cpp:
2912         (WebCore::ImageLoader::updateFromElement):
2913         * page/EventHandler.cpp:
2914         (WebCore::EventHandler::handleWheelEvent):
2915         (WebCore::EventHandler::handleGestureScrollBegin):
2916         * page/Frame.cpp:
2917         (WebCore::Frame::setPageAndTextZoomFactors):
2918         * page/FrameView.cpp:
2919         (WebCore::FrameView::layout):
2920         (WebCore::FrameView::doLayoutWithFrameFlattening):
2921         * page/Page.cpp:
2922         (WebCore::Page::setPageScaleFactor):
2923         * page/PrintContext.cpp:
2924         (WebCore::PrintContext::spoolAllPagesWithBoundaries):
2925         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
2926         (WebCore::MediaPlayerPrivateQTKit::paint):
2927         * style/StyleResolveTree.cpp:
2928         (WebCore::Style::resolveTree):
2929         * svg/SVGDocument.cpp:
2930         (WebCore::SVGDocument::updatePan):
2931
2932 2013-09-09  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2933
2934         [DOM4] Have ProcessingInstruction inherit CharacterData
2935         https://bugs.webkit.org/show_bug.cgi?id=120691
2936
2937         Reviewed by Darin Adler.
2938
2939         Have ProcessingInstruction inherit CharacterData as per the latest DOM4
2940         specification:
2941         http://dom.spec.whatwg.org/#processinginstruction
2942
2943         Previously, ProcessingInstruction was inheriting from Node as per DOM
2944         Level 3.
2945
2946         Firefox and Blink already follow DOM4 here but not IE10.
2947         This change leads to less code duplication.
2948
2949         Test: fast/dom/processing-instruction-inherit-characterdata.xhtml
2950
2951         * bindings/objc/PublicDOMInterfaces.h:
2952         * dom/CharacterData.cpp:
2953         (WebCore::CharacterData::setDataAndUpdate):
2954         * dom/ProcessingInstruction.cpp:
2955         (WebCore::ProcessingInstruction::ProcessingInstruction):
2956         (WebCore::ProcessingInstruction::cloneNode):
2957         (WebCore::ProcessingInstruction::checkStyleSheet):
2958         (WebCore::ProcessingInstruction::insertedInto):
2959         (WebCore::ProcessingInstruction::removedFrom):
2960         (WebCore::ProcessingInstruction::finishParsingChildren):
2961         * dom/ProcessingInstruction.h:
2962         (WebCore::toProcessingInstruction):
2963         * dom/ProcessingInstruction.idl:
2964
2965 2013-09-09  Krzysztof Czech  <k.czech@samsung.com>
2966
2967         [AX][ATK] AccessibilityObject representing ProgressBar element should be ATK_VALUE type
2968         https://bugs.webkit.org/show_bug.cgi?id=121023
2969
2970         Reviewed by Mario Sanchez Prada.
2971
2972         Test: accessibility/progressbar.html
2973
2974         ProgressBar element should support ATK_VALUE interface.
2975
2976         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
2977         (getInterfaceMaskFromObject):
2978
2979 2013-09-09  Claudio Saavedra  <csaavedra@igalia.com>
2980
2981         [GTK]  ghost cursor when mouse hovers over an image file in a tab
2982         https://bugs.webkit.org/show_bug.cgi?id=120675
2983
2984         Reviewed by Carlos Garcia Campos.
2985
2986         No new tests, covered by existing.
2987
2988         * platform/gtk/CursorGtk.cpp:
2989         (WebCore::createNamedCursor): Use new gdk_cursor_new_from_surface()
2990         when compiling against GTK+ 3.9.12 or newer.
2991
2992 2013-09-08  Santosh Mahto  <santosh.ma@samsung.com>
2993
2994         HTMLDocument.h : Removing unnecessary forward declaration.
2995         https://bugs.webkit.org/show_bug.cgi?id=121002
2996
2997         Reviewed by Darin Adler.
2998
2999         Just code cleanup.
3000         Removed the two forward declaration in HTMLDocument.h file.
3001
3002         * html/HTMLDocument.h:
3003
3004 2013-09-08  Gurpreet Kaur  <k.gurpreet@samsung.com>
3005
3006         defining line height affects height of text box
3007         https://bugs.webkit.org/show_bug.cgi?id=17619
3008
3009         Reviewed by Darin Adler.
3010
3011         Giving line height to input elements increase the height
3012         of the element. To make it work similiar as Mozilla and IE
3013         line-height :normal should be applied for input elements.
3014
3015         Test: fast/dom/HTMLInputElement/input-line-height.html
3016
3017         * css/html.css:
3018         (input):
3019         Made the line-height: normal as !important so that it does not
3020         consider any other line-height specified through internal or 
3021         external styles.
3022
3023 2013-09-08  Gurpreet Kaur  <k.gurpreet@samsung.com>
3024
3025         Scrollbar width is not applied when element hidden
3026         https://bugs.webkit.org/show_bug.cgi?id=90546
3027
3028         Reviewed by Simon Fraser.
3029
3030         Webkit has css properties through which custom scroll
3031         bars can be added. Incase the element's visible property
3032         is hidden and custom scrollbar properties are applied
3033         the scrollbar width is not considered when quering the 
3034         element.clientWidth. Incase of non-custom scrollbars 
3035         whether the element's visible property is hidden or not
3036         correct scrollbar width is considered.
3037
3038         Tests: fast/dom/Element/scroll-width-hidden.html
3039                fast/dom/Element/scroll-width-visible.html
3040
3041         * rendering/RenderScrollbar.cpp:
3042         (WebCore::RenderScrollbar::updateScrollbarPart):
3043         Incase custom scrollbar is created there is a check whether
3044         the renderer to which scrollbar is added is visible or not.
3045         This check is not required since for non-custom scrollbars same
3046         check is not present. Also whether element's visible property is
3047         hidden or not a placeholder is set for the element. Both behavoiur
3048         i.e custom and non-custom scrollbars should be same.
3049
3050 2013-09-08  Tamas Czene  <tczene@inf.u-szeged.hu>
3051
3052         GStreamer 0.10 build fix after r155251.
3053
3054         Reviewed by Csaba Osztrogon√°c.
3055
3056         * platform/graphics/gstreamer/GStreamerVersioning.cpp:
3057
3058 2013-09-08  Christophe Dumez  <ch.dumez@sisa.samsung.com>
3059
3060         [wk2] REGRESSION (r154673): PDF scrolling moves very slowly
3061         https://bugs.webkit.org/show_bug.cgi?id=120542
3062
3063         Reviewed by Tim Horton.
3064
3065         Handle 'wheel' events in addition to 'mousewheel'.
3066
3067         * html/shadow/MediaControlsApple.cpp:
3068         Listen for the standard 'wheel' event instead of the legacy 'mousewheel' one.
3069         While not strictly needed, we should use the legacy events as little as
3070         possible.
3071         * plugins/PluginView.cpp:
3072         Handle 'wheel' events in addition to 'mousewheel'.
3073
3074 2013-09-08  Darin Adler  <darin@apple.com>
3075
3076         Make Editor::deleteButtonController a reference
3077         https://bugs.webkit.org/show_bug.cgi?id=121019
3078
3079         Reviewed by Andreas Kling.
3080
3081         * dom/ContainerNode.cpp:
3082         (WebCore::ContainerNode::cloneChildNodes): Updated to use . instead of ->.
3083         * editing/DeleteButton.cpp:
3084         (WebCore::DeleteButton::defaultEventHandler): Ditto.
3085
3086         * editing/DeleteButtonController.cpp:
3087         (WebCore::DeleteButtonController::DeleteButtonController): Updated to take a Frame&
3088         instead of a Frame*.
3089         (WebCore::DeleteButtonController::respondToChangedSelection): Ditto.
3090         (WebCore::DeleteButtonController::createDeletionUI): Ditto.
3091         (WebCore::DeleteButtonController::show): Ditto.
3092         (WebCore::DeleteButtonController::enable): Ditto.
3093         (WebCore::DeleteButtonController::deleteTarget): Ditto.
3094         * editing/DeleteButtonController.h: Ditto.
3095
3096         * editing/Editor.cpp:
3097         (WebCore::Editor::avoidIntersectionWithDeleteButtonController): Removed bogus
3098         null check from both versions of this function.
3099         (WebCore::Editor::Editor): Use construction rather than assignment and pass
3100         a reference instead of a pointer to make m_deleteButtonController.
3101         (WebCore::Editor::clear): Ditto.
3102
3103         * editing/Editor.h: Made deleteButtonController return a reference.
3104         Also reorganized the header to put all the conditional functions together,
3105         and not mixed in with non-conditional ones.
3106
3107         * editing/markup.cpp:
3108         (WebCore::createMarkup): Updated to use . instead of -> and also to use
3109         emptyString() instead of constructing a new empty string.
3110
3111 2013-09-08  Andreas Kling  <akling@apple.com>
3112
3113         InlineBox::root() should return a reference.
3114         <https://webkit.org/b/121014>
3115
3116         Reviewed by Antti Koivisto.
3117
3118         There is always a root inline box, so make root() return a reference.
3119         Also make some effort to cache the result in a local at call sites.
3120
3121 2013-09-08  Andreas Kling  <akling@apple.com>
3122
3123         FrameView::scheduleEvent() is over-engineered.
3124         <https://webkit.org/b/121004>
3125
3126         Reviewed by Antti Koivisto.
3127
3128         Remove gratuitous FrameActionScheduler class that was really only being used
3129         to defer the occassional "overflowchanged" event until layout had finished.
3130
3131         * CMakeLists.txt:
3132         * GNUmakefile.list.am:
3133         * Target.pri:
3134         * WebCore.vcxproj/WebCore.vcxproj:
3135         * WebCore.vcxproj/WebCore.vcxproj.filters:
3136         * WebCore.xcodeproj/project.pbxproj:
3137         * page/FrameActionScheduler.cpp:
3138         * page/FrameActionScheduler.h:
3139
3140             Removed FrameActionScheduler.
3141
3142         * page/FrameView.h:
3143         * page/FrameView.cpp:
3144         (WebCore::FrameView::FrameView):
3145         (WebCore::FrameView::~FrameView):
3146         (WebCore::FrameView::layout):
3147         (WebCore::FrameView::ScheduledEvent::ScheduledEvent):
3148         (WebCore::FrameView::scheduleEvent):
3149         (WebCore::FrameView::pauseScheduledEvents):
3150         (WebCore::FrameView::resumeScheduledEvents):
3151         (WebCore::FrameView::performPostLayoutTasks):
3152         (WebCore::FrameView::updateOverflowStatus):
3153
3154             Replaced it with a Vector<ScheduledEvent> and a suppression counter.
3155             A ScheduledEvent is just a { Node, Event } pair.
3156
3157 2013-09-08  Anders Carlsson  <andersca@apple.com>
3158
3159         Move WTF::notFound to Vector.h and delete NotFound.h
3160         https://bugs.webkit.org/show_bug.cgi?id=120990
3161
3162         Reviewed by Sam Weinig.
3163
3164         * html/HTMLImageElement.cpp:
3165         * loader/archive/mhtml/MHTMLParser.cpp:
3166         * platform/graphics/cairo/GraphicsContext3DCairo.cpp:
3167         * platform/graphics/win/GraphicsContext3DWin.cpp:
3168         * platform/network/soup/SocketStreamHandleSoup.cpp:
3169
3170 2013-09-08  Commit Queue  <commit-queue@webkit.org>
3171
3172         Unreviewed, rolling out r155069 and r155138.
3173         http://trac.webkit.org/changeset/155069
3174         http://trac.webkit.org/changeset/155138
3175         https://bugs.webkit.org/show_bug.cgi?id=121008
3176
3177         Seems to have broken many tests (bug 120963) (Requested by ap
3178         on #webkit).
3179
3180         * WebCore.xcodeproj/project.pbxproj:
3181         * platform/graphics/cg/PDFDocumentImage.cpp:
3182         (WebCore::PDFDocumentImage::PDFDocumentImage):
3183         (WebCore::PDFDocumentImage::~PDFDocumentImage):
3184         (WebCore::PDFDocumentImage::size):
3185         (WebCore::PDFDocumentImage::dataChanged):
3186         (WebCore::PDFDocumentImage::adjustCTM):
3187         (WebCore::PDFDocumentImage::setCurrentPage):
3188         (WebCore::PDFDocumentImage::pageCount):
3189         (WebCore::PDFDocumentImage::draw):
3190         * platform/graphics/cg/PDFDocumentImage.h:
3191         (WebCore::PDFDocumentImage::create):
3192         (WebCore::PDFDocumentImage::hasSingleSecurityOrigin):
3193         (WebCore::PDFDocumentImage::destroyDecodedData):
3194         (WebCore::PDFDocumentImage::decodedSize):
3195         * platform/graphics/mac/PDFDocumentImageMac.mm: Removed.
3196         * platform/mac/SoftLinking.h:
3197
3198 2013-09-08  Andreas Kling  <akling@apple.com>
3199
3200         ScriptExecutionContext: Use FINAL instead of foo() { virtualFoo() }
3201         <https://webkit.org/b/120827>
3202
3203         Reviewed by Darin Adler.
3204
3205         Now that we have FINAL, we can just use that to have fast versions of url()
3206         and completeURL() when calling through a Document or WorkerGlobalScope pointer.
3207
3208         * dom/Document.cpp:
3209         * dom/Document.h:
3210         * dom/ScriptExecutionContext.h:
3211         * workers/WorkerGlobalScope.cpp:
3212         * workers/WorkerGlobalScope.h:
3213
3214 2013-09-08  Antti Koivisto  <antti@apple.com>
3215
3216         Rename needsShadowTreeWalker
3217         https://bugs.webkit.org/show_bug.cgi?id=121005
3218
3219         Reviewed by Andreas Kling.
3220
3221         Rename to needsNodeRenderingTraversalSlowPath.
3222
3223         * dom/ContainerNode.h:
3224         (WebCore::Node::needsNodeRenderingTraversalSlowPath):
3225         * dom/Element.cpp:
3226         (WebCore::shouldUseNodeRenderingTraversalSlowPath):
3227         (WebCore::Element::resetNeedsNodeRenderingTraversalSlowPath):
3228
3229             Only Elements can have this flag. Move the code here from Node.
3230
3231         (WebCore::Element::addShadowRoot):
3232         (WebCore::Element::setBeforePseudoElement):
3233         (WebCore::Element::setAfterPseudoElement):
3234         (WebCore::Element::clearBeforePseudoElement):
3235         (WebCore::Element::clearAfterPseudoElement):
3236
3237             Reset after clear too.
3238
3239         * dom/Element.h:
3240         * dom/Element.h:
3241         * dom/Node.cpp:
3242         * dom/Node.h:
3243         (WebCore::Node::isInsertionPoint):
3244         (WebCore::Node::setNeedsNodeRenderingTraversalSlowPath):
3245         
3246             Make protected.
3247
3248         * dom/NodeRenderingTraversal.h:
3249         (WebCore::NodeRenderingTraversal::parent):
3250         (WebCore::NodeRenderingTraversal::nextSibling):
3251         (WebCore::NodeRenderingTraversal::previousSibling):
3252
3253 2013-09-08  Andreas Kling  <akling@apple.com>
3254
3255         Render{Block,Inline}::lineBoxes() should return a reference.
3256         <https://webkit.org/b/120995>
3257
3258         Reviewed by Antti Koivisto.
3259
3260         This function was already just returning the address of a member variable.
3261
3262 2013-09-08  Andreas Kling  <akling@apple.com>
3263
3264         Move "using software CSS filters" optimization flag to RenderView.
3265         <https://webkit.org/b/120999>
3266
3267         Reviewed by Antti Koivisto.
3268
3269         This flag is used to avoid an extra tree walk when there are no software CSS filters in use.
3270         Move it from FrameView to RenderView where it belongs.
3271
3272         * page/FrameView.h:
3273         * rendering/RenderLayer.cpp:
3274         (WebCore::RenderLayer::updateOrRemoveFilterEffectRenderer):
3275         * rendering/RenderObject.cpp:
3276         (WebCore::RenderObject::containerForRepaint):
3277         * rendering/RenderView.cpp:
3278         (WebCore::RenderView::RenderView):
3279         * rendering/RenderView.h:
3280
3281 2013-09-08  Andreas Kling  <akling@apple.com>
3282
3283         FrameLoader::icon() should return a reference.
3284         <https://webkit.org/b/120993>
3285
3286         Reviewed by Antti Koivisto.
3287
3288         This function never returns null. Make it return a reference!
3289
3290 2013-09-08  Andreas Kling  <akling@apple.com>
3291
3292         Remove unused Scrollbar tickmark stuff.
3293         <https://webkit.org/b/121000>
3294
3295         Reviewed by Antti Koivisto.
3296
3297         This code is no longer used by any ports.
3298
3299         * page/FrameView.cpp:
3300         * page/FrameView.h:
3301         * platform/ScrollableArea.h:
3302         * platform/Scrollbar.cpp:
3303         * platform/Scrollbar.h:
3304         * platform/ScrollbarThemeClient.h:
3305
3306 2013-09-08  Antti Koivisto  <antti@apple.com>
3307
3308         Remove ComposedShadowTreeWalker
3309         https://bugs.webkit.org/show_bug.cgi?id=120997
3310
3311         Reviewed by Andreas Kling.
3312
3313         Move the code to NodeRenderingTraversal which is the only client besides Internals.
3314
3315         * CMakeLists.txt:
3316         * GNUmakefile.list.am:
3317         * Target.pri:
3318         * WebCore.exp.in:
3319         * WebCore.vcxproj/WebCore.vcxproj:
3320         * WebCore.xcodeproj/project.pbxproj:
3321         * dom/ComposedShadowTreeWalker.cpp: Removed.
3322         * dom/ComposedShadowTreeWalker.h: Removed.
3323         * dom/NodeRenderingTraversal.cpp:
3324         (WebCore::NodeRenderingTraversal::nodeCanBeDistributed):
3325         (WebCore::NodeRenderingTraversal::findFirstSiblingEnteringInsertionPoints):
3326         (WebCore::NodeRenderingTraversal::findFirstEnteringInsertionPoints):
3327         (WebCore::NodeRenderingTraversal::findFirstFromDistributedNode):
3328         (WebCore::NodeRenderingTraversal::findLastSiblingEnteringInsertionPoints):
3329         (WebCore::NodeRenderingTraversal::findLastEnteringInsertionPoints):
3330         (WebCore::NodeRenderingTraversal::findLastFromDistributedNode):
3331         (WebCore::NodeRenderingTraversal::traverseParent):
3332         (WebCore::NodeRenderingTraversal::traverseFirstChild):
3333         (WebCore::NodeRenderingTraversal::traverseLastChild):
3334         (WebCore::NodeRenderingTraversal::traverseNextSibling):
3335         (WebCore::NodeRenderingTraversal::traversePreviousSibling):
3336         
3337             Make former members of ComposedShadowTreeWalker standalone functions in NodeRenderingTraversal.
3338
3339         (WebCore::NodeRenderingTraversal::parentSlow):
3340         (WebCore::NodeRenderingTraversal::nextSiblingSlow):
3341         (WebCore::NodeRenderingTraversal::previousSiblingSlow):
3342         (WebCore::NodeRenderingTraversal::nextInScope):
3343         (WebCore::NodeRenderingTraversal::previousInScope):
3344         (WebCore::NodeRenderingTraversal::parentInScope):
3345         (WebCore::NodeRenderingTraversal::lastChildInScope):
3346         * testing/Internals.cpp:
3347         * testing/Internals.h:
3348         * testing/Internals.idl:
3349
3350 2013-09-08  Andreas Kling  <akling@apple.com>
3351
3352         FrameLoader::policyChecker() should return a reference.
3353         <https://webkit.org/b/120991>
3354
3355         Reviewed by Antti Koivisto.
3356
3357         This function never returns null. Make it return a reference!
3358
3359 2013-09-08  Andreas Kling  <akling@apple.com>
3360
3361         FrameLoader::mixedContentChecker() should return a reference.
3362         <https://webkit.org/b/120992>
3363
3364         Reviewed by Antti Koivisto.
3365
3366         This function was already just returning the address of a member variable.
3367
3368 2013-09-07  Antti Koivisto  <antti@apple.com>
3369
3370         Separate forward and backward paths in ComposedShadowTreeWalker
3371         https://bugs.webkit.org/show_bug.cgi?id=120979
3372
3373         Reviewed by Andreas Kling.
3374
3375         Have separate first/last and next/previous paths instead of using a direction enum.
3376         
3377         Reduce the number of helper functions and give them more understandable names.
3378
3379         * dom/ComposedShadowTreeWalker.cpp:
3380         (WebCore::findFirstSiblingEnteringInsertionPoints):
3381         (WebCore::findFirstEnteringInsertionPoints):
3382         (WebCore::findFirstFromDistributedNode):
3383         (WebCore::findLastSiblingEnteringInsertionPoints):
3384         (WebCore::findLastEnteringInsertionPoints):
3385         (WebCore::findLastFromDistributedNode):
3386         (WebCore::ComposedShadowTreeWalker::firstChild):
3387         (WebCore::ComposedShadowTreeWalker::traverseFirstChild):
3388         (WebCore::ComposedShadowTreeWalker::lastChild):
3389         (WebCore::ComposedShadowTreeWalker::traverseLastChild):
3390         (WebCore::ComposedShadowTreeWalker::nextSibling):
3391         (WebCore::ComposedShadowTreeWalker::previousSibling):
3392         (WebCore::ComposedShadowTreeWalker::traverseNextSibling):
3393         (WebCore::ComposedShadowTreeWalker::traversePreviousSibling):
3394         * dom/ComposedShadowTreeWalker.h:
3395
3396 2013-09-07  Andreas Kling  <akling@apple.com>
3397
3398         Beat FrameView with the FINAL stick.
3399         <https://webkit.org/b/120989>
3400
3401         Reviewed by Anders Carlsson.
3402
3403         ... and mark everything virtual with OVERRIDE, exposing a couple of things
3404         that didn't actually override anything.
3405
3406         * WebCore.exp.in:
3407         * page/FrameView.h:
3408
3409 2013-09-07  Anders Carlsson  <andersca@apple.com>
3410
3411         Remove NonCopyableSort.h from WTF
3412         https://bugs.webkit.org/show_bug.cgi?id=120984
3413
3414         Reviewed by Andreas Kling.
3415
3416         * css/MediaQuery.cpp:
3417         (WebCore::MediaQuery::MediaQuery):
3418         * html/HTMLMediaElement.cpp:
3419         (WebCore::HTMLMediaElement::updateActiveTextTrackCues):
3420         * html/RangeInputType.cpp:
3421         (WebCore::RangeInputType::updateTickMarkValues):
3422         * inspector/InspectorMemoryAgent.cpp:
3423         * page/CaptionUserPreferences.cpp:
3424         (WebCore::CaptionUserPreferences::sortedTrackListForMenu):
3425         * page/CaptionUserPreferences.h:
3426         * page/CaptionUserPreferencesMediaAF.cpp:
3427         (WebCore::CaptionUserPreferencesMediaAF::sortedTrackListForMenu):
3428         * platform/graphics/texmap/TextureMapper.cpp:
3429         (WebCore::BitmapTexturePool::releaseUnusedTexturesTimerFired):
3430
3431 2013-09-07  Antti Koivisto  <antti@apple.com>
3432
3433         Simplify ComposedShadowTreeWalker parent traversal
3434         https://bugs.webkit.org/show_bug.cgi?id=120971
3435
3436         Reviewed by Andreas Kling.
3437
3438         Combine a bunch of parent traversal functions into one.
3439
3440         * dom/ComposedShadowTreeWalker.cpp:
3441         (WebCore::ComposedShadowTreeWalker::traverseParent):
3442         (WebCore::ComposedShadowTreeWalker::previous):
3443         * dom/ComposedShadowTreeWalker.h:
3444         
3445             Remove unused fromFirstChild.
3446
3447 2013-09-07  Anders Carlsson  <andersca@apple.com>
3448
3449         Get rid of PassOwnArrayPtr
3450         https://bugs.webkit.org/show_bug.cgi?id=120964
3451
3452         Reviewed by Andreas Kling.
3453
3454         Use OwnArrayPtr instead of PassOwnArrayPtr.
3455
3456         * html/canvas/WebGLRenderingContext.cpp:
3457         * platform/Length.cpp:
3458         (WebCore::newCoordsArray):
3459         (WebCore::newLengthArray):
3460         * platform/Length.h:
3461         * platform/audio/FFTFrame.h: