4894253de7192dbd8d0109a8f135fec5a73d6500
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-07-12  Eric Carlson  <eric.carlson@apple.com>
2
3         [iOS] TextTrackRepresentation not cleared when captions are disabled
4         https://bugs.webkit.org/show_bug.cgi?id=118623
5
6         Reviewed by Dean Jackson.
7
8         * html/shadow/MediaControlElements.cpp:
9         (WebCore::MediaControlTextTrackContainerElement::updateDisplay): Do not return immediately
10             when captions are disabled so the necessary cleanup happens.
11
12 2013-07-12  Brent Fulgham  <bfulgham@apple.com>
13
14         [Windows] Attempt to satisfy the Open Source Windows bots.
15
16         * DerivedSources.make: Restore the HAVE_AVCF macro detection.
17         * config.h: Return to using HAVE_AVCF to activate AVFoundation code.
18
19 2013-07-12  peavo@outlook.com  <peavo@outlook.com>
20
21         [WinCairo] Compile fix.
22         https://bugs.webkit.org/show_bug.cgi?id=118461
23
24         Reviewed by Brent Fulgham.
25
26         * config.h: Only enable AVFOUNDATION for Windows if CoreGraphics is used.
27
28 2013-07-12  Oleg Beletski  <oleg.beletski@gmail.com>
29
30         [EFL] --minimal build fails while linking libwebcore_efl.so
31         https://bugs.webkit.org/show_bug.cgi?id=118549
32
33         Reviewed by Christophe Dumez.
34
35         * CMakeLists.txt:
36         Moving file plugins/PluginPackage.cpp to ENABLE_NETSCAPE_PLUGIN_API block.
37
38 2013-07-12  Allan Sandfeld Jensen  <allan.jensen@digia.com>
39
40         Insufficient viewport repaints when FrameView::paintsEntireContents
41         https://bugs.webkit.org/show_bug.cgi?id=118562
42
43         Reviewed by Simon Fraser.
44
45         When the frameview paints entire content, the visualOverflowRect of RenderView
46         should be the same as the layoutOverflowRect.
47
48         This affects the requested repaints on resize of the frameview.
49
50         * rendering/RenderView.cpp:
51         (WebCore::RenderView::visualOverflowRect):
52         * rendering/RenderView.h:
53
54 2013-07-10  Roger Fong  <roger_fong@apple.com>
55
56         Plugins that don't support snapshotting should not all autostart.
57         https://bugs.webkit.org/show_bug.cgi?id=118572
58         <rdar://problem/14324391>.
59
60         Reviewed by Dean Jackson.
61
62         Test: plugins/snapshotting/quicktime-plugin-snapshotted.html
63
64         * html/HTMLPlugInImageElement.cpp:
65         (WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot): Pass in information about whether or not a snapshot exists
66         to the shadow dom.
67         * plugins/PluginViewBase.h:
68         (WebCore::PluginViewBase::shouldNotAddLayer): This method determines whether or not we should add the plugin's layer to the tree.
69         It should not be added if the plugin is in it's snapshotted state but does not actually support snapshotting.
70         * rendering/RenderLayerBacking.cpp:
71         (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration): We should only add the layer to the tree when the plugin
72         is actually playing. Otherwise we run into an issue where the contents of the layer initially appear on the screen briefly 
73         on page load before we display the substitute for a plugin that doesn't support snapshotting.
74
75 2013-07-11  Dan Bernstein  <mitz@apple.com>
76
77         [mac] No API for getting the page visibility state of a WebView
78         https://bugs.webkit.org/show_bug.cgi?id=118578
79
80         Reviewed by Simon Fraser.
81
82         * WebCore.exp.in: Export WebCore::Page::visibilityState().
83
84 2013-07-11  Mario Sanchez Prada  <mario.prada@samsung.com>
85
86         [GTK] Layout Test accessibility/deleting-iframe-destroys-axcache.html, platform/gtk/accessibility/replaced-objects-in-anonymous-blocks.html are failing
87         https://bugs.webkit.org/show_bug.cgi?id=118552
88
89         Reviewed by Chris Fleizach.
90
91         Do not assume always that we have a RenderText renderer when
92         calling to toRenderText(), since we might be executing that part
93         of the code due to have requested to include all the children.
94
95         * accessibility/AccessibilityRenderObject.cpp:
96         (WebCore::AccessibilityRenderObject::textUnderElement): Add
97         missing guard for RenderText, needed after r152537.
98
99 2013-07-11  Andrei Bucur  <abucur@adobe.com>
100
101         [CSS Regions] In a region chain with auto-height regions, lines get their length based only on the first region
102         https://bugs.webkit.org/show_bug.cgi?id=118531
103
104         Reviewed by Alexandru Chiculita.
105
106         When computing the height a flow thread it's possible to overflow the maximum LayoutUnit and obtain a negative value.
107         This leads to invalid results during layout when computing the region range and the RenderBoxRegion info for the
108         descendant boxes of the flow thread.
109     
110         This issue appears especially during the auto-height algorithm because it initializes the auto-height regions
111         height with the LayoutUnit::max() / 2 value. Summing two such regions overflows and results in a negative value.
112
113         The fix clamps the maximum height of the flow thread to LayoutUnit::max() / 2. This doesn't affect the auto-height
114         algorithm because regionAtBlockOffset() will still return the correct values as the auto-height regions content
115         is established and their height updated.
116
117         Tests: fast/regions/autoheight-correct-region-for-lines-2.html
118                fast/regions/autoheight-correct-region-for-lines.html
119
120         * rendering/RenderBlock.cpp:
121         (WebCore::RenderBlock::updateRegionsAndShapesBeforeChildLayout):
122         * rendering/RenderFlowThread.cpp:
123         (WebCore::RenderFlowThread::computeLogicalHeight):
124         (WebCore::RenderFlowThread::setRegionRangeForBox):
125         (WebCore::RenderFlowThread::updateRegionsFlowThreadPortionRect):
126         * rendering/RenderFlowThread.h:
127         * rendering/RenderRegion.cpp:
128         (WebCore::RenderRegion::maxPageLogicalHeight):
129
130 2013-07-11  Timothy Hatcher  <timothy@apple.com>
131
132         Revert r152267 and soft link WebInspectorUI.framework again.
133
134         https://bugs.webkit.org/show_bug.cgi?id=118544
135
136         Reviewed by David Kilzer.
137
138         * platform/mac/SoftLinking.h: Rename SOFT_LINK_STAGED_FRAMEWORK_OPTIONAL
139         to SOFT_LINK_STAGED_FRAMEWORK and ASSERT since we don't want to silently
140         fail anymore when using this macro.
141
142 2013-07-11  Jae Hyun Park  <jae.park@company100.net>
143
144         [Coordinated Graphics] Parameter of commitSceneState should be const
145         https://bugs.webkit.org/show_bug.cgi?id=118564
146
147         Reviewed by Noam Rosenthal.
148
149         Parameter of commitSceneState should be const as there should not be any
150         modifications to the passed CoordinatedGraphicsState.
151
152         * platform/graphics/texmap/coordinated/CompositingCoordinator.h:
153
154 2013-07-11  Radu Stavila  <stavila@adobe.com>
155
156         NamedFlowCollection getters should follow the same pattern as HTMLCollection
157         https://bugs.webkit.org/show_bug.cgi?id=118561
158
159         Reviewed by Christophe Dumez.
160
161         Modified item and namedItem methods from DOMNamedFlowCollection to return null instead of undefined.
162         https://www.w3.org/Bugs/Public/show_bug.cgi?id=22617
163         Completely removed the TreatReturnedNullObjectAs attribute as it was only used by the DOMNamedFlowCollection interface.
164
165         Test: fast/regions/webkit-named-flow-collection-empty-getters.html
166
167         * bindings/scripts/CodeGeneratorJS.pm:
168         (GenerateImplementationFunctionCall):
169         * bindings/scripts/IDLAttributes.txt:
170         * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
171         (WebDOMTestObj::treatReturnedNullObjectAsUndefined):
172         * bindings/scripts/test/CPP/WebDOMTestObj.h:
173         * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
174         (webkit_dom_test_obj_treat_returned_null_object_as_undefined):
175         * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
176         * bindings/scripts/test/JS/JSTestObj.cpp:
177         (WebCore::jsTestObjPrototypeFunctionTreatReturnedNullObjectAsUndefined):
178         * bindings/scripts/test/JS/JSTestObj.h:
179         * bindings/scripts/test/ObjC/DOMTestObj.h:
180         * bindings/scripts/test/ObjC/DOMTestObj.mm:
181         (-[DOMTestObj treatReturnedNullObjectAsUndefined]):
182         * bindings/scripts/test/TestObj.idl:
183         * dom/DOMNamedFlowCollection.idl:
184
185 2013-07-11  Andreas Kling  <akling@apple.com>
186
187         Revert r149313: Don't check for @media rules affected by viewport changes in every layout.
188         <rdar://problem/14277905>
189
190         Rubber-stamped by Antti Koivisto.
191
192         This changed caused more harm than good. setFrameRect() is not the only path in FrameView
193         that can cause media queries to need invalidation.
194
195         * page/FrameView.cpp:
196         (WebCore::FrameView::setFrameRect):
197         (WebCore::FrameView::layout):
198
199 2013-07-11  Kangil Han  <kangil.han@samsung.com>
200
201         Introduce isHTMLTitleElement and toHTMLTitleElement
202         https://bugs.webkit.org/show_bug.cgi?id=118558
203
204         Reviewed by Andreas Kling.
205
206         To enhance readability, this patch introduces isHTMLTitleElement and toHTMLTitleElement.
207         This also helps out to reduce duplicated use of static_cast.
208
209         * dom/Document.cpp:
210         (WebCore::Document::setTitle):
211         (WebCore::Document::removeTitle):
212         * editing/ReplaceSelectionCommand.cpp:
213         (WebCore::removeHeadContents):
214         * html/HTMLTitleElement.h:
215         (WebCore::isHTMLTitleElement):
216         (WebCore::toHTMLTitleElement):
217
218 2013-07-11  Patrick Gansterer  <paroga@webkit.org>
219
220         Remove unused Windows CE files
221         https://bugs.webkit.org/show_bug.cgi?id=118557
222
223         Reviewed by Andreas Kling.
224
225         * platform/wince/CursorWinCE.cpp: Removed.
226         * platform/wince/PasteboardWinCE.cpp: Removed.
227         * platform/wince/SearchPopupMenuWinCE.cpp: Removed.
228
229 2013-07-11  Christophe Dumez  <ch.dumez@sisa.samsung.com>
230
231         Get rid of SVGPathSeg* special casing in the bindings generator
232         https://bugs.webkit.org/show_bug.cgi?id=118525
233
234         Reviewed by Kentaro Hara.
235
236         Have one header per SVGPathSeg* type so that we no longer need special casing
237         for them in the JSC bindings generator.
238
239         No new tests, no behavior change.
240
241         * GNUmakefile.list.am:
242         * Target.pri:
243         * WebCore.vcxproj/WebCore.vcxproj:
244         * WebCore.vcxproj/WebCore.vcxproj.filters:
245         * WebCore.xcodeproj/project.pbxproj:
246         * bindings/js/JSSVGPathSegCustom.cpp:
247         * bindings/scripts/CodeGeneratorJS.pm:
248         (AddIncludesForType):
249         (NativeToJSValue):
250         * svg/SVGPathElement.cpp:
251         * svg/SVGPathSegArc.h:
252         * svg/SVGPathSegArcAbs.h: Added.
253         (WebCore::SVGPathSegArcAbs::create):
254         (WebCore::SVGPathSegArcAbs::SVGPathSegArcAbs):
255         (WebCore::SVGPathSegArcAbs::pathSegType):
256         (WebCore::SVGPathSegArcAbs::pathSegTypeAsLetter):
257         * svg/SVGPathSegArcRel.h: Added.
258         (WebCore::SVGPathSegArcRel::create):
259         (WebCore::SVGPathSegArcRel::SVGPathSegArcRel):
260         (WebCore::SVGPathSegArcRel::pathSegType):
261         (WebCore::SVGPathSegArcRel::pathSegTypeAsLetter):
262         * svg/SVGPathSegCurvetoCubic.h:
263         * svg/SVGPathSegCurvetoCubicAbs.h: Added.
264         (WebCore::SVGPathSegCurvetoCubicAbs::create):
265         (WebCore::SVGPathSegCurvetoCubicAbs::SVGPathSegCurvetoCubicAbs):
266         (WebCore::SVGPathSegCurvetoCubicAbs::pathSegType):
267         (WebCore::SVGPathSegCurvetoCubicAbs::pathSegTypeAsLetter):
268         * svg/SVGPathSegCurvetoCubicRel.h: Added.
269         (WebCore::SVGPathSegCurvetoCubicRel::create):
270         (WebCore::SVGPathSegCurvetoCubicRel::SVGPathSegCurvetoCubicRel):
271         (WebCore::SVGPathSegCurvetoCubicRel::pathSegType):
272         (WebCore::SVGPathSegCurvetoCubicRel::pathSegTypeAsLetter):
273         * svg/SVGPathSegCurvetoCubicSmooth.h:
274         * svg/SVGPathSegCurvetoCubicSmoothAbs.h: Copied from Source/WebCore/svg/SVGPathSegCurvetoCubicSmooth.h.
275         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::create):
276         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::SVGPathSegCurvetoCubicSmoothAbs):
277         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::pathSegType):
278         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::pathSegTypeAsLetter):
279         * svg/SVGPathSegCurvetoCubicSmoothRel.h: Copied from Source/WebCore/svg/SVGPathSegCurvetoCubicSmooth.h.
280         (WebCore::SVGPathSegCurvetoCubicSmoothRel::create):
281         (WebCore::SVGPathSegCurvetoCubicSmoothRel::SVGPathSegCurvetoCubicSmoothRel):
282         (WebCore::SVGPathSegCurvetoCubicSmoothRel::pathSegType):
283         (WebCore::SVGPathSegCurvetoCubicSmoothRel::pathSegTypeAsLetter):
284         * svg/SVGPathSegCurvetoQuadratic.h:
285         * svg/SVGPathSegCurvetoQuadraticAbs.h: Copied from Source/WebCore/svg/SVGPathSegCurvetoQuadratic.h.
286         (WebCore::SVGPathSegCurvetoQuadraticAbs::create):
287         (WebCore::SVGPathSegCurvetoQuadraticAbs::SVGPathSegCurvetoQuadraticAbs):
288         (WebCore::SVGPathSegCurvetoQuadraticAbs::pathSegType):
289         (WebCore::SVGPathSegCurvetoQuadraticAbs::pathSegTypeAsLetter):
290         * svg/SVGPathSegCurvetoQuadraticRel.h: Copied from Source/WebCore/svg/SVGPathSegCurvetoQuadratic.h.
291         (WebCore::SVGPathSegCurvetoQuadraticRel::create):
292         (WebCore::SVGPathSegCurvetoQuadraticRel::SVGPathSegCurvetoQuadraticRel):
293         (WebCore::SVGPathSegCurvetoQuadraticRel::pathSegType):
294         (WebCore::SVGPathSegCurvetoQuadraticRel::pathSegTypeAsLetter):
295         * svg/SVGPathSegCurvetoQuadraticSmoothAbs.h: Copied from Source/WebCore/svg/SVGPathSegCurvetoQuadraticSmooth.h.
296         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::create):
297         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::SVGPathSegCurvetoQuadraticSmoothAbs):
298         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::pathSegType):
299         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::pathSegTypeAsLetter):
300         * svg/SVGPathSegCurvetoQuadraticSmoothRel.h: Renamed from Source/WebCore/svg/SVGPathSegCurvetoQuadraticSmooth.h.
301         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::create):
302         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::SVGPathSegCurvetoQuadraticSmoothRel):
303         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::pathSegType):
304         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::pathSegTypeAsLetter):
305         * svg/SVGPathSegLinetoAbs.h: Copied from Source/WebCore/svg/SVGPathSegLineto.h.
306         (WebCore::SVGPathSegLinetoAbs::create):
307         (WebCore::SVGPathSegLinetoAbs::SVGPathSegLinetoAbs):
308         (WebCore::SVGPathSegLinetoAbs::pathSegType):
309         (WebCore::SVGPathSegLinetoAbs::pathSegTypeAsLetter):
310         * svg/SVGPathSegLinetoHorizontal.h:
311         * svg/SVGPathSegLinetoHorizontalAbs.h: Copied from Source/WebCore/svg/SVGPathSegLinetoHorizontal.h.
312         (WebCore::SVGPathSegLinetoHorizontalAbs::create):
313         (WebCore::SVGPathSegLinetoHorizontalAbs::SVGPathSegLinetoHorizontalAbs):
314         (WebCore::SVGPathSegLinetoHorizontalAbs::pathSegType):
315         (WebCore::SVGPathSegLinetoHorizontalAbs::pathSegTypeAsLetter):
316         * svg/SVGPathSegLinetoHorizontalRel.h: Copied from Source/WebCore/svg/SVGPathSegLinetoHorizontal.h.
317         (WebCore::SVGPathSegLinetoHorizontalRel::create):
318         (WebCore::SVGPathSegLinetoHorizontalRel::SVGPathSegLinetoHorizontalRel):
319         (WebCore::SVGPathSegLinetoHorizontalRel::pathSegType):
320         (WebCore::SVGPathSegLinetoHorizontalRel::pathSegTypeAsLetter):
321         * svg/SVGPathSegLinetoRel.h: Renamed from Source/WebCore/svg/SVGPathSegLineto.h.
322         (WebCore::SVGPathSegLinetoRel::create):
323         (WebCore::SVGPathSegLinetoRel::SVGPathSegLinetoRel):
324         (WebCore::SVGPathSegLinetoRel::pathSegType):
325         (WebCore::SVGPathSegLinetoRel::pathSegTypeAsLetter):
326         * svg/SVGPathSegLinetoVertical.h:
327         * svg/SVGPathSegLinetoVerticalAbs.h: Copied from Source/WebCore/svg/SVGPathSegLinetoVertical.h.
328         (WebCore::SVGPathSegLinetoVerticalAbs::create):
329         (WebCore::SVGPathSegLinetoVerticalAbs::SVGPathSegLinetoVerticalAbs):
330         (WebCore::SVGPathSegLinetoVerticalAbs::pathSegType):
331         (WebCore::SVGPathSegLinetoVerticalAbs::pathSegTypeAsLetter):
332         * svg/SVGPathSegLinetoVerticalRel.h: Copied from Source/WebCore/svg/SVGPathSegLinetoVertical.h.
333         (WebCore::SVGPathSegLinetoVerticalRel::create):
334         (WebCore::SVGPathSegLinetoVerticalRel::SVGPathSegLinetoVerticalRel):
335         (WebCore::SVGPathSegLinetoVerticalRel::pathSegType):
336         (WebCore::SVGPathSegLinetoVerticalRel::pathSegTypeAsLetter):
337         * svg/SVGPathSegListBuilder.cpp:
338         * svg/SVGPathSegMovetoAbs.h: Copied from Source/WebCore/svg/SVGPathSegMoveto.h.
339         (WebCore::SVGPathSegMovetoAbs::create):
340         (WebCore::SVGPathSegMovetoAbs::SVGPathSegMovetoAbs):
341         (WebCore::SVGPathSegMovetoAbs::pathSegType):
342         (WebCore::SVGPathSegMovetoAbs::pathSegTypeAsLetter):
343         * svg/SVGPathSegMovetoRel.h: Renamed from Source/WebCore/svg/SVGPathSegMoveto.h.
344         (WebCore::SVGPathSegMovetoRel::create):
345         (WebCore::SVGPathSegMovetoRel::SVGPathSegMovetoRel):
346         (WebCore::SVGPathSegMovetoRel::pathSegType):
347         (WebCore::SVGPathSegMovetoRel::pathSegTypeAsLetter):
348
349 2013-07-11  Patrick Gansterer  <paroga@webkit.org>
350
351         Build fix for WinCE after r152426.
352
353         * config.h:
354
355 2013-07-11  Fabienne Semeria   <fsemeria@nds.com>
356
357         [Qt] memory leak in WebCore::FontCache::getLastResortFallbackFont
358         https://bugs.webkit.org/show_bug.cgi?id=118532
359
360         Reviewed by Allan Sandfeld Jensen.
361
362         * platform/graphics/qt/FontCacheQt.cpp:
363         (WebCore::FontCache::getLastResortFallbackFont):
364
365 2013-07-11  Mario Sanchez Prada  <mario.prada@samsung.com>
366
367         [ATK] Refactor code for translating offsets between WebCore a11y and ATK
368         https://bugs.webkit.org/show_bug.cgi?id=118179
369
370         Reviewed by Chris Fleizach.
371
372         Encapsulate better and make more clear the translation of offsets
373         between our ATK implementation and WebCore's accessibility layer.
374
375         Values for offsets can differ sometimes between those two worlds
376         due to some extra flattening we need to do in ATK based ports to
377         properly expose the accessibility hierarchy to ATs, which
378         sometimes means adding extra text elements in the exposed text
379         through the AtkText interface (e.g. list items markers).
380
381         * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
382         (offsetAdjustmentForListItem): Helper function to refactor code
383         needed to translate offsets from WebCore to ATK worlds. Currently
384         related to considering list item markers in LTR text only.
385         (webCoreOffsetToAtkOffset): Convenience function for code
386         readability purposes. It just calls offsetAdjustmentForListItem.
387         (atkOffsetToWebCoreOffset): Likewise.
388         (getSelectionOffsetsForObject): Use webCoreOffsetToAtkOffset.
389         (webkitAccessibleTextGetCaretOffset): Use webCoreOffsetToAtkOffset
390         to translate an offset from WebCore to ATK before returning it.
391         (webkitAccessibleTextSetSelection): Use atkOffsetToWebCoreOffset
392         to translate an offset from WebCore to ATK before using it.
393         (webkitAccessibleTextSetCaretOffset): Likewise.
394
395 2013-07-10  Sam Weinig  <sam@webkit.org>
396
397         Range.getClientRects() not working correctly for partially contained vertically styled text nodes
398         <rdar://problem/14305675>
399         https://bugs.webkit.org/show_bug.cgi?id=118447
400
401         Reviewed by David Hyatt.
402
403         Original patch by Mac Murrett, tweaked by me.
404
405         Test: fast/dom/Range/getClientRects-vertical.html
406
407         * rendering/RenderText.cpp:
408         (WebCore::localQuadForTextBox):
409         Use the physical accessors rather than the logical ones to get the correct metrics.
410
411 2013-07-10  Christophe Dumez  <ch.dumez@sisa.samsung.com>
412
413         Reduce number of header includes in SVG
414         https://bugs.webkit.org/show_bug.cgi?id=118474
415
416         Reviewed by Rob Buis.
417
418         Reduce number of header includes in SVG. In particular, SVGAnimatedPropertyMacros.h
419         no longer brings SVGElement.h header include. This means that the SVGElement
420         class can now have animated properties.
421
422         This patch is a prerequirement to merge SVGStyledElement into SVGElement.
423
424         No new tests, no behavior change.
425
426         * CMakeLists.txt:
427         * GNUmakefile.list.am:
428         * Target.pri:
429         * WebCore.vcxproj/WebCore.vcxproj:
430         * WebCore.vcxproj/WebCore.vcxproj.filters:
431         * WebCore.xcodeproj/project.pbxproj:
432         * svg/GradientAttributes.h:
433         * svg/SVGAllInOne.cpp:
434         * svg/SVGAnimateMotionElement.cpp:
435         * svg/SVGAnimateMotionElement.h:
436         * svg/SVGAnimatedTypeAnimator.cpp: Added.
437         (WebCore::SVGElementAnimatedProperties::SVGElementAnimatedProperties):
438         (WebCore::SVGAnimatedTypeAnimator::SVGAnimatedTypeAnimator):
439         (WebCore::SVGAnimatedTypeAnimator::~SVGAnimatedTypeAnimator):
440         (WebCore::SVGAnimatedTypeAnimator::calculateFromAndToValues):
441         (WebCore::SVGAnimatedTypeAnimator::calculateFromAndByValues):
442         (WebCore::SVGAnimatedTypeAnimator::findAnimatedPropertiesForAttributeName):
443         * svg/SVGAnimatedTypeAnimator.h:
444         * svg/SVGAnimationElement.h:
445         * svg/SVGCursorElement.cpp:
446         * svg/SVGDocumentExtensions.h:
447         * svg/SVGElement.cpp:
448         * svg/SVGElementInstanceList.cpp:
449         * svg/SVGElementInstanceList.h:
450         * svg/SVGElementRareData.h:
451         * svg/SVGFEImageElement.cpp:
452         * svg/SVGFilterElement.cpp:
453         * svg/SVGFitToViewBox.h:
454         * svg/SVGFontData.cpp:
455         * svg/SVGFontData.h:
456         * svg/SVGFontElement.h:
457         * svg/SVGForeignObjectElement.cpp:
458         * svg/SVGGlyphMap.h:
459         * svg/SVGGradientElement.cpp:
460         * svg/SVGMPathElement.cpp:
461         * svg/SVGMPathElement.h:
462         * svg/SVGPathBlender.cpp:
463         * svg/SVGPathBlender.h:
464         * svg/SVGPathBuilder.cpp:
465         * svg/SVGPathBuilder.h:
466         * svg/SVGPathParser.cpp:
467         * svg/SVGPathParser.h:
468         * svg/SVGPathSegListBuilder.h:
469         * svg/SVGPathTraversalStateBuilder.cpp:
470         * svg/SVGPathTraversalStateBuilder.h:
471         * svg/SVGPathUtilities.h:
472         * svg/SVGPatternElement.cpp:
473         * svg/SVGPointList.h:
474         * svg/SVGScriptElement.cpp:
475         * svg/SVGStyledElement.h:
476         * svg/SVGTests.h:
477         * svg/SVGTextElement.h:
478         * svg/SVGTextPathElement.cpp:
479         * svg/SVGTransformable.h:
480         * svg/SVGURIReference.cpp:
481         * svg/SVGURIReference.h:
482         * svg/SVGVKernElement.cpp:
483         * svg/SVGVKernElement.h:
484         * svg/SVGZoomAndPan.h:
485         * svg/properties/SVGAnimatedProperty.cpp: Added.
486         (WebCore::SVGAnimatedProperty::SVGAnimatedProperty):
487         (WebCore::SVGAnimatedProperty::~SVGAnimatedProperty):
488         (WebCore::SVGAnimatedProperty::commitChange):
489         (WebCore::SVGAnimatedProperty::animatedPropertyCache):
490         * svg/properties/SVGAnimatedProperty.h:
491         * svg/properties/SVGAnimatedPropertyMacros.h:
492         (WebCore::SVGSynchronizableAnimatedProperty::synchronize):
493         * svg/properties/SVGAnimatedStaticPropertyTearOff.h:
494         * svg/properties/SVGListProperty.h:
495
496 2013-07-10  Dominique Leuenberger  <dimstar@opensuse.org>
497
498         Fix build against GTK+ 2.0
499         https://bugs.webkit.org/show_bug.cgi?id=117895
500
501         Reviewed by Martin Robinson.
502
503         GTK2 build fails for undefined GDK_IS_X11_DISPLAY
504         GTK 2.0 does define GDK_WINDOWING_X11,but GDK_IS_X11_DISPLAY is not
505         present in GTK+ 2.0. A dummy defines is sufficient, as GTK 2.0 is not
506         that multiple backend aware anyway...
507
508         * platform/gtk/GtkVersioning.h: Define GDK_IS_X11_DISPLAY for GTK+ 2.0
509           and compatibility for gtk_widget_get_preferred_size()
510         * plugins/gtk/gtk2xtbin.c: Include config.h
511
512 2013-07-10  Tim Horton  <timothy_horton@apple.com>
513
514         Deferring layer flushes can cause painting without layout being done
515         https://bugs.webkit.org/show_bug.cgi?id=118493
516
517         Reviewed by Simon Fraser.
518
519         r147797 added a mechanism for the TileController to inform RenderLayerCompositor
520         that it had performed an action (setNeedsDisplay, etc.) that would cause CoreAnimation
521         to call back into us to paint in this runloop, and that it shouldn't throttle the next
522         layer flush.
523
524         However, if tiles were created and left unparented (because the TileController was
525         out-of-window), when they are later parented, we failed to inform RenderLayerCompositor
526         that they were about to call back for painting, and so it would happily throttle the
527         next layer flush, and layout would be out of date, and garbage and corruption could result.
528
529         To resolve this, rework the logic surrounding parenting existing-but-unparented tiles
530         to ensure that they get added to the TileController's dirtyRect.
531
532         No new tests; the bug only reproduces under specific timing circumstances, and
533         manifests itself as an assertion failure or garbage on the screen, so it's quite
534         hard to make a workable test.
535
536         * platform/graphics/ca/mac/TileController.mm:
537         (WebCore::TileController::revalidateTiles):
538         - Factor out the code to parent unparented tiles so that it is shared between the
539             created-new-tile and reparenting-existing-tile cases.
540         - Keep track of whether we updated the frame of a pre-existing tile.
541         - If the tile is dirty and needed to be parented (because either it's new
542             or hadn't been parented before), add it to the dirty rect list.
543         - If the tile changed size, add it to the dirty rect list.
544
545         (WebCore::TileController::ensureTilesForRect):
546         Ditto everything from revalidateTiles.
547
548         (WebCore::TileController::createTileLayer):
549         - Explicitly mark fresh tiles as needing display, so that we can depend on
550             [WebTileLayer needsDisplay] in revalidateTiles to tell us that it's dirty.
551
552 2013-07-10  Eric Carlson  <eric.carlson@apple.com>
553
554         [Mac] every enabled text track should be listed in the track menu
555         https://bugs.webkit.org/show_bug.cgi?id=118477
556
557         Reviewed by Jer Noble.
558
559         Test: media/video-controls-captions-trackmenu-includes-enabled-track.html
560
561         * html/shadow/MediaControlElements.cpp:
562         (WebCore::MediaControlClosedCaptionsTrackListElement::updateDisplay): Don't select the
563             "Off" menu item if a track is enabled.
564
565         * page/CaptionUserPreferencesMediaAF.cpp:
566         (WebCore::CaptionUserPreferencesMediaAF::sortedTrackListForMenu): Always include a track
567             that is showing in the menu. Add more diagnostic logging.
568
569 2013-07-10  Christophe Dumez  <ch.dumez@sisa.samsung.com>
570
571         Remove ElementTimeControl and expose SVGAnimationElement
572         https://bugs.webkit.org/show_bug.cgi?id=118349
573
574         Reviewed by Rob Buis.
575
576         Remove ElementTimeControl IDL interface and move its attributes
577         to the SVGAnimationElement IDL interface as per the latest SVG2
578         specification:
579         https://svgwg.org/svg2-draft/animate.html#InterfaceSVGAnimationElement
580
581         Also remove [NoInterfaceObject] IDL extended attribute from
582         SVGAnimationElement as it is not present in the specification.
583
584         This is one step towards removing IDL multiple inheritance in SVG and
585         complying with the latest SVG2 specification.
586
587         No new tests, covered by existing test cases.
588
589         * DerivedSources.make:
590         * GNUmakefile.list.am:
591         * WebCore.vcxproj/WebCore.vcxproj:
592         * WebCore.vcxproj/WebCore.vcxproj.filters:
593         * WebCore.xcodeproj/project.pbxproj:
594         * bindings/scripts/CodeGeneratorObjC.pm:
595         * svg/ElementTimeControl.h: Removed.
596         * svg/ElementTimeControl.idl: Removed.
597         * svg/SVGAnimationElement.h:
598         * svg/SVGAnimationElement.idl:
599
600 2013-07-10  Arnaud Renevier  <a.renevier@sisa.samsung.com>
601
602         Web Inspector: "Always enable" profiling does not work
603         https://bugs.webkit.org/show_bug.cgi?id=118487
604
605         Enable profiler when loading panel if profiler is enabled in inspector
606         settings.
607
608         Reviewed by Timothy Hatcher.
609
610         * inspector/front-end/ProfilesPanel.js:
611
612 2013-07-09  Roger Fong  <roger_fong@apple.com>
613
614         HTMLPluginElement's state should be Playing before firing mouse click event.
615         https://bugs.webkit.org/show_bug.cgi?id=118398.
616         <rdar://problem/14262126>
617
618         Reviewed by Dean Jackson.
619
620         Test: plugins/snapshotting/plugin-receives-click-event.html
621
622         * html/HTMLPlugInImageElement.cpp:
623         (WebCore::HTMLPlugInImageElement::simulatedMouseClickTimerFired):
624         The defaultEventHandler returns early if the state is not Playing.
625         This is because we only want the plugin to deal with user interaction normally if the
626         plugin is actually enabled (not being snapshotted).
627         When we click on the snapshotted plugin to start it, we mimic what would happen to the plugin
628         normally by dispatching another click event on top of where we just clicked.
629         However, we were sending the click event before setting the state to Playing which meant that our
630         simulated click was not being handled. 
631         We should be setting this state before sending the click, not after.
632
633 2013-07-10  Nick Diego Yamane  <nick.yamane@openbossa.org>
634
635         Fix a bug in MediaStreamDescriptor::removeVideoComponent
636         https://bugs.webkit.org/show_bug.cgi?id=118446
637
638         Reviewed by Eric Carlson.
639
640         MediaStreamDescriptor::removeVideoComponent is currently trying to
641         remove the 'videoComponent' from the wrong vector.
642
643         * platform/mediastream/MediaStreamDescriptor.h:
644         (WebCore::MediaStreamDescriptor::removeVideoComponent):
645
646 2013-07-10  Mario Sanchez Prada  <mario.prada@samsung.com>
647
648         AX: Allow requesting the full plain text for an object with textUnderElement()
649         https://bugs.webkit.org/show_bug.cgi?id=105214
650
651         Reviewed by Chris Fleizach.
652
653         Allow specifying different function modes for textUnderElement(),
654         so we can effectively ask for the "normal" result (e.g to retrieve
655         test to be exposed as the 'title') or for the full text under the
656         element (without omitting any child in the subtree). This is
657         needed for the implementation of atk_text_get_text() in GTK/EFL.
658
659         * accessibility/AccessibilityObject.h: Add new enumeration to
660         specify the different modes for textUnderElement().
661         (WebCore::AccessibilityObject::textUnderElement): Added parameter.
662
663         * accessibility/AccessibilityNodeObject.cpp:
664         (WebCore::shouldUseAccessiblityObjectInnerText): Always return
665         'true' when using the "include all children" mode.
666         (WebCore::AccessibilityNodeObject::textUnderElement): Updated call
667         to shouldUseAccessiblityObjectInnerText().
668         * accessibility/AccessibilityNodeObject.h:
669
670         * accessibility/AccessibilityRenderObject.cpp:
671         (WebCore::AccessibilityRenderObject::textUnderElement): Removed
672         GTK specific code and expand the usage of text iterators beyond
673         text render objects, using it also when in the "include all
674         children" mode.
675         * accessibility/AccessibilityRenderObject.h:
676
677         * accessibility/atk/AccessibilityObjectAtk.cpp:
678         (WebCore::AccessibilityObject::getLengthForTextRange): Updated
679         call to textUnderElement(), preserving the previous behavior.
680
681         * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
682         (webkitAccessibleTextGetText): Updated call to textUnderElement(),
683         using the "include all children" mode.
684
685 2013-07-10  Sergio Correia  <sergio.correia@openbossa.org>
686
687         Remove the meshType from CoordinatedCustomFilterOperation
688         https://bugs.webkit.org/show_bug.cgi?id=118529
689
690         Reviewed by Noam Rosenthal.
691
692         Following the removal of the meshType from CustomFilterOperation in r149153,
693         remove also the meshType from CoordinatedCustomFilterOperation.
694
695         No new tests, no new functionality.
696
697         * platform/graphics/texmap/coordinated/CoordinatedCustomFilterOperation.h:
698         (WebCore::CoordinatedCustomFilterOperation::create): Remove unused meshType parameter.
699         (WebCore::CoordinatedCustomFilterOperation::CoordinatedCustomFilterOperation): Ditto.
700  Ditto.
701 2013-07-10  James Craig  <james@cookiecrook.com>
702
703         AX: AccessibilityNodeObject::supportsRequiredAttribute() should switch on CellRole
704         https://bugs.webkit.org/show_bug.cgi?id=117817
705
706         Reviewed by Chris Fleizach.
707
708         CellRole supports the required attribute now for accessibility, according to ARIA spec. 
709         Updated existing test coverage.
710
711         * accessibility/AccessibilityNodeObject.cpp:
712         (WebCore::AccessibilityNodeObject::supportsRequiredAttribute):
713
714 2013-07-10  Csaba Osztrogonác  <ossy@webkit.org>
715
716         REGRESSION(r151957): WebGL textures do not show
717         https://bugs.webkit.org/show_bug.cgi?id=118464
718
719         Reviewed by Christophe Dumez.
720
721         After r151957 decoder.frameIsCompleteAtIndex(0) doesn't trigger image decoding,
722         we have to call decoder.createFrameAtIndex(0) explicitly to ensure it.
723
724         * platform/graphics/cairo/GraphicsContext3DCairo.cpp:
725         (WebCore::GraphicsContext3D::ImageExtractor::extractImage):
726         * platform/graphics/efl/GraphicsContext3DEfl.cpp:
727         (WebCore::GraphicsContext3D::ImageExtractor::extractImage):
728
729 2013-07-10  Karol Świniarski  <k.swiniarsk2@samsung.com>
730
731         Change recently ratified extensions prefixes from WEBKIT_WEBGL_ to WEBGL_
732         https://bugs.webkit.org/show_bug.cgi?id=117786
733
734         Reviewed by Dean Jackson.
735
736         According to WebGL's revision 10, extensions should be named: WEBGL_lose_context,
737         WEBGL_depth_texture, WEBGL_compressed_texture_s3tc.
738
739         No new tests. Covered by existing tests:
740         LayoutTests/webgl/conformance/extensions/get-extension.html
741         LayoutTests/webgl/conformance/context/context-lost.html
742         LayoutTests/webgl/conformance/extensions/webgl-depth-texture.html
743         LayoutTests/webgl/conformance/extensions/webgl-compressed-texture-s3tc.html
744
745         * html/canvas/WebGLRenderingContext.cpp:
746         (WebCore::WebGLRenderingContext::getExtension):
747         (WebCore::WebGLRenderingContext::getSupportedExtensions):
748
749 2013-07-09  Byungwoo Lee  <bw80.lee@samsung.com>
750
751         Unreviewed build fix.
752
753         * svg/SVGImageElement.cpp:
754         (WebCore::SVGImageElement::SVGImageElement):
755
756 2013-07-09  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
757
758         Introduce isSVGFontElement() and isSVGImageElement(), use them
759         https://bugs.webkit.org/show_bug.cgi?id=118504
760
761         Reviewed by Benjamin Poulain.
762
763         Let's use isFoo() to enhance readibility in svg element classes along with html's.
764
765         No new tests, there is no behavior changes.
766
767         * loader/cache/CachedFont.cpp:
768         (WebCore::CachedFont::getSVGFontById):
769         * rendering/HitTestResult.cpp:
770         (WebCore::HitTestResult::absoluteImageURL):
771         * svg/SVGAnimateMotionElement.cpp:
772         (WebCore::SVGAnimateMotionElement::hasValidAttributeType):
773         * svg/SVGElement.cpp:
774         (WebCore::SVGElement::viewportElement):
775         * svg/SVGFontElement.cpp:
776         (WebCore::SVGFontElement::SVGFontElement):
777         * svg/SVGFontElement.h:
778         (WebCore::toSVGFontElement):
779         (WebCore::isSVGFontElement):
780         * svg/SVGFontFaceElement.cpp:
781         (WebCore::SVGFontFaceElement::associatedFontElement):
782         (WebCore::SVGFontFaceElement::rebuildFontFace):
783         * svg/SVGGlyphElement.cpp:
784         (WebCore::SVGGlyphElement::invalidateGlyphCache):
785         * svg/SVGHKernElement.cpp:
786         (WebCore::SVGHKernElement::insertedInto):
787         (WebCore::SVGHKernElement::removedFrom):
788         * svg/SVGImageElement.cpp:
789         (WebCore::SVGImageElement::SVGImageElement):
790         * svg/SVGImageElement.h:
791         (WebCore::toSVGImageElement):
792         (WebCore::isSVGImageElement):
793         * svg/SVGLocatable.cpp:
794         (WebCore::isViewportElement):
795         * svg/SVGVKernElement.cpp:
796         (WebCore::SVGVKernElement::insertedInto):
797         (WebCore::SVGVKernElement::removedFrom):
798
799 2013-07-09  Ryuan Choi  <ryuan.choi@samsung.com>
800
801         [EFL] Add ewk_view_device_pixel_ratio_set
802         https://bugs.webkit.org/show_bug.cgi?id=118521
803
804         Reviewed by Gyuyoung Kim.
805
806         No new tests, covered by existing tests.
807
808         * dom/ViewportArguments.cpp: Remove PLATFORM(EFL) not to use deprecatedTargetDPI
809         * dom/ViewportArguments.h: Ditto.
810         * platform/efl/EflScreenUtilities.cpp: Removed getDPI() which is not used anymore.
811         * platform/efl/EflScreenUtilities.h: Ditto.
812
813 2013-07-09  James Craig  <james@cookiecrook.com>
814
815         @readonly and @aria-readonly="false" are not exposed correctly to accessibility
816         https://bugs.webkit.org/show_bug.cgi?id=118475
817
818         Reviewed by Chris Fleizach.
819
820         Account for implicit and explicit @readonly/@aria-readonly mismatches. Updated existing test coverage.
821
822         * accessibility/AccessibilityRenderObject.cpp:
823         (WebCore::AccessibilityRenderObject::canSetValueAttribute):
824
825 2013-07-09  Jer Noble  <jer.noble@apple.com>
826
827         Reviewed by Simon Fraser.
828
829         Remember the scroll position and restore after exiting full-screen mode.
830         https://bugs.webkit.org/show_bug.cgi?id=61956
831
832         No new tests, adds a client callback used by WebKit and WebKit2 win.
833
834         * platform/graphics/win/FullScreenController.cpp:
835         (FullScreenController::enterFullScreen):
836         (FullScreenController::exitFullScreen):
837         * platform/graphics/win/FullScreenControllerClient.h:
838
839 2013-07-09  Jeff Miller  <jeffm@apple.com>
840
841         AuthenticationMac.mm does not handle NSURLAuthenticationMethodNegotiate in WebCore::mac()
842         https://bugs.webkit.org/show_bug.cgi?id=118518
843
844         Reviewed by Alexey Proskuryakov.
845
846         * platform/network/mac/AuthenticationMac.mm:
847         (WebCore::mac):
848         Map ProtectionSpaceAuthenticationSchemeNegotiate to NSURLAuthenticationMethodNegotiate.
849
850 2013-07-09  Jeff Miller  <jeffm@apple.com>
851
852         AuthenticationMac.mm does not handle NSURLAuthenticationMethodNegotiate
853         https://bugs.webkit.org/show_bug.cgi?id=118517
854
855         Reviewed by Brady Eidson.
856
857         * platform/network/mac/AuthenticationMac.mm:
858         (WebCore::core):
859         Map "NSURLAuthenticationMethodNegotiate" to ProtectionSpaceAuthenticationSchemeNegotiate.
860
861 2013-07-09  peavo@outlook.com  <peavo@outlook.com>
862
863         [Windows] Compile fix.
864         https://bugs.webkit.org/show_bug.cgi?id=106558
865
866         Reviewed by Brent Fulgham.
867
868         On Windows, dispatch.h needs to be included before certain CFNetwork headers.
869
870         * WebCorePrefix.h: Include dispatch.h.
871
872 2013-07-09  Mark Lam  <mark.lam@apple.com>
873
874         Fix 30% JSBench regression (caused by adding column numbers to stack traces).
875         https://bugs.webkit.org/show_bug.cgi?id=118481.
876
877         Reviewed by Mark Hahnenberg and Geoffrey Garen.
878
879         Test: fast/js/line-column-numbers.html
880
881         Updated the bindings to use StackFrame::computeLineAndColumn(). The old
882         StackFrame::line() and StackFrame::column() has been removed. The new
883         algorithm always computes the 2 values together anyway. Hence it is more
884         efficient to return them as a pair instead of doing the same computation
885         twice for each half of the result.
886
887         * bindings/js/ScriptCallStackFactory.cpp:
888         (WebCore::createScriptCallStack):
889         (WebCore::createScriptCallStackFromException):
890         * bindings/js/ScriptSourceCode.h:
891         (WebCore::ScriptSourceCode::ScriptSourceCode):
892
893 2013-07-09  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
894
895         Use toSVGFontElement() instead of static_cast<SVGFontElement*>
896         https://bugs.webkit.org/show_bug.cgi?id=118496
897
898         Reviewed by Andreas Kling.
899
900         As a step to change static_cast with toXXX, static_cast<SVGFontElement*> can
901         be changed with toSVGFontElement().
902
903         Blink merge from https://src.chromium.org/viewvc/blink?view=rev&revision=153761
904
905         * svg/SVGFontElement.h:
906         (WebCore::toSVGFontElement):
907         * svg/SVGFontFaceElement.cpp:
908         (WebCore::SVGFontFaceElement::rebuildFontFace):
909         * svg/SVGGlyphElement.cpp:
910         (WebCore::SVGGlyphElement::invalidateGlyphCache):
911         * svg/SVGHKernElement.cpp:
912         (WebCore::SVGHKernElement::insertedInto):
913         (WebCore::SVGHKernElement::removedFrom):
914         * svg/SVGVKernElement.cpp:
915         (WebCore::SVGVKernElement::insertedInto):
916         (WebCore::SVGVKernElement::removedFrom):
917
918 2013-07-09  Christophe Dumez  <ch.dumez@sisa.samsung.com>
919
920         Remove support for [PassThisToCallback] extended attribute
921         https://bugs.webkit.org/show_bug.cgi?id=118391
922
923         Reviewed by Kentaro Hara.
924
925         The [PassThisToCallback] Webkit-specific IDL extended attribute is supported
926         by the JSC bindings generator but is no longer used. The attribute is not
927         even documented.
928
929         We can therefore drop support for this from the generator to simplify the
930         code.
931
932         No new tests, no behavior change.
933
934         * bindings/scripts/CodeGeneratorJS.pm:
935         (GenerateCallbackImplementation):
936         * bindings/scripts/IDLAttributes.txt:
937         * bindings/scripts/test/JS/JSTestCallback.cpp:
938         (WebCore::JSTestCallback::callbackRequiresThisToPass):
939         * bindings/scripts/test/TestCallback.idl:
940
941 2013-07-09  Praveen R Jadhav  <praveen.j@samsung.com>
942
943         Update Exception handling in WebAudio.
944         https://bugs.webkit.org/show_bug.cgi?id=118405.
945
946         Reviewed by Chris Rogers.
947
948         AudioBufferSourceNode, OscillatorNode and AnalyserNode don't
949         propagate exception mentioned in WebAudio spec.
950         Code updated to throw DOM exception as expected.
951
952         Tests: webaudio/analyser-exception.html
953                webaudio/audiobuffersource-exception.html
954
955         * Modules/webaudio/AnalyserNode.cpp:
956         (WebCore::AnalyserNode::setFftSize):
957         (WebCore::AnalyserNode::setMinDecibels):
958         (WebCore::AnalyserNode::setMaxDecibels):
959         (WebCore::AnalyserNode::setSmoothingTimeConstant):
960         * Modules/webaudio/AnalyserNode.h:
961         * Modules/webaudio/AnalyserNode.idl:
962         * Modules/webaudio/AudioBufferSourceNode.cpp:
963         (WebCore::AudioBufferSourceNode::startGrain):
964         (WebCore::AudioBufferSourceNode::noteGrainOn):
965         * Modules/webaudio/AudioBufferSourceNode.h:
966         * Modules/webaudio/AudioBufferSourceNode.idl:
967         * Modules/webaudio/AudioContext.cpp:
968         (WebCore::AudioContext::createBuffer):
969         (WebCore::AudioContext::createScriptProcessor):
970         (WebCore::AudioContext::createPeriodicWave):
971         * Modules/webaudio/AudioScheduledSourceNode.cpp:
972         (WebCore::AudioScheduledSourceNode::start):
973         (WebCore::AudioScheduledSourceNode::stop):
974         (WebCore::AudioScheduledSourceNode::noteOn):
975         (WebCore::AudioScheduledSourceNode::noteOff):
976         * Modules/webaudio/AudioScheduledSourceNode.h:
977         * Modules/webaudio/OscillatorNode.idl:
978
979 2013-07-08  Martin Robinson  <mrobinson@igalia.com>
980
981         [CSS Grid Layout] Rename grid-{rows|columns} to grid-definition-{rows|columns}
982         https://bugs.webkit.org/show_bug.cgi?id=103336
983
984         Reviewed by Tony Chang.
985
986         Rename -webkit-grid-{rows|columns} to -webkit-grid-definition-{rows|columns}.
987         The latest version of the spec has renamed these properties.
988
989         * css/CSSComputedStyleDeclaration.cpp:
990         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Handle the new names.
991         * css/CSSParser.cpp:
992         (WebCore::CSSParser::parseValue): Ditto.
993         * css/CSSProperty.cpp:
994         (WebCore::CSSProperty::isInheritedProperty): Ditto.
995         * css/CSSPropertyNames.in: Add support for the new names.
996         * css/StyleResolver.cpp:
997         (WebCore::StyleResolver::applyProperty): Handle the new names.
998
999 2013-07-08  Enrica Casucci  <enrica@apple.com>
1000
1001         DeleteSelectionCommand does not handle correctly deletion with two consecutive BR element.
1002         https://bugs.webkit.org/show_bug.cgi?id=118457
1003         <rdar://problem/14160912>
1004
1005         Reviewed by Simon Fraser.
1006
1007         In DeleteSelectionCommand::handleSpecialCareBRDelete we did not
1008         handle correctly the case where we had <br><br> in the markup and
1009         nothing was being deleted. We should consider this like
1010         the case where the <br> is on the line by itself and remove it.
1011
1012         Test: editing/deleting/delete-image-followed-by-two-br.html
1013
1014         * editing/DeleteSelectionCommand.cpp:
1015         (WebCore::DeleteSelectionCommand::handleSpecialCaseBRDelete):
1016
1017 2013-07-08  Radu Stavila  <stavila@adobe.com>
1018
1019         NamedFlowCollection getters should return undefined when there's no NamedFlow
1020         https://bugs.webkit.org/show_bug.cgi?id=118463
1021
1022         Reviewed by Christophe Dumez.
1023
1024         Added new TreatReturnedNullObjectAs attribute for generated methods and set it to Undefined
1025         for the item and namedItem methods of DOMNamedFlowCollection.
1026
1027         Test: fast/regions/webkit-named-flow-collection-undefined.html
1028
1029         * bindings/scripts/CodeGeneratorJS.pm:
1030         (GenerateImplementationFunctionCall):
1031         * bindings/scripts/IDLAttributes.txt:
1032         * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
1033         (WebDOMTestObj::treatReturnedNullObjectAsUndefined):
1034         * bindings/scripts/test/CPP/WebDOMTestObj.h:
1035         * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
1036         (webkit_dom_test_obj_treat_returned_null_object_as_undefined):
1037         * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
1038         * bindings/scripts/test/JS/JSTestObj.cpp:
1039         (WebCore::jsTestObjPrototypeFunctionTreatReturnedNullObjectAsUndefined):
1040         * bindings/scripts/test/JS/JSTestObj.h:
1041         * bindings/scripts/test/ObjC/DOMTestObj.h:
1042         * bindings/scripts/test/ObjC/DOMTestObj.mm:
1043         (-[DOMTestObj treatReturnedNullObjectAsUndefined]):
1044         * bindings/scripts/test/TestObj.idl:
1045         * dom/DOMNamedFlowCollection.idl:
1046
1047 2013-07-06 Changhun Kang <temoochin@company100.net>
1048
1049         Remove unused variables in FocusCandidate.
1050         https://bugs.webkit.org/show_bug.cgi?id=118449
1051
1052         Reviewed by Antonio Gomes.
1053
1054         The variables for parent in FocusCandidate are not used anymore.
1055
1056         No new tests. No change in behavior.
1057
1058         * page/SpatialNavigation.cpp:
1059         (WebCore::FocusCandidate::FocusCandidate):
1060         * page/SpatialNavigation.h:
1061         (WebCore::FocusCandidate::FocusCandidate):
1062
1063 2013-07-08  Chris Fleizach  <cfleizach@apple.com>
1064
1065         AX: iOS: SVG paths are not offset by the parent bounding box
1066         https://bugs.webkit.org/show_bug.cgi?id=118433
1067
1068         The path for SVG shapes is in terms of its parent's view space. We need to offset
1069         the path by that amount so that it's in the right location.
1070
1071         Reviewed by Tim Horton.
1072
1073         * accessibility/AccessibilityRenderObject.cpp:
1074         (WebCore::AccessibilityRenderObject::elementPath):
1075
1076 2013-07-08  Carlos Garcia Campos  <cgarcia@igalia.com>
1077
1078         Unreviewed. Fix make distcheck.
1079
1080         * GNUmakefile.list.am: Add missing header files.
1081
1082 2013-07-08  Ruth Fong  <ruth_fong@apple.com>
1083
1084         Fix TextTrackCue::cueIndex() to handle the null case of TextTrack::cues(() properly
1085         https://bugs.webkit.org/show_bug.cgi?id=117815
1086         <rdar://problem/14211041>
1087
1088         Reviewed by Eric Carlson.
1089
1090         Merge https://src.chromium.org/viewvc/blink?revision=153206&view=revision
1091         
1092         No new tests, only behavior change is preventing a crash in the release build.
1093         cueIndex() is only used for sorting cues, so returning an invalidCueIndex in the case
1094         where track()->cues() is null makes sense and won't modify behavior.
1095
1096         * html/track/TextTrackCue.cpp:
1097         (WebCore::TextTrackCue::cueIndex):
1098
1099 2013-07-08  Commit Queue  <commit-queue@webkit.org>
1100
1101         Unreviewed, rolling out r152416.
1102         http://trac.webkit.org/changeset/152416
1103         https://bugs.webkit.org/show_bug.cgi?id=118476
1104
1105         Wrong fix for the bug (Requested by ap on #webkit).
1106
1107         * platform/text/TextEncodingRegistry.cpp:
1108         (WebCore::newTextCodec):
1109
1110 2013-07-08  Andreas Kling  <akling@apple.com>
1111
1112         REGRESSION(r125294): A style rule with more than 8192 selectors can cause style corruption.
1113         <http://webkit.org/b/118369>
1114         <rdar://problem/14291428>
1115
1116         Reviewed by Antti Koivisto.
1117
1118         Add a semi-hard cap of 8192 selectors per CSS rule. Rules with longer selector lists will be split into
1119         multiple rules (with 8192 selectors per rule.) The style properties are shared behind the scenes
1120         so it's all pretty efficient.
1121
1122         This does generate a different CSSOM for gigantic selector lists, I've added a test to document this.
1123         Note that setting CSSStyleRule.selectorText with over 8192 selectors will now fail, the splitting into
1124         multiple rules only happens when parsing full style sheets.
1125
1126         Test: fast/css/rule-selector-overflow.html
1127
1128         * css/CSSSelectorList.cpp:
1129         (WebCore::CSSSelectorList::selectorCount):
1130
1131             Add a helper to count the number of selectors in a list (not the number of raw selector components.)
1132
1133         * css/RuleSet.h:
1134         * css/CSSStyleRule.cpp:
1135         (WebCore::CSSStyleRule::setSelectorText):
1136
1137             Add RuleData::maximumSelectorCount constant and cap CSSStyleRule.selectorText to that many selectors.
1138
1139         * css/CSSSelectorList.h:
1140         (WebCore::CSSSelectorList::adoptSelectorArray):
1141         * css/StyleRule.cpp:
1142         (WebCore::StyleRule::create):
1143         (WebCore::StyleRule::splitIntoMultipleRulesWithMaximumSelectorCount):
1144         * css/StyleRule.h:
1145         (WebCore::StyleRule::parserAdoptSelectorArray):
1146         * css/StyleSheetContents.cpp:
1147         (WebCore::StyleSheetContents::parserAppendRule):
1148
1149             The meat of this change. Split rules with >8K selectors into multiple rules with 8K selectors in each.
1150
1151         * css/StyleRule.h:
1152         (WebCore::toStyleRule):
1153
1154             Added a toStyleRule() helper for good measure.
1155
1156 2013-07-08  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1157
1158         Introduce DECLARE_FORWARDING_ATTRIBUTE_EVENT_LISTENER() macro
1159         https://bugs.webkit.org/show_bug.cgi?id=118408
1160
1161         Reviewed by Philip Rogers.
1162
1163         Split DEFINE_FORWARDING_ATTRIBUTE_EVENT_LISTENER() macro into separate
1164         DECLARE and DEFINE macros to reduce the number of header includes in
1165         SVG.
1166
1167         No new tests, no behavior change.
1168
1169         * dom/EventTarget.h:
1170         * svg/SVGElementInstance.cpp:
1171         (WebCore::SVGElementInstance::create):
1172         (WebCore::SVGElementInstance::toNode):
1173         (WebCore::SVGElementInstance::ownerDocument):
1174         * svg/SVGElementInstance.h:
1175
1176 2013-07-08  Jae Hyun Park  <jae.park@company100.net>
1177
1178         [Coordinated Graphics] Rename variables in UpdateAtlas
1179         https://bugs.webkit.org/show_bug.cgi?id=118403
1180
1181         Reviewed by Noam Rosenthal.
1182
1183         As of r149292, non-composited contents layer was removed from
1184         CoordinatedGraphics. So, the variables should be renamed for
1185         clarification.
1186
1187         * platform/graphics/texmap/coordinated/CompositingCoordinator.cpp:
1188         (WebCore::CompositingCoordinator::releaseInactiveAtlasesTimerFired):
1189
1190 2013-07-08  Ádám Kallai  <kadam@inf.u-szeged.hu>
1191
1192         [Qt] Incremental build fix after r145712.
1193         https://bugs.webkit.org/show_bug.cgi?id=112576.
1194
1195         Reviewed by Jocelyn Turcotte.
1196
1197         * DerivedSources.pri: Added dependence to INSPECTOR_JSON.
1198         * inspector/front-end/WebKit.qrc: Added missing JS file.
1199
1200 2013-07-08  Kihong Kwon  <kihong.kwon@samsung.com>
1201
1202         vibrate function have to return boolean value.
1203         https://bugs.webkit.org/show_bug.cgi?id=118288
1204
1205         Reviewed by Gyuyoung Kim.
1206
1207         According to latest Vibration API which is LC, vibrate() needs to return boolean value
1208         and exception code is removed also. In addition, remove condition for canceling vibration
1209         can be called when visibility state is hidden.
1210         http://www.w3.org/TR/vibration/
1211
1212         No new tests. vibration/navigator-vibration.html is changed.
1213
1214         * Modules/vibration/NavigatorVibration.cpp:
1215         (WebCore::NavigatorVibration::vibrate):
1216         * Modules/vibration/NavigatorVibration.h:
1217         * Modules/vibration/NavigatorVibration.idl:
1218         * Modules/vibration/Vibration.cpp:
1219         (WebCore::Vibration::vibrate):
1220         * Modules/vibration/Vibration.h:
1221
1222 2013-07-07  Kangil Han  <kangil.han@samsung.com>
1223
1224         Adopt is/toHTMLTableElement for code cleanup
1225         https://bugs.webkit.org/show_bug.cgi?id=118393
1226
1227         Reviewed by Andreas Kling.
1228
1229         To enhance readability, this patch adopts is/toHTMLTableElement.
1230         This also helps out to reduce duplicated use of static_cast.
1231
1232         * accessibility/AccessibilityRenderObject.cpp:
1233         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
1234         * accessibility/AccessibilityTable.cpp:
1235         (WebCore::AccessibilityTable::isDataTable):
1236         (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
1237         (WebCore::AccessibilityTable::title):
1238         * accessibility/atk/WebKitAccessibleInterfaceTable.cpp:
1239         (webkitAccessibleTableGetCaption):
1240         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
1241         (webkitAccessibleGetDescription):
1242         * css/StyleResolver.cpp:
1243         (WebCore::StyleResolver::adjustRenderStyle):
1244         * dom/Position.cpp:
1245         (WebCore::endsOfNodeAreVisuallyDistinctPositions):
1246         * editing/DeleteSelectionCommand.cpp:
1247         (WebCore::DeleteSelectionCommand::handleGeneralDelete):
1248         * editing/InsertLineBreakCommand.cpp:
1249         (WebCore::InsertLineBreakCommand::doApply):
1250         * editing/htmlediting.cpp:
1251         (WebCore::isNonTableCellHTMLBlockElement):
1252         * editing/markup.cpp:
1253         (WebCore::ancestorToRetainStructureAndAppearanceForBlock):
1254         * html/FTPDirectoryDocument.cpp:
1255         (WebCore::FTPDirectoryDocumentParser::loadDocumentTemplate):
1256         (WebCore::FTPDirectoryDocumentParser::createBasicDocument):
1257         * html/HTMLFormElement.cpp:
1258         (WebCore::HTMLFormElement::rendererIsNeeded):
1259         * html/HTMLTableElement.h:
1260         (WebCore::isHTMLTableElement):
1261         (WebCore::toHTMLTableElement):
1262         * html/HTMLTablePartElement.cpp:
1263         (WebCore::HTMLTablePartElement::findParentTable):
1264         * html/HTMLTableRowElement.cpp:
1265         (WebCore::HTMLTableRowElement::rowIndex):
1266         * html/HTMLTableRowsCollection.cpp:
1267         (WebCore::HTMLTableRowsCollection::HTMLTableRowsCollection):
1268         (WebCore::HTMLTableRowsCollection::virtualItemAfter):
1269         * html/parser/HTMLElementStack.cpp:
1270         (WebCore::HTMLNames::isScopeMarker):
1271         (WebCore::HTMLNames::isTableScopeMarker):
1272         * html/parser/HTMLTreeBuilder.cpp:
1273         (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
1274         (WebCore::HTMLTreeBuilder::processCharacterBuffer):
1275         * platform/mac/HTMLConverter.mm:
1276         (-[WebHTMLConverter _computedStringForNode:property:]):
1277         * rendering/RenderObject.cpp:
1278         (WebCore::RenderObject::offsetParent):
1279         * rendering/RenderTable.cpp:
1280         (WebCore::RenderTable::convertStyleLogicalWidthToComputedWidth):
1281         (WebCore::RenderTable::convertStyleLogicalHeightToComputedHeight):
1282
1283 2013-07-06  Rob Buis  <rbuis@rim.com>
1284
1285         createElement("image") creates an HTMLImageElement, although this hack should exist in parser only
1286         https://bugs.webkit.org/show_bug.cgi?id=88360
1287
1288         Reviewed by Sam Weinig.
1289
1290         Create a HTMLElement when using createElement('image'), but keep the HTML5 parser constructing HTMLImageelement for it.
1291
1292         * html/HTMLTagNames.in:
1293
1294 2013-07-06  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1295
1296         Stop hardcoding interfaces that have indexed getters returning strings
1297         https://bugs.webkit.org/show_bug.cgi?id=118414
1298
1299         Reviewed by Kentaro Hara.
1300
1301         Stop hardcoding the names of interfaces that have indexed getters returning
1302         strings in the bindings generator. Now that we use the latest Web IDL indexed
1303         getter, more information is provided in the IDL files and the generator is
1304         able to figure out if the indexed getter is returning a DOMString on its own.
1305
1306         No new tests, no behavior change.
1307
1308         * bindings/scripts/CodeGeneratorJS.pm:
1309         (GenerateGetOwnPropertySlotBody):
1310         (GenerateImplementation):
1311
1312 2013-07-05  Tim Horton  <timothy_horton@apple.com>
1313
1314         Tons of crashes on bots after r152425
1315         https://bugs.webkit.org/show_bug.cgi?id=118440
1316         <rdar://problem/14366772>
1317
1318         Reviewed by Sam Weinig.
1319
1320         Null-check the frame's page and early return. It's OK to do this
1321         because it only happens when we're being torn down.
1322
1323         * page/FrameView.cpp:
1324         (WebCore::FrameView::minimumScrollPosition):
1325         (WebCore::FrameView::maximumScrollPosition):
1326
1327 2013-07-05  Tim Horton  <timothy_horton@apple.com>
1328
1329         Fix r152265: FrameView's pagination mode is only one of two, and the logic was totally wrong
1330         https://bugs.webkit.org/show_bug.cgi?id=118439
1331         <rdar://problem/14366120>
1332
1333         Reviewed by Anders Carlsson.
1334
1335         * page/FrameView.cpp:
1336         (WebCore::FrameView::maximumScrollPosition):
1337         - Test both Page and FrameView's pagination modes.
1338         - *Don't* clamp negatives to zero if we are paginated with scroll offset set,
1339             like the original changelog claimed, but the code did the opposite.
1340         - Don't clamp in *all* pagination modes; with 'direction: RTL' it's still possible
1341             to have a negative maximum position in LTR/TB pagination modes.
1342
1343 2013-07-05  Sam Weinig  <sam@webkit.org>
1344
1345         WKPageFindStringMatches with kWKFindOptionsBackwards still doesn't work
1346         <rdar://problem/13881024>
1347         https://bugs.webkit.org/show_bug.cgi?id=118436
1348
1349         Reviewed by Tim Horton.
1350
1351         * page/Page.cpp:
1352         (WebCore::Page::findStringMatchingRanges):
1353         - When searching backwards, use END_TO_START rather than START_TO_END.
1354         - If there is no selection and we are searching backwards, we now select the last item,
1355           not the first.
1356
1357 2013-07-05  Tullio Lucena  <tullio.lucena@openbossa.org>
1358
1359         Nix upstreaming - Adding Nix render theme files
1360         https://bugs.webkit.org/show_bug.cgi?id=118368
1361
1362         Reviewed by Benjamin Poulain.
1363
1364         All files related to render theme stuff.
1365
1366         No new tests. They will be uploaded on another patch during the upstreaming process.
1367
1368         * platform/nix/RenderThemeNix.cpp: Added.
1369         * platform/nix/RenderThemeNix.h: Added.
1370         * platform/nix/ScrollbarThemeNix.cpp: Added.
1371         * platform/nix/ScrollbarThemeNix.h: Added.
1372
1373 2013-07-05  Brent Fulgham  <bfulgham@apple.com>
1374
1375         [Windows] Identify OS-level at build-time.
1376         https://bugs.webkit.org/show_bug.cgi?id=118428
1377
1378         Reviewed by Anders Carlsson.
1379
1380         * DerivedSources.make: Activate legible output features if present.
1381         * WebCorePrefix.h: Activate MSVC 2010 workarounds for CGFloat if
1382         building with VS2010.
1383         * config.h: Activate legible output features if present.
1384
1385 2013-07-05  Tim Horton  <timothy_horton@apple.com>
1386
1387         [wk2] Add API to lock the scroll position at the top or bottom of the page
1388         https://bugs.webkit.org/show_bug.cgi?id=118429
1389         <rdar://problem/14120323>
1390
1391         Reviewed by Anders Carlsson.
1392
1393         Test (API): WebKit2.ScrollPinningBehaviors
1394
1395         * WebCore.exp.in:
1396         Expose FrameView::setScrollPinningBehavior.
1397
1398         * page/FrameView.cpp:
1399         (WebCore::FrameView::FrameView):
1400         Our pinning behavior should be DoNotPin by default.
1401
1402         * page/FrameView.cpp:
1403         (WebCore::FrameView::minimumScrollPosition):
1404         (WebCore::FrameView::maximumScrollPosition):
1405         * page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
1406         (WebCore::ScrollingTreeScrollingNodeMac::minimumScrollPosition):
1407         (WebCore::ScrollingTreeScrollingNodeMac::maximumScrollPosition):
1408         Fix the minimum scroll position's vertical location to the maximum if
1409         we're pinned to the bottom, and vice-versa if we're pinned to the top.
1410
1411         (WebCore::FrameView::setScrollPinningBehavior): Added.
1412         If scroll pinning behavior has changed, inform ScrollingCoordinator
1413         and update scrollbars (which will also re-pin the scroll position).
1414
1415         * page/FrameView.h:
1416         Override minimumScrollPosition, add setScrollPinningBehavior,
1417         and storage for m_scrollPinningBehavior.
1418
1419         * page/scrolling/ScrollingCoordinator.h:
1420         (WebCore::ScrollingCoordinator::setScrollPinningBehavior): Added.
1421
1422         * page/scrolling/ScrollingTree.cpp:
1423         (WebCore::ScrollingTree::ScrollingTree):
1424         Our pinning behavior should be DoNotPin by default.
1425
1426         (WebCore::ScrollingTree::setScrollPinningBehavior):
1427         (WebCore::ScrollingTree::scrollPinningBehavior):
1428         Getter/setter for m_scrollPinningBehavior, scrolling-thread-safe.
1429
1430         * page/scrolling/ScrollingTree.h:
1431         * page/scrolling/mac/ScrollingCoordinatorMac.h:
1432         * page/scrolling/mac/ScrollingCoordinatorMac.mm:
1433         (WebCore::ScrollingCoordinatorMac::setScrollPinningBehavior):
1434         Inform ScrollingTree of the scroll pinning behavior change.
1435         
1436         * platform/ScrollTypes.h:
1437         Add ScrollPinningBehavior enum.
1438
1439 2013-07-05  Zalan Bujtas  <zalan@apple.com>
1440
1441         iframe constrained by max-width in full screen
1442         https://bugs.webkit.org/show_bug.cgi?id=118250
1443
1444         Reviewed by Antti Koivisto.
1445
1446         Ensure that contents inside iframe can go full screen properly.
1447
1448         Set max-width and max-height values to the default 'none', so that iframes are not
1449         constrained when entering full screen.
1450
1451         Test: fullscreen/full-screen-iframe-with-max-width-height.html
1452
1453         * css/fullscreen.css:
1454         (iframe:-webkit-full-screen):
1455
1456 2013-07-05  Eric Carlson  <eric.carlson@apple.com>
1457
1458         [Mac] .webkitClosedCaptionsVisible doesn't work with "Automatic" caption mode
1459         https://bugs.webkit.org/show_bug.cgi?id=118319
1460
1461         Reviewed by Jer Noble.
1462
1463         Track when captions are enabled with the old 'webkitClosedCaptionsVisible' attribute and
1464         consider that when determining which track should be enabled.
1465
1466         Test: media/track/track-legacyapi-with-automatic-mode.html
1467
1468         * html/HTMLMediaElement.cpp:
1469         (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_webkitLegacyClosedCaptionOverride.
1470         (WebCore::HTMLMediaElement::setWebkitClosedCaptionsVisible): Set m_webkitLegacyClosedCaptionOverride.
1471         (WebCore::HTMLMediaElement::webkitClosedCaptionsVisible): Return m_webkitLegacyClosedCaptionOverride.
1472         * html/HTMLMediaElement.h:
1473
1474         * page/CaptionUserPreferencesMediaAF.cpp:
1475         (WebCore::CaptionUserPreferencesMediaAF::textTrackSelectionScore): Don't apply "automatic"
1476             logic when captions were enabled with .webkitClosedCaptionsVisible.
1477
1478 2013-07-05  Benjamin Dupont   <bdupont@nds.com>
1479
1480         Segmentation fault occurred when ICU data library doesn't embed the expected encoding.
1481         https://bugs.webkit.org/show_bug.cgi?id=118410
1482
1483         Reviewed by Allan Sandfeld Jensen.
1484
1485         * platform/text/TextEncodingRegistry.cpp:
1486         (WebCore::newTextCodec):
1487
1488 2013-07-05  Denis Nomiyama  <d.nomiyama@samsung.com>
1489
1490         [GTK] fast/text/font-kerning.html fails
1491         https://bugs.webkit.org/show_bug.cgi?id=76048
1492
1493         Reviewed by Martin Robinson.
1494
1495         Added kerning to the list of features for hb_shade() according to FontDescription::kerning().
1496         Removed font-kerning.html from gtk/TestExpectations, which was failing before this fix.
1497
1498         * platform/graphics/harfbuzz/HarfBuzzFace.cpp:
1499         (WebCore):
1500         * platform/graphics/harfbuzz/HarfBuzzFace.h:
1501         (HarfBuzzFace):
1502         * platform/graphics/harfbuzz/HarfBuzzShaper.cpp:
1503         (WebCore::HarfBuzzShaper::setFontFeatures):
1504
1505 2013-07-05  Gwang Yoon Hwang  <ryumiel@company100.net>
1506
1507         Build fix GTK after r152404.
1508         https://bugs.webkit.org/show_bug.cgi?id=118407
1509
1510         Reviewed by Christophe Dumez.
1511
1512         * GNUmakefile.list.am:
1513
1514 2013-07-04  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1515
1516         Have SVGTextContentElement inherit SVGGraphicsElement
1517         https://bugs.webkit.org/show_bug.cgi?id=118351
1518
1519         Reviewed by Dirk Schulze.
1520
1521         Have SVGTextContentElement inherit SVGGraphicsElement instead of
1522         SVGStyledElement in order to match the latest SVG2 specification:
1523         https://svgwg.org/svg2-draft/text.html#InterfaceSVGTextContentElement
1524
1525         This patch also removes the SVGTransformable and SVGLocatable IDL
1526         interfaces as they are no longer needed (were merged into
1527         SVGGraphicsElement in the latest specification).
1528
1529         This is one step towards getting rid of multiple inheritance in
1530         SVG, and complying with the latest SVG2 specification.
1531
1532         No new tests, covered by existing tests.
1533
1534         * DerivedSources.make:
1535         * WebCore.xcodeproj/project.pbxproj:
1536         * bindings/scripts/CodeGeneratorJS.pm:
1537         (GetGnuVTableOffsetForType):
1538         * bindings/scripts/CodeGeneratorObjC.pm:
1539         * svg/SVGAnimateMotionElement.cpp:
1540         (WebCore::SVGAnimateMotionElement::hasValidAttributeType):
1541         * svg/SVGElement.cpp:
1542         (WebCore::SVGElement::getBoundingBox):
1543         * svg/SVGLocatable.idl: Removed.
1544         * svg/SVGTextContentElement.cpp:
1545         (WebCore::SVGTextContentElement::SVGTextContentElement):
1546         (WebCore::SVGTextContentElement::isSupportedAttribute):
1547         (WebCore::SVGTextContentElement::isPresentationAttribute):
1548         (WebCore::SVGTextContentElement::collectStyleForPresentationAttribute):
1549         (WebCore::SVGTextContentElement::parseAttribute):
1550         (WebCore::SVGTextContentElement::svgAttributeChanged):
1551         * svg/SVGTextContentElement.h:
1552         * svg/SVGTextContentElement.idl:
1553         * svg/SVGTextElement.cpp:
1554         (WebCore::SVGTextElement::SVGTextElement):
1555         (WebCore::SVGTextElement::animatedLocalTransform):
1556         * svg/SVGTextElement.h:
1557         * svg/SVGTextElement.idl:
1558         * svg/SVGTransformable.idl: Removed.
1559
1560 2013-07-03  Gavin Barraclough  <barraclough@apple.com>
1561
1562         Remove PageThrottler::m_activeThrottleBlockers
1563         https://bugs.webkit.org/show_bug.cgi?id=118375
1564
1565         Reviewed by Mark Rowe.
1566
1567         This is simply m_activityTokens.size().
1568
1569         Also, fold preventThrottling into addActivityToken & allowThrottling into removeActivityToken
1570         (these should no longer be called directly, and should not be public).
1571
1572         * page/PageThrottler.cpp:
1573         (WebCore::PageThrottler::PageThrottler):
1574             - removed m_activeThrottleBlockers
1575         (WebCore::PageThrottler::startThrottleHysteresisTimer):
1576             - m_activeThrottleBlockers -> m_activityTokens.size()
1577         (WebCore::PageThrottler::throttleHysteresisTimerFired):
1578             - m_activeThrottleBlockers -> m_activityTokens.size()
1579         (WebCore::PageThrottler::addActivityToken):
1580             - added functionality from preventThrottling
1581         (WebCore::PageThrottler::removeActivityToken):
1582             - added functionality from allowThrottling
1583         * page/PageThrottler.h:
1584             - removed preventThrottling, allowThrottling, and m_activeThrottleBlockers.
1585
1586 2013-07-01  Antti Koivisto  <antti@apple.com>
1587
1588         Take document height into account when determining when it is considered visually non-empy
1589         https://bugs.webkit.org/show_bug.cgi?id=118272
1590
1591         Reviewed by Darin Adler.
1592
1593         The current visually non-empy mechanism takes into account only the amount of contents in renderers. 
1594         Add a simple layout dependency so that we don't consider page non-empty until the document height
1595         exceed a (low) height threshold (or the load completes).
1596
1597         * page/FrameView.cpp:
1598         (WebCore::FrameView::performPostLayoutTasks):
1599         
1600             Don't send layout callbacks until we have actually some content.
1601
1602         (WebCore::FrameView::qualifiesAsVisuallyNonEmpty):
1603         (WebCore::FrameView::updateIsVisuallyNonEmpty):
1604         
1605             Factor into functions.
1606
1607         * page/FrameView.h:
1608         (WebCore::FrameView::incrementVisuallyNonEmptyCharacterCount):
1609         (WebCore::FrameView::incrementVisuallyNonEmptyPixelCount):
1610         * rendering/RenderEmbeddedObject.cpp:
1611         (WebCore::RenderEmbeddedObject::RenderEmbeddedObject):
1612         * rendering/RenderHTMLCanvas.cpp:
1613         (WebCore::RenderHTMLCanvas::RenderHTMLCanvas):
1614         
1615              The size is not known but the estimate provided here is always bigger than the threshold so
1616              the functionality is unchanged.
1617
1618 2013-07-04  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1619
1620         Unreviewed build fix after r152399.
1621
1622         Add missing header include for SVGNames.h.
1623
1624         * svg/SVGImageElement.h:
1625
1626 2013-07-04  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1627
1628         Change static_cast<SVGImageElement*> with toSVGImageElement
1629         https://bugs.webkit.org/show_bug.cgi?id=118387
1630
1631         Reviewed by Andreas Kling.
1632
1633         As a step to change static_cast with toXXX, static_cast<SVGImageElement*> can
1634         be changed with toSVGImageElement().
1635
1636         Blink merge from https://src.chromium.org/viewvc/blink?view=rev&revision=153557
1637
1638         * rendering/svg/RenderSVGImage.cpp:
1639         (WebCore::RenderSVGImage::updateImageViewport):
1640         (WebCore::RenderSVGImage::layout):
1641         (WebCore::RenderSVGImage::paintForeground):
1642         * svg/SVGImageElement.h:
1643         (WebCore::toSVGImageElement):
1644         * svg/SVGImageLoader.cpp:
1645         (WebCore::SVGImageLoader::dispatchLoadEvent):
1646
1647 2013-07-04  Brian Holt  <brian.holt@samsung.com>
1648
1649         [GTK] Leak: Free PangoFontDescription* in RenderThemeGtk3
1650         https://bugs.webkit.org/show_bug.cgi?id=118386
1651
1652         Reviewed by Carlos Garcia Campos.
1653
1654         Free PangoFontDescription* allocated by gtk_style_context_get (transfer full).
1655
1656         * platform/gtk/RenderThemeGtk3.cpp:
1657         (WebCore::spinButtonArrowSize):
1658
1659 2013-07-04  Brian Holt  <brian.holt@samsung.com>
1660
1661         [ATK] Leak: AtkAttributeSet* should be freed
1662         https://bugs.webkit.org/show_bug.cgi?id=118307
1663
1664         Reviewed by Christophe Dumez.
1665
1666         Use AtkAttributeSet* instead of GSList*.
1667
1668         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
1669         (webkitAccessibleGetObjectLocale):
1670
1671 2013-07-04  Mario Sanchez Prada  <mario.prada@samsung.com>
1672
1673         [ATK] Do not expose '\n' for wrapped lines with ATK_TEXT_BOUNDARY_CHAR
1674         https://bugs.webkit.org/show_bug.cgi?id=118359
1675
1676         Reviewed by Carlos Garcia Campos.
1677
1678         Do not expose a '\n' character for every visual line break.
1679
1680         * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
1681         (webkitAccessibleTextGetChar): Removed wrong code.
1682
1683 2013-07-04  Patrick Gansterer  <paroga@webkit.org>
1684
1685         Port FileSystemWin.cpp to WinCE
1686         https://bugs.webkit.org/show_bug.cgi?id=117935
1687
1688         Reviewed by Brent Fulgham.
1689
1690         Add #if !OS(WINCE) around a few lines of the code, so it can be used by the WinCE port too.
1691
1692         * PlatformWinCE.cmake:
1693         * platform/win/FileSystemWin.cpp:
1694         (WebCore::storageDirectory):
1695         * platform/wince/FileSystemWinCE.cpp: Removed.
1696
1697 2013-07-04  Balazs Kelemen  <b.kelemen@samsung.com>
1698
1699         [GStreamer] support preload="metadata"
1700         https://bugs.webkit.org/show_bug.cgi?id=116817
1701
1702         Reviewed by Eric Carlson.
1703
1704         Add appropriate behavior for preload="metadata". Delay enabling download buffering
1705         until playback is started in this case. This behavior fits with the standard quite
1706         well and this is the most exact match we can get (at least without adding too much
1707         extra complexity). What matters mostly is that we can avoid loading the media
1708         before playback but we have the first frame and the metadata.
1709
1710         Test: media/video-load-preload-metadata.html
1711
1712         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1713         (WebCore::MediaPlayerPrivateGStreamer::prepareToPlay): Set |m_preload| to |Auto|
1714         so we will start download buffering if we did not start it yet.
1715         (WebCore::MediaPlayerPrivateGStreamer::play): Ditto.
1716         (MediaPlayerPrivateGStreamer::setDownloadBuffering): Only start download
1717         buffering if |m_preload == Auto|. Also make sure we don't clear the download
1718         flag once we started downloading because it would result in not well defined
1719         behavior and it does not really makes sense.
1720         (MediaPlayerPrivateGStreamer::setPreload): Set download buffering accordingly.
1721
1722 2013-07-03  Jae Hyun Park  <jae.park@company100.net>
1723
1724         [Coordinated Graphics] Don't use && operator in ASSERT
1725         https://bugs.webkit.org/show_bug.cgi?id=118377
1726
1727         Reviewed by Noam Rosenthal.
1728
1729         We don't use && opeartor in ASSERT because it's impossible to know which
1730         condition caused the assertion.
1731
1732         * platform/graphics/texmap/coordinated/CoordinatedBackingStore.cpp:
1733         (WebCore::CoordinatedBackingStoreTile::swapBuffers):
1734         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
1735         (WebCore::CoordinatedGraphicsLayer::~CoordinatedGraphicsLayer):
1736
1737 2013-07-03  KyungTae Kim  <ktf.kim@samsung.com>
1738
1739         [EFL] Support some more editing keyboard events
1740         https://bugs.webkit.org/show_bug.cgi?id=118346
1741
1742         Reviewed by Gyuyoung Kim.
1743
1744         For editable contents, support the shortcuts for copy, page, cut, select all, undo and redo.
1745
1746         * platform/efl/EflKeyboardUtilities.cpp:
1747
1748 2013-07-03  Chris Fleizach  <cfleizach@apple.com>
1749
1750         AX: Items the img aria role aren't inserting an object replacement character
1751         https://bugs.webkit.org/show_bug.cgi?id=118259
1752
1753         Reviewed by Tim Horton.
1754
1755         VoiceOver relies on object replacement characters being emitted when asking for selected text.
1756         This has worked if a real <img> is used, but if role="img" is used on a <div>, for example,
1757         no emission is performed, which leads to missed elements in text.
1758
1759         Test: platform/mac/accessibility/aria-image-emits-object-replacement.html
1760
1761         * editing/TextIterator.cpp:
1762         (WebCore::isRendererReplacedElement):
1763         (WebCore::TextIterator::advance):
1764
1765 2013-07-03  Kangil Han  <kangil.han@samsung.com>
1766
1767         Adopt is/toHTMLMapElement for code cleanup
1768         https://bugs.webkit.org/show_bug.cgi?id=118235
1769
1770         Reviewed by Andreas Kling.
1771
1772         To enhance readability, this patch adopts is/toHTMLMapElement.
1773         This also helps out to reduce duplicated use of static_cast.
1774
1775         * accessibility/AccessibilityRenderObject.cpp:
1776         (WebCore::AccessibilityRenderObject::getDocumentLinks):
1777         (WebCore::AccessibilityRenderObject::accessibilityImageMapHitTest):
1778         * dom/DocumentOrderedMap.cpp:
1779         (WebCore::keyMatchesMapName):
1780         (WebCore::keyMatchesLowercasedMapName):
1781         * dom/TreeScope.cpp:
1782         (WebCore::TreeScope::getImageMap):
1783         * html/HTMLAreaElement.cpp:
1784         (WebCore::HTMLAreaElement::imageElement):
1785         * html/HTMLMapElement.h:
1786         (WebCore::isHTMLMapElement):
1787         (WebCore::toHTMLMapElement):
1788
1789 2013-07-03  Brent Fulgham  <bfulgham@apple.com>
1790
1791         [Windows] Unreviewed build correction after r15283.
1792
1793         * WebCorePrefix.h: Remove include directive for CGFloat.h, as it
1794         is not present in all Windows build environments.
1795
1796 2013-07-03  Brent Fulgham  <bfulgham@apple.com>
1797
1798         [Windows] Exclude unsupported QuartzCore Features.
1799         https://bugs.webkit.org/show_bug.cgi?id=118374
1800
1801         Reviewed by Anders Carlsson.
1802
1803         * WebCore.vcxproj/WebCoreCG.props: Exclude a few non-Windows
1804         concepts from the QuartzCore headers.
1805
1806 2013-07-03  Gavin Barraclough  <barraclough@apple.com>
1807
1808         Simplify PageThrottler ownership.
1809         https://bugs.webkit.org/show_bug.cgi?id=118372
1810
1811         Reviewed by Sam Weinig.
1812
1813         * page/Page.cpp:
1814         (WebCore::Page::~Page):
1815             - 'clearPage' method removed - just clear the own pointer.
1816         * page/Page.h:
1817             - make m_pageThrottler an OwnPtr.
1818         * page/PageThrottler.cpp:
1819         (WebCore::PageThrottler::~PageThrottler):
1820             - moved 'setThrottled(false)' from 'clearPage' (removed).
1821         (WebCore::PageThrottler::throttlePage):
1822         (WebCore::PageThrottler::unthrottlePage):
1823             - no need to check 'm_page'
1824         * page/PageThrottler.h:
1825         (WebCore::PageThrottler::create):
1826             - create a PassOwnPtr, not PassRefPtr.
1827
1828 2013-07-03  Brent Fulgham  <bfulgham@apple.com>
1829
1830         [Windows] Updates to support changes in CoreGraphics libraries.
1831         https://bugs.webkit.org/show_bug.cgi?id=118373
1832
1833         Reviewed by Anders Carlsson.
1834
1835         * WebCorePrefix.h: Include definitions for isnan/round/roundf for versions of
1836         Visual Studio that do not provide them natively.
1837
1838 2013-07-03  Gordon Sheridan  <gordon_sheridan@apple.com>
1839
1840         Implement mechanism to detect (partially) hidden blocked plugins.
1841         https://bugs.webkit.org/show_bug.cgi?id=117998
1842
1843         Reviewed by Dean Jackson.
1844
1845         * rendering/RenderEmbeddedObject.cpp:
1846         (WebCore::RenderEmbeddedObject::replacementTextRect):
1847         Added private method for calculating the size of the replacement text for blocked plugins.
1848
1849         (WebCore::RenderEmbeddedObject::isReplacementObscured):
1850         Added public method to determine if the EMBED element used for a blocked plugin is inaccessible to the user.
1851         * rendering/RenderEmbeddedObject.h:
1852         Declare the two new methods mentioned above.
1853
1854         * WebCore.exp.in:
1855         Export RenderEmbeddedObject::isReplacementObscured().
1856
1857 2013-07-03  Jessie Berlin  <jberlin@apple.com>
1858
1859         Speculative build fix after r152340.
1860
1861         * WebCore.exp.in:
1862
1863 2013-07-03  Kangil Han  <kangil.han@samsung.com>
1864
1865         Append overloading function for isFooElement
1866         https://bugs.webkit.org/show_bug.cgi?id=118334
1867
1868         Reviewed by Antti Koivisto.
1869
1870         Node::hasTagName needs additional isElementNode() check when it is triggered.
1871         So conversion from Element* to Node* in isFooElement should be avoided.
1872         Therefore, to support both Node* and Element* as an argument of isFooElement,
1873         this patch appends overloading inline function.
1874
1875         * css/CSSStyleSheet.cpp:
1876         (WebCore::isAcceptableCSSStyleSheetParent):
1877         * css/StyleScopeResolver.cpp:
1878         (WebCore::StyleScopeResolver::scopeFor):
1879         * dom/Node.cpp:
1880         (WebCore::Node::numberOfScopedHTMLStyleChildren):
1881         * html/HTMLAnchorElement.h:
1882         (WebCore::isHTMLAnchorElement):
1883         * html/HTMLAreaElement.h:
1884         (WebCore::isHTMLAreaElement):
1885         * html/HTMLAudioElement.h:
1886         (WebCore::isHTMLAudioElement):
1887         * html/HTMLFormElement.h:
1888         (WebCore::isHTMLFormElement):
1889         * html/HTMLImageElement.h:
1890         (WebCore::isHTMLImageElement):
1891         * html/HTMLInputElement.h:
1892         (WebCore::isHTMLInputElement):
1893         * html/HTMLLabelElement.h:
1894         (WebCore::isHTMLLabelElement):
1895         * html/HTMLOptGroupElement.h:
1896         (WebCore::isHTMLOptGroupElement):
1897         * html/HTMLOptionElement.h:
1898         (WebCore::isHTMLOptionElement):
1899         * html/HTMLStyleElement.h:
1900         (WebCore::isHTMLStyleElement):
1901         (WebCore::toHTMLStyleElement):
1902         * html/HTMLTextAreaElement.h:
1903         (WebCore::isHTMLTextAreaElement):
1904
1905 2013-07-03  Balazs Kelemen  <b.kelemen@samsung.com>
1906
1907         Gif: zero filling should use memset instead of setRGBA for every pixel
1908         https://bugs.webkit.org/show_bug.cgi?id=118350
1909
1910         Reviewed by Allan Sandfeld Jensen.
1911
1912         No new tests. Actually it is not covered by existing tests. Surprisingly we haven't got pixel
1913         tests for animated images. Given that this patch is pretty trivial I don't think it's worth the
1914         cost to start introducing such tests.
1915         I added a manual test: animated-gif-dispose-background.html.
1916
1917         GIFImageDecoder::initializeFrameBuffer use a loop to fill a subrect with tranparent pixels.
1918         This is extremely ineffecient. The use case for this code path is not frequent on the web
1919         but it's still better to fix it.
1920
1921         * platform/image-decoders/ImageDecoder.cpp:
1922         (WebCore::ImageFrame::zeroFillFrameRect):
1923         * platform/image-decoders/ImageDecoder.h:
1924         * platform/image-decoders/gif/GIFImageDecoder.cpp:
1925         (WebCore::GIFImageDecoder::initFrameBuffer):
1926         Fixed indentation in addition.
1927
1928 2013-07-03  Przemyslaw Szymanski  <p.szymanski3@samsung.com>
1929
1930         TextureUnit code optimization
1931         https://bugs.webkit.org/show_bug.cgi?id=117868
1932
1933         Reviewed by Noam Rosenthal.
1934
1935         According to OpenGL ES 2.0 specification it is not possible to use both
1936         texture2D and textureCubeMap in one texture unit.
1937         This patch reduces amount of code, slightly increases rendering performance
1938         and makes WebKit more consistent with OpenGL.
1939
1940         No new tests. Covered by existing tests:
1941         LayoutTests/webgl/conformance/textures/tex-image-webgl.html
1942         LayoutTests/webgl/conformance/textures/texture-complete.html
1943
1944         * html/canvas/WebGLRenderingContext.cpp:
1945         (WebCore::WebGLRenderingContext::~WebGLRenderingContext):
1946         (WebCore::WebGLRenderingContext::reshape):
1947         (WebCore::WebGLRenderingContext::bindTexture):
1948         (WebCore::WebGLRenderingContext::deleteTexture):
1949         (WebCore::WebGLRenderingContext::getParameter):
1950         (WebCore::WebGLRenderingContext::handleNPOTTextures):
1951         (WebCore::WebGLRenderingContext::validateTextureBinding):
1952         (WebCore::WebGLRenderingContext::restoreCurrentTexture2D):
1953         * html/canvas/WebGLRenderingContext.h:
1954
1955 2013-07-03  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1956
1957         Stop inheriting SVGFilterPrimitiveStandardAttributes in SVG
1958         https://bugs.webkit.org/show_bug.cgi?id=118305
1959
1960         Reviewed by Kentaro Hara.
1961
1962         Stop inheriting SVGFilterPrimitiveStandardAttributes in SVG and use
1963         Web IDL implements instead to get rid of multiple inheritance and
1964         follow the latest specification:
1965         - http://www.w3.org/TR/filter-effects/#DOMInterfaces
1966
1967         No new tests, no behavior change.
1968
1969         * CMakeLists.txt:
1970         * DerivedSources.pri:
1971         * GNUmakefile.list.am:
1972         * svg/SVGFEBlendElement.idl:
1973         * svg/SVGFEColorMatrixElement.idl:
1974         * svg/SVGFEComponentTransferElement.idl:
1975         * svg/SVGFECompositeElement.idl:
1976         * svg/SVGFEConvolveMatrixElement.idl:
1977         * svg/SVGFEDiffuseLightingElement.idl:
1978         * svg/SVGFEDisplacementMapElement.idl:
1979         * svg/SVGFEDropShadowElement.idl:
1980         * svg/SVGFEFloodElement.idl:
1981         * svg/SVGFEGaussianBlurElement.idl:
1982         * svg/SVGFEImageElement.idl:
1983         * svg/SVGFEMergeElement.idl:
1984         * svg/SVGFEMorphologyElement.idl:
1985         * svg/SVGFEOffsetElement.idl:
1986         * svg/SVGFESpecularLightingElement.idl:
1987         * svg/SVGFETileElement.idl:
1988         * svg/SVGFETurbulenceElement.idl:
1989
1990 2013-07-03  Zalan Bujtas  <zalan@apple.com>
1991
1992         H&R Block 2010 Help window can not be reopened.
1993         https://bugs.webkit.org/show_bug.cgi?id=118342
1994
1995         Reviewed by Antti Koivisto.
1996
1997         http://trac.webkit.org/changeset/118916 changed the window.focus() behaviour so that
1998         only the opener can (re)focus() a particular window.
1999         H&R Block app relies on the relaxed window.focus() rules.
2000
2001         * WebCore.exp.in:
2002         * platform/RuntimeApplicationChecks.cpp:
2003         (WebCore::applicationIsHRBlock):
2004         * platform/RuntimeApplicationChecks.h:
2005
2006 2013-07-03  Zan Dobersek  <zdobersek@igalia.com>
2007
2008         Further build fixing for build configurations that disable CSS regions support.
2009
2010         * dom/PseudoElement.h: Wrap shouldMoveToFlowThread override into the ENABLE(CSS_REGIONS) build guard.
2011
2012 2013-07-03  Zan Dobersek  <zdobersek@igalia.com>
2013
2014         Unreviewed build fix after r152320 and r152345 for build configurations that enable
2015         SVG support but disable CSS regions support.
2016
2017         * svg/SVGElement.cpp: Wrap shouldMoveToFlowThread override into the ENABLE(CSS_REGIONS) build guard.
2018         * svg/SVGElement.h: Ditto.
2019
2020 2013-07-03  Radu Stavila  <stavila@adobe.com>
2021
2022         [CSS Regions] Improve implementation of elements in region being flowed to another flow thread
2023         https://bugs.webkit.org/show_bug.cgi?id=118300
2024
2025         Based on patch by Zoltán Árvai <zarvai@inf.u-szeged.hu>
2026
2027         Reviewed by Csaba Osztrogonác.
2028
2029         Fixed CSS_REGIONS guard.
2030
2031         * dom/Element.h:
2032         * dom/NodeRenderingContext.cpp:
2033         (WebCore::NodeRenderingContext::elementInsideRegionNeedsRenderer):
2034         (WebCore::NodeRenderingContext::moveToFlowThreadIfNeeded):
2035
2036 2013-07-03  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2037
2038         Move SVGTests attributes parsing to SVGGraphicsElement
2039         https://bugs.webkit.org/show_bug.cgi?id=118292
2040
2041         Reviewed by Darin Adler.
2042
2043         Move SVGTests attributes parsing to SVGGraphicsElement instead of doing
2044         this in each of its subclasses. SVGGraphicsElement is now the one
2045         subclassing SVGTests after r152167.
2046
2047         No new tests, no behavior change.
2048
2049         * svg/SVGAElement.cpp:
2050         (WebCore::SVGAElement::isSupportedAttribute):
2051         (WebCore::SVGAElement::parseAttribute):
2052         * svg/SVGCircleElement.cpp:
2053         (WebCore::SVGCircleElement::isSupportedAttribute):
2054         (WebCore::SVGCircleElement::parseAttribute):
2055         (WebCore::SVGCircleElement::svgAttributeChanged):
2056         * svg/SVGClipPathElement.cpp:
2057         (WebCore::SVGClipPathElement::isSupportedAttribute):
2058         (WebCore::SVGClipPathElement::parseAttribute):
2059         * svg/SVGEllipseElement.cpp:
2060         (WebCore::SVGEllipseElement::isSupportedAttribute):
2061         (WebCore::SVGEllipseElement::parseAttribute):
2062         (WebCore::SVGEllipseElement::svgAttributeChanged):
2063         * svg/SVGForeignObjectElement.cpp:
2064         (WebCore::SVGForeignObjectElement::isSupportedAttribute):
2065         (WebCore::SVGForeignObjectElement::parseAttribute):
2066         (WebCore::SVGForeignObjectElement::svgAttributeChanged):
2067         * svg/SVGGElement.cpp:
2068         (WebCore::SVGGElement::isSupportedAttribute):
2069         (WebCore::SVGGElement::parseAttribute):
2070         (WebCore::SVGGElement::svgAttributeChanged):
2071         * svg/SVGGraphicsElement.cpp:
2072         (WebCore::SVGGraphicsElement::isSupportedAttribute):
2073         (WebCore::SVGGraphicsElement::parseAttribute):
2074         (WebCore::SVGGraphicsElement::svgAttributeChanged):
2075         * svg/SVGImageElement.cpp:
2076         (WebCore::SVGImageElement::isSupportedAttribute):
2077         (WebCore::SVGImageElement::parseAttribute):
2078         (WebCore::SVGImageElement::svgAttributeChanged):
2079         * svg/SVGLineElement.cpp:
2080         (WebCore::SVGLineElement::isSupportedAttribute):
2081         (WebCore::SVGLineElement::parseAttribute):
2082         (WebCore::SVGLineElement::svgAttributeChanged):
2083         * svg/SVGPathElement.cpp:
2084         (WebCore::SVGPathElement::isSupportedAttribute):
2085         (WebCore::SVGPathElement::parseAttribute):
2086         (WebCore::SVGPathElement::svgAttributeChanged):
2087         * svg/SVGPolyElement.cpp:
2088         (WebCore::SVGPolyElement::isSupportedAttribute):
2089         (WebCore::SVGPolyElement::parseAttribute):
2090         (WebCore::SVGPolyElement::svgAttributeChanged):
2091         * svg/SVGRectElement.cpp:
2092         (WebCore::SVGRectElement::isSupportedAttribute):
2093         (WebCore::SVGRectElement::parseAttribute):
2094         (WebCore::SVGRectElement::svgAttributeChanged):
2095         * svg/SVGSVGElement.cpp:
2096         (WebCore::SVGSVGElement::parseAttribute):
2097         (WebCore::SVGSVGElement::svgAttributeChanged): Fall back to calling
2098         SVGGraphicsElement::svgAttributeChanged() instead of
2099         SVGStyledElement::svgAttributeChanged() as SVGGraphicsElement is the
2100         parent class and it takes care of parsing SVGTests attributes now.
2101         * svg/SVGUseElement.cpp:
2102         (WebCore::SVGUseElement::isSupportedAttribute):
2103         (WebCore::SVGUseElement::parseAttribute):
2104         (WebCore::SVGUseElement::svgAttributeChanged):
2105
2106 2013-07-02  Ryosuke Niwa  <rniwa@webkit.org>
2107
2108         Modernize QualifiedName by wrapping gNameCache in a function and using more early exits
2109         https://bugs.webkit.org/show_bug.cgi?id=118299
2110
2111         Reviewed by Andreas Kling.
2112
2113         Did cleanups.
2114
2115         * dom/QualifiedName.cpp:
2116         (WebCore::qualifiedNameCache): Added to wrap gNameCache.
2117         (WebCore::QualifiedName::QualifiedName):
2118         (WebCore::QualifiedName::QualifiedNameImpl::~QualifiedNameImpl):
2119         (WebCore::QualifiedName::toString): Use early exit and StringBuilder.
2120         (WebCore::QualifiedName::init): Use early exit.
2121
2122 2013-07-02  Simon Fraser  <simon.fraser@apple.com>
2123
2124         Don't set z-index: 0 on lots of elements with -webkit-overflow-scrolling: touch
2125         https://bugs.webkit.org/show_bug.cgi?id=118337
2126
2127         Reviewed by Benjamin Poulain.
2128
2129         -webkit-overflow-scrolling: touch is an inherited property that, on iOS, controls
2130         the behavior of overflow scrolling content, and causes overflow scrolling elements
2131         to become CSS stacking contexts.
2132
2133         However, the code was too aggressive in setting style->setZIndex(0), doing so
2134         for any element with overflow != hidden. Since the default for overflow is visible,
2135         that meant almost every element.
2136
2137         Previously, this didn't really matter. However, since r125693, any renderer with non-auto
2138         z-index gets a RenderLayer, and that RenderLayer will become a stacking context. The result
2139         was too many RenderLayers and incorrect stacking context behavior.
2140
2141         Fix by ensuring that -webkit-overflow-scrolling: touch  only affects elements which
2142         are actually scrollable.
2143
2144         Also move the code that does this to below the code that adjust overflow style
2145         for different elements.
2146
2147         * css/StyleResolver.cpp:
2148         (WebCore::isScrollableOverflow):
2149         (WebCore::StyleResolver::adjustRenderStyle):
2150
2151 2013-07-02  Commit Queue  <commit-queue@webkit.org>
2152
2153         Unreviewed, rolling out r152318.
2154         http://trac.webkit.org/changeset/152318
2155         https://bugs.webkit.org/show_bug.cgi?id=118333
2156
2157         This patch broke media/track/track-automatic-subtitles.html on
2158         Mac (Requested by dfarler on #webkit).
2159
2160         * page/CaptionUserPreferencesMediaAF.cpp:
2161         (WebCore::CaptionUserPreferencesMediaAF::textTrackSelectionScore):
2162
2163 2013-07-02  Ruth Fong  <ruth_fong@apple.com>
2164
2165         Change event should not be dispatched by clicking a scrollbar of select listbox
2166         https://bugs.webkit.org/show_bug.cgi?id=118019
2167         <rdar://problem/14297760>
2168
2169         Reviewed by Dean Jackson.
2170
2171         Test: fast/forms/select/listbox-click-on-scrollbar.html
2172
2173         Merge the following:
2174         http://src.chromium.org/viewvc/blink?view=revision&revision=151689
2175         https://chromium.googlesource.com/chromium/blink/+/492549b0fcaa58a85aa0797446b62985a263704f
2176
2177         Previously, a select element with the multiple attribute would dispatch
2178         an onChanged event when the scrollbar is clicked. This patch corrects this
2179         issue by only calling listBoxOnChange(), which fires the onChanged event,
2180         when an actual option is clicked.
2181
2182         * html/HTMLSelectElement.cpp:
2183         (WebCore::HTMLSelectElement::childrenChanged): Updated to clear the list
2184         of selected items when when an <option> element is added to/deleted from its <select> element.
2185         (Without this addition, if a option was selected, and then JavaScript was used to modify
2186         the <select> element, and then the scrollbar was clicked, an onChanged event would fire
2187         because it remembers the previously selected option.)
2188
2189         (WebCore::HTMLSelectElement::listBoxOnChange):
2190
2191         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler): Updated to
2192         only call listBoxOnChange() if at least one option is selected.
2193
2194 2013-07-02  Alex Christensen  <achristensen@apple.com>
2195
2196         Preparing Windows WebGL build system.
2197         https://bugs.webkit.org/show_bug.cgi?id=118325
2198
2199         Reviewed by Brent Fulgham.
2200
2201         * WebCore.vcxproj/WebCore.vcxproj: Added EGL files, removed unused GraphicsContext3DOpenGL.cpp.
2202         * WebCore.vcxproj/WebCore.vcxproj.filters: Added EGL filter and files, removed unused GraphicsContext3DOpenGL.cpp.
2203
2204 2013-07-02  Jessie Berlin  <jberlin@apple.com>
2205
2206         The callback for WKPageGetPlugInInformation needs info about whether or not there are any
2207         non-playing instances of the plug-in on the page
2208         https://bugs.webkit.org/show_bug.cgi?id=118330
2209
2210         Reviewed by Anders Carlsson.
2211
2212         * WebCore.exp.in:
2213         Expose a symbol so it can be used in WebKit2.
2214
2215 2013-07-02  Alex Christensen  <achristensen@apple.com>
2216
2217         Added getProcAddress implementation for Windows in OpenGLShims.
2218         https://bugs.webkit.org/show_bug.cgi?id=118312
2219
2220         Reviewed by Brent Fulgham.
2221
2222         * platform/graphics/OpenGLShims.cpp:
2223         (WebCore::getProcAddress): Added for Windows.
2224
2225 2013-07-02  Jer Noble  <jer.noble@apple.com>
2226
2227         media/unsupported-rtsp.html is failing
2228         https://bugs.webkit.org/show_bug.cgi?id=118327
2229
2230         Reviewed by Eric Carlson.
2231
2232         Fixes the media/unsupported-rtsp.html test.
2233
2234         Set the contentType field of contentInformationRequest in order to trigger AVFoundation to
2235         notice that loading failed and generate an error.
2236
2237         * platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.mm:
2238         (WebCore::WebCoreAVFResourceLoader::notifyFinished):
2239
2240 2013-07-02  Alex Christensen  <achristensen@apple.com>
2241
2242         Fixed compile error in non-X11 platforms using EGL.
2243         https://bugs.webkit.org/show_bug.cgi?id=118323
2244
2245         Reviewed by Brent Fulgham.
2246
2247         * platform/graphics/egl/GLContextEGL.cpp:
2248         (WebCore::GLContextEGL::createPixmapContext): Put all X11-specific code into #if PLATFORM(X11).
2249
2250 2013-07-02  Radu Stavila  <stavila@adobe.com>
2251
2252         [CSS Regions] Improve implementation of elements in region being flowed to another flow thread
2253         https://bugs.webkit.org/show_bug.cgi?id=118300
2254
2255         Reviewed by David Hyatt.
2256
2257         Methods that must be const have been turned back into const. Code has been better organized.
2258         Performance is better. Tests have been added to.
2259
2260         * dom/Element.cpp:
2261         (WebCore::Element::detach):
2262         (WebCore::Element::setIsInsideRegion):
2263         (WebCore::Element::isInsideRegion):
2264         (WebCore::Element::shouldMoveToFlowThread):
2265         * dom/Element.h:
2266         * dom/ElementRareData.h:
2267         (WebCore::ElementRareData::isInsideRegion):
2268         (WebCore::ElementRareData::setIsInsideRegion):
2269         (WebCore::ElementRareData::ElementRareData):
2270         * dom/Node.cpp:
2271         (WebCore::Node::isRegisteredWithNamedFlow):
2272         * dom/Node.h:
2273         * dom/NodeRenderingContext.cpp:
2274         (WebCore::NodeRenderingContext::parentRenderer):
2275         (WebCore::NodeRenderingContext::shouldCreateRenderer):
2276         (WebCore::NodeRenderingContext::elementInsideRegionNeedsRenderer):
2277         (WebCore::NodeRenderingContext::moveToFlowThreadIfNeeded):
2278         (WebCore::NodeRenderingContext::createRendererForElementIfNeeded):
2279         * dom/NodeRenderingContext.h:
2280         * dom/PseudoElement.h:
2281         * dom/Text.cpp:
2282         (WebCore::Text::textRendererIsNeeded):
2283         * dom/Text.h:
2284         * rendering/FlowThreadController.cpp:
2285         (WebCore::FlowThreadController::unregisterNamedFlowContentNode):
2286         (WebCore::FlowThreadController::isContentNodeRegisteredWithAnyNamedFlow):
2287         * rendering/FlowThreadController.h:
2288         * rendering/RenderObject.h:
2289         * rendering/RenderRegion.h:
2290         * svg/SVGElement.cpp:
2291         (WebCore::SVGElement::shouldMoveToFlowThread):
2292         * svg/SVGElement.h:
2293
2294 2013-07-02  Eric Carlson  <eric.carlson@apple.com>
2295
2296         [Mac] .webkitClosedCaptionsVisible doesn't work with "Automatic" caption mode
2297         https://bugs.webkit.org/show_bug.cgi?id=118319
2298
2299         Reviewed by Darin Adler.
2300
2301         Test: media/track/track-legacyapi-with-automatic-mode.html
2302
2303         * page/CaptionUserPreferencesMediaAF.cpp:
2304         (WebCore::CaptionUserPreferencesMediaAF::textTrackSelectionScore): Don't apply "automatic"
2305             logic when captions were enabled with .webkitClosedCaptionsVisible.
2306
2307 2013-07-02  Anders Carlsson  <andersca@apple.com>
2308
2309         Always flip the coordinate system before drawing NSViews from Widget::paint
2310         https://bugs.webkit.org/show_bug.cgi?id=118318
2311         <rdar://problem/13895483>
2312
2313         Reviewed by Beth Dakin.
2314
2315         Undo the change that would not flip on 10.9; turns out the bug was in AppKit. Also remove the
2316         _hasCanDrawSubviewsIntoLayerOrAncestor workaround since drawing works correctly now.
2317
2318         Also, pass flipped:NO when creating the NSGraphicsContext to indicate that the graphics context
2319         is unflipped as far as AppKit knows (since we flipped it earlier).
2320
2321         * platform/mac/WidgetMac.mm:
2322         (WebCore::Widget::paint):
2323
2324 2013-06-26  Robert Hogan  <robert@webkit.org>
2325
2326         empty inlines should not affect line-wrapping
2327         https://bugs.webkit.org/show_bug.cgi?id=25638
2328
2329         Reviewed by David Hyatt.
2330
2331         Don't break on empty inlines if we're in the middle of a word. I took this opportunity to
2332         refactor the series of checks we perform to establish if we can break at the current position.
2333
2334         Test: fast/text/whitespace/inline-whitespace-wrapping-11.html
2335
2336         * rendering/RenderBlockLineLayout.cpp:
2337         (WebCore::textBeginsWithBreakablePosition):
2338         (WebCore::canBreakAtThisPosition):
2339         (WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
2340
2341 2013-07-02  Jae Hyun Park  <jae.park@company100.net>
2342
2343         Implement CoordinatedSurface for Threaded Coordinated Graphics
2344         https://bugs.webkit.org/show_bug.cgi?id=109661
2345
2346         Reviewed by Noam Rosenthal.
2347
2348         This is a preparation patch for Threaded Coordianted Graphics.
2349
2350         This patch implements ThreadSafeCoordinatedSurface using ImageBuffer as a
2351         backend. Also, this patch moves common implementation to CoordinatedSurface to
2352         prevent duplication of code.
2353
2354         * platform/graphics/texmap/coordinated/CoordinatedSurface.cpp:
2355         (WebCore::CoordinatedSurface::CoordinatedSurface):
2356         * platform/graphics/texmap/coordinated/CoordinatedSurface.h:
2357         (WebCore::CoordinatedSurface::size):
2358         (WebCore::CoordinatedSurface::flags):
2359         * platform/graphics/texmap/coordinated/ThreadSafeCoordinatedSurface.cpp: Added.
2360         (WebCore::ThreadSafeCoordinatedSurface::create):
2361         (WebCore::ThreadSafeCoordinatedSurface::ThreadSafeCoordinatedSurface):
2362         (WebCore::ThreadSafeCoordinatedSurface::~ThreadSafeCoordinatedSurface):
2363         (WebCore::ThreadSafeCoordinatedSurface::paintToSurface):
2364         (WebCore::ThreadSafeCoordinatedSurface::copyToTexture):
2365         * platform/graphics/texmap/coordinated/ThreadSafeCoordinatedSurface.h: Added.
2366
2367 2013-07-02  Geoffrey Garen  <ggaren@apple.com>
2368
2369         plainText() is O(N^2)
2370         https://bugs.webkit.org/show_bug.cgi?id=118282
2371         <rdar://problem/14284360>
2372
2373         Reviewed by Alexey Proskuryakov.
2374
2375         * editing/TextIterator.cpp:
2376         (WebCore::plainText): Linear growth for a vector data type is O(N^2).
2377         Don't do that. Luckily, StringBuilder does the right thing automatically,
2378         so we can just delete code.
2379
2380 2013-07-02  Tim Horton  <timothy_horton@apple.com>
2381
2382         constrainScrollPositionForOverhang needs to handle scrollOrigin correctly
2383         https://bugs.webkit.org/show_bug.cgi?id=118176
2384         <rdar://problem/14301271>
2385
2386         Reviewed by Anders Carlsson.
2387
2388         Test: compositing/geometry/fixed-position-flipped-writing-mode.html
2389
2390         WebCore makes use of constrainScrollPositionForOverhang not only for
2391         constraining fixed- and sticky-positioned elements to the viewport, but
2392         also for clamping the tile cache's visible rect.
2393
2394         Therefore, constrainScrollPositionForOverhang needs to correctly take
2395         the scrollOrigin into account. The easiest way I saw to do this was to
2396         reimplement the function in terms of a pair of rect intersections
2397         between a virtual scrollable "viewport" and the document (with a bit
2398         of complication from headers and footers).
2399
2400         The first intersection is performed, then if the viewport doesn't fit,
2401         it is pushed down and to the right, from the origin. Next, we intersect
2402         again, this time pushing the rect up by the amount it overflowed the document
2403         rect from the bottom right. This performs effectively the same constraint
2404         as previously, but handles the scrollOrigin correctly and is also somewhat
2405         easier to read and understand (with pictures).
2406
2407         * page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
2408         (WebCore::ScrollingTreeScrollingNodeMac::setScrollLayerPosition):
2409         Subtract the scrollOrigin out of the offset passed to scrollOffsetForFixedPosition,
2410         it's expecting an offset without the origin included.
2411
2412         * platform/ScrollableArea.cpp:
2413         (WebCore::ScrollableArea::constrainScrollPositionForOverhang):
2414         Reimplement the function as described above.
2415
2416 2013-07-02  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2417
2418         Remove SVGStyledLocatableElement class
2419         https://bugs.webkit.org/show_bug.cgi?id=118283
2420
2421         Reviewed by Dirk Schulze.
2422
2423         Remove SVGStyledLocatableElement class and have SVGGraphicsElement
2424         inherit SVGStyledElement directly instead. SVGStyledLocatableElement
2425         is no longer needed and according to the specification, SVGGraphicsElement
2426         should inherit SVGStyledElement (actually SVGElement once we merge
2427         SVGStyledElement into SVGElement).
2428
2429         No new tests, no behavior change.
2430
2431         * CMakeLists.txt:
2432         * GNUmakefile.list.am:
2433         * Target.pri:
2434         * WebCore.order:
2435         * WebCore.vcxproj/WebCore.vcxproj:
2436         * WebCore.vcxproj/WebCore.vcxproj.filters:
2437         * WebCore.xcodeproj/project.pbxproj:
2438         * bindings/scripts/CodeGeneratorJS.pm:
2439         (GetGnuVTableOffsetForType):
2440         * svg/SVGAllInOne.cpp:
2441         * svg/SVGElement.cpp:
2442         (WebCore::SVGElement::getBoundingBox):
2443         * svg/SVGElement.h:
2444         * svg/SVGGraphicsElement.cpp:
2445         (WebCore::SVGGraphicsElement::SVGGraphicsElement):
2446         (WebCore::SVGGraphicsElement::parseAttribute):
2447         (WebCore::SVGGraphicsElement::svgAttributeChanged):
2448         * svg/SVGGraphicsElement.h:
2449         * svg/SVGLocatable.cpp:
2450         (WebCore::SVGLocatable::getTransformToElement):
2451         * svg/SVGStyledElement.cpp:
2452         (WebCore::SVGStyledElement::localCoordinateSpaceTransform):
2453         * svg/SVGStyledLocatableElement.cpp: Removed.
2454         * svg/SVGStyledLocatableElement.h: Removed.
2455
2456 2013-07-02  peavo@outlook.com  <peavo@outlook.com>
2457
2458         [Curl] Crash after download.
2459         https://bugs.webkit.org/show_bug.cgi?id=118303
2460
2461         Reviewed by Brent Fulgham.
2462
2463         We need to make sure that the Curl easy handle is removed from the Curl multi handle before it's freed.
2464
2465         * platform/network/curl/CurlDownload.cpp:
2466         (CurlDownloadManager::updateHandleList): Use addToCurl() and removeFromCurl() methods.
2467         (CurlDownloadManager::addToCurl): Add method to add easy handle to multi handle.
2468         (CurlDownloadManager::removeFromCurl): Add method to remove easy handle from multi handle, and then delete the handle.
2469         (CurlDownloadManager::downloadThread): Use removeFromCurl() method.
2470         (CurlDownload::~CurlDownload):
2471         * platform/network/curl/CurlDownload.h: Avoid deleting Curl easy handle in destructor.
2472
2473 2013-07-02  Radu Stavila  <stavila@adobe.com>
2474
2475         [CSSRegions] No other SVG elements except the SVGRoot must have RegionInfo objects attached
2476         https://bugs.webkit.org/show_bug.cgi?id=118295
2477
2478         Reviewed by Antti Koivisto.
2479
2480         Only the SVGRoot element can be collected in a named flow. As such, no SVG element below the root should
2481         be attached to a RenderBoxRegionInfo object.
2482
2483         A larger patch's test (https://bugs.webkit.org/show_bug.cgi?id=118300) is failing because of this.
2484         This change will be covered by that test.
2485
2486         * rendering/RenderBoxModelObject.h:
2487         (WebCore::RenderBoxModelObject::canHaveBoxInfoInRegion):
2488         * rendering/RenderObject.h:
2489         (WebCore::RenderObject::isRenderSVGBlock):
2490         * rendering/svg/RenderSVGBlock.h:
2491
2492 2013-07-02  Kangil Han  <kangil.han@samsung.com>
2493
2494         is/toHTMLStyleElement should use Element* for its argument
2495         https://bugs.webkit.org/show_bug.cgi?id=118286
2496
2497         Reviewed by Andreas Kling.
2498
2499         To reduce unnecessary call of isElementNode(), this patch replaces argument
2500         of is/toHTMLStyleElement from Node* to Element*. Plus, use Element::hasTagName
2501         in collectActiveStyleSheets function for minor code refactoring since
2502         its cost is cheaper than Node::hasTagName.
2503
2504         * css/CSSStyleSheet.cpp:
2505         (WebCore::isAcceptableCSSStyleSheetParent):
2506         * css/StyleScopeResolver.cpp:
2507         (WebCore::StyleScopeResolver::scopeFor):
2508         * dom/DocumentStyleSheetCollection.cpp:
2509         (WebCore::DocumentStyleSheetCollection::collectActiveStyleSheets):
2510         * dom/Node.cpp:
2511         (WebCore::Node::numberOfScopedHTMLStyleChildren):
2512         * html/HTMLStyleElement.h:
2513         (WebCore::isHTMLStyleElement):
2514         (WebCore::toHTMLStyleElement):
2515
2516 2013-07-02  Ryosuke Niwa  <rniwa@webkit.org>
2517
2518         Unexpose EditingPropertiesToInclude in EditingStyle.h after r151772
2519         https://bugs.webkit.org/show_bug.cgi?id=118271
2520
2521         Reviewed by Andreas Kling.
2522
2523         Don't expose EditingPropertiesToInclude in EditingStyle.h and do other cleanups as described below.
2524
2525         No new tests since there should be no behavioral change.
2526
2527         * editing/EditingStyle.cpp:
2528         (WebCore::copyEditingProperties): Use newly defined numAllEditingProperties and numInheritableEditingProperties
2529         instead of a magic number of 2.
2530         (WebCore::copyPropertiesFromComputedStyle): Renamed from editingStyleFromComputedStyle. It now takes ComputedStyleExtractor and
2531         PropertiesToInclude instead of Node* and EditingPropertiesToInclude and handles AllProperties. Also added a helper that takes Node*.
2532         (WebCore::EditingStyle::init): Calls copyPropertiesFromComputedStyle. Unfortunately, we need to special-case EditingPropertiesInEffect
2533         and not set background-color and text-decoration. This is required probably due to a bug elsewhere.
2534         (WebCore::EditingStyle::removeStyleAddedByNode):
2535         (WebCore::EditingStyle::removeStyleConflictingWithStyleOfNode):
2536         (WebCore::extractEditingProperties): Renamed from EditingStyle::removeAllButEditingProperties; takes PropertiesToInclude instead of
2537         EditingPropertiesToInclude since the only caller of this function, EditingStyle::mergeInlineAndImplicitStyleOfElement, was converting
2538         the type.
2539         (WebCore::EditingStyle::mergeInlineAndImplicitStyleOfElement):
2540         * editing/EditingStyle.h:
2541
2542 2013-07-02  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2543
2544         Introduce toSVGInlineTextBox
2545         https://bugs.webkit.org/show_bug.cgi?id=118289
2546
2547         Reviewed by Andreas Kling.
2548
2549         As a step to change static_cast with toXXX, static_cast<SVGInlineTextBox*> can
2550         be changed with toSVGInlineTextBox().
2551
2552         Blink merge from https://src.chromium.org/viewvc/blink?view=rev&revision=153345
2553
2554         * rendering/svg/RenderSVGInlineText.cpp:
2555         (WebCore::RenderSVGInlineText::positionForPoint):
2556         * rendering/svg/SVGInlineFlowBox.cpp:
2557         (WebCore::SVGInlineFlowBox::paintSelectionBackground):
2558         (WebCore::SVGInlineFlowBox::paint):
2559         (WebCore::SVGInlineFlowBox::computeTextMatchMarkerRectForRenderer):
2560         * rendering/svg/SVGInlineTextBox.h:
2561         (WebCore::toSVGInlineTextBox):
2562         * rendering/svg/SVGRenderTreeAsText.cpp:
2563         (WebCore::writeSVGInlineTextBoxes):
2564         * rendering/svg/SVGRootInlineBox.cpp:
2565         (WebCore::SVGRootInlineBox::paint):
2566         (WebCore::SVGRootInlineBox::layoutCharactersInTextBoxes):
2567         (WebCore::SVGRootInlineBox::layoutChildBoxes):
2568         (WebCore::reverseInlineBoxRangeAndValueListsIfNeeded):
2569         * rendering/svg/SVGTextQuery.cpp:
2570         (WebCore::SVGTextQuery::collectTextBoxesInFlowBox):
2571
2572 2013-07-02  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2573
2574         Simplify SVGTextContentElement::elementFromRenderer()
2575         https://bugs.webkit.org/show_bug.cgi?id=118284
2576
2577         Reviewed by Andreas Kling.
2578
2579         Simplify SVGTextContentElement::elementFromRenderer() by leveraging
2580         SVGElement::isTextContent() methods instead of explicitly checking
2581         for tag names.
2582
2583         No new tests, no behavior change.
2584
2585         * svg/SVGTextContentElement.cpp:
2586         (WebCore::SVGTextContentElement::elementFromRenderer):
2587
2588 2013-07-02  Csaba Osztrogonác  <ossy@webkit.org>
2589
2590         Fix cast-align warnings in WebCore/platform/graphics/texmap/TextureMapperGL.cpp
2591         https://bugs.webkit.org/show_bug.cgi?id=118249
2592
2593         Reviewed by Allan Sandfeld Jensen.
2594
2595         * platform/graphics/texmap/TextureMapperGL.cpp:
2596         (WebCore::BitmapTextureGL::updateContents):
2597
2598 2013-07-02  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2599
2600         [Qt][WK1] Support WebGL with EGL on Linux
2601         https://bugs.webkit.org/show_bug.cgi?id=118251
2602
2603         Reviewed by Kenneth Rohde Christiansen.
2604
2605         Let GraphicsContext3D work without a GraphicsSurface.
2606
2607         * Target.pri:
2608         * platform/graphics/OpenGLShims.cpp:
2609         (WebCore::getProcAddress):
2610         * platform/graphics/qt/GraphicsContext3DQt.cpp:
2611         (WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
2612         (WebCore::GraphicsContext3DPrivate::paintToTextureMapper):
2613
2614 2013-07-02  Catalin Badea  <badea@adobe.com>
2615
2616         [CSS-Regions] OverrideLogicalHeight used by both regions and flexbox
2617         https://bugs.webkit.org/show_bug.cgi?id=118057
2618
2619         Reviewed by David Hyatt.
2620
2621         Remove the use of overrideLogicalContentHeight() from regions and
2622         use a local variable instead. The change was needed to avoid
2623         overlapping with flexbox containers.
2624
2625         Test: fast/regions/autoheight-flexbox.html
2626
2627         * rendering/RenderFlowThread.cpp:
2628         (WebCore::RenderFlowThread::validateRegions):
2629         (WebCore::RenderFlowThread::layout):
2630         (WebCore::RenderFlowThread::applyBreakAfterContent):
2631         (WebCore::RenderFlowThread::initializeRegionsComputedAutoHeight):
2632         (WebCore::RenderFlowThread::updateRegionsFlowThreadPortionRect):
2633         (WebCore::RenderFlowThread::addForcedRegionBreak):
2634         * rendering/RenderFlowThread.h:
2635         * rendering/RenderRegion.cpp:
2636         (WebCore::RenderRegion::RenderRegion):
2637         (WebCore::RenderRegion::pageLogicalHeight):
2638         (WebCore::RenderRegion::logicalHeightOfAllFlowThreadContent):
2639         (WebCore::RenderRegion::updateRegionHasAutoLogicalHeightFlag):
2640         (WebCore::RenderRegion::layoutBlock):
2641         (WebCore::RenderRegion::updateLogicalHeight):
2642         * rendering/RenderRegion.h:
2643         (WebCore::RenderRegion::computedAutoHeight):
2644         (WebCore::RenderRegion::setComputedAutoHeight):
2645         (WebCore::RenderRegion::clearComputedAutoHeight):
2646         (WebCore::RenderRegion::hasComputedAutoHeight):
2647         * rendering/RenderView.cpp:
2648
2649 2013-07-01  Alex Christensen  <achristensen@apple.com>
2650
2651         Windows should be included in the list of platforms that can use OpenGL ES 2.
2652         https://bugs.webkit.org/show_bug.cgi?id=118264
2653
2654         Reviewed by Dean Jackson.
2655
2656         * platform/graphics/GraphicsContext3D.h: Added PLATFORM(WIN) to platforms using OpenGL ES 2.
2657
2658 2013-07-01  Gustavo Noronha Silva  <gustavo.noronha@collabora.com>
2659
2660         [GTK] Remove unsupported AC backends
2661         https://bugs.webkit.org/show_bug.cgi?id=117362
2662
2663         Reviewed by Martin Robinson.
2664
2665         * GNUmakefile.am:
2666         * GNUmakefile.list.am:
2667         * Source/WebCore/platform/graphics/PlatformLayer.h: Removed mentions of clutter
2668         and the texmap cairo backend.
2669         * platform/graphics/clutter/DrawingBufferClutter.cpp: Removed.
2670         * platform/graphics/clutter/GraphicsContext3DClutter.cpp: Removed.
2671         * platform/graphics/clutter/GraphicsContext3DPrivate.cpp: Removed.
2672         * platform/graphics/clutter/GraphicsContext3DPrivate.h: Removed.
2673         * platform/graphics/clutter/GraphicsLayerActor.cpp: Removed.
2674         * platform/graphics/clutter/GraphicsLayerActor.h: Removed.
2675         * platform/graphics/clutter/GraphicsLayerClutter.cpp: Removed.
2676         * platform/graphics/clutter/GraphicsLayerClutter.h: Removed.
2677         * platform/graphics/clutter/PlatformClutterAnimation.cpp: Removed.
2678         * platform/graphics/clutter/PlatformClutterAnimation.h: Removed.
2679         * platform/graphics/clutter/PlatformClutterLayerClient.h: Removed.
2680         * platform/graphics/clutter/TransformationMatrixClutter.cpp: Removed.
2681         * Source/WebCore/platform/graphics/transforms/TransformationMatrix.h: Removed cogl
2682         matrix type conversion.
2683
2684 2013-07-01  Alex Christensen  <achristensen@apple.com>
2685
2686         DrawingBuffer constructor and destructor were not defined for Windows.
2687         I moved duplicate code from Cairo and Qt to DrawingBuffer.cpp to be used by Qt, Cairo, and Windows.
2688         https://bugs.webkit.org/show_bug.cgi?id=118262
2689
2690         Reviewed by Dean Jackson.
2691
2692         * platform/graphics/cairo/DrawingBufferCairo.cpp: Removed duplicate DrawingBuffer constructor and destructor.
2693         * platform/graphics/gpu/DrawingBuffer.cpp:
2694         (WebCore::DrawingBuffer::DrawingBuffer):
2695         (WebCore::DrawingBuffer::~DrawingBuffer): Moved from Cairo and Qt implementation.
2696         * platform/graphics/gpu/qt/DrawingBufferQt.cpp: Removed duplicate DrawingBuffer constructor and destructor.
2697
2698 2013-07-01  Alex Christensen  <achristensen@apple.com>
2699
2700         Fixed unreachable return when GLX or EGL are used with WebGL.
2701         https://bugs.webkit.org/show_bug.cgi?id=118263
2702
2703         Reviewed by Noam Rosenthal.
2704
2705         * platform/graphics/opengl/GLPlatformContext.cpp:
2706         (WebCore::createOffScreenContext): Fixed unreachable return.
2707
2708 2013-07-01  Tim Horton  <timothy_horton@apple.com>
2709
2710         Maximum scroll position can be negative in some cases
2711         https://bugs.webkit.org/show_bug.cgi?id=118175
2712         <rdar://problem/14301217>
2713
2714         Reviewed by Anders Carlsson.
2715
2716         Test (API): WebKit2.ResizeReversePaginatedWebView
2717
2718         * page/FrameView.cpp:
2719         (WebCore::FrameView::maximumScrollPosition):
2720         * page/FrameView.h:
2721         Override maximumScrollPosition() in FrameView and don't clamp to zero if
2722         a reverse pagination mode is enabled, as it is possible (and common) to
2723         have a negative maximum scroll position with reverse pagination.
2724
2725         * platform/ScrollView.cpp:
2726         (WebCore::ScrollView::updateScrollbars):
2727         Drive-by adoption of toIntSize().
2728
2729 2013-07-01  Alex Christensen  <achristensen@apple.com>
2730
2731         Removed all references to DrawingBuffer methods unused since the removal of Chromium:
2732         DrawingBuffer::prepareBackBuffer,
2733         DrawingBuffer::requiresCopyFromBackToFrontBuffer, and
2734         DrawingBuffer::clearPlatformLayer.
2735         https://bugs.webkit.org/show_bug.cgi?id=118257
2736
2737         Reviewed by Darin Adler.
2738
2739         * platform/graphics/blackberry/DrawingBufferBlackBerry.cpp:
2740         (WebCore::DrawingBuffer::platformLayer):
2741         * platform/graphics/cairo/DrawingBufferCairo.cpp:
2742         (WebCore::DrawingBuffer::paintCompositedResultsToCanvas):
2743         * platform/graphics/clutter/DrawingBufferClutter.cpp:
2744         (WebCore::DrawingBuffer::paintCompositedResultsToCanvas):
2745         * platform/graphics/gpu/DrawingBuffer.cpp:
2746         (WebCore::DrawingBuffer::clear):
2747         * platform/graphics/gpu/DrawingBuffer.h:
2748         * platform/graphics/gpu/mac/DrawingBufferMac.mm:
2749         (WebCore::DrawingBuffer::frontColorBuffer):
2750         * platform/graphics/gpu/qt/DrawingBufferQt.cpp:
2751         (WebCore::DrawingBuffer::paintCompositedResultsToCanvas):
2752
2753 2013-07-01  Jochen Eisinger  <jochen@chromium.org>
2754
2755         Remove support for consumable user gestures
2756         https://bugs.webkit.org/show_bug.cgi?id=118247
2757
2758         Reviewed by Geoffrey Garen.
2759
2760         The features was not enabled on any port, and is meanwhile broken, so we
2761         should delete it.
2762
2763         No new tests, just deleting dead code.
2764
2765         * accessibility/AccessibilityNodeObject.cpp:
2766         (WebCore::AccessibilityNodeObject::increment):
2767         (WebCore::AccessibilityNodeObject::decrement):
2768         * accessibility/AccessibilityObject.cpp:
2769         (WebCore::AccessibilityObject::press):
2770         * bindings/ScriptControllerBase.cpp:
2771         (WebCore::ScriptController::executeScript):
2772         * bindings/js/ScriptController.cpp:
2773         (WebCore::ScriptController::executeScriptInWorld):
2774         * dom/UserGestureIndicator.cpp:
2775         (WebCore::isDefinite):
2776         (WebCore::UserGestureIndicator::UserGestureIndicator):
2777         (WebCore::UserGestureIndicator::~UserGestureIndicator):
2778         * dom/UserGestureIndicator.h:
2779         (WebCore::UserGestureIndicator::processingUserGesture):
2780         * inspector/InspectorFrontendClientLocal.cpp:
2781         (WebCore::InspectorFrontendClientLocal::openInNewTab):
2782         * inspector/InspectorFrontendHost.cpp:
2783         (WebCore::FrontendMenuProvider::contextMenuItemSelected):
2784         * inspector/InspectorPageAgent.cpp:
2785         (WebCore::InspectorPageAgent::navigate):
2786         * loader/NavigationScheduler.cpp:
2787         (WebCore::ScheduledURLNavigation::fire):
2788         (WebCore::ScheduledURLNavigation::didStartTimer):
2789         (WebCore::ScheduledRedirect::fire):
2790         (WebCore::ScheduledRefresh::fire):
2791         (WebCore::ScheduledHistoryNavigation::fire):
2792         (WebCore::ScheduledFormSubmission::fire):
2793         (WebCore::ScheduledFormSubmission::didStartTimer):
2794         * page/DOMTimer.cpp:
2795         (WebCore::DOMTimer::DOMTimer):
2796         (WebCore::DOMTimer::fired):
2797         * page/DOMTimer.h:
2798         * page/DOMWindow.cpp:
2799         (WebCore::DOMWindow::showModalDialog):
2800         * page/EventHandler.cpp:
2801         (WebCore::EventHandler::clear):
2802         (WebCore::EventHandler::handleMousePressEvent):
2803         (WebCore::EventHandler::handleMouseReleaseEvent):
2804         * page/EventHandler.h:
2805         * rendering/HitTestResult.cpp:
2806         (WebCore::HitTestResult::toggleMediaFullscreenState):
2807         (WebCore::HitTestResult::enterFullscreenForVideo):
2808
2809 2013-07-01  Frédéric Wang  <fred.wang@free.fr>
2810
2811         Add Support for mspace element
2812         https://bugs.webkit.org/show_bug.cgi?id=115610
2813
2814         Reviewed by Chris Fleizach.
2815
2816         This patch adds basic support for the MathML mspace element. This is
2817         important to let people control spacing of mathematical formulas.
2818         Attributes width, height and depth are implemented. For the moment,
2819         only nonnegative width are accepted.
2820
2821         * CMakeLists.txt: add references to the RenderMathMLSpace files.
2822         * GNUmakefile.list.am: ditto.
2823         * Target.pri: ditto.
2824         * WebCore.vcxproj/WebCore.vcxproj: ditto.
2825         * WebCore.vcxproj/WebCore.vcxproj.filters: ditto.
2826         * WebCore.xcodeproj/project.pbxproj: ditto.
2827         * css/mathml.css:
2828         (mtable[columnlines="dashed"] > mtr > mtd + mtd): remove the obsolete linebreaking rule.
2829         * mathml/MathMLTextElement.cpp:
2830         (WebCore::MathMLTextElement::createRenderer): map mspaceTag to RenderMathMLSpace.
2831         * mathml/mathattrs.in: add width, height and depth attributes
2832         * mathml/mathtags.in: add mspace element
2833         * rendering/mathml/RenderMathMLBlock.cpp:
2834         (WebCore::parseMathMLLength): fix int to float conversion.
2835         * rendering/mathml/RenderMathMLBlock.h: declare isRenderMathMLSpace.
2836         (WebCore::RenderMathMLBlock::isRenderMathMLSpace):
2837         * rendering/mathml/RenderMathMLSpace.cpp: Added.
2838         (WebCore::RenderMathMLSpace::RenderMathMLSpace):
2839         (WebCore::RenderMathMLSpace::isChildAllowed):
2840         (WebCore::RenderMathMLSpace::computePreferredLogicalWidths):
2841         (WebCore::RenderMathMLSpace::updateFromElement):
2842         (WebCore::RenderMathMLSpace::updateLogicalWidth):
2843         (WebCore::RenderMathMLSpace::updateLogicalHeight):
2844         (WebCore::RenderMathMLSpace::layout):
2845         (WebCore::RenderMathMLSpace::styleDidChange):
2846         (WebCore::RenderMathMLSpace::firstLineBoxBaseline):
2847         * rendering/mathml/RenderMathMLSpace.h: Added.
2848         (WebCore::RenderMathMLSpace::isRenderMathMLSpace):
2849         (WebCore::RenderMathMLSpace::renderName):
2850         (WebCore::toRenderMathMLSpace):
2851
2852 2013-06-27  Jer Noble  <jer.noble@apple.com>
2853
2854         Audio in apps which embed WebViews is corrupted.
2855         https://bugs.webkit.org/show_bug.cgi?id=118163
2856
2857         Reviewed by Maciej Stachowiak.
2858
2859         Add a preference, which defaults to off, which controls whether the
2860         AudioSessionManager will switch to a large audio buffer setting for
2861         power-savings during <video> playback.
2862
2863         * WebCore.exp.in:
2864         * page/Settings.cpp:
2865         (WebCore::Settings::setLowPowerVideoAudioBufferSizeEnabled): Added.  Simple setter.
2866         * page/Settings.h:
2867         (WebCore::Settings::lowPowerVideoAudioBufferSizeEnabled): Added.  Simple getter.
2868         * platform/audio/mac/AudioSessionManagerMac.cpp:
2869         (AudioSessionManager::updateSessionState): Only set the large audio buffer
2870             size if lowPowerVideoAudioBufferSize is enabled.
2871
2872 2013-07-01  Brian Holt  <brian.holt@samsung.com>
2873
2874         [ATK] Leak: leaks in WebKitAccessibleInterfaceText
2875         https://bugs.webkit.org/show_bug.cgi?id=118248
2876
2877         Fixed memory leaks.
2878
2879         Reviewed by Christophe Dumez.
2880
2881         * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
2882         (getPangoLayoutForAtk):
2883         (webkitAccessibleTextGetText):
2884
2885 2013-07-01  Roger Fong  <roger_fong@apple.com>
2886
2887         Unreviewed. Make WebCore.make copy over QTMovieWin DLL's and PDB's.
2888         <rdar://problem/14321403>
2889
2890         * WebCore.vcxproj/WebCore.make:
2891
2892 2013-07-01  peavo@outlook.com  <peavo@outlook.com>
2893
2894         [Win] Crash when scrolling page with images.
2895         https://bugs.webkit.org/show_bug.cgi?id=117832
2896
2897         Reviewed by Brent Fulgham.
2898
2899         Avoid access violation by returning early from method if image frame doesn't have pixel data.
2900
2901         * platform/image-decoders/ImageDecoder.h:
2902         (WebCore::ImageFrame::hasPixelData): Added method to check if frame has pixel data.
2903         * platform/image-decoders/gif/GIFImageDecoder.cpp:
2904         (WebCore::GIFImageDecoder::haveDecodedRow): Early return if frame doesn't have pixel data.
2905
2906 2013-07-01  Noam Rosenthal  <noam@webkit.org>
2907
2908         Avoid calling RenderLayerBacking::resetContentsRect() if possible
2909         https://bugs.webkit.org/show_bug.cgi?id=118217
2910
2911         Reviewed by Simon Fraser.
2912
2913         Call resetContentsRect() only if the layer has a contentsLayer.
2914         Otherwise the contentsRect is redundant for the GraphicsLayer.
2915
2916         No new tests - optimization only. This is covered by plenty of existing
2917         tests in webgl/ and compositing/.
2918
2919         * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
2920         (WebCore::GraphicsLayerTextureMapper::hasContentsLayer):
2921         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:
2922             Added hasContentsLayer calls for TextureMapper/CoordinatedGraphics
2923
2924         * rendering/RenderLayerBacking.cpp:
2925         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
2926
2927 2013-07-01  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2928
2929         [Qt] Avoid creating a QWindow for offscreen GraphicsContext3D
2930         https://bugs.webkit.org/show_bug.cgi?id=118244
2931
2932         Reviewed by Noam Rosenthal.
2933
2934         In Qt 5.0 we had to create invisible windows, but in Qt 5.1
2935         we can now create specific offscreen surfaces.
2936
2937         * platform/graphics/qt/GraphicsContext3DQt.cpp:
2938         (WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
2939
2940 2013-07-01  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2941
2942         [Qt] Remove long unused Qt4 forward definitions
2943
2944         Unreviewed cleanu-up.
2945
2946         * platform/graphics/GraphicsContext3D.h:
2947
2948 2013-07-01  Antti Koivisto  <antti@apple.com>
2949
2950         Use DeferrableOneShotTimer for deleting decoded data
2951         https://bugs.webkit.org/show_bug.cgi?id=118150
2952
2953         Reviewed by Andreas Kling.
2954
2955         Adam Barth pointed out that the virtual function for overriding the default delay doesn't work
2956         as expected from base class constructor.
2957
2958         * loader/cache/CachedResource.cpp:
2959         (WebCore::deadDecodedDataDeletionIntervalForResourceType):
2960         (WebCore::CachedResource::CachedResource):
2961
2962             Use static function instead of calling a virtual.
2963
2964         * loader/cache/CachedResource.h:
2965         * loader/cache/CachedScript.cpp:
2966         * loader/cache/CachedScript.h:
2967
2968 2013-07-01  Kangil Han  <kangil.han@samsung.com>
2969
2970         Adopt toHTMLTextAreaElement for code cleanup
2971         https://bugs.webkit.org/show_bug.cgi?id=118226
2972
2973         Reviewed by Andreas Kling.
2974
2975         To enhance readability, this patch adopts toHTMLTextAreaElement.
2976         This also helps out to reduce duplicated use of static_cast.
2977
2978         * accessibility/AccessibilityNodeObject.cpp:
2979         (WebCore::AccessibilityNodeObject::determineAccessibilityRole):
2980         (WebCore::AccessibilityNodeObject::isNativeTextControl):
2981         (WebCore::AccessibilityNodeObject::isReadOnly):
2982         (WebCore::AccessibilityNodeObject::text):
2983         * accessibility/AccessibilityRenderObject.cpp:
2984         (WebCore::AccessibilityRenderObject::setValue):
2985         * css/StyleResolver.cpp:
2986         (WebCore::StyleResolver::adjustRenderStyle):
2987         * editing/markup.cpp:
2988         (WebCore::StyledMarkupAccumulator::appendText):
2989         * html/HTMLFormControlElement.cpp:
2990         (WebCore::shouldAutofocus):
2991         * html/HTMLTextAreaElement.h:
2992         (WebCore::toHTMLTextAreaElement):
2993         * page/FocusController.cpp:
2994         (WebCore::clearSelectionIfNeeded):
2995         * rendering/HitTestResult.cpp:
2996         (WebCore::HitTestResult::isContentEditable):
2997         * rendering/RenderBox.cpp:
2998         (WebCore::RenderBox::sizesLogicalWidthToFitContent):
2999         * rendering/RenderTextControlMultiLine.cpp:
3000         (WebCore::RenderTextControlMultiLine::~RenderTextControlMultiLine):
3001         (WebCore::RenderTextControlMultiLine::preferredContentLogicalWidth):
3002         (WebCore::RenderTextControlMultiLine::computeControlLogicalHeight):
3003         * testing/Internals.cpp:
3004         (WebCore::Internals::wasLastChangeUserEdit):
3005
3006 2013-07-01  Kwang Yul Seo  <skyul@company100.net>
3007
3008         Add missing string headers that are used when LOG_DISABLED is 0.
3009         https://bugs.webkit.org/show_bug.cgi?id=118227
3010
3011         Reviewed by Andreas Kling.
3012
3013         Build fix for LOG_DISABLED=0.
3014
3015         No new tests, no behavior change.
3016
3017         * html/track/InbandTextTrack.cpp:
3018         * rendering/RenderLayerCompositor.cpp:
3019
3020 2013-06-29  Simon Fraser  <simon.fraser@apple.com>
3021
3022         Avoid calling into Objective-C every time we get the scrollbar width
3023         https://bugs.webkit.org/show_bug.cgi?id=118216
3024
3025         Reviewed by Geoffrey Garen.
3026
3027         Profiling shows that calling Scrollbar::isOverlayScrollbar() is somewhat
3028         expensive, because it calls down into Objective-C. Fix by caching in
3029         ScrollbarThemeMac whether we're using overlay scrollbars. We update this
3030         cache on creation, and when preferences change; ScrollAnimatorMac::updateScrollerStyle()
3031         is the function that gets called when the user changes the setting in System Preferences.
3032
3033         * platform/ScrollbarTheme.h:
3034         (WebCore::ScrollbarTheme::usesOverlayScrollbarsChanged):
3035         * platform/mac/ScrollAnimatorMac.mm:
3036         (WebCore::ScrollAnimatorMac::updateScrollerStyle):
3037         * platform/mac/ScrollbarThemeMac.h:
3038         * platform/mac/ScrollbarThemeMac.mm:
3039         (WebCore::ScrollbarThemeMac::preferencesChanged):
3040         (WebCore::ScrollbarThemeMac::usesOverlayScrollbars):
3041         (WebCore::ScrollbarThemeMac::usesOverlayScrollbarsChanged):
3042
3043 2013-06-29  Simon Fraser  <simon.fraser@apple.com>
3044
3045         Avoid calling isSimpleContainerCompositingLayer() an extra time
3046         https://bugs.webkit.org/show_bug.cgi?id=118218
3047
3048         Reviewed by Tim Horton.
3049
3050         containsPaintedContent() called isSimpleContainerCompositingLayer(), which
3051         is not particularly cheap. But the caller already has this information,
3052         so pass it in.
3053
3054         * rendering/RenderLayerBacking.cpp:
3055         (WebCore::RenderLayerBacking::updateDrawsContent):
3056         (WebCore::RenderLayerBacking::containsPaintedContent):
3057         * rendering/RenderLayerBacking.h:
3058
3059 2013-06-29  Simon Fraser  <simon.fraser@apple.com>
3060
3061         Avoid doing work in RenderBox::outlineBoundsForRepaint() when the repaintContainer is this
3062         https://bugs.webkit.org/show_bug.cgi?id=118215
3063
3064         Reviewed by Tim Horton.
3065
3066         When the RenderGeometryMap code path was added, RenderBox::outlineBoundsForRepaint()
3067         actually got slower if no coordinate mapping was needed. So avoid doing work when
3068         we can, including avoiding the FloatQuad construction.
3069
3070         Speeds up scrolling overflow:scroll areas with large numbers of layer children.
3071
3072         * rendering/RenderBox.cpp:
3073         (WebCore::RenderBox::outlineBoundsForRepaint):
3074
3075 2013-06-29  Kangil Han  <kangil.han@samsung.com>
3076
3077         Adopt is/toHTMLOptGroupElement for code cleanup
3078         https://bugs.webkit.org/show_bug.cgi?id=118213
3079
3080         Reviewed by Andreas Kling.
3081
3082         To enhance readability, this patch adopts is/toHTMLOptGroupElement.
3083         This also helps out to reduce duplicated use of static_cast.
3084
3085         * accessibility/AccessibilityListBoxOption.cpp:
3086         (WebCore::AccessibilityListBoxOption::isEnabled):
3087         (WebCore::AccessibilityListBoxOption::stringValue):
3088         (WebCore::AccessibilityListBoxOption::listBoxOptionParentNode):
3089         * css/SelectorChecker.cpp:
3090         (WebCore::SelectorChecker::checkOne):
3091         * css/StyleResolver.cpp:
3092         (WebCore::StyleResolver::canShareStyleWithElement):
3093         * html/HTMLOptGroupElement.h:
3094         (WebCore::isHTMLOptGroupElement):
3095         (WebCore::toHTMLOptGroupElement):
3096         * html/HTMLOptionElement.cpp:
3097         (WebCore::HTMLOptionElement::textIndentedToRespectGroupLabel):
3098         (WebCore::HTMLOptionElement::isDisabledFormControl):
3099         * html/HTMLSelectElement.cpp:
3100         (WebCore::HTMLSelectElement::childShouldCreateRenderer):
3101         (WebCore::HTMLSelectElement::recalcListItems):
3102         * html/parser/HTMLConstructionSite.cpp:
3103         (WebCore::hasImpliedEndTag):
3104         * html/parser/HTMLElementStack.cpp:
3105         (WebCore::HTMLNames::isSelectScopeMarker):
3106         * html/parser/HTMLTreeBuilder.cpp:
3107         (WebCore::HTMLTreeBuilder::processStartTag):
3108         (WebCore::HTMLTreeBuilder::processEndTag):
3109         * rendering/RenderListBox.cpp:
3110         (WebCore::RenderListBox::updateFromElement):
3111         (WebCore::RenderListBox::paintItemForeground):
3112         * rendering/RenderMenuList.cpp:
3113         (WebCore::RenderMenuList::itemText):
3114         (WebCore::RenderMenuList::itemIsEnabled):
3115         (WebCore::RenderMenuList::itemIsLabel):
3116
3117 2013-06-29  ChangSeok Oh  <changseok.oh@collabora.com>
3118
3119         Build fix for unguarded SVGGraphicsElement
3120         https://bugs.webkit.org/show_bug.cgi?id=118214
3121
3122         Reviewed by Christophe Dumez.
3123
3124         Add the SVG condition to SVGGraphicsElement.idl
3125
3126         No new tests required since no functionality changed.
3127
3128         * svg/SVGGraphicsElement.idl:
3129
3130 2013-06-29  Kangil Han  <kangil.han@samsung.com>
3131
3132         Adopt is/toHTMLOptionElement for code cleanup
3133         https://bugs.webkit.org/show_bug.cgi?id=118212
3134
3135         Reviewed by Andreas Kling.
3136
3137         To enhance readability, this patch adopts is/toHTMLOptionElement.
3138         This also helps out to reduce duplicated use of static_cast.
3139
3140         * accessibility/AccessibilityListBoxOption.cpp:
3141         (WebCore::AccessibilityListBoxOption::isSelected):
3142         (WebCore::AccessibilityListBoxOption::canSetSelectedAttribute):
3143         (WebCore::AccessibilityListBoxOption::stringValue):
3144         (WebCore::AccessibilityListBoxOption::listBoxOptionParentNode):
3145         * accessibility/AccessibilityMenuListOption.cpp:
3146         (WebCore::AccessibilityMenuListOption::setElement):
3147         (WebCore::AccessibilityMenuListOption::isEnabled):
3148         (WebCore::AccessibilityMenuListOption::isSelected):
3149         (WebCore::AccessibilityMenuListOption::setSelected):
3150         (WebCore::AccessibilityMenuListOption::stringValue):
3151         * accessibility/AccessibilityMenuListPopup.cpp:
3152         (WebCore::AccessibilityMenuListPopup::menuListOptionAccessibilityObject):
3153         * accessibility/AccessibilityRenderObject.cpp:
3154         (WebCore::AccessibilityRenderObject::accessibilityHitTest):
3155         * css/SelectorChecker.cpp:
3156         (WebCore::SelectorChecker::checkOne):
3157         * css/StyleResolver.cpp:
3158         (WebCore::StyleResolver::canShareStyleWithElement):
3159         * html/HTMLCollection.cpp:
3160         (WebCore::isMatchingElement):
3161         * html/HTMLOptionElement.cpp:
3162         (WebCore::HTMLOptionElement::index):
3163         * html/HTMLOptionElement.h:
3164         (WebCore::isHTMLOptionElement):
3165         (WebCore::toHTMLOptionElement):
3166         * html/HTMLOptionsCollection.cpp:
3167         (WebCore::HTMLOptionsCollection::add):
3168         * html/HTMLSelectElement.cpp:
3169         (WebCore::HTMLSelectElement::hasPlaceholderLabelOption):
3170         (WebCore::HTMLSelectElement::value):
3171         (WebCore::HTMLSelectElement::setValue):
3172         (WebCore::HTMLSelectElement::childShouldCreateRenderer):
3173         (WebCore::HTMLSelectElement::nextValidIndex):
3174         (WebCore::HTMLSelectElement::saveLastSelection):
3175         (WebCore::HTMLSelectElement::setActiveSelectionAnchorIndex):
3176         (WebCore::HTMLSelectElement::updateListBoxSelection):
3177         (WebCore::HTMLSelectElement::listBoxOnChange):
3178         (WebCore::HTMLSelectElement::recalcListItems):
3179         (WebCore::HTMLSelectElement::selectedIndex):
3180         (WebCore::HTMLSelectElement::selectOption):
3181         (WebCore::HTMLSelectElement::optionToListIndex):
3182         (WebCore::HTMLSelectElement::listToOptionIndex):
3183         (WebCore::HTMLSelectElement::deselectItemsWithoutValidation):
3184         (WebCore::HTMLSelectElement::saveFormControlState):
3185         (WebCore::HTMLSelectElement::searchOptionsForValue):
3186         (WebCore::HTMLSelectElement::restoreFormControlState):
3187         (WebCore::HTMLSelectElement::appendFormData):
3188         (WebCore::HTMLSelectElement::reset):
3189         (WebCore::HTMLSelectElement::updateSelectedState):
3190         (WebCore::HTMLSelectElement::lastSelectedListIndex):
3191         (WebCore::HTMLSelectElement::optionAtIndex):
3192         (WebCore::HTMLSelectElement::accessKeySetSelectedIndex):
3193         (WebCore::HTMLSelectElement::length):
3194         * html/parser/HTMLConstructionSite.cpp:
3195         (WebCore::hasImpliedEndTag):
3196         * html/parser/HTMLElementStack.cpp:
3197         (WebCore::HTMLNames::isSelectScopeMarker):
3198         * html/parser/HTMLTreeBuilder.cpp:
3199         (WebCore::HTMLTreeBuilder::processStartTagForInBody):
3200         (WebCore::HTMLTreeBuilder::processStartTag):
3201         (WebCore::HTMLTreeBuilder::processEndTag):
3202         * rendering/RenderListBox.cpp:
3203         (WebCore::RenderListBox::updateFromElement):
3204         (WebCore::RenderListBox::addFocusRingRects):
3205         (WebCore::RenderListBox::paintItemForeground):
3206         (WebCore::RenderListBox::paintItemBackground):
3207         * rendering/RenderMenuList.cpp:
3208         (WebCore::RenderMenuList::updateOptionsWidth):
3209         (WebCore::RenderMenuList::setTextFromOption):
3210         (WebCore::RenderMenuList::itemText):
3211         (WebCore::RenderMenuList::itemIsEnabled):
3212         (WebCore::RenderMenuList::itemIsSelected):
3213         * rendering/RenderTheme.cpp:
3214         (WebCore::RenderTheme::paintSliderTicks):
3215
3216 2013-06-29  Carlos Garcia Campos  <cgarcia@igalia.com>
3217
3218         REGRESSION(151586): multipart/x-mixed-replace images are broken
3219         https://bugs.webkit.org/show_bug.cgi?id=118169
3220
3221         Reviewed by Alexey Proskuryakov.
3222
3223         When loading multipart content the resource data will change as
3224         the next part is loaded, so we need to make a copy of the data
3225         before sending it to the resource.
3226
3227         * loader/SubresourceLoader.cpp:
3228         (WebCore::SubresourceLoader::didReceiveResponse):
3229
3230 2013-06-28  Eric Carlson  <eric.carlson@apple.com>
3231
3232         [Mac] adopt new AVFoundation caption API
3233         https://bugs.webkit.org/show_bug.cgi?id=118207
3234
3235         Reviewed by Dean Jackson.
3236
3237         No new tests, I was not able to come up with a reliable layout test.
3238
3239         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
3240         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
3241         (WebCore::MediaPlayerPrivateAVFoundationObjC::flushCues): New, call currentTrack->resetCueValues().
3242         (-[WebCoreAVFMovieObserver outputSequenceWasFlushed:]): New delegate method.
3243
3244 2013-06-28  Kangil Han  <kangil.han@samsung.com>
3245
3246         Adopt is/toHTMLImageElement for code cleanup
3247         https://bugs.webkit.org/show_bug.cgi?id=118182
3248
3249         Reviewed by Andreas Kling.
3250
3251         To enhance readability, this patch adopts is/toHTMLImageElement.
3252         This also helps out to reduce duplicated use of static_cast.
3253
3254         * accessibility/AccessibilityNodeObject.cpp:
3255         (WebCore::AccessibilityNodeObject::isNativeImage):
3256         * accessibility/AccessibilityRenderObject.cpp:
3257         (WebCore::AccessibilityRenderObject::url):
3258         * bindings/js/JSNodeCustom.cpp:
3259         (WebCore::isReachableFromDOM):
3260         * bridge/qt/qt_pixmapruntime.cpp:
3261         (JSC::Bindings::assignToHTMLImageElement):
3262         (JSC::Bindings::QtPixmapRuntime::toQt):
3263         * dom/Clipboard.cpp:
3264         (WebCore::Clipboard::setDragImage):
3265         * dom/Node.cpp:
3266         (WebCore::Node::enclosingLinkEventParentOrSelf):
3267         * editing/Editor.cpp:
3268         (WebCore::imageElementFromImageDocument):
3269         * html/HTMLAnchorElement.cpp:
3270         (WebCore::appendServerMapMousePosition):
3271         * html/HTMLImageElement.h:
3272         (WebCore::isHTMLImageElement):
3273         (WebCore::toHTMLImageElement):
3274         * html/HTMLMapElement.cpp:
3275         (WebCore::HTMLMapElement::imageElement):
3276         * html/HTMLNameCollection.cpp:
3277         (WebCore::WindowNameCollection::nodeMatchesIfNameAttributeMatch):
3278         (WebCore::DocumentNameCollection::nodeMatchesIfIdAttributeMatch):
3279         (WebCore::DocumentNameCollection::nodeMatchesIfNameAttributeMatch):
3280         (WebCore::DocumentNameCollection::nodeMatches):
3281         * page/DragController.cpp:
3282         (WebCore::DragController::draggableElement):
3283         * page/PageSerializer.cpp:
3284         (WebCore::PageSerializer::serializeFrame):
3285         * platform/gtk/PasteboardGtk.cpp:
3286         (WebCore::getURLForImageNode):
3287         * platform/mac/HTMLConverter.mm:
3288         (+[WebHTMLConverter editingAttributedStringFromRange:]):
3289         * rendering/HitTestResult.cpp:
3290         (WebCore::HitTestResult::altDisplayString):
3291         (WebCore::HitTestResult::absoluteImageURL):
3292         * rendering/RenderImage.cpp:
3293         (WebCore::RenderImage::paintIntoRect):
3294         (WebCore::RenderImage::imageMap):
3295         (WebCore::RenderImage::updateAltText):
3296         * rendering/RenderObject.cpp:
3297         (WebCore::RenderObject::shouldRespectImageOrientation):
3298
3299 2013-06-28  Gavin Barraclough  <barraclough@apple.com>
3300
3301         PageThrottler::shouldThrottleTimers is wrong.
3302         https://bugs.webkit.org/show_bug.cgi?id=118210
3303
3304         Reviewed by Anders Carlson.
3305
3306         m_throttleState == PageNotThrottledState
3307             -> page NOT throttled, so should NOT throttle timers
3308         m_throttleState != PageNotThrottledState
3309             -> page NOT NOT throttled, so should throttle timers
3310
3311         This needs cleaning up, but for now, 1 character fix.
3312
3313         * page/PageThrottler.h:
3314         (WebCore::PageThrottler::shouldThrottleTimers):
3315             == -> !=
3316
3317 2013-06-28  Ryosuke Niwa  <rniwa@webkit.org>
3318
3319         An element with -webkit-user-select: all should be selected on single click
3320         https://bugs.webkit.org/show_bug.cgi?id=117864
3321
3322         Reviewed by Darin Adler.
3323
3324         Set m_mouseDownMayStartSelect true even when the node cannot start selection
3325         if the node was inside an element with -webkit-user-select: all.
3326
3327         Test: editing/selection/user-select-all-with-single-click.html
3328
3329         * page/EventHandler.cpp:
3330         (WebCore::canMouseDownStartSelect):
3331
3332 2013-06-28  Ryosuke Niwa  <rniwa@webkit.org>
3333
3334         Remove unused attachChildrenLazily method and make attach/detachChildren private
3335         https://bugs.webkit.org/show_bug.cgi?id=118016
3336
3337         Reviewed by Darin Adler.
3338
3339         Merge https://chromium.googlesource.com/chromium/blink/+/009520dc31c9458e0cf71cf212fa5688c4ca68b0
3340
3341         No one should be manually trying to attach or detach all their children so there's
3342         no reason for these methods to be public.
3343
3344         In doing this I realized that attachChildrenLazily is not used and can be removed.
3345
3346         I also realized that we were detaching all our children before the ShadowRoots which
3347         is sad since the InsertionPoints will call detach() on them as well, and then when we
3348         call ContainerNode::detach at the end of Element::detach we'll go detach them again!
3349         This patch makes it so we only go through and detach them twice instead of three times.
3350         In the future we should figure out a way to only do this once.
3351
3352         * dom/ContainerNode.h:
3353         * dom/Element.cpp:
3354         (WebCore::Element::detach):
3355
3356 2013-06-28  Alexey Proskuryakov  <ap@apple.com>
3357
3358         [Mac] Crash when loading is stopped from -didReceiveResponse
3359         https://bugs.webkit.org/show_bug.cgi?id=118209
3360         <rdar://problem/14259249>
3361
3362         Reviewed by Brady Eidson.
3363
3364         Test: TestWebKitAPI/Tests/mac/StopLoadingFromDidReceiveResponse.mm.
3365
3366         * loader/SubresourceLoader.cpp: (WebCore::SubresourceLoader::didReceiveResponse):
3367         Added yet another check for reachedTerminalState().
3368
3369 2013-06-28  Beth Dakin  <bdakin@apple.com>
3370
3371         Cached pages don't update their backing scale factor when it changes
3372         https://bugs.webkit.org/show_bug.cgi?id=118206
3373         -and-
3374         <rdar://problem/14261627>
3375
3376         Reviewed by Tim Horton.
3377
3378         It is not sufficient to mark pages in the PageCache as needing a full style
3379         recalc. We also need to ensure that the RenderLayerCompositors for the CachesPages
3380         get updated.
3381
3382         Keep track of whether device scale has been updated with
3383         m_needsDeviceScaleChanged. If that has been marked true, then restore() will call
3384         Frame::deviceOrPageScaleFactorChanged().
3385         * history/CachedPage.cpp:
3386         (WebCore::CachedPage::CachedPage):
3387         (WebCore::CachedPage::restore):
3388         * history/CachedPage.h:
3389         (WebCore::CachedPage::markForDeviceScaleChanged):
3390
3391         Propagate markForDeviceScaleChanged() to all of the CachedPages.
3392         * history/PageCache.cpp:
3393         (WebCore::PageCache::markPagesForDeviceScaleChanged):
3394         * history/PageCache.h:
3395
3396         Call PageCache::markPagesForDeviceScaleChanged()
3397         * page/Page.cpp:
3398         (WebCore::Page::setDeviceScaleFactor):
3399
3400 2013-06-28  Alex Christensen  <achristensen@apple.com>
3401
3402         Added template parameters to std::min to fix compile errors in Visual Studio x64.
3403         https://bugs.webkit.org/show_bug.cgi?id=118204
3404
3405         Reviewed by Geoffrey Garen.
3406
3407         * platform/win/PasteboardWin.cpp:
3408         (WebCore::Pasteboard::writeURLToDataObject): Added <unsigned> to std::min.
3409         (WebCore::createGlobalImageFileDescriptor): Added <int> to std::min.
3410
3411 2013-06-28  Alex Christensen  <achristensen@apple.com>
3412
3413         Added WebGL files to Windows build.
3414         https://bugs.webkit.org/show_bug.cgi?id=118200
3415
3416         Reviewed by Brent Fulgham.
3417
3418         * WebCore.vcxproj/WebCore.vcxproj: Added WebGL files, removed unused GraphicsContext3DOpenGLES.cpp.
3419         * WebCore.vcxproj/WebCore.vcxproj.filters: Added WebGL files, removed unused GraphicsContext3DOpenGLES.cpp.
3420         * platform/graphics/cairo/GLContext.cpp: Only include GLContextEGL.h or GLContextGLX.h if they're needed.
3421         * platform/graphics/cg/GraphicsContext3DCG.cpp: Only include GraphicsContext3DNEON.h if it's needed.
3422
3423 2013-06-28  Ryosuke Niwa  <rniwa@webkit.org>
3424
3425         -webkit-line-break: after-white-space sometimes truncates DOM on copy & paste
3426         https://bugs.webkit.org/show_bug.cgi?id=118164
3427
3428         Reviewed by Sam Weinig.
3429
3430         We can't assume that all subsequent ancestors contain exactly one child since they could have been
3431         added in the first if statement matching: currentNode->parentNode() != rootNode && isRemovableBlock(currentNode)
3432
3433         Exit early when we encounter such an ancestor since removing its ancestor (that contains multiple children
3434         some of which aren't in nodesToRemove) can clobber more nodes than we're allowed to remove.
3435
3436         Test: editing/pasteboard/simplfiying-markup-should-not-strip-content.html
3437
3438         * editing/SimplifyMarkupCommand.cpp:
3439         (WebCore::SimplifyMarkupCommand::doApply):
3440         (WebCore::SimplifyMarkupCommand::pruneSubsequentAncestorsToRemove):
3441
3442 2013-06-28  Gwang Yoon Hwang  <ryumiel@company100.net>
3443
3444         Coordinated Graphics: Separate CoordinatedLayerTreeHost into CoordinatedLayerTreeHost and CompositingCoordinator
3445         https://bugs.webkit.org/show_bug.cgi?id=104360
3446
3447         Reviewed by Noam Rosenthal.
3448
3449         The CoordinatedLayerTreeHost has too many responsibilities. It
3450         implements LayerTreeHost, GraphicsLayerClient,
3451         CoordinatedGraphicsLayerClient, CoordinatedImageBacking::Client,
3452         UpdateAtlas::Client, GraphicsLayerFactory and
3453         WebCustomFilterProgramProxyClient.
3454
3455         This refactoring reduces the responsibilities of CoordinatedLayerTreeHost.
3456
3457         This patch introduces a new class called CompositingCoordinator, which
3458         takes the responsibility of managing compositing resources in
3459         WebProcess.
3460
3461         CoordinatedLayerTreeHost is responsible only for the scheduling and
3462         IPC-specific stuff, which are relevant only for WebKit2.
3463
3464         No new tests, covered by existing tests.
3465
3466         * CMakeLists.txt:
3467         * Target.pri:
3468         * platform/graphics/texmap/coordinated/CompositingCoordinator.cpp: Added.
3469         (WebCore::CompositingCoordinator::create):
3470         (WebCore::CompositingCoordinator::~CompositingCoordinator):
3471         (WebCore::CompositingCoordinator::CompositingCoordinator):
3472         (WebCore::CompositingCoordinator::setRootCompositingLayer):
3473         (WebCore::CompositingCoordinator::sizeDidChange):
3474         (WebCore::CompositingCoordinator::flushPendingLayerChanges):
3475         (WebCore::CompositingCoordinator::syncDisplayState):
3476         (WebCore::CompositingCoordinator::nextAnimationServiceTime):
3477         (WebCore::CompositingCoordinator::clearPendingStateChanges):
3478         (WebCore::CompositingCoordinator::initializeRootCompositingLayerIfNeeded):
3479         (WebCore::CompositingCoordinator::createRootLayer):
3480         (WebCore::CompositingCoordinator::syncLayerState):
3481         (WebCore::CompositingCoordinator::createImageBackingIfNeeded):
3482         (WebCore::CompositingCoordinator::createImageBacking):
3483         (WebCore::CompositingCoordinator::updateImageBacking):
3484         (WebCore::CompositingCoordinator::clearImageBackingContents):
3485         (WebCore::CompositingCoordinator::removeImageBacking):
3486         (WebCore::CompositingCoordinator::flushPendingImageBackingChanges):
3487         (WebCore::CompositingCoordinator::notifyAnimationStarted):
3488         (WebCore::CompositingCoordinator::notifyFlushRequired):
3489         (WebCore::CompositingCoordinator::paintContents):
3490         (WebCore::CompositingCoordinator::createGraphicsLayer):
3491         (WebCore::CompositingCoordinator::deviceScaleFactor):
3492         (WebCore::CompositingCoordinator::pageScaleFactor):
3493         (WebCore::CompositingCoordinator::createUpdateAtlas):
3494         (WebCore::CompositingCoordinator::removeUpdateAtlas):
3495         (WebCore::CompositingCoordinator::visibleContentsRect):
3496         (WebCore::CompositingCoordinator::mainContentsLayer):
3497         (WebCore::CompositingCoordinator::setVisibleContentsRect):
3498         (WebCore::CompositingCoordinator::deviceOrPageScaleFactorChanged):
3499         (WebCore::CompositingCoordinator::detachLayer):
3500         (WebCore::CompositingCoordinator::commitScrollOffset):
3501         (WebCore::CompositingCoordinator::renderNextFrame):
3502         (WebCore::CompositingCoordinator::purgeBackingStores):
3503         (WebCore::CompositingCoordinator::paintToSurface):
3504         (WebCore::CompositingCoordinator::scheduleReleaseInactiveAtlases):
3505         (WebCore::CompositingCoordinator::releaseInactiveAtlasesTimerFired):
3506         * platform/graphics/texmap/coordinated/CompositingCoordinator.h: Added.
3507         (WebCore::CompositingCoordinator::clearRootLayer):
3508         (WebCore::CompositingCoordinator::rootLayer):
3509         (WebCore::CompositingCoordinator::state):
3510
3511 2013-06-28  Commit Queue  <commit-queue@webkit.org>
3512
3513         Unreviewed, rolling out r152135.
3514         http://trac.webkit.org/changeset/152135
3515         https://bugs.webkit.org/show_bug.cgi?id=118199
3516
3517         Rolling out temporary patch used for debugging the test bots
3518         (Requested by rfong on #webkit).
3519
3520         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
3521         (WebCore::MediaPlayerPrivateAVFoundation::load):
3522         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
3523         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::load):
3524
3525 2013-06-28  Morten Stenshorne  <mstensho@opera.com>
3526
3527         SVG relayout problem when displayed with different image box heights
3528         https://bugs.webkit.org/show_bug.cgi?id=118140
3529
3530         Reviewed by Philip Rogers.
3531
3532         If the root element is an SVG, its position and height are affected
3533         by the view height.
3534
3535         Test: svg/as-image/same-source-different-height.html
3536
3537         * rendering/RenderView.cpp:
3538         (WebCore::RenderView::layout):
3539
3540 2013-06-28  Simon Fraser  <simon.fraser@apple.com>
3541
3542         Allow some LayoutPoint and LayoutSize conversions to be inlined
3543         https://bugs.webkit.org/show_bug.cgi?id=118167
3544
3545         Reviewed by Ryosuke Niwa.
3546
3547         Construction of FloatSize from LayoutSize, and FloatPoint's move(const LayoutSize&)
3548         and moveBy(const LayoutPoint&) were not inlined, and showed up on some profiles.
3549
3550         Make them inlined by removing the overloaded functions, and instead providing
3551         conversion operators from LayoutSize to FloatSize, and LayoutPoint to FloatPoint.
3552         Do the same to allow a LayoutRect to be converted to a FloatRect.
3553
3554         This is nice because it removes pollution of FloatRect, FloatPoint and FloatSize with
3555         Layout* entirely.
3556
3557         Remove Qt-specific conversions on LayoutRect, LayoutPoint and LayoutSize. Qt can
3558         convert via IntRect/FloatRect as necessary.
3559
3560         * platform/graphics/FloatPoint.cpp:
3561         * platform/graphics/FloatPoint.h:
3562         (WebCore::FloatPoint::move):
3563         (WebCore::FloatPoint::moveBy):
3564         * platform/graphics/FloatRect.cpp:
3565         * platform/graphics/FloatRect.h:
3566         * platform/graphics/FloatSize.cpp:
3567         * platform/graphics/FloatSize.h:
3568         * platform/graphics/LayoutPoint.h:
3569         (WebCore::LayoutPoint::operator FloatPoint):
3570         * platform/graphics/LayoutRect.cpp:
3571         * platform/graphics/LayoutRect.h:
3572         (WebCore::LayoutRect::operator FloatRect):
3573         * platform/graphics/LayoutSize.h:
3574         (WebCore::LayoutSize::operator FloatSize):
3575
3576 2013-06-28  Christophe Dumez  <ch.dumez@sisa.samsung.com>
3577
3578         Get rid of IsWorkerGlobalScope and ExtendsDOMGlobalObject extended attributes
3579         https://bugs.webkit.org/show_bug.cgi?id=118191
3580
3581         Reviewed by Kentaro Hara.
3582
3583         Remove WebKit-specific [IsWorkerGlobalScope] and [ExtendsDOMGlobalObject] IDL
3584         extended attributes and update the JSC bindings generator to figure this out
3585         on its own.
3586
3587         No new tests, no behavior change.
3588
3589         * bindings/scripts/CodeGeneratorJS.pm:
3590         (IsDOMGlobalObject):
3591         (GenerateHeader):
3592         (GenerateImplementation):
3593         (GenerateConstructorHelperMethods):
3594         * bindings/scripts/IDLAttributes.txt:
3595         * page/DOMWindow.idl:
3596         * workers/DedicatedWorkerGlobalScope.idl:
3597         * workers/SharedWorkerGlobalScope.idl:
3598         * workers/WorkerGlobalScope.idl:
3599
3600 2013-06-28  Christophe Dumez  <ch.dumez@sisa.samsung.com>
3601
3602         Introduce SVGGraphicsElement IDL interface
3603         https://bugs.webkit.org/show_bug.cgi?id=118178
3604
3605         Reviewed by Kentaro Hara.
3606
3607         Introduce SVGGraphicsElement IDL interface as per the latest SVG
3608         specification:
3609         - https://svgwg.org/svg2-draft/types.html#InterfaceSVGGraphicsElement
3610
3611         SVGGraphicsElement is a merge of SVGLocatable and SVGTransformable.
3612         This is one step towards simplifying inheritance in SVG and matching
3613         the latest SVG2 specification.
3614
3615         No new tests, already covered by existing tests.
3616
3617         * CMakeLists.txt:
3618         * DerivedSources.cpp:
3619         * DerivedSources.make:
3620         * DerivedSources.pri:
3621         * GNUmakefile.list.am:
3622         * Target.pri:
3623         * WebCore.order:
3624         * WebCore.vcxproj/WebCore.vcxproj:
3625         * WebCore.vcxproj/WebCore.vcxproj.filters:
3626         * WebCore.xcodeproj/project.pbxproj:
3627         * bindings/scripts/CodeGeneratorJS.pm:
3628         (GetGnuVTableOffsetForType):
3629         * rendering/svg/RenderSVGEllipse.cpp:
3630         (WebCore::RenderSVGEllipse::RenderSVGEllipse):
3631         * rendering/svg/RenderSVGEllipse.h:
3632         * rendering/svg/RenderSVGPath.cpp:
3633         (WebCore::RenderSVGPath::RenderSVGPath):
3634         * rendering/svg/RenderSVGPath.h:
3635         * rendering/svg/RenderSVGResourceClipper.cpp:
3636         (WebCore::RenderSVGResourceClipper::pathOnlyClipping):
3637         * rendering/svg/RenderSVGResourceContainer.cpp:
3638         (WebCore::RenderSVGResourceContainer::transformOnNonScalingStroke):
3639         * rendering/svg/RenderSVGResourceMarker.cpp:
3640         * rendering/svg/RenderSVGShape.cpp:
3641         (WebCore::RenderSVGShape::RenderSVGShape):
3642         (WebCore::RenderSVGShape::updateShapeFromElement):
3643         (WebCore::RenderSVGShape::layout):
3644         (WebCore::RenderSVGShape::nonScalingStrokeTransform):
3645         (WebCore::RenderSVGShape::shouldGenerateMarkerPositions):
3646         * rendering/svg/RenderSVGShape.h:
3647         * rendering/svg/RenderSVGTransformableContainer.cpp:
3648         (WebCore::RenderSVGTransformableContainer::RenderSVGTransformableContainer):
3649         (WebCore::RenderSVGTransformableContainer::calculateLocalTransform):
3650         * rendering/svg/RenderSVGTransformableContainer.h:
3651         * svg/SVGAElement.cpp:
3652         (WebCore::SVGAElement::SVGAElement):
3653         (WebCore::SVGAElement::parseAttribute):
3654         (WebCore::SVGAElement::svgAttributeChanged):
3655         (WebCore::SVGAElement::defaultEventHandler):
3656         (WebCore::SVGAElement::supportsFocus):
3657         (WebCore::SVGAElement::isURLAttribute):
3658         * svg/SVGAElement.h:
3659         * svg/SVGAElement.idl:
3660         * svg/SVGAllInOne.cpp:
3661         * svg/SVGAnimateMotionElement.cpp:
3662         (WebCore::SVGAnimateMotionElement::hasValidAttributeType):
3663         * svg/SVGCircleElement.cpp:
3664         (WebCore::SVGCircleElement::SVGCircleElement):
3665         (WebCore::SVGCircleElement::parseAttribute):
3666         (WebCore::SVGCircleElement::svgAttributeChanged):
3667         * svg/SVGCircleElement.h:
3668         * svg/SVGCircleElement.idl:
3669         * svg/SVGClipPathElement.cpp:
3670         (WebCore::SVGClipPathElement::SVGClipPathElement):
3671         (WebCore::SVGClipPathElement::parseAttribute):
3672         (WebCore::SVGClipPathElement::svgAttributeChanged):
3673         (WebCore::SVGClipPathElement::childrenChanged):
3674         * svg/SVGClipPathElement.h:
3675         * svg/SVGClipPathElement.idl:
3676         * svg/SVGDefsElement.cpp:
3677         (WebCore::SVGDefsElement::SVGDefsElement):
3678         * svg/SVGDefsElement.h:
3679         * svg/SVGDefsElement.idl:
3680         * svg/SVGElement.h:
3681         (WebCore::SVGElement::isSVGGraphicsElement):
3682         * svg/SVGEllipseElement.cpp:
3683         (WebCore::SVGEllipseElement::SVGEllipseElement):
3684         (WebCore::SVGEllipseElement::parseAttribute):
3685         (WebCore::SVGEllipseElement::svgAttributeChanged):
3686         * svg/SVGEllipseElement.h:
3687         * svg/SVGEllipseElement.idl:
3688         * svg/SVGForeignObjectElement.cpp:
3689         (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
3690         (WebCore::SVGForeignObjectElement::parseAttribute):
3691         (WebCore::SVGForeignObjectElement::svgAttributeChanged):
3692         (WebCore::SVGForeignObjectElement::rendererIsNeeded):
3693         * svg/SVGForeignObjectElement.h:
3694         * svg/SVGForeignObjectElement.idl:
3695         * svg/SVGGElement.cpp:
3696         (WebCore::SVGGElement::SVGGElement):
3697         (WebCore::SVGGElement::parseAttribute):
3698         (WebCore::SVGGElement::svgAttributeChanged):
3699         * svg/SVGGElement.h:
3700         * svg/SVGGElement.idl:
3701         * svg/SVGGraphicsElement.cpp: Renamed from Source/WebCore/svg/SVGStyledTransformableElement.cpp.
3702         (WebCore::SVGGraphicsElement::SVGGraphicsElement):
3703         (WebCore::SVGGraphicsElement::~SVGGraphicsElement):
3704         (WebCore::SVGGraphicsElement::getCTM):
3705         (WebCore::SVGGraphicsElement::getScreenCTM):
3706         (WebCore::SVGGraphicsElement::animatedLocalTransform):
3707         (WebCore::SVGGraphicsElement::supplementalTransform):
3708         (WebCore::SVGGraphicsElement::isSupportedAttribute):
3709         (WebCore::SVGGraphicsElement::parseAttribute):
3710         (WebCore::SVGGraphicsElement::svgAttributeChanged):
3711         (WebCore::SVGGraphicsElement::nearestViewportElement):
3712         (WebCore::SVGGraphicsElement::farthestViewportElement):
3713         (WebCore::SVGGraphicsElement::getBBox):
3714         (WebCore::SVGGraphicsElement::createRenderer):
3715         (WebCore::SVGGraphicsElement::toClipPath):
3716         * svg/SVGGraphicsElement.h: Renamed from Source/WebCore/svg/SVGStyledTransformableElement.h.
3717         (WebCore::SVGGraphicsElement::localCoordinateSpaceTransform):
3718         (WebCore::SVGGraphicsElement::synchronizeRequiredFeatures):
3719         (WebCore::SVGGraphicsElement::synchronizeRequiredExtensions):
3720         (WebCore::SVGGraphicsElement::synchronizeSystemLanguage):
3721         (WebCore::toSVGGraphicsElement):
3722         * svg/SVGGraphicsElement.idl: Copied from Source/WebCore/svg/SVGForeignObjectElement.idl.
3723         * svg/SVGImageElement.cpp:
3724         (WebCore::SVGImageElement::SVGImageElement):
3725         (WebCore::SVGImageElement::isPresentationAttribute):
3726         (WebCore::SVGImageElement::collectStyleForPresentationAttribute):
3727         (WebCore::SVGImageElement::parseAttribute):
3728         (WebCore::SVGImageElement::svgAttributeChanged):
3729         (WebCore::SVGImageElement::attach):
3730         (WebCore::SVGImageElement::insertedInto):
3731         (WebCore::SVGImageElement::addSubresourceAttributeURLs):
3732         (WebCore::SVGImageElement::didMoveToNewDocument):
3733         * svg/SVGImageElement.h:
3734         * svg/SVGImageElement.idl:
3735         * svg/SVGLineElement.cpp:
3736         (WebCore::SVGLineElement::SVGLineElement):
3737         (WebCore::SVGLineElement::parseAttribute):
3738         (WebCore::SVGLineElement::svgAttributeChanged):
3739         * svg/SVGLineElement.h:
3740         * svg/SVGLineElement.idl:
3741         * svg/SVGPathElement.cpp:
3742         (WebCore::SVGPathElement::SVGPathElement):
3743         (WebCore::SVGPathElement::parseAttribute):
3744         (WebCore::SVGPathElement::svgAttributeChanged):
3745         (WebCore::SVGPathElement::insertedInto):
3746         (WebCore::SVGPathElement::removedFrom):
3747         * svg/SVGPathElement.h:
3748         * svg/SVGPathElement.idl:
3749         * svg/SVGPatternElement.cpp:
3750         * svg/SVGPolyElement.cpp:
3751         (WebCore::SVGPolyElement::SVGPolyElement):
3752         (WebCore::SVGPolyElement::parseAttribute):
3753         (WebCore::SVGPolyElement::svgAttributeChanged):
3754         * svg/SVGPolyElement.h:
3755         * svg/SVGPolygonElement.idl:
3756         * svg/SVGPolylineElement.idl:
3757         * svg/SVGRectElement.cpp:
3758         (WebCore::SVGRectElement::SVGRectElement):
3759         (WebCore::SVGRectElement::parseAttribute):
3760         (WebCore::SVGRectElement::svgAttributeChanged):
3761         * svg/SVGRectElement.h:
3762         * svg/SVGRectElement.idl:
3763         * svg/SVGSVGElement.cpp:
3764         (WebCore::SVGSVGElement::SVGSVGElement):
3765         (WebCore::SVGSVGElement::didMoveToNewDocument):
3766         (WebCore::SVGSVGElement::parseAttribute):
3767         (WebCore::SVGSVGElement::insertedInto):
3768         (WebCore::SVGSVGElement::removedFrom):
3769         * svg/SVGSVGElement.h:
3770         * svg/SVGSVGElement.idl:
3771         * svg/SVGStyledElement.cpp:
3772         (WebCore::SVGStyledElement::localCoordinateSpaceTransform):
3773         * svg/SVGSwitchElement.cpp:
3774         (WebCore::SVGSwitchElement::SVGSwitchElement):
3775         * svg/SVGSwitchElement.h:
3776         * svg/SVGSwitchElement.idl:
3777         * svg/SVGUseElement.cpp:
3778         (WebCore::SVGUseElement::SVGUseElement):
3779         (WebCore::SVGUseElement::parseAttribute):
3780         (WebCore::SVGUseElement::insertedInto):
3781         (WebCore::SVGUseElement::removedFrom):
3782         (WebCore::SVGUseElement::svgAttributeChanged):
3783         (WebCore::SVGUseElement::toClipPath):
3784         (WebCore::SVGUseElement::finishParsingChildren):
3785         * svg/SVGUseElement.h:
3786         * svg/SVGUseElement.idl:
3787
3788 2013-06-28  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3789
3790         Add new schemes to content utils.
3791         https://bugs.webkit.org/show_bug.cgi?id=118181
3792
3793         Reviewed by Christophe Dumez.
3794
3795         According to latest content handler spec, new schemes are added to it.
3796         Those are "geo, magnet, sip, ssh and xmpp".
3797
3798         http://www.w3.org/html/wg/drafts/html/master/webappapis.html#custom-handlers
3799
3800         Tests: fast/dom/register-protocol-handler.html
3801                fast/dom/unregister-protocol-handler.html
3802
3803         * Modules/navigatorcontentutils/NavigatorContentUtils.cpp:
3804         (WebCore::initProtocolHandlerWhitelist):
3805
3806 2013-06-28  Sanghyup Lee  <sh53.lee@samsung.com>
3807
3808         Avoid duplicating hostWindow() call in ScrollView.cpp
3809         https://bugs.webkit.org/show_bug.cgi?id=118168
3810
3811         Reviewed by Christophe Dumez.
3812
3813         Remove redundant hostWindow() calls in ScrollView.cpp.
3814
3815         * platform/ScrollView.cpp:
3816         (WebCore::ScrollView::scrollContents):
3817         (WebCore::ScrollView::contentsToScreen):
3818         (WebCore::ScrollView::screenToContents):
3819         (WebCore::ScrollView::repaintContentRectangle):
3820         (WebCore::ScrollView::updateOverhangAreas):
3821         (WebCore::ScrollView::addPanScrollIcon):
3822         (WebCore::ScrollView::removePanScrollIcon):
3823
3824 2013-06-28  Christophe Dumez  <ch.dumez@sisa.samsung.com>
3825
3826         Unreviewed, fix GTK build after r152156.
3827
3828         * GNUmakefile.list.am:
3829
3830 2013-06-28  Christophe Dumez  <ch.dumez@sisa.samsung.com>
3831
3832         Merge SVGLangSpace into SVGElement
3833         https://bugs.webkit.org/show_bug.cgi?id=118170
3834
3835         Reviewed by Kentaro Hara.
3836
3837         Remove SVGLangSpace IDL interface and move its attributes to SVGElement
3838         to match the latest specification and simplify inheritance in SVG:
3839         - https://svgwg.org/svg2-draft/types.html#InterfaceSVGElement
3840
3841         No new tests, no behavior change.
3842
3843         * DerivedSources.make:
3844         * WebCore.xcodeproj/project.pbxproj:
3845         * svg/SVGAElement.h:
3846         * svg/SVGAElement.idl:
3847         * svg/SVGCircleElement.h:
3848         * svg/SVGCircleElement.idl:
3849         * svg/SVGClipPathElement.h:
3850         * svg/SVGClipPathElement.idl:
3851         * svg/SVGDefsElement.h:
3852         * svg/SVGDefsElement.idl:
3853         * svg/SVGDescElement.h:
3854         * svg/SVGDescElement.idl:
3855         * svg/SVGElement.cpp:
3856         (WebCore::SVGElement::parseAttribute):
3857         * svg/SVGElement.h:
3858         * svg/SVGElement.idl:
3859         * svg/SVGEllipseElement.h:
3860         * svg/SVGEllipseElement.idl:
3861         * svg/SVGFEImageElement.h:
3862         * svg/SVGFEImageElement.idl:
3863         * svg/SVGFilterElement.h:
3864         * svg/SVGFilterElement.idl:
3865         * svg/SVGForeignObjectElement.h:
3866         * svg/SVGForeignObjectElement.idl:
3867         * svg/SVGGElement.h:
3868         * svg/SVGGElement.idl:
3869         * svg/SVGImageElement.h:
3870         * svg/SVGImageElement.idl:
3871         * svg/SVGLangSpace.idl: Removed.
3872         * svg/SVGLineElement.h:
3873         * svg/SVGLineElement.idl:
3874         * svg/SVGMarkerElement.h:
3875         * svg/SVGMarkerElement.idl:
3876         * svg/SVGMaskElement.h:
3877         * svg/SVGMaskElement.idl:
3878         * svg/SVGPathElement.h:
3879         * svg/SVGPathElement.idl:
3880         * svg/SVGPatternElement.h:
3881         * svg/SVGPatternElement.idl:
3882         * svg/SVGPolyElement.h:
3883         * svg/SVGPolygonElement.idl:
3884         * svg/SVGPolylineElement.idl:
3885         * svg/SVGRectElement.h:
3886         * svg/SVGRectElement.idl:
3887         * svg/SVGSVGElement.h:
3888         * svg/SVGSVGElement.idl:
3889         * svg/SVGStyleElement.h:
3890         * svg/SVGStyleElement.idl:
3891         * svg/SVGSwitchElement.h:
3892         * svg/SVGSwitchElement.idl:
3893         * svg/SVGSymbolElement.h:
3894         * svg/SVGSymbolElement.idl:
3895         * svg/SVGTextContentElement.h:
3896         * svg/SVGTextContentElement.idl:
3897         * svg/SVGTitleElement.h:
3898         * svg/SVGTitleElement.idl:
3899         * svg/SVGUseElement.h:
3900         * svg/SVGUseElement.idl:
3901
3902 2013-06-28  Christophe Dumez  <ch.dumez@sisa.samsung.com>
3903
3904         Use & instead of | in the value of [CallWith]
3905         https://bugs.webkit.org/show_bug.cgi?id=118054
3906
3907         Reviewed by Kentaro Hara.
3908
3909         [CallWith=ScriptExecutionContext|ScriptState] meant that both the
3910         ScriptExecutionContext AND the ScriptState would be passed as
3911         arguments to the implementation (not one OR the other).
3912
3913         This patch changes the semantics for those IDL extended attributes
3914         to make it less confusing. Proper usage is now:
3915         [CallWith=ScriptExecutionContext&ScriptState]
3916
3917         No new tests, covered by existing bindings tests.
3918
3919         * bindings/scripts/CodeGenerator.pm:
3920         (ExtendedAttributeContains):
3921         * bindings/scripts/test/TestObj.idl:
3922         * page/Console.idl:
3923
3924 2013-06-27  Kangil Han  <kangil.han@samsung.com>
3925
3926         HTMLAudioElement doesn't have to know about isVideo function
3927         https://bugs.webkit.org/show_bug.cgi?id=118116
3928
3929         Reviewed by Eric Carlson.
3930
3931         Minor code cleanup to remove isVideo function from HTMLAudioElement.
3932         We can use default function in HTMLMediaElement as hasVideo does.
3933
3934         * html/HTMLAudioElement.h:
3935         * html/HTMLMediaElement.h:
3936         (WebCore::HTMLMediaElement::isVideo):
3937
3938 2013-06-27  Kangil Han  <kangil.han@samsung.com>
3939
3940         Adopt is/toHTMLInputElement for code cleanup
3941         https://bugs.webkit.org/show_bug.cgi?id=118130
3942
3943         Reviewed by Antti Koivisto.
3944
3945         To enhance readability, this patch adopts is/toHTMLInputElement.
3946         This also helps out to reduce duplicated use of static_cast.
3947
3948         * accessibility/AccessibilityMediaControls.cpp:
3949         (WebCore::AccessibilityMediaTimeline::valueDescription):
3950         * accessibility/AccessibilityNodeObject.cpp:
3951         (WebCore::AccessibilityNodeObject::determineAccessibilityRole):
3952         (WebCore::AccessibilityNodeObject::isNativeTextControl):
3953         (WebCore::AccessibilityNodeObject::isNativeImage):
3954         (WebCore::AccessibilityNodeObject::isInputImage):
3955         (WebCore::AccessibilityNodeObject::isReadOnly):
3956         (WebCore::AccessibilityNodeObject::valueForRange):
3957         (WebCore::AccessibilityNodeObject::maxValueForRange):
3958         (WebCore::AccessibilityNodeObject::minValueForRange):
3959         (WebCore::AccessibilityNodeObject::actionElement):
3960         (WebCore::AccessibilityNodeObject::titleElementText):
3961         (WebCore::AccessibilityNodeObject::visibleText):
3962         (WebCore::AccessibilityNodeObject::title):
3963         (WebCore::AccessibilityNodeObject::text):
3964         (WebCore::AccessibilityNodeObject::colorValue):
3965         (WebCore::accessibleNameForNode):
3966         * accessibility/AccessibilityRenderObject.cpp:
3967         (WebCore::AccessibilityRenderObject::isFileUploadButton):
3968         (WebCore::AccessibilityRenderObject::addRadioButtonGroupMembers):
3969         (WebCore::AccessibilityRenderObject::url):
3970         (WebCore::AccessibilityRenderObject::setValue):
3971         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
3972         (WebCore::AccessibilityRenderObject::addTextFieldChildren):
3973         * accessibility/AccessibilitySlider.cpp:
3974         (WebCore::AccessibilitySlider::element):
3975         * accessibility/ios/AccessibilityObjectIOS.mm:
3976         (WebCore::AccessibilityObject::accessibilityPasswordFieldLength):
3977         * bindings/js/JSHTMLInputElementCustom.cpp:
3978         (WebCore::JSHTMLInputElement::selectionStart):
3979         (WebCore::JSHTMLInputElement::setSelectionStart):
3980         (WebCore::JSHTMLInputElement::selectionEnd):
3981         (WebCore::JSHTMLInputElement::setSelectionEnd):
3982         (WebCore::JSHTMLInputElement::selectionDirection):
3983         (WebCore::JSHTMLInputElement::setSelectionDirection):
3984         (WebCore::JSHTMLInputElement::setSelectionRange):
3985         * css/StyleResolver.cpp:
3986         (WebCore::StyleResolver::adjustRenderStyle):
3987         * editing/FrameSelection.cpp:
3988         (WebCore::FrameSelection::isInPasswordField):
3989         * editing/ReplaceSelectionCommand.cpp:
3990         (WebCore::ReplaceSelectionCommand::shouldPerformSmartReplace):
3991         * html/HTMLFormControlElement.cpp:
3992         (WebCore::shouldAutofocus):
3993         * html/HTMLFormElement.cpp:
3994         (WebCore::HTMLFormElement::getTextFieldValues):
3995         * html/HTMLInputElement.h:
3996         (WebCore::isHTMLInputElement):
3997         (WebCore::toHTMLInputElement):
3998         * html/RadioInputType.cpp:
3999         (WebCore::RadioInputType::handleKeydownEvent):
4000         (WebCore::RadioInputType::isKeyboardFocusable):
4001         * html/shadow/MediaControlElementTypes.cpp:
4002         (WebCore::mediaControlElementType):
4003         * html/shadow/TextControlInnerElements.cpp:
4004         (WebCore::SearchFieldResultsButtonElement::defaultEventHandler):
4005         (WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
4006         (WebCore::SearchFieldCancelButtonElement::willRespondToMouseClickEvents):
4007         (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
4008         (WebCore::InputFieldSpeechButtonElement::willRespondToMouseClickEvents):
4009         (WebCore::InputFieldSpeechButtonElement::setRecognitionResult):
4010         (WebCore::InputFieldSpeechButtonElement::startSpeechInput):
4011         * loader/FormSubmission.cpp:
4012         (WebCore::FormSubmission::create):
4013         * page/Chrome.cpp:
4014         (WebCore::Chrome::setToolTip):
4015         * page/EventHandler.cpp:
4016         (WebCore::isSubmitImage):
4017         (WebCore::EventHandler::handleMousePressEvent):
4018         * page/FocusController.cpp:
4019         (WebCore::clearSelectionIfNeeded):
4020         * platform/gtk/PasteboardGtk.cpp:
4021         (WebCore::getURLForImageNode):
4022         * platform/qt/RenderThemeQt.cpp:
4023         (WebCore::RenderThemeQt::paintMediaVolumeSliderTrack):
4024         * platform/qt/RenderThemeQtMobile.cpp:
4025         (WebCore::RenderThemeQtMobile::paintSliderTrack):
4026         * rendering/HitTestResult.cpp:
4027         (WebCore::HitTestResult::altDisplayString):
4028         (WebCore::HitTestResult::absoluteImageURL):
4029         (WebCore::HitTestResult::isContentEditable):
4030         * rendering/RenderBlock.cpp:
4031         (WebCore::RenderBlock::hasLineIfEmpty):
4032         * rendering/RenderBox.cpp:
4033         (WebCore::RenderBox::sizesLogicalWidthToFitContent):
4034         * rendering/RenderButton.cpp:
4035         (WebCore::RenderButton::updateFromElement):
4036         (WebCore::RenderButton::canHaveGeneratedChildren):
4037         * rendering/RenderDetailsMarker.cpp:
4038         (WebCore::RenderDetailsMarker::isOpen):
4039         * rendering/RenderFileUploadControl.cpp:
4040         (WebCore::RenderFileUploadControl::updateFromElement):
4041         (WebCore::RenderFileUploadControl::maxFilenameWidth):
4042         (WebCore::RenderFileUploadControl::paintObject):
4043         (WebCore::RenderFileUploadControl::uploadButton):
4044         (WebCore::RenderFileUploadControl::fileTextValue):
4045         * rendering/RenderImage.cpp:
4046         (WebCore::RenderImage::updateAltText):
4047         * testing/Internals.cpp:
4048         (WebCore::Internals::selectColorInColorChooser):
4049
4050 2013-06-27  Antti Koivisto  <antti@apple.com>
4051
4052         Use DeferrableOneShotTimer for deleting decoded data
4053         https://bugs.webkit.org/show_bug.cgi?id=118150
4054
4055         Reviewed by Andreas Kling.
4056
4057         Up to 1% of page load time can be used under CachedScript::script() for restarting
4058         the decoded data deletion timer.
4059
4060         Using DeferrableOneShotTimer instead of a plain Timer avoids unnecessary low level timer access.
4061
4062         * loader/cache/CachedResource.cpp:
4063         (WebCore::CachedResource::CachedResource):
4064         (WebCore::CachedResource::destroyDecodedDataIfNeeded):
4065         (WebCore::CachedResource::decodedDataDeletionTimerFired):
4066         (WebCore::CachedResource::decodedDataDeletionTimerDelay):
4067
4068             Adopt DeferrableOneShotTimer.
4069
4070         * loader/cache/CachedResource.h:
4071         * loader/cache/CachedScript.cpp:
4072         (WebCore::CachedScript::script):
4073         (WebCore::CachedScript::decodedDataDeletionTimerDelay):
4074
4075             Keep using zero delay for scripts.
4076
4077         * platform/Timer.h:
4078         (WebCore::DeferrableOneShotTimer::stop):
4079
4080             Avoid unnecessary restart after stopping and starting again.
4081
4082 2013-06-27  Anders Carlsson  <andersca@apple.com>
4083
4084         Add a new String::charactersWithNullTermination() function that returns a vector
4085         https://bugs.webkit.org/show_bug.cgi?id=118155
4086
4087         Reviewed by Andreas Kling.
4088
4089         Change calls to deprecatedCharactersWithNullTermination() to charactersWithNullTermination().data()
4090
4091         * platform/graphics/win/FontCacheWin.cpp:
4092         (WebCore::getLinkedFonts):
4093         * platform/graphics/win/FontCustomPlatformData.cpp:
4094         (WebCore::FontCustomPlatformData::fontPlatformData):
4095         * platform/graphics/win/FontCustomPlatformDataCairo.cpp:
4096         (WebCore::FontCustomPlatformData::fontPlatformData):
4097         * platform/graphics/win/IconWin.cpp:
4098         (WebCore::Icon::createIconForFiles):
4099         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
4100         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::setUpCookiesForQuickTime):
4101         * platform/graphics/wince/FontPlatformData.cpp:
4102         (WebCore::FontPlatformData::FontPlatformData):
4103         * platform/network/curl/CurlDownload.cpp:
4104         (CurlDownload::moveFileToDestination):
4105         * platform/network/win/CookieJarWin.cpp:
4106         (WebCore::setCookiesFromDOM):
4107         (WebCore::cookiesForDOM):
4108         * platform/network/win/DownloadBundleWin.cpp:
4109         (WebCore::DownloadBundle::appendResumeData):
4110         (WebCore::DownloadBundle::extractResumeData):
4111         * platform/network/win/ResourceHandleWin.cpp: