IndexedDB: Remove onVersionChange(string) plumbing
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-03-21  Joshua Bell  <jsbell@chromium.org>
2
3         IndexedDB: Remove onVersionChange(string) plumbing
4         https://bugs.webkit.org/show_bug.cgi?id=112712
5
6         Reviewed by Adam Barth.
7
8         Delete unused onVersionChange(string) overload.
9
10         No new tests - just deleting dead code.
11
12         * Modules/indexeddb/IDBDatabase.cpp: Delete onVersionChange(string) overload.
13         * Modules/indexeddb/IDBDatabase.h: Ditto.
14         * Modules/indexeddb/IDBDatabaseBackendImpl.cpp: Ditto.
15         * Modules/indexeddb/IDBDatabaseCallbacks.h: Ditto.
16         * Modules/indexeddb/IDBDatabaseCallbacksImpl.cpp: Ditto.
17         * Modules/indexeddb/IDBDatabaseCallbacksImpl.h: Ditto.
18
19 2013-03-21  Philip Rogers  <pdr@google.com>
20
21         Correct bisector angle calculation for markers
22         https://bugs.webkit.org/show_bug.cgi?id=112054
23
24         Reviewed by Stephen Chenney.
25
26         The SVG marker spec states that mid markers with orient=auto should be aligned with their
27         x-axis along the bisector of the incoming (in) and outgoing (out) angles. Previously we
28         calculated this bisector angle as:
29             bisector = (in + out) / 2;
30         Angles cannot be averaged this way! Consider in=90deg and out=-180deg: the bisector should
31         be 135deg but a naive average gives -45deg. This patch corrects for the discontinuity in
32         angle values with:
33             bisector = (in + out + 360) / 2   // if |in - out| > 180
34             bisector = (in + out) / 2         // otherwise
35         This patch includes an exhaustive test of angle values.
36
37         Test: svg/custom/marker-orient-auto.html
38
39         * rendering/svg/SVGMarkerData.h:
40         (WebCore::SVGMarkerData::currentAngle):
41
42 2013-03-21  Harald Alvestrand  <hta@google.com>
43
44         Expose the Type field of an RTCStatsReport
45         https://bugs.webkit.org/show_bug.cgi?id=112951
46
47         Reviewed by Adam Barth.
48
49         Covered by an extension of an existing test.
50
51         * Modules/mediastream/RTCStatsReport.h:
52         (WebCore::RTCStatsReport::type):
53         * Modules/mediastream/RTCStatsReport.idl:
54
55 2013-03-21  Alexey Proskuryakov  <ap@apple.com>
56
57         Move non-trivial virtual functions out of ResourceHandleClient.h
58         https://bugs.webkit.org/show_bug.cgi?id=112950
59
60         Reviewed by Brady Eidson.
61
62         * CMakeLists.txt:
63         * GNUmakefile.list.am:
64         * Target.pri:
65         * WebCore.exp.in:
66         * WebCore.gypi:
67         * WebCore.vcproj/WebCore.vcproj:
68         * WebCore.vcxproj/WebCore.vcxproj:
69         * WebCore.vcxproj/WebCore.vcxproj.filters:
70         * WebCore.xcodeproj/project.pbxproj:
71         * platform/network/ResourceHandleClient.cpp: Added.
72         (WebCore::ResourceHandleClient::ResourceHandleClient):
73         (WebCore::ResourceHandleClient::~ResourceHandleClient):
74         (WebCore::ResourceHandleClient::didReceiveBuffer):
75         (WebCore::ResourceHandleClient::getBuffer):
76         * platform/network/ResourceHandleClient.h:
77
78 2013-03-21  Florin Malita  <fmalita@chromium.org>
79
80         [SVG] Remove explicit LightSource dispatchers
81         https://bugs.webkit.org/show_bug.cgi?id=112827
82
83         Reviewed by Stephen Chenney.
84
85         Convert LightSource setters to dynamic dispatch. This allows us to remove LightSource.cpp
86         altogether.
87
88         No new tests: refactoring only.
89
90         * CMakeLists.txt:
91         * GNUmakefile.list.am:
92         * Target.pri:
93         * WebCore.gypi:
94         * WebCore.vcproj/WebCore.vcproj:
95         * WebCore.vcxproj/WebCore.vcxproj:
96         * WebCore.vcxproj/WebCore.vcxproj.filters:
97         * WebCore.xcodeproj/project.pbxproj:
98         * platform/graphics/filters/DistantLightSource.h:
99         (DistantLightSource):
100         * platform/graphics/filters/LightSource.cpp: Removed.
101         * platform/graphics/filters/LightSource.h:
102         (WebCore::LightSource::setAzimuth):
103         (WebCore::LightSource::setElevation):
104         (WebCore::LightSource::setX):
105         (WebCore::LightSource::setY):
106         (WebCore::LightSource::setZ):
107         (WebCore::LightSource::setPointsAtX):
108         (WebCore::LightSource::setPointsAtY):
109         (WebCore::LightSource::setPointsAtZ):
110         (WebCore::LightSource::setSpecularExponent):
111         (WebCore::LightSource::setLimitingConeAngle):
112         * platform/graphics/filters/PointLightSource.h:
113         (PointLightSource):
114         * platform/graphics/filters/SpotLightSource.h:
115         (SpotLightSource):
116
117 2013-03-21  Igor Oliveira  <igor.o@sisa.samsung.com>
118
119         [Texmap] Implement support for OpenGLES EXT_unpack_subimage extension
120         https://bugs.webkit.org/show_bug.cgi?id=108716
121
122         If the extension GL_EXT_unpack_subimage is supported, it adds GL_UNPACK_ROW_LENGTH,
123         GL_UNPACK_SKIP_ROWS and GL_UNPACK_SKIP_PIXELS as valid enums to PixelStore.
124
125         Reviewed by Noam Rosenthal.
126
127         * platform/graphics/texmap/TextureMapperGL.cpp:
128         (WebCore::driverSupportsSubImage):
129         (WebCore::BitmapTextureGL::updateContentsNoSwizzle):
130         (WebCore::BitmapTextureGL::updateContents):
131
132 2013-03-21  Dmitry Zvorygin  <zvorygin@chromium.org>
133
134         Web Inspector: Regression: drawer resizes slowly with animation.
135         https://bugs.webkit.org/show_bug.cgi?id=112920
136
137         Drawer status bar opacity wasn't set to zero on inialization, so no transition event 
138         was fired on first time drawer appeared,thus animation styles wasn't removed properly.
139
140         Reviewed by Vsevolod Vlasov.
141
142         * inspector/front-end/Drawer.js:
143         (WebInspector.Drawer):
144
145 2013-03-21  Alberto Garcia  <agarcia@igalia.com>
146
147         [BlackBerry] GraphicsLayer: fix code that was accidentally reverted
148         https://bugs.webkit.org/show_bug.cgi?id=112143
149
150         Reviewed by Rob Buis.
151
152         Several changes were accidentally reverted in r144465 due to the
153         upstreaming of some new code:
154
155         - clearBackgroundColor() and m_contentsLayerHasBackgroundColor had
156           been removed in r137798.
157
158         - showDebugBorders() had been renamed to isShowingDebugBorder() in
159           r133517.
160
161         - A new GraphicsLayer::create() overload had been introduced in
162           r130185.
163
164         This patch fixes them all.
165
166         * platform/graphics/blackberry/GraphicsLayerBlackBerry.cpp:
167         (WebCore::GraphicsLayer::create):
168         (WebCore):
169         (WebCore::GraphicsLayerBlackBerry::GraphicsLayerBlackBerry):
170         (WebCore::GraphicsLayerBlackBerry::setBackgroundColor):
171         (WebCore::GraphicsLayerBlackBerry::updateLayerBackgroundColor):
172         (WebCore::GraphicsLayerBlackBerry::setupContentsLayer):
173         * platform/graphics/blackberry/GraphicsLayerBlackBerry.h:
174         (GraphicsLayerBlackBerry):
175
176 2013-03-21  Zan Dobersek  <zdobersek@igalia.com>
177
178         [GTK] Move libLevelDB.la setup into a separate GNUmakefile.am
179         https://bugs.webkit.org/show_bug.cgi?id=112947
180
181         Reviewed by Martin Robinson.
182
183         No new tests - no new functionality.
184
185         * GNUmakefile.am: Move the libLevelDD.la setup into the new GNUmakefile.am that's placed in
186         the third-party leveldb source directory.
187         * GNUmakefile.list.am: Move the LevelDB sources listing there as well.
188
189 2013-03-21  Alberto Garcia  <agarcia@igalia.com>
190
191         [BlackBerry] DrawingBuffer: add clearPlatformLayer() implementation
192         https://bugs.webkit.org/show_bug.cgi?id=112696
193
194         Reviewed by Rob Buis.
195
196         DrawingBuffer::clearPlatformLayer() was added in r139142.
197
198         This is not needed in the BlackBerry port, so this patch only
199         contains a dummy implementation.
200
201         * platform/graphics/blackberry/DrawingBufferBlackBerry.cpp:
202         (WebCore):
203         (WebCore::DrawingBuffer::clearPlatformLayer):
204
205 2013-03-21  Florin Malita  <fmalita@chromium.org>
206
207         [SVG] Suppress painting when an empty viewBox is specified
208         https://bugs.webkit.org/show_bug.cgi?id=112623
209
210         Reviewed by Philip Rogers.
211
212         Per spec, elements with an empty viewBox should not be rendered:
213         http://www.w3.org/TR/SVG/coords.html#ViewBoxAttribute.
214
215         This patch adds the missing viewBox checks to RenderSVGRoot, RenderSVGViewPortContainer,
216         RenderSVGResourceMarker and RenderSVGResourceMarker's paint methods.
217
218         In order to detect the case of "viewBox present but invalid", the patch also introduces
219         SVGAnimatedProperty plumbing for tracking property validity: the baseVal setter now takes
220         an additional optional 'validValue' boolean parameter, which can later be queried via a
221         macroed getter (LowerProperty##IsValid()).
222
223         Test: svg/custom/viewBox-empty.html
224
225         * rendering/svg/RenderSVGResourceMarker.cpp:
226         (WebCore::RenderSVGResourceMarker::draw):
227         * rendering/svg/RenderSVGResourcePattern.cpp:
228         (WebCore::RenderSVGResourcePattern::buildPattern):
229         * rendering/svg/RenderSVGRoot.cpp:
230         (WebCore::RenderSVGRoot::paintReplaced):
231         * rendering/svg/RenderSVGViewportContainer.cpp:
232         (WebCore::RenderSVGViewportContainer::paint):
233         (WebCore):
234         * rendering/svg/RenderSVGViewportContainer.h:
235         (RenderSVGViewportContainer):
236         * svg/SVGPatternElement.cpp:
237         (WebCore::SVGPatternElement::collectPatternAttributes):
238         * svg/SVGSVGElement.h:
239         (WebCore::SVGSVGElement::hasEmptyViewBox):
240         (SVGSVGElement):
241         Suppress painting if a valid empty viewBox is found.
242
243         * svg/SVGFitToViewBox.h:
244         (WebCore::SVGFitToViewBox::parseAttribute):
245         Mark the viewBox property as invalid if not successfully parsed.
246
247         * svg/SVGExternalResourcesRequired.h:
248         (SVGExternalResourcesRequired):
249         * svg/SVGURIReference.h:
250         (SVGURIReference):
251         * svg/properties/SVGAnimatedPropertyMacros.h:
252         (WebCore::SVGSynchronizableAnimatedProperty::SVGSynchronizableAnimatedProperty):
253         (SVGSynchronizableAnimatedProperty):
254         (WebCore):
255         Plumbing for tracking property value validation.
256
257 2013-03-21  Alexei Filippov  <alph@chromium.org>
258
259         Web Inspector: Hide toolbar customization experimental setting
260         https://bugs.webkit.org/show_bug.cgi?id=112942
261
262         Reviewed by Pavel Feldman.
263
264         * inspector/front-end/Settings.js:
265         (WebInspector.ExperimentsSettings):
266         * inspector/front-end/Toolbar.js:
267         (WebInspector.Toolbar):
268         (WebInspector.Toolbar.prototype._isToolbarCustomizable):
269
270 2013-03-21  Anton Muhin  <antonm@chromium.org>
271
272         Unreviewed, rolling out r146483.
273         http://trac.webkit.org/changeset/146483
274         https://bugs.webkit.org/show_bug.cgi?id=111695
275
276         Breaks
277
278         * Modules/speech/SpeechSynthesis.cpp:
279         (WebCore::SpeechSynthesis::boundaryEventOccurred):
280         (WebCore::SpeechSynthesis::didStartSpeaking):
281         (WebCore::SpeechSynthesis::didPauseSpeaking):
282         (WebCore::SpeechSynthesis::didResumeSpeaking):
283         (WebCore::SpeechSynthesis::didFinishSpeaking):
284         (WebCore::SpeechSynthesis::speakingErrorOccurred):
285         (WebCore):
286         * Modules/speech/SpeechSynthesis.h:
287         (SpeechSynthesis):
288         * Modules/speech/SpeechSynthesisUtterance.cpp:
289         (WebCore::SpeechSynthesisUtterance::SpeechSynthesisUtterance):
290         (WebCore::SpeechSynthesisUtterance::setVoice):
291         * Modules/speech/SpeechSynthesisUtterance.h:
292         (WebCore::SpeechSynthesisUtterance::text):
293         (WebCore::SpeechSynthesisUtterance::setText):
294         (WebCore::SpeechSynthesisUtterance::lang):
295         (WebCore::SpeechSynthesisUtterance::setLang):
296         (WebCore::SpeechSynthesisUtterance::volume):
297         (WebCore::SpeechSynthesisUtterance::setVolume):
298         (WebCore::SpeechSynthesisUtterance::rate):
299         (WebCore::SpeechSynthesisUtterance::setRate):
300         (WebCore::SpeechSynthesisUtterance::pitch):
301         (WebCore::SpeechSynthesisUtterance::setPitch):
302         (WebCore::SpeechSynthesisUtterance::startTime):
303         (WebCore::SpeechSynthesisUtterance::setStartTime):
304         (WebCore::SpeechSynthesisUtterance::platformUtterance):
305         (SpeechSynthesisUtterance):
306         * Modules/speech/SpeechSynthesisVoice.h:
307         (SpeechSynthesisVoice):
308         * WebCore.exp.in:
309         * WebCore.gypi:
310         * platform/PlatformSpeechSynthesis.h:
311         (PlatformSpeechSynthesis):
312         * platform/PlatformSpeechSynthesisUtterance.cpp:
313         * platform/PlatformSpeechSynthesisUtterance.h:
314         (PlatformSpeechSynthesisUtterance):
315         (WebCore::PlatformSpeechSynthesisUtterance::client):
316         * platform/PlatformSpeechSynthesisVoice.cpp:
317         (WebCore::PlatformSpeechSynthesisVoice::create):
318         (WebCore::PlatformSpeechSynthesisVoice::PlatformSpeechSynthesisVoice):
319         * platform/PlatformSpeechSynthesisVoice.h:
320         (PlatformSpeechSynthesisVoice):
321         (WebCore::PlatformSpeechSynthesisVoice::voiceURI):
322         (WebCore::PlatformSpeechSynthesisVoice::name):
323         (WebCore::PlatformSpeechSynthesisVoice::lang):
324         (WebCore::PlatformSpeechSynthesisVoice::localService):
325         * platform/PlatformSpeechSynthesizer.cpp:
326         (WebCore::PlatformSpeechSynthesizer::create):
327         (WebCore::PlatformSpeechSynthesizer::PlatformSpeechSynthesizer):
328         (WebCore):
329         * platform/PlatformSpeechSynthesizer.h:
330         (PlatformSpeechSynthesizerClient):
331         (WebCore::PlatformSpeechSynthesizer::~PlatformSpeechSynthesizer):
332         (PlatformSpeechSynthesizer):
333         * platform/chromium/PlatformSpeechSynthesizerChromium.cpp: Removed.
334         * platform/chromium/support/WebSpeechSynthesisUtterance.cpp: Removed.
335         * platform/chromium/support/WebSpeechSynthesisVoice.cpp: Removed.
336         * platform/chromium/support/WebSpeechSynthesizerClientImpl.cpp: Removed.
337         * platform/chromium/support/WebSpeechSynthesizerClientImpl.h: Removed.
338         * platform/mac/PlatformSpeechSynthesizerMac.mm:
339         (-[WebSpeechSynthesisWrapper speakUtterance:WebCore::]):
340         (-[WebSpeechSynthesisWrapper speechSynthesizer:didFinishSpeaking:]):
341         (WebCore):
342         (WebCore::PlatformSpeechSynthesizer::speak):
343         * platform/mock/PlatformSpeechSynthesizerMock.cpp:
344         (WebCore::PlatformSpeechSynthesizerMock::create):
345         (WebCore::PlatformSpeechSynthesizerMock::PlatformSpeechSynthesizerMock):
346         (WebCore::PlatformSpeechSynthesizerMock::speakingFinished):
347         (WebCore::PlatformSpeechSynthesizerMock::speak):
348         * platform/mock/PlatformSpeechSynthesizerMock.h:
349         (PlatformSpeechSynthesizerMock):
350
351 2013-03-21  Alexey Proskuryakov  <ap@apple.com>
352
353         [Mac] Consolidate bits of willSendRequest implementation
354         https://bugs.webkit.org/show_bug.cgi?id=112932
355
356         Reviewed by Brady Eidson.
357
358         Moved some logic from WebCoreResourceHandleAsDelegate to ResourceHandle for clarity.
359
360         * platform/network/mac/ResourceHandleMac.mm:
361         (WebCore::ResourceHandle::willSendRequest):
362         (-[WebCoreResourceHandleAsDelegate connection:willSendRequest:redirectResponse:]):
363
364 2013-03-21  Praveen R Jadhav  <praveen.j@samsung.com>
365
366         Remove AudioGain.idl from compilation.
367         https://bugs.webkit.org/show_bug.cgi?id=112650
368
369         Reviewed by Chris Rogers.
370
371         Spec: https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html#GainNode
372               https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html#AudioBufferSourceNode
373
374         AudioParam serves the same purpose as AudioGain. Infact, AudioGain inherits
375         AudioParam class and doesn't have its own member functions/parameters. Also,
376         AudioGain is not part of WebAudio W3C specifications.
377
378         Test: webaudio/gain-basic.html
379
380         * CMakeLists.txt:
381         * DerivedSources.make:
382         * DerivedSources.pri:
383         * GNUmakefile.list.am:
384         * Modules/webaudio/AudioBufferSourceNode.cpp:
385         (WebCore::AudioBufferSourceNode::AudioBufferSourceNode):
386         * Modules/webaudio/AudioBufferSourceNode.h:
387         (AudioBufferSourceNode):
388         (WebCore::AudioBufferSourceNode::gain):
389         * Modules/webaudio/AudioBufferSourceNode.idl:
390         * Modules/webaudio/AudioGain.h: Removed.
391         * Modules/webaudio/AudioGain.idl: Removed.
392         * Modules/webaudio/GainNode.cpp:
393         (WebCore::GainNode::GainNode):
394         * Modules/webaudio/GainNode.h:
395         (WebCore):
396         (WebCore::GainNode::create):
397         (GainNode):
398         (WebCore::GainNode::gain):
399         * Modules/webaudio/GainNode.idl:
400         * Modules/webaudio/PannerNode.cpp:
401         (WebCore::PannerNode::PannerNode):
402         * Modules/webaudio/PannerNode.h:
403         (WebCore::PannerNode::distanceGain):
404         (WebCore::PannerNode::coneGain):
405         * Target.pri:
406         * WebCore.gypi:
407         * WebCore.xcodeproj/project.pbxproj:
408
409 2013-03-21  Dominic Mazzoni  <dmazzoni@google.com>
410
411         Implement Web Speech Synthesis for Chromium
412         https://bugs.webkit.org/show_bug.cgi?id=111695
413
414         Reviewed by Adam Barth.
415
416         Straightforward implementation of speech synthesis
417         for Chromium by exposing interfaces for the platform
418         to implement.
419
420         * Modules/speech/SpeechSynthesis.cpp:
421         (WebCore::SpeechSynthesis::boundaryEventOccurred):
422         (WebCore::SpeechSynthesis::didStartSpeaking):
423         (WebCore::SpeechSynthesis::didPauseSpeaking):
424         (WebCore::SpeechSynthesis::didResumeSpeaking):
425         (WebCore::SpeechSynthesis::didFinishSpeaking):
426         (WebCore::SpeechSynthesis::speakingErrorOccurred):
427         (WebCore):
428         * Modules/speech/SpeechSynthesis.h:
429         (SpeechSynthesis):
430         * Modules/speech/SpeechSynthesisUtterance.cpp:
431         (WebCore::SpeechSynthesisUtterance::SpeechSynthesisUtterance):
432         (WebCore):
433         (WebCore::SpeechSynthesisUtterance::~SpeechSynthesisUtterance):
434         (WebCore::SpeechSynthesisUtterance::setVoice):
435         * Modules/speech/SpeechSynthesisUtterance.h:
436         (SpeechSynthesisUtterance):
437         (WebCore::SpeechSynthesisUtterance::text):
438         (WebCore::SpeechSynthesisUtterance::setText):
439         (WebCore::SpeechSynthesisUtterance::lang):
440         (WebCore::SpeechSynthesisUtterance::setLang):
441         (WebCore::SpeechSynthesisUtterance::volume):
442         (WebCore::SpeechSynthesisUtterance::setVolume):
443         (WebCore::SpeechSynthesisUtterance::rate):
444         (WebCore::SpeechSynthesisUtterance::setRate):
445         (WebCore::SpeechSynthesisUtterance::pitch):
446         (WebCore::SpeechSynthesisUtterance::setPitch):
447         (WebCore::SpeechSynthesisUtterance::startTime):
448         (WebCore::SpeechSynthesisUtterance::setStartTime):
449         (WebCore::SpeechSynthesisUtterance::platformUtterance):
450         * Modules/speech/SpeechSynthesisVoice.h:
451         (WebCore::SpeechSynthesisVoice::~SpeechSynthesisVoice):
452         * WebCore.exp.in:
453         * WebCore.gypi:
454         * platform/PlatformSpeechSynthesis.h:
455         (PlatformSpeechSynthesis):
456         * platform/PlatformSpeechSynthesisUtterance.cpp:
457         (WebCore):
458         (WebCore::PlatformSpeechSynthesisUtterance::create):
459         * platform/PlatformSpeechSynthesisUtterance.h:
460         (PlatformSpeechSynthesisUtterance):
461         (WebCore::PlatformSpeechSynthesisUtterance::setClient):
462         * platform/PlatformSpeechSynthesisVoice.cpp:
463         (WebCore):
464         (WebCore::PlatformSpeechSynthesisVoice::create):
465         (WebCore::PlatformSpeechSynthesisVoice::PlatformSpeechSynthesisVoice):
466         * platform/PlatformSpeechSynthesisVoice.h:
467         (PlatformSpeechSynthesisVoice):
468         (WebCore::PlatformSpeechSynthesisVoice::setVoiceURI):
469         (WebCore::PlatformSpeechSynthesisVoice::setName):
470         (WebCore::PlatformSpeechSynthesisVoice::setLang):
471         (WebCore::PlatformSpeechSynthesisVoice::setLocalService):
472         (WebCore::PlatformSpeechSynthesisVoice::setIsDefault):
473         * platform/PlatformSpeechSynthesizer.cpp:
474         (WebCore::PlatformSpeechSynthesizer::create):
475         (WebCore::PlatformSpeechSynthesizer::setVoiceList):
476         (WebCore):
477         * platform/PlatformSpeechSynthesizer.h:
478         (WebKit):
479         (PlatformSpeechSynthesizerClient):
480         (PlatformSpeechSynthesizer):
481         * platform/chromium/PlatformSpeechSynthesizerChromium.cpp: Added.
482         (WebCore):
483         (WebCore::PlatformSpeechSynthesizer::PlatformSpeechSynthesizer):
484         (WebCore::PlatformSpeechSynthesizer::~PlatformSpeechSynthesizer):
485         (WebCore::PlatformSpeechSynthesizer::initializeVoiceList):
486         (WebCore::PlatformSpeechSynthesizer::speak):
487         (WebCore::PlatformSpeechSynthesizer::pause):
488         (WebCore::PlatformSpeechSynthesizer::resume):
489         (WebCore::PlatformSpeechSynthesizer::cancel):
490         * platform/chromium/support/WebSpeechSynthesisUtterance.cpp: Added.
491         (WebKit):
492         (WebKit::WebSpeechSynthesisUtterance::WebSpeechSynthesisUtterance):
493         (WebKit::WebSpeechSynthesisUtterance::operator=):
494         (WebKit::WebSpeechSynthesisUtterance::assign):
495         (WebKit::WebSpeechSynthesisUtterance::reset):
496         (WebKit::WebSpeechSynthesisUtterance::operator PassRefPtr<PlatformSpeechSynthesisUtterance>):
497         (WebKit::WebSpeechSynthesisUtterance::operator PlatformSpeechSynthesisUtterance*):
498         (WebKit::WebSpeechSynthesisUtterance::text):
499         (WebKit::WebSpeechSynthesisUtterance::lang):
500         (WebKit::WebSpeechSynthesisUtterance::voice):
501         (WebKit::WebSpeechSynthesisUtterance::volume):
502         (WebKit::WebSpeechSynthesisUtterance::rate):
503         (WebKit::WebSpeechSynthesisUtterance::pitch):
504         (WebKit::WebSpeechSynthesisUtterance::startTime):
505         * platform/chromium/support/WebSpeechSynthesisVoice.cpp: Added.
506         (WebKit):
507         (WebKit::WebSpeechSynthesisVoice::assign):
508         (WebKit::WebSpeechSynthesisVoice::reset):
509         (WebKit::WebSpeechSynthesisVoice::setVoiceURI):
510         (WebKit::WebSpeechSynthesisVoice::setName):
511         (WebKit::WebSpeechSynthesisVoice::setLanguage):
512         (WebKit::WebSpeechSynthesisVoice::setIsLocalService):
513         (WebKit::WebSpeechSynthesisVoice::setIsDefault):
514         (WebKit::WebSpeechSynthesisVoice::operator PassRefPtr<WebCore::PlatformSpeechSynthesisVoice>):
515         * platform/chromium/support/WebSpeechSynthesizerClientImpl.cpp: Added.
516         (WebCore):
517         (WebCore::WebSpeechSynthesizerClientImpl::WebSpeechSynthesizerClientImpl):
518         (WebCore::WebSpeechSynthesizerClientImpl::~WebSpeechSynthesizerClientImpl):
519         (WebCore::WebSpeechSynthesizerClientImpl::setVoiceList):
520         (WebCore::WebSpeechSynthesizerClientImpl::didStartSpeaking):
521         (WebCore::WebSpeechSynthesizerClientImpl::didFinishSpeaking):
522         (WebCore::WebSpeechSynthesizerClientImpl::didPauseSpeaking):
523         (WebCore::WebSpeechSynthesizerClientImpl::didResumeSpeaking):
524         (WebCore::WebSpeechSynthesizerClientImpl::speakingErrorOccurred):
525         (WebCore::WebSpeechSynthesizerClientImpl::wordBoundaryEventOccurred):
526         (WebCore::WebSpeechSynthesizerClientImpl::sentenceBoundaryEventOccurred):
527         * platform/chromium/support/WebSpeechSynthesizerClientImpl.h: Added.
528         (WebCore):
529         (WebSpeechSynthesizerClientImpl):
530         * platform/mac/PlatformSpeechSynthesizerMac.mm:
531         (-[WebSpeechSynthesisWrapper speakUtterance:WebCore::]):
532         (-[WebSpeechSynthesisWrapper speechSynthesizer:didFinishSpeaking:]):
533         (WebCore::PlatformSpeechSynthesizer::PlatformSpeechSynthesizer):
534         (WebCore):
535         (WebCore::PlatformSpeechSynthesizer::~PlatformSpeechSynthesizer):
536         (WebCore::PlatformSpeechSynthesizer::speak):
537         * platform/mock/PlatformSpeechSynthesizerMock.cpp:
538         (WebCore::PlatformSpeechSynthesizerMock::PlatformSpeechSynthesizerMock):
539         (WebCore::PlatformSpeechSynthesizerMock::speakingFinished):
540         (WebCore::PlatformSpeechSynthesizerMock::speak):
541         * platform/mock/PlatformSpeechSynthesizerMock.h:
542         (PlatformSpeechSynthesizerMock):
543
544 2013-03-21  Julien Chaffraix  <jchaffraix@webkit.org>
545
546         [CSS Grid Layout] Properly layout spanning grid items with minmax grid tracks
547         https://bugs.webkit.org/show_bug.cgi?id=112389
548
549         Reviewed by Tony Chang.
550
551         This change updates our core minmax resolution function to be spanning grid
552         items aware. The new implementation of the algorithm doesn't totally match
553         the specification but it is fairly close that it's a good first pass. The
554         extra complexity in the specification needs to be carefully examinated
555         first (not to mention the probable change in the core layout algorithm).
556
557         Tests: fast/css-grid-layout/minmax-spanning-resolution-columns.html
558                fast/css-grid-layout/minmax-spanning-resolution-rows.html
559
560         * rendering/RenderGrid.cpp:
561         (WebCore::RenderGrid::resolveContentBasedTrackSizingFunctionsForItems):
562         Updated this function to account for spanning grid items by:
563         - iterating over all spanned grid tracks.
564         - removing any used breadth from all spanned grid tracks.
565
566 2013-03-21  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>
567
568         [GStreamer] New reference returned by g_main_context_new() must be freed
569         https://bugs.webkit.org/show_bug.cgi?id=112899
570
571         Reviewed by Kenneth Rohde Christiansen.
572
573         Fix a memory leak by adopting the new reference returned
574         by g_main_context_new().
575
576         No new tests. No change in behavior.
577
578         * platform/audio/gstreamer/AudioFileReaderGStreamer.cpp:
579         (WebCore::AudioFileReader::createBus):
580
581 2013-03-21  Carlos Garcia Campos  <cargarcia@rim.com>
582
583         [BlackBerry] Add ScrollingCoordinatorBlackBerry implementation
584         https://bugs.webkit.org/show_bug.cgi?id=112915
585
586         Reviewed by Rob Buis.
587
588         * PlatformBlackBerry.cmake: Add page/scrolling/blackberry to the
589         indlude dir list.
590         * page/scrolling/ScrollingCoordinator.cpp:
591         (WebCore::ScrollingCoordinator::create): Create a
592         ScrollingCoordinatorBlackBerry for the BlackBerry platform.
593         * page/scrolling/blackberry/ScrollingCoordinatorBlackBerry.cpp: Added.
594         (WebCore):
595         (WebCore::ScrollingCoordinatorBlackBerry::ScrollingCoordinatorBlackBerry):
596         (WebCore::ScrollingCoordinatorBlackBerry::setLayerIsContainerForFixedPositionLayers):
597         (WebCore::ScrollingCoordinatorBlackBerry::setLayerIsFixedToContainerLayer):
598         (WebCore::ScrollingCoordinatorBlackBerry::setLayerFixedToContainerLayerEdge):
599         (WebCore::ScrollingCoordinatorBlackBerry::frameViewFrameRectDidChange):
600         (WebCore::ScrollingCoordinatorBlackBerry::frameViewContentsSizeDidChange):
601         * page/scrolling/blackberry/ScrollingCoordinatorBlackBerry.h: Added.
602         (WebCore):
603         (ScrollingCoordinatorBlackBerry):
604         (WebCore::ScrollingCoordinatorBlackBerry::supportsFixedPositionLayers):
605         * platform/graphics/PlatformLayer.h:
606         (WebCore): Add PlatformLayer definition for BlackBerry.
607
608 2013-03-18  Andrey Kosyakov  <caseq@chromium.org>
609
610         Web Inspector: Paint rectangles shown on hover over Timeline's paint records occasionally have wrong offsets
611         https://bugs.webkit.org/show_bug.cgi?id=112371
612
613         Reviewed by Pavel Feldman.
614
615         - pass frame to InspectorTimelineAgent::didPaint();
616         - convert paint coordinates to root view.
617
618         * inspector/InspectorInstrumentation.cpp:
619         (WebCore):
620         (WebCore::InspectorInstrumentation::willPaintImpl):
621         (WebCore::InspectorInstrumentation::didPaintImpl):
622         * inspector/InspectorInstrumentation.h:
623         (InspectorInstrumentation):
624         (WebCore::InspectorInstrumentation::willPaint):
625         (WebCore::InspectorInstrumentation::didPaint):
626         * inspector/InspectorTimelineAgent.cpp:
627         (WebCore::InspectorTimelineAgent::didPaint):
628         * inspector/InspectorTimelineAgent.h:
629         (InspectorTimelineAgent):
630
631 2013-03-20  Andrey Kosyakov  <caseq@chromium.org>
632
633         Web Inspector: do not use inspector cookie in InspectorInstrumentation::{will,did}Paint
634         https://bugs.webkit.org/show_bug.cgi?id=112787
635
636         Reviewed by Pavel Feldman.
637
638         - pass frame, not inspector cookie to InspectorInstrumentation::didPaint;
639         - use frame to determine timeline agent in InspectorInstrumentation::didPaint.
640
641         * inspector/InspectorInstrumentation.cpp:
642         (WebCore):
643         (WebCore::InspectorInstrumentation::willPaintImpl):
644         (WebCore::InspectorInstrumentation::didPaintImpl):
645         * inspector/InspectorInstrumentation.h:
646         (InspectorInstrumentation):
647         (WebCore::InspectorInstrumentation::willPaint):
648         (WebCore::InspectorInstrumentation::didPaint):
649         * page/FrameView.cpp:
650         (WebCore::FrameView::paintContents):
651         * rendering/RenderLayerBacking.cpp:
652         (WebCore::RenderLayerBacking::paintContents):
653
654 2013-03-21  Julien Chaffraix  <jchaffraix@webkit.org>
655
656         [CSS Grid Layout] OOB access in RenderGrid with a grid item with negative position index
657         https://bugs.webkit.org/show_bug.cgi?id=112853
658
659         Reviewed by Tony Chang.
660
661         This issue was caused by us casting a negative int to a size_t by mistake. This
662         would make us not size the grid properly thus yielding to OOB access during the
663         rest of the layout.
664
665         Test: fast/css-grid-layout/grid-item-negative-indexes.html
666
667         * rendering/RenderGrid.cpp:
668         (WebCore::estimatedGridSizeForPosition):
669         Added this helper function to do the proper estimation and checks that our
670         position can be represented by a size_t.
671
672         (WebCore::RenderGrid::maximumIndexInDirection):
673         Updated to use estimatedGridSizeForPosition.
674
675 2013-03-21  Stephen White  <senorblanco@chromium.org>
676
677         [skia] feConvolveMatrix should use accelerated path
678         https://bugs.webkit.org/show_bug.cgi?id=112828
679
680         Reviewed by James Robinson.
681
682         Covered by layout tests css3/filters/effect-reference*.html.
683
684         * WebCore.gypi:
685         Add FEConvolveMatrixSkia.cpp to the build.
686         * platform/graphics/filters/FEConvolveMatrix.h:
687         Enable the skia accelerated path for feConvolveMatrix.
688         * platform/graphics/filters/skia/FEConvolveMatrixSkia.cpp:
689         (WebCore::FEConvolveMatrix::createImageFilter):
690         Implement building/conversion from FEConvolveMatrix to
691         SkMatrixConvolutionImageFilter.
692
693 2013-03-21  Martin Robinson  <mrobinson@igalia.com>
694
695         Source/ThirdParty/leveldb/db/builder.cc does not build on systems without <endian.h>
696         https://bugs.webkit.org/show_bug.cgi?id=111817
697
698         Reviewed by Gustavo Noronha Silva.
699
700         * GNUmakefile.am: Add the appropriate flags to the LevelDB build if we are on FreeBSD
701         or OS X.
702
703 2013-03-21  Julien Chaffraix  <jchaffraix@webkit.org>
704
705         [CSS Grid Layout] Support default grid items sizing
706         https://bugs.webkit.org/show_bug.cgi?id=103333
707
708         Reviewed by Tony Chang.
709
710         Tests: fast/css-grid-layout/grid-auto-columns-rows-auto-flow-resolution.html
711                fast/css-grid-layout/grid-auto-columns-rows-resolution.html
712                fast/css-grid-layout/grid-auto-columns-rows-update.html
713
714         * rendering/RenderGrid.cpp:
715         (WebCore::RenderGrid::gridTrackSize):
716         Core of the change: return the grid-auto-{rows|columns} instead of a pre-defined value.
717
718         (WebCore::RenderGrid::computedUsedBreadthOfGridTracks):
719         Fixed a latent bug: we need to iterate over the internal grid representation instead of the
720         style's rows / columns as the latter doesn't account for implicit rows / columns.
721
722 2013-03-21  Adam Barth  <abarth@webkit.org>
723
724         HTMLNames should construct strings at compile time
725         https://bugs.webkit.org/show_bug.cgi?id=112831
726
727         Reviewed by Darin Adler.
728
729         This patch teaches make_names how to construct strings at compile time,
730         eliminating a large number of startup mallocs.
731
732         * WebCore.gyp/WebCore.gyp:
733         * WebCore.gyp/scripts/action_makenames.py:
734             - Teach the Chromium build how to deal with Perl modules.
735         * bindings/scripts/StaticString.pm: Added.
736             - A Perl module for constructing static strings.
737         (GenerateStrings):
738         (GenerateValidateStrings):
739         * dom/QualifiedName.cpp:
740         (WebCore::createQualifiedName):
741             - createQualifiedName now takes an already-constructed StringImpl
742               object.
743         * dom/QualifiedName.h:
744         * dom/make_names.pl:
745         (valueForName):
746         (namesToStrings):
747         (printNamesCppFile):
748         (printDefinitions):
749             - Teach make_names how to use StaticString.pm.
750
751 2013-03-21  Kondapally Kalyan  <kalyan.kondapally@intel.com>
752
753         [EFL][WebGL] Implement a common GraphicsSurface Implementation.
754         https://bugs.webkit.org/show_bug.cgi?id=111759
755
756         Reviewed by Kenneth Rohde Christiansen.
757
758         Covered by existing WebGL tests.
759
760         This is in preparation to add transport surface support for GLES2.
761         This patch makes it easy to share the core logic of using
762         Transport Surface and client on GLX and GLES2 backends without
763         any code duplication.
764
765         * PlatformEfl.cmake:
766         * platform/graphics/efl/GraphicsContext3DPrivate.cpp:
767         (WebCore::GraphicsContext3DPrivate::initialize):
768         (WebCore::GraphicsContext3DPrivate::releaseResources):
769         (WebCore::GraphicsContext3DPrivate::prepareBuffer):
770         (WebCore::GraphicsContext3DPrivate::createGraphicsSurface):
771         (WebCore::GraphicsContext3DPrivate::didResizeCanvas):
772         (WebCore::GraphicsContext3DPrivate::copyToGraphicsSurface):
773         * platform/graphics/efl/GraphicsContext3DPrivate.h:
774         (GraphicsContext3DPrivate):
775
776         TransportSurface related code is moved to GraphicsSurfaceCommon.
777         As GraphicsSurface is deleted on resize, added logic to ensure that
778         current buffer is not deleted before having the shared buffer
779         with correct size. This would avoid any flashing during resize.
780
781         * platform/graphics/opengl/GLPlatformSurface.cpp:
782         (WebCore::GLPlatformSurface::createTransportSurface):
783         * platform/graphics/opengl/GLPlatformSurface.h:
784         * platform/graphics/surfaces/efl/GLTransportSurface.cpp: Renamed from Source/WebCore/platform/graphics/surfaces/GLTransportSurface.cpp.
785         (WebCore):
786         (WebCore::GLTransportSurface::GLTransportSurface):
787         (WebCore::GLTransportSurface::~GLTransportSurface):
788         (WebCore::GLTransportSurface::updateContents):
789         (WebCore::GLTransportSurface::setGeometry):
790         (WebCore::GLTransportSurface::destroy):
791         (WebCore::GLTransportSurface::draw):
792         (WebCore::GLTransportSurface::bindArrayBuffer):
793         (WebCore::GLTransportSurface::updateTransformationMatrix):
794         (WebCore::GLTransportSurface::initializeShaderProgram):
795         (WebCore::GLTransportSurfaceClient::createTransportSurfaceClient):
796         (WebCore::GLTransportSurfaceClient::GLTransportSurfaceClient):
797         (WebCore::GLTransportSurfaceClient::~GLTransportSurfaceClient):
798         (WebCore::GLTransportSurfaceClient::destroy):
799         (WebCore::GLTransportSurfaceClient::prepareTexture):
800         (WebCore::GLTransportSurfaceClient::createTexture):
801         * platform/graphics/surfaces/efl/GLTransportSurface.h: Renamed from Source/WebCore/platform/graphics/surfaces/GLTransportSurface.h.
802         (WebCore):
803         (GLTransportSurface):
804         (GLTransportSurfaceClient):
805         (WebCore::GLTransportSurfaceClient::texture):
806         (WebCore::GLTransportSurfaceClient::hasAlpha):
807
808         Moved TransportSurface to EFL folder as this is being used by EFL port only.
809         Added a base class for TransportSurfaceClient.
810
811         * platform/graphics/surfaces/efl/GraphicsSurfaceCommon.cpp: Added.
812         (WebCore):
813         (GraphicsSurfacePrivate):
814         (WebCore::GraphicsSurfacePrivate::GraphicsSurfacePrivate):
815         (WebCore::GraphicsSurfacePrivate::~GraphicsSurfacePrivate):
816         (WebCore::GraphicsSurfacePrivate::destroy):
817         (WebCore::GraphicsSurfacePrivate::initializeTransportSurface):
818         (WebCore::GraphicsSurfacePrivate::makeContextCurrent):
819         (WebCore::GraphicsSurfacePrivate::copyFromTexture):
820         (WebCore::GraphicsSurfacePrivate::handle):
821         (WebCore::GraphicsSurfacePrivate::updateClientBuffer):
822         (WebCore::GraphicsSurfacePrivate::flags):
823         (WebCore::GraphicsSurfacePrivate::rect):
824         (WebCore::GraphicsSurfacePrivate::size):
825         (WebCore::GraphicsSurfacePrivate::textureId):
826         (WebCore::GraphicsSurfacePrivate::initializeClient):
827         (WebCore::GraphicsSurface::platformExport):
828         (WebCore::GraphicsSurface::platformGetTextureID):
829         (WebCore::GraphicsSurface::platformCopyToGLTexture):
830         (WebCore::GraphicsSurface::platformCopyFromTexture):
831         (WebCore::GraphicsSurface::platformPaintToTextureMapper):
832         (WebCore::GraphicsSurface::platformFrontBuffer):
833         (WebCore::GraphicsSurface::platformSwapBuffers):
834         (WebCore::GraphicsSurface::platformSize):
835         (WebCore::GraphicsSurface::platformCreate):
836         (WebCore::GraphicsSurface::platformImport):
837         (WebCore::GraphicsSurface::platformLock):
838         (WebCore::GraphicsSurface::platformUnlock):
839         (WebCore::GraphicsSurface::platformDestroy):
840         (WebCore::GraphicsSurface::platformBeginPaint):
841         (WebCore::GraphicsSurface::createReadOnlyImage):
842
843         GraphicsSurface implementation to be shared by both GLX and GLES2.
844
845         * platform/graphics/surfaces/egl/EGLSurface.cpp:
846         (WebCore::EGLWindowTransportSurface::EGLWindowTransportSurface):
847         * platform/graphics/surfaces/egl/EGLSurface.h:
848         (EGLWindowTransportSurface):
849         * platform/graphics/surfaces/glx/GLXSurface.cpp:
850         (WebCore):
851         (WebCore::resolveGLMethods):
852         (WebCore::isMesaGLX):
853         (WebCore::GLXTransportSurface::GLXTransportSurface):
854         (WebCore::GLXTransportSurfaceClient::GLXTransportSurfaceClient):
855         (WebCore::GLXTransportSurfaceClient::~GLXTransportSurfaceClient):
856         (WebCore::GLXTransportSurfaceClient::destroy):
857         (WebCore::GLXTransportSurfaceClient::prepareTexture):
858         * platform/graphics/surfaces/glx/GLXSurface.h:
859         (GLXTransportSurface):
860         (GLXTransportSurfaceClient):
861         (WebCore):
862         GLXTransportSurfaceClient implementation.
863
864 2013-03-21  Sheriff Bot  <webkit.review.bot@gmail.com>
865
866         Unreviewed, rolling out r146454.
867         http://trac.webkit.org/changeset/146454
868         https://bugs.webkit.org/show_bug.cgi?id=112906
869
870         compile failures (Requested by antonm on #webkit).
871
872         * WebCore.gypi:
873         * platform/graphics/filters/FEConvolveMatrix.h:
874         (FEConvolveMatrix):
875         * platform/graphics/filters/skia/FEConvolveMatrixSkia.cpp: Removed.
876
877 2013-03-21  Mike Reed  <reed@google.com>
878
879         Remove obsolete conditionals around calling SkTypeface::getUnitsPerEm()
880         https://bugs.webkit.org/show_bug.cgi?id=112846
881
882         Reviewed by Stephen White.
883
884         Existing complex-text layouttests exercise this code.
885
886         * platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.cpp:
887         (WebCore::FontPlatformData::emSizeInFontUnits):
888
889 2013-03-21  Stephen White  <senorblanco@chromium.org>
890
891         [skia] feConvolveMatrix should use accelerated path
892         https://bugs.webkit.org/show_bug.cgi?id=112828
893
894         Reviewed by James Robinson.
895
896         Covered by layout tests css3/filters/effect-reference*.html.
897
898         * WebCore.gypi:
899         Add FEConvolveMatrixSkia.cpp to the build.
900         * platform/graphics/filters/FEConvolveMatrix.h:
901         Enable the skia accelerated path for feConvolveMatrix.
902         * platform/graphics/filters/skia/FEConvolveMatrixSkia.cpp:
903         (WebCore::FEConvolveMatrix::createImageFilter):
904         Implement building/conversion from FEConvolveMatrix to
905         SkMatrixConvolutionImageFilter.
906
907 2013-03-21  Kunihiko Sakamoto  <ksakamoto@chromium.org>
908
909         Refactoring: Reorganize datetime field element parameters
910         https://bugs.webkit.org/show_bug.cgi?id=112877
911
912         Reviewed by Kent Tamura.
913
914         Before this patch, the field element constructors took minimum/maximum
915         as a pair of integers, and step/stepbase as a DateTimeNumericFieldElement::Parameters.
916         This patch makes these constructors to take a Range (for minimum/maximum)
917         and a Step (for step/stepbase).
918
919         No new tests. Just refactoring.
920
921         * html/shadow/DateTimeEditElement.cpp:
922         (DateTimeEditBuilder): Replaced min/max data members by Ranges.
923         (WebCore::DateTimeEditBuilder::DateTimeEditBuilder):
924         (WebCore::DateTimeEditBuilder::visitField):
925         (WebCore::DateTimeEditBuilder::shouldAMPMFieldDisabled):
926         (WebCore::DateTimeEditBuilder::shouldDayOfMonthFieldDisabled):
927         (WebCore::DateTimeEditBuilder::shouldHourFieldDisabled):
928         (WebCore::DateTimeEditBuilder::shouldMillisecondFieldDisabled):
929         (WebCore::DateTimeEditBuilder::shouldMinuteFieldDisabled):
930         (WebCore::DateTimeEditBuilder::shouldSecondFieldDisabled):
931         (WebCore::DateTimeEditBuilder::createStep):
932         * html/shadow/DateTimeFieldElements.cpp:
933         (WebCore::DateTimeDayFieldElement::DateTimeDayFieldElement):
934         (WebCore::DateTimeDayFieldElement::create):
935         (WebCore::DateTimeHourFieldElementBase::DateTimeHourFieldElementBase):
936         (WebCore::DateTimeHour11FieldElement::DateTimeHour11FieldElement):
937         (WebCore::DateTimeHour11FieldElement::create):
938         (WebCore::DateTimeHour12FieldElement::DateTimeHour12FieldElement):
939         (WebCore::DateTimeHour12FieldElement::create):
940         (WebCore::DateTimeHour23FieldElement::DateTimeHour23FieldElement):
941         (WebCore::DateTimeHour23FieldElement::create):
942         (WebCore::DateTimeHour24FieldElement::DateTimeHour24FieldElement):
943         (WebCore::DateTimeHour24FieldElement::create):
944         (WebCore::DateTimeMillisecondFieldElement::DateTimeMillisecondFieldElement):
945         (WebCore::DateTimeMillisecondFieldElement::create):
946         (WebCore::DateTimeMinuteFieldElement::DateTimeMinuteFieldElement):
947         (WebCore::DateTimeMinuteFieldElement::create):
948         (WebCore::DateTimeMonthFieldElement::DateTimeMonthFieldElement):
949         (WebCore::DateTimeMonthFieldElement::create):
950         (WebCore::DateTimeSecondFieldElement::DateTimeSecondFieldElement):
951         (WebCore::DateTimeSecondFieldElement::create):
952         (WebCore::DateTimeWeekFieldElement::DateTimeWeekFieldElement):
953         (WebCore::DateTimeWeekFieldElement::create):
954         * html/shadow/DateTimeFieldElements.h:
955         (DateTimeDayFieldElement):
956         (DateTimeHourFieldElementBase):
957         (DateTimeHour11FieldElement):
958         (DateTimeHour12FieldElement):
959         (DateTimeHour23FieldElement):
960         (DateTimeHour24FieldElement):
961         (DateTimeMillisecondFieldElement):
962         (DateTimeMinuteFieldElement):
963         (DateTimeMonthFieldElement):
964         (DateTimeSecondFieldElement):
965         (DateTimeWeekFieldElement):
966         * html/shadow/DateTimeNumericFieldElement.cpp:
967         (WebCore):
968         (WebCore::DateTimeNumericFieldElement::DateTimeNumericFieldElement):
969         (WebCore::DateTimeNumericFieldElement::roundDown):
970         (WebCore::DateTimeNumericFieldElement::roundUp):
971         * html/shadow/DateTimeNumericFieldElement.h:
972         (WebCore::DateTimeNumericFieldElement::Step::Step): Renamed from Parameters.
973         (WebCore::DateTimeNumericFieldElement::Range::Range):
974         (WebCore::DateTimeNumericFieldElement::Range::isSingleton): Returns true if the range is a singleton range (i.e. contains exactly one value).
975         (Range): Now it's parameter type, hence public.
976         (DateTimeNumericFieldElement): Replaced two int members (m_step and m_stepBase) by a Range.
977
978 2013-03-21  Sergey Ryazanov  <serya@chromium.org>
979
980         Web Inspector: Track CSS error location information.
981         https://bugs.webkit.org/show_bug.cgi?id=111314
982
983         Added CSS syntax error reporting to some (other rules will be covered later) error recovery grammar rules.
984         Added code to CSSParser to allow track error location information.
985         Added empty rule to declaration_list. Needed to not report error about declarations like "body {}".
986         Added helper grammar rule "errors: error | errors error". Handles the same grammar as "error" but simplifies error location tracking.
987
988         Reviewed by Pavel Feldman.
989
990         Test: inspector/console/console-css-warnings.html
991
992         * css/CSSGrammar.y.in:
993         * css/CSSParser.cpp:
994         (WebCore::CSSParser::CSSParser):
995         (WebCore::CSSParser::currentLocation):
996         (WebCore):
997         (WebCore::CSSParser::realLex):
998         * css/CSSParser.h:
999         (CSSParser):
1000
1001 2013-03-21  Sergey Ryazanov  <serya@chromium.org>
1002
1003         Changing "#define YYDEBUG 0" to 1 causing compilation error
1004         https://bugs.webkit.org/show_bug.cgi?id=111178
1005
1006         Reviewed by Pavel Feldman.
1007
1008         Code that reference tokens can't be placed into CSSGrammar.yy.include because it's included before tokens defined.
1009         YYDEBUG can't be used in CSSGrammar.yy.in because the #define is only defined in CSSGrammar.yy.include. This
1010         change simplifies CSS debugging letting manipulate only #define YYDEBUG in CSSGrammar.yy.include and/or in CSSParser.cpp.
1011
1012         * css/CSSGrammar.y.in:
1013         * css/CSSGrammar.y.includes:
1014
1015 2013-03-21  Nate Chapin  <japhet@chromium.org>
1016
1017         Merge MainResourceLoader into DocumentLoader
1018         https://bugs.webkit.org/show_bug.cgi?id=104969
1019
1020         Reviewed by Adam Barth.
1021
1022         No new tests, refactor only.
1023
1024         * CMakeLists.txt:
1025         * GNUmakefile.list.am:
1026         * Target.pri:
1027         * WebCore.exp.in:
1028         * WebCore.gypi:
1029         * WebCore.vcproj/WebCore.vcproj:
1030         * WebCore.vcxproj/WebCore.vcxproj:
1031         * WebCore.vcxproj/WebCore.vcxproj.filters:
1032         * WebCore.xcodeproj/project.pbxproj:
1033         * loader/DocumentLoader.cpp:
1034         (WebCore::DocumentLoader::DocumentLoader):
1035         (WebCore::DocumentLoader::mainResourceLoader):
1036         (WebCore::DocumentLoader::~DocumentLoader): Move main resource clearing from
1037             ~MainResourceLoader.
1038         (WebCore::DocumentLoader::mainResourceData):
1039         (WebCore::DocumentLoader::stopLoading):
1040         (WebCore::DocumentLoader::notifyFinished): Moved from MainResourceLoader::notifyFinished.
1041         (WebCore):
1042         (WebCore::DocumentLoader::finishedLoading):
1043         (WebCore::DocumentLoader::handleSubstituteDataLoadNow):
1044         (WebCore::DocumentLoader::redirectReceived):
1045         (WebCore::DocumentLoader::continueAfterNavigationPolicy):
1046         (WebCore::DocumentLoader::responseReceived):
1047         (WebCore::DocumentLoader::continueAfterContentPolicy):
1048         (WebCore::DocumentLoader::reportMemoryUsage):
1049         (WebCore::DocumentLoader::dataReceived):
1050         (WebCore::DocumentLoader::clearMainResourceLoader):
1051         (WebCore::DocumentLoader::setDefersLoading):
1052         (WebCore::DocumentLoader::setMainResourceDataBufferingPolicy):
1053         (WebCore::DocumentLoader::addSubresourceLoader):
1054         (WebCore::DocumentLoader::maybeLoadEmpty):
1055         (WebCore::DocumentLoader::startLoadingMainResource): Don't keep separate checks
1056              for normal and empty loads, just use a single boolean.
1057         * loader/DocumentLoader.h:
1058         (WebCore::DocumentLoader::isLoadingMainResource):
1059         * loader/MainResourceLoader.cpp: Removed.
1060         * loader/MainResourceLoader.h: Removed.
1061         * loader/mac/DocumentLoaderMac.cpp:
1062         (WebCore::DocumentLoader::schedule):
1063         (WebCore::DocumentLoader::unschedule):
1064
1065 2013-03-20  Ilya Tikhonovsky  <loislo@chromium.org>
1066
1067         Web Inspector: Flame Chart. draw background for the FlameChart overview pane with the CPU aggregated data.
1068         https://bugs.webkit.org/show_bug.cgi?id=112823
1069
1070         Reviewed by Yury Semikhatsky.
1071
1072         The idea of the patch is to collect the data about stack depth for the each X
1073         and draw a line with help of this data.
1074
1075         * inspector/front-end/FlameChart.js:
1076         (WebInspector.FlameChart):
1077         (WebInspector.FlameChart.prototype.onResize):
1078         (WebInspector.FlameChart.prototype._drawOverviewCanvas):
1079         (WebInspector.FlameChart.prototype.update):
1080
1081 2013-03-21  Eugene Klyuchnikov  <eustas@chromium.org>
1082
1083         Web Inspector: [Settings] Fix JS compiler warnings.
1084         https://bugs.webkit.org/show_bug.cgi?id=112879
1085
1086         Reviewed by Pavel Feldman.
1087
1088         Removed erroneous JSDoc.
1089
1090         * inspector/front-end/Settings.js: Removed erroneous JSDoc.
1091
1092 2013-03-20  Simon Fraser  <simon.fraser@apple.com>
1093
1094         Make GraphicsLayerCA::backingStoreMemoryEstimate() give a better estimate for tiled layers
1095         https://bugs.webkit.org/show_bug.cgi?id=112864
1096
1097         Reviewed by Tim Horton.
1098         
1099         If a GraphicsLayerCA has TiledBacking, ask the TiledBacking how
1100         much memory it's using for tiles, rather than just using 
1101         height * width * 4.
1102         
1103         Implement retainedTileBackingStoreMemory() in the TileController,
1104         summing the memory used by parented tiles.
1105
1106         The original code was incorrectly multiplying by contentsScale
1107         only once rather than twice (2x contents scale uses 4x as much memory).
1108
1109         * platform/graphics/TiledBacking.h:
1110         * platform/graphics/ca/GraphicsLayerCA.cpp:
1111         (WebCore::GraphicsLayerCA::backingStoreMemoryEstimate):
1112         * platform/graphics/ca/mac/TileController.h:
1113         * platform/graphics/ca/mac/TileController.mm:
1114         (WebCore::TileController::retainedTileBackingStoreMemory):
1115
1116 2013-03-20  Sheriff Bot  <webkit.review.bot@gmail.com>
1117
1118         Unreviewed, rolling out r146419.
1119         http://trac.webkit.org/changeset/146419
1120         https://bugs.webkit.org/show_bug.cgi?id=112870
1121
1122         Broke many tests on debug builds (Requested by rniwa_ on
1123         #webkit).
1124
1125         * DerivedSources.make:
1126         * GNUmakefile.am:
1127         * WebCore.gyp/WebCore.gyp:
1128         * WebCore.gyp/scripts/action_makenames.py:
1129         (main):
1130         * bindings/scripts/StaticString.pm: Removed.
1131         * dom/QualifiedName.cpp:
1132         (WebCore::createQualifiedName):
1133         * dom/QualifiedName.h:
1134         (WebCore):
1135         * dom/make_names.pl:
1136         (printNamesCppFile):
1137         (printDefinitions):
1138
1139 2013-03-20  Michael Pruett  <michael@68k.org>
1140
1141         [JSC] Implement EnforceRange IDL attribute for integer conversions
1142         https://bugs.webkit.org/show_bug.cgi?id=112506
1143
1144         Reviewed by Kentaro Hara.
1145
1146         Implement the EnforceRange attribute for JSC bindings.
1147
1148         The EnforceRange attribute requires a type error to be thrown when
1149         converting an ECMAScript number which is beyond the representable
1150         range of the IDL integer type.
1151
1152         Tests: fast/js/webidl-type-mapping.html
1153                storage/indexeddb/cursor-advance-workers.html
1154                storage/indexeddb/cursor-advance.html
1155                storage/indexeddb/intversion-bad-parameters.html
1156
1157         * WebCore.exp.in:
1158         * bindings/js/JSDOMBinding.cpp:
1159         (WebCore):
1160         (WebCore::enforceRange):
1161         (WebCore::toInt32EnforceRange):
1162         (WebCore::toUInt32EnforceRange):
1163         (WebCore::toInt64):
1164         (WebCore::toUInt64):
1165         * bindings/js/JSDOMBinding.h:
1166         (WebCore::toInt32):
1167         (WebCore):
1168         (WebCore::toUInt32):
1169         * bindings/scripts/CodeGeneratorJS.pm:
1170         (JSValueToNative):
1171         * bindings/scripts/test/JS/JSTestEventTarget.cpp:
1172         (WebCore::jsTestEventTargetPrototypeFunctionItem):
1173         * bindings/scripts/test/JS/JSTestObj.cpp:
1174         (WebCore::setJSTestObjShortAttr):
1175         (WebCore::setJSTestObjUnsignedShortAttr):
1176         (WebCore::setJSTestObjLongAttr):
1177         (WebCore::setJSTestObjLongLongAttr):
1178         (WebCore::setJSTestObjUnsignedLongLongAttr):
1179         (WebCore::setJSTestObjReflectedIntegralAttr):
1180         (WebCore::setJSTestObjReflectedUnsignedIntegralAttr):
1181         (WebCore::setJSTestObjReflectedCustomIntegralAttr):
1182         (WebCore::setJSTestObjAttrWithGetterException):
1183         (WebCore::setJSTestObjAttrWithSetterException):
1184         (WebCore::setJSTestObjWithScriptStateAttribute):
1185         (WebCore::setJSTestObjConditionalAttr1):
1186         (WebCore::setJSTestObjConditionalAttr2):
1187         (WebCore::setJSTestObjConditionalAttr3):
1188         (WebCore::setJSTestObjStrawberry):
1189         (WebCore::setJSTestObjId):
1190         (WebCore::setJSTestObjNullableLongSettableAttribute):
1191         (WebCore::setJSTestObjNullableStringValue):
1192         (WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgs):
1193         (WebCore::jsTestObjPrototypeFunctionLongMethodWithArgs):
1194         (WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs):
1195         (WebCore::jsTestObjPrototypeFunctionMethodReturningSequence):
1196         (WebCore::jsTestObjPrototypeFunctionMethodWithOptionalArg):
1197         (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndOptionalArg):
1198         (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgs):
1199         (WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackArg):
1200         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod2):
1201         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod4):
1202         (WebCore::jsTestObjConstructorFunctionClassMethodWithOptional):
1203         (WebCore::jsTestObjConstructorFunctionOverloadedMethod11):
1204         (WebCore::jsTestObjPrototypeFunctionStrictFunction):
1205         * bindings/scripts/test/JS/JSTestTypedefs.cpp:
1206         (WebCore::setJSTestTypedefsUnsignedLongLongAttr):
1207         (WebCore::setJSTestTypedefsAttrWithGetterException):
1208         (WebCore::setJSTestTypedefsAttrWithSetterException):
1209
1210 2013-03-20  Hayato Ito  <hayato@chromium.org>
1211
1212         Gesture events should include AllowShadowContent in hit testing
1213         https://bugs.webkit.org/show_bug.cgi?id=112073
1214
1215         Reviewed by Dimitri Glazkov.
1216
1217         Support gesture events for Shadow DOM.
1218         Now 'gesturetap' events can be correctly dispatched in shadow trees.
1219
1220         Test: fast/dom/shadow/gesture-tap.html
1221
1222         * page/EventHandler.cpp:
1223         (WebCore::EventHandler::handleGestureEvent):
1224
1225 2013-03-20  Adam Barth  <abarth@webkit.org>
1226
1227         HTMLNames should construct strings at compile time
1228         https://bugs.webkit.org/show_bug.cgi?id=112831
1229
1230         Reviewed by Darin Adler.
1231
1232         This patch teaches make_names how to construct strings at compile time,
1233         eliminating a large number of startup mallocs.
1234
1235         * WebCore.gyp/WebCore.gyp:
1236         * WebCore.gyp/scripts/action_makenames.py:
1237             - Teach the Chromium build how to deal with Perl modules.
1238         * bindings/scripts/StaticString.pm: Added.
1239             - A Perl module for constructing static strings.
1240         (GenerateStrings):
1241         (GenerateValidateStrings):
1242         * dom/QualifiedName.cpp:
1243         (WebCore::createQualifiedName):
1244             - createQualifiedName now takes an already-constructed StringImpl
1245               object.
1246         * dom/QualifiedName.h:
1247         * dom/make_names.pl:
1248         (valueForName):
1249         (namesToStrings):
1250         (printNamesCppFile):
1251         (printDefinitions):
1252             - Teach make_names how to use StaticString.pm.
1253
1254 2013-03-20  Matt Falkenhagen  <falken@chromium.org>
1255
1256         Remove unnecessary calls to Node::disabled for <meter>, <progress>, and <output>
1257         https://bugs.webkit.org/show_bug.cgi?id=112767
1258
1259         Reviewed by Kent Tamura.
1260
1261         This is part of a refactoring to move Node::disabled to HTMLFormControlElement::disabled.
1262         The concept of disabled is just a form control element one.
1263
1264         HTMLMeterElement, HTMLOutputElement, and HTMLProgressElement never
1265         have disabled() return true, so we can remove the call. In addition,
1266         HTMLMeterElement and HTMLProgressElement no longer inherit from
1267         HTMLFormControlElement, so we don't need to override supportsFocus.
1268
1269         No new tests because no behavior change.
1270
1271         * html/HTMLMeterElement.cpp:
1272         * html/HTMLMeterElement.h:
1273         * html/HTMLOutputElement.cpp:
1274         (WebCore::HTMLOutputElement::supportsFocus):
1275         * html/HTMLProgressElement.cpp:
1276         * html/HTMLProgressElement.h:
1277
1278 2013-03-20  Jaehun Lim  <ljaehun.lim@samsung.com>
1279
1280         [css3-text] Parsing -webkit-each-line value for text-indent from css3-text
1281         https://bugs.webkit.org/show_bug.cgi?id=109021
1282  
1283         Reviewed by Julien Chaffraix.
1284  
1285         "each-line" is added for text-indent in CSS3.
1286         http://dev.w3.org/csswg/css3-text/#each-line
1287  
1288         This patch is the parsing part to support each-line value for text-indent.
1289  
1290         "each-line" means "Indentation affects the first line of the block
1291         container as well as each line after a forced line break, but does
1292         not affect lines after a soft wrap break."
1293  
1294         It's prefixed and guarded by CSS3_TEXT flag.
1295  
1296         Tests: fast/css3-text/css3-text-indent/getComputedStyle/getComputedStyle-text-indent-inherited.html
1297                fast/css3-text/css3-text-indent/getComputedStyle/getComputedStyle-text-indent.html
1298
1299         * css/CSSComputedStyleDeclaration.cpp:
1300         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1301             style.getPropertyCSSValue(text-indent) returns CSSPrimitiveValue when text-indent has only <length>
1302             or <percentage> value, but returns CSSValueList when text-indent also has -webkit-each-line.
1303
1304         * css/CSSParser.cpp:
1305         (WebCore::isSimpleLengthPropertyID): Removed CSSPropertyTextIndent case.
1306         (WebCore::CSSParser::parseValue):
1307         (WebCore::CSSParser::parseTextIndent): Added.
1308         * css/CSSParser.h:
1309             Parsed <length> or <percentage> with -webkit-each-line for text-indent.
1310
1311         * css/CSSValueKeywords.in: Added new -webkit-each-line keyword.
1312         * css/StyleBuilder.cpp:
1313         (ApplyPropertyTextIndent): Added.
1314         (WebCore::ApplyPropertyTextIndent::applyInheritValue):
1315         (WebCore::ApplyPropertyTextIndent::applyInitialValue):
1316         (WebCore::ApplyPropertyTextIndent::applyValue):
1317         (WebCore::ApplyPropertyTextIndent::createHandler):
1318         (WebCore::StyleBuilder::StyleBuilder):
1319             Added codes to handle applying text-indent offset and -webkit-each-line option to our style.
1320
1321         * rendering/style/RenderStyle.cpp:
1322         (WebCore::RenderStyle::diff):
1323         * rendering/style/RenderStyle.h:
1324         * rendering/style/RenderStyleConstants.h: Added enum TextIndentLine.
1325         * rendering/style/StyleRareInheritedData.cpp:
1326         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
1327         (WebCore::StyleRareInheritedData::operator==):
1328         * rendering/style/StyleRareInheritedData.h: Added m_textIndentLine.
1329         (StyleRareInheritedData):
1330             Added the usual getter / setter / initial methods for m_textIndentLine.
1331
1332 2013-03-20  Tien-Ren Chen  <trchen@chromium.org>
1333
1334         Correct coordinated scrolling for RTL iframe and overflow:scroll
1335         https://bugs.webkit.org/show_bug.cgi?id=112088
1336
1337         Reviewed by James Robinson.
1338
1339         This patch adds appropriate offset in ScrollingCoordinatorChromium to
1340         adjust impl-side scroll position to the range [0, maxPos - minPos].
1341
1342         This also corrects RenderLayer to return correct scroll position for RTL,
1343         explained below:
1344
1345         There are 2 commonly used scroll offset coordinate systems in WebCore.
1346
1347         1. The scroll offset is the amount that needs to be translated when painting
1348            child elements in a RenderBox. The value can be negative when there is
1349            negative overflow (for RTL). The range will be within
1350            [overflow_top_left_corner, overflow_bottom_right_corner - client_size].
1351            This system is mainly used for painting and layer positioning.
1352            
1353         2. The scroll offset will be always non-negative, and the range will be within
1354            [0, content_size - client_size]. This system is mainly used for scrollbars.
1355
1356         scrollOrigin is defined to convert between the two systems. scrollOrigin is always
1357         non-negative, and equivalent to -overflow_top_left_corner.
1358
1359         The first system is used for ScrollableArea::scrollPosition/minimumScrollPosition/
1360         maximumScrollPosition function family. So is it implemented in ScrollView/Frameview.
1361         RenderLayer errorneously implemented scrollPosition in the second system,
1362         and worse, returned minimumScrollPosition/maximumScrollPosition were totally non-sense.
1363         This patch corrects RenderLayer to use the first coordinate system.
1364
1365         Test: compositing/rtl/rtl-overflow-scrolling.html
1366               ScrollingCoordinatorChromiumTest.rtlIframe
1367
1368         * page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:
1369         (WebCore::ScrollingCoordinatorChromium::scrollableAreaScrollLayerDidChange):
1370         * rendering/RenderLayer.cpp:
1371         (WebCore::RenderLayer::scrollPosition):
1372         (WebCore::RenderLayer::minimumScrollPosition):
1373         (WebCore::RenderLayer::maximumScrollPosition):
1374         * rendering/RenderLayerBacking.cpp:
1375         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
1376
1377 2013-03-20  Jessie Berlin  <jberlin@apple.com>
1378
1379         REGRESSION(r145592): AutodrainedPool.h. RunLoopTimer.h, SchedulePair.h are being copied into
1380         the wrong location
1381         https://bugs.webkit.org/show_bug.cgi?id=112833
1382
1383         Reviewed by Darin Adler.
1384
1385         Fix an incorrect include path.
1386
1387         * loader/DocumentLoader.h:
1388         RunLoopTimer.h lives in wtf as of r145592.
1389
1390 2013-03-20  Kent Tamura  <tkent@chromium.org>
1391
1392         Crash in Document::setFocusedNode if the frame of new focused node is detached in 'change' event handler
1393         https://bugs.webkit.org/show_bug.cgi?id=112653
1394
1395         Reviewed by Dimitri Glazkov.
1396
1397         Test: fast/frames/detach-frame-during-focus.html
1398
1399         * page/FocusController.cpp:
1400         (WebCore::FocusController::setFocusedNode):
1401         A oldDocument->setFocusedNode call might dispatch a 'change' event for
1402         an old focused node, and an event handler code might detach the
1403         newFocusedFrame. So we should check it. Without the check, the following
1404         newDocument->setFocusedNode call would crash because of null
1405         Frame::page().
1406
1407 2013-03-20  Ryosuke Niwa  <rniwa@webkit.org>
1408
1409         Assertion in LegacyWebArchive::create() in editing tests
1410         https://bugs.webkit.org/show_bug.cgi?id=112642
1411
1412         Reviewed by Simon Fraser.
1413
1414         Address Simon's review comment. Don't convert String to MIMEType just to convert it back to String.
1415
1416         * platform/mac/PasteboardMac.mm:
1417         (WebCore::fragmentFromWebArchive):
1418
1419 2013-03-20  Zan Dobersek  <zdobersek@igalia.com>
1420
1421         [GTK] Build ANGLE sources into a separate library from libWebCore.la
1422         https://bugs.webkit.org/show_bug.cgi?id=112778
1423
1424         Reviewed by Martin Robinson.
1425
1426         No new tests - no change in functionality.
1427
1428         * GNUmakefile.list.am: Remove the ANGLE sources listing, it's now placed in the ANGLE-specific GNUmakefile.am.
1429
1430 2011-03-20  Ryosuke Niwa  <rniwa@webkit.org>
1431
1432         Assertion in LegacyWebArchive::create() in editing tests
1433         https://bugs.webkit.org/show_bug.cgi?id=112642
1434
1435         Reviewed by Enrica Casucci.
1436
1437         It's possible for clipboard to be overriden between the time we retrieve clipboard types and the time
1438         we actually retrieve the Web archive buffer. Add a null check to take this into account.
1439
1440         Also extracted fragmentFromWebArchive for clarity.
1441
1442         * platform/mac/PasteboardMac.mm:
1443         (WebCore::fragmentFromWebArchive): Extracted.
1444         (WebCore::Pasteboard::documentFragment):
1445
1446 2013-03-20  Chris Fleizach  <cfleizach@apple.com>
1447
1448         WebSpeech: Crash in WebCore::PlatformSpeechSynthesisUtterance::client / WebCore::SpeechSynthesis::didResumeSpeaking
1449         https://bugs.webkit.org/show_bug.cgi?id=112728
1450
1451         Reviewed by Tim Horton.
1452
1453         When cancel() is called, there was a delay in the platform returning and saying speech was finished, which caused
1454         the m_currentSpeechUtterance variable to get deallocated but not cleared. 
1455
1456         This patch fixes up the management of the utterances in SpeechSynthesis and the Mac platform given that
1457         we can't rely on the platform to return immediately on a stop speaking job.
1458
1459         Test: platform/mac/fast/speechsynthesis/speech-synthesis-cancel-crash.html
1460
1461         * Modules/speech/SpeechSynthesis.cpp:
1462         (WebCore::SpeechSynthesis::cancel):
1463         (WebCore::SpeechSynthesis::resume):
1464         * platform/mac/PlatformSpeechSynthesizerMac.mm:
1465         (-[WebSpeechSynthesisWrapper cancel]):
1466         (-[WebSpeechSynthesisWrapper speechSynthesizer:didFinishSpeaking:]):
1467         (-[WebSpeechSynthesisWrapper speechSynthesizer:willSpeakWord:ofString:]):
1468
1469 2013-03-20  Eric Carlson  <eric.carlson@apple.com>
1470
1471         Unreviewed, fix Mac release build.
1472
1473         * page/CaptionUserPreferencesMac.mm:
1474         (WebCore::languageIdentifier):
1475
1476 2013-03-20  Eric Carlson  <eric.carlson@apple.com>
1477
1478         Allow ports specific text track menu
1479         https://bugs.webkit.org/show_bug.cgi?id=112800
1480
1481         Reviewed by Dean Jackson.
1482
1483         No new tests, existing tests updated for changes.
1484
1485         * English.lproj/Localizable.strings: Add localizable strings for text track names.
1486
1487         * html/HTMLMediaElement.cpp:
1488         (WebCore::HTMLMediaElement::HTMLMediaElement): userPrefersCaptions -> shouldShowCaptions.
1489         (WebCore::HTMLMediaElement::setSelectedTextTrack): toggleTrackAtIndex -> setSelectedTextTrack.
1490         (WebCore::HTMLMediaElement::userPrefersCaptions): userPrefersCaptions -> shouldShowCaptions.
1491         (WebCore::HTMLMediaElement::userIsInterestedInThisTrackKind): Get preferences from CaptionUserPreferences
1492             instead of from Settings.
1493         (WebCore::HTMLMediaElement::setSelectedTextTrack): Renamed from toggleTrackAtIndex. Now takes
1494             a TextTrack* instead of an int.
1495         (WebCore::HTMLMediaElement::captionPreferencesChanged): Don't force a recalculation unless 
1496             captions are enabled/disabled to avoid unnecessary thrash.
1497         * html/HTMLMediaElement.h:
1498
1499         * html/shadow/MediaControlElements.cpp:
1500         (WebCore::MediaControlClosedCaptionsTrackListElement::defaultEventHandler): Use the menu to track
1501             map instead of just the track index.
1502         (WebCore::MediaControlClosedCaptionsTrackListElement::updateDisplay): Build and configure the
1503             menu from the menu to track map.
1504         (WebCore::MediaControlClosedCaptionsTrackListElement::rebuildTrackListMenu): Start with a list
1505             of tracks already sorted according to platform specific rules. Build a menu to track map
1506             so tracks are retained while the menu is visible.
1507         * html/shadow/MediaControlElements.h:
1508
1509         * html/shadow/MediaControls.cpp:
1510         (WebCore::MediaControls::textTrackPreferencesChanged): Call closedCaptionTracksChanged so the
1511             track menu will be rebuilt before it is shown again.
1512
1513         * html/track/InbandTextTrack.cpp:
1514         (WebCore::InbandTextTrack::containsOnlyForcedSubtitles): New, passthrough to the private track.
1515         (WebCore::InbandTextTrack::isMainProgramContent): Ditto.
1516         (WebCore::InbandTextTrack::isEasyToRead): Ditto.
1517         * html/track/InbandTextTrack.h:
1518         * html/track/TextTrack.h:
1519
1520         * html/track/TextTrackList.cpp:
1521         (WebCore::TextTrackList::contains): New.
1522         * html/track/TextTrackList.h:
1523
1524         * page/CaptionUserPreferences.cpp:
1525         (WebCore::CaptionUserPreferences::CaptionUserPreferences): Pull in from .h ditto.
1526         (WebCore::CaptionUserPreferences::~CaptionUserPreferences): Ditto.
1527         (WebCore::CaptionUserPreferences::shouldShowCaptions): Renamed from userPrefersCaptions. 
1528         (WebCore::CaptionUserPreferences::setShouldShowCaptions): New.
1529         (WebCore::CaptionUserPreferences::userPrefersCaptions): Ditto.
1530         (WebCore::CaptionUserPreferences::setUserPrefersCaptions): Ditto.
1531         (WebCore::CaptionUserPreferences::userPrefersSubtitles): Ditto.
1532         (WebCore::CaptionUserPreferences::setUserPrefersSubtitles): Ditto.
1533         (WebCore::CaptionUserPreferences::userPrefersTextDescriptions): Ditto.
1534         (WebCore::CaptionUserPreferences::setUserPrefersTextDescriptions): Ditto.
1535         (WebCore::CaptionUserPreferences::displayNameForTrack): Ditto.
1536         (WebCore::CaptionUserPreferences::sortedTrackListForMenu): Ditto.
1537         * page/CaptionUserPreferences.h:
1538
1539         * page/CaptionUserPreferencesMac.h:
1540         * page/CaptionUserPreferencesMac.mm:
1541         (WebCore::CaptionUserPreferencesMac::shouldShowCaptions): Renamed from userPrefersCaptions. 
1542         (WebCore::CaptionUserPreferencesMac::userPrefersCaptions): New.
1543         (WebCore::CaptionUserPreferences::userPrefersSubtitles): Ditto.
1544         (WebCore::trackDisplayName): Update logic used to build track title.
1545         (WebCore::CaptionUserPreferencesMac::displayNameForTrack): Call trackDisplayName.
1546         (WebCore::textTrackCompare): Text track title sort comparison function.
1547         (WebCore::CaptionUserPreferencesMac::sortedTrackListForMenu): New. Sort the list of tracks
1548             according to title, language, and user preferences.
1549
1550         * platform/Language.cpp:
1551         (WebCore::displayNameForLanguageLocale): Don't leak the CFLocale.
1552         
1553         * platform/LocalizedStrings.cpp:
1554         (WebCore::textTrackCountryAndLanguageMenuItemText): New.
1555         (WebCore::textTrackLanguageMenuItemText): Ditto.
1556         (WebCore::closedCaptionTrackMenuItemText): Ditto.
1557         (WebCore::sdhTrackMenuItemText): Ditto.
1558         (WebCore::easyReaderTrackMenuItemText): Ditto.
1559         * platform/LocalizedStrings.h:
1560
1561         * platform/graphics/InbandTextTrackPrivate.h:
1562         * platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.h:
1563         * platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.mm:
1564         (WebCore::InbandTextTrackPrivateAVFObjC::containsOnlyForcedSubtitles): New, return AVFoundation property.
1565         (WebCore::InbandTextTrackPrivateAVFObjC::isMainProgramContent): Ditto.
1566         (WebCore::InbandTextTrackPrivateAVFObjC::isEasyToRead): Ditto.
1567
1568         * testing/InternalSettings.cpp:
1569         (WebCore::InternalSettings::setShouldDisplayTrackKind): Set setting via CaptionUserPreferences
1570             instead of from Settings.
1571         (WebCore::InternalSettings::shouldDisplayTrackKind): Get setting from CaptionUserPreferences
1572             instead of from Settings.
1573
1574 2013-03-20  Zan Dobersek  <zdobersek@igalia.com>
1575
1576         [GTK] Clean up TemporaryLinkStubs.cpp
1577         https://bugs.webkit.org/show_bug.cgi?id=112820
1578
1579         Reviewed by Philippe Normand.
1580
1581         Clean up the TemporaryLinkStubs.cpp file, removing unnecessary includes and prettifying the code.
1582
1583         No new tests - no new functionality.
1584
1585         * platform/gtk/TemporaryLinkStubs.cpp:
1586         (WebCore):
1587         (WebCore::getSupportedKeySizes):
1588         (WebCore::signedPublicKeyAndChallengeString):
1589         (WebCore::userIdleTime):
1590
1591 2013-03-20  Yufeng Shen  <miletus@chromium.org>
1592
1593         Remove PlatformEvent::GestureDoubleTap
1594         https://bugs.webkit.org/show_bug.cgi?id=93045
1595
1596         Reviewed by Antonio Gomes.
1597
1598         PlatformEvent::GestureDoubleTap is not currently
1599         used in WebCore and replaced by GestureTap with
1600         tap count 2, so remove it.
1601
1602         Test: We are removing something that is not used, so
1603         no new test. All existing tests pass.
1604
1605         * dom/GestureEvent.cpp:
1606         (WebCore::GestureEvent::create):
1607         * page/EventHandler.cpp:
1608         (WebCore::EventHandler::handleGestureEvent):
1609         * platform/PlatformEvent.h:
1610         * platform/chromium/PopupContainer.cpp:
1611         (WebCore::PopupContainer::handleGestureEvent):
1612
1613 2013-03-20  Ojan Vafai  <ojan@chromium.org>
1614
1615         Move repaint methods from RenderObject to RenderBox
1616         https://bugs.webkit.org/show_bug.cgi?id=112773
1617
1618         Reviewed by Julien Chaffraix.
1619
1620         repaintOverhangingFloats and repaintDuringLayoutIfMoved are only ever called
1621         on RenderBoxes, so don't need to be on RenderObject. This also lets us
1622         devirtualize repaintDuringLayoutIfMoved.
1623
1624         * rendering/RenderBox.h:
1625         (WebCore::RenderBox::repaintOverhangingFloats):
1626         * rendering/RenderObject.cpp:
1627         * rendering/RenderObject.h:
1628
1629 2013-03-20  Christian Biesinger  <cbiesinger@chromium.org>
1630
1631         Add a feature observer for RenderDeprecatedFlexibleBox
1632         https://bugs.webkit.org/show_bug.cgi?id=112740
1633
1634         Reviewed by Tony Chang.
1635
1636         No new tests - only adding measurements.
1637
1638         * page/FeatureObserver.h:
1639         Add constants for RenderDeprecatedFlexibleBox, and add separate
1640         constants for its use in the UI and in extensions.
1641         * rendering/RenderDeprecatedFlexibleBox.cpp:
1642         (WebCore::RenderDeprecatedFlexibleBox::RenderDeprecatedFlexibleBox):
1643         Call FeatureObserver. Check the document()->url() to see which
1644         constant to use.
1645
1646 2013-03-20  Tim Horton  <timothy_horton@apple.com>
1647
1648         Autosize should use documentRect height instead of scrollHeight
1649         https://bugs.webkit.org/show_bug.cgi?id=112770
1650
1651         Reviewed by David Levin.
1652
1653         Autosizing fails to compute the correct height if the root element is very
1654         small but the document has significant overflow.
1655
1656         No new tests; autosizing is not currently exposed in a testable way on Mac.
1657
1658         * page/FrameView.cpp:
1659         (WebCore::FrameView::autoSizeIfEnabled):
1660
1661 2013-03-20  Julien Chaffraix  <jchaffraix@webkit.org>
1662
1663         [CSS Grid Layout] Improper repainting when grid item change their position
1664         https://bugs.webkit.org/show_bug.cgi?id=112749
1665
1666         Reviewed by Ojan Vafai.
1667
1668         Tests: fast/css-grid-layout/grid-element-change-columns-repaint.html
1669                fast/css-grid-layout/grid-element-change-rows-repaint.html
1670                fast/css-grid-layout/grid-item-change-column-repaint.html
1671                fast/css-grid-layout/grid-item-change-row-repaint.html
1672
1673         * rendering/RenderGrid.cpp:
1674         (WebCore::RenderGrid::layoutGridItems):
1675         Added a call to repaintDuringLayoutIfMoved to repaint moving grid items.
1676
1677 2013-03-20  Arvid Nilsson  <anilsson@rim.com>
1678
1679         [BlackBerry] compositing/iframes/scroll-fixed-transformed-element.html fails in manual testing
1680         https://bugs.webkit.org/show_bug.cgi?id=112806
1681
1682         Reviewed by Antonio Gomes.
1683
1684         PR 283363
1685
1686         When scrolling the iframe, the position: fixed element is correctly
1687         positioned, that is, as if it was fixed with respect to the iframe's
1688         viewport. When scrolling the main frame however, the fixed pos element
1689         was positioned as if it was fixed with respect to the main frame's
1690         viewport.
1691
1692         Fixed by falling back to using the WebKit-thread scroll position for
1693         fixed positioning in LayerRenderer, if the override doesn't have a
1694         position currently set, i.e. if we are not currently scrolling the
1695         iframe.
1696
1697         The effects of the bug are only visual, i.e. not detectable by DRT.
1698
1699         Manually testable using compositing/iframes/scroll-fixed-transformed-element.html
1700
1701         * platform/graphics/blackberry/LayerRenderer.cpp:
1702         (WebCore::LayerRenderer::updateLayersRecursive):
1703
1704 2013-03-20  Michael Pruett  <michael@68k.org>
1705
1706         [V8] Simplify implementation of EnforceRange conversions
1707         https://bugs.webkit.org/show_bug.cgi?id=112758
1708
1709         Reviewed by Kentaro Hara.
1710
1711         Factor out EnforceRange conversion into a helper function.
1712         Simplify calculation for truncation.
1713
1714         Tests: fast/js/webidl-type-mapping.html
1715                storage/indexeddb/cursor-advance.html
1716                storage/indexeddb/cursor-advance-workers.html
1717                storage/indexeddb/intversion-bad-parameters.html
1718
1719         * bindings/v8/V8Binding.cpp:
1720         (WebCore::enforceRange):
1721         (WebCore):
1722         (WebCore::toInt32):
1723         (WebCore::toUInt32):
1724         (WebCore::toInt64):
1725         (WebCore::toUInt64):
1726
1727 2013-03-20  Harald Alvestrand  <hta@google.com>
1728
1729         Remove Local/Remote and RTCStatsElement from WebRTCStats API
1730         https://bugs.webkit.org/show_bug.cgi?id=112678
1731
1732         Reviewed by Adam Barth.
1733
1734         Pure removal, remaining functionality covered by existing test.
1735
1736         * Modules/mediastream/RTCStatsReport.cpp:
1737         * Modules/mediastream/RTCStatsReport.h:
1738         (RTCStatsReport):
1739         * Modules/mediastream/RTCStatsResponse.cpp:
1740         * Modules/mediastream/RTCStatsResponse.h:
1741         (RTCStatsResponse):
1742         * platform/chromium/support/WebRTCStatsResponse.cpp:
1743         * platform/mediastream/RTCStatsResponseBase.h:
1744         (RTCStatsResponseBase):
1745
1746 2013-03-20  Xingnan Wang  <xingnan.wang@intel.com>
1747
1748         ASSERTION FAILED: !m_renderingAutomaticPullNodes.size()
1749         https://bugs.webkit.org/show_bug.cgi?id=112777
1750
1751         Reviewed by Chris Rogers.
1752
1753         * Modules/webaudio/AudioContext.cpp:
1754         (WebCore::AudioContext::~AudioContext):
1755
1756 2013-03-20  Rouslan Solomakhin  <rouslan@chromium.org>
1757
1758         Copy-paste should not spellcheck when continuous spellcheck is turned off
1759         https://bugs.webkit.org/show_bug.cgi?id=112464
1760
1761         Reviewed by Ryosuke Niwa.
1762
1763         Test: editing/spelling/spellcheck-paste-continuous-disabled.html
1764
1765         * WebCore.exp.in: Export WebCore::Editor::isContinuousSpellCheckingEnabled() and WebCore::Editor::toggleContinuousSpellChecking() for use by internals.
1766         * WebCore.order: Export WebCore::Editor::isContinuousSpellCheckingEnabled() and WebCore::Editor::toggleContinuousSpellChecking() for use by internals.
1767         * editing/Editor.cpp:
1768         (WebCore::Editor::replaceSelectionWithFragment): Do not spellcheck if continuous spellcheck is turned off.
1769         * testing/Internals.cpp:
1770         (WebCore::Internals::resetToConsistentState): Leave continuous spellcheck turned on after a test.
1771         (WebCore::Internals::setContinuousSpellCheckingEnabled): Let tests enable and disable continuous spellcheck.
1772         (WebCore):
1773         * testing/Internals.h: Let tests enable and disable continuous spellcheck.
1774         (Internals):
1775         * testing/Internals.idl: Let tests enable and disable continuous spellcheck.
1776
1777 2013-03-20  Aaron Colwell  <acolwell@chromium.org>
1778
1779         Add support for MediaSource::isTypeSupported()
1780         https://bugs.webkit.org/show_bug.cgi?id=112301
1781
1782         Reviewed by Darin Fisher.
1783
1784         Test: http/tests/media/media-source/video-media-source-is-type-supported.html
1785
1786         * Modules/mediasource/MediaSource.cpp:
1787         (WebCore::MediaSource::addSourceBuffer): Added isTypeSupported() call to verify parameters
1788                                                  pass into this method.
1789         (WebCore::MediaSource::isTypeSupported):
1790         (WebCore):
1791         * Modules/mediasource/MediaSource.h:
1792         (MediaSource):
1793         * Modules/mediasource/MediaSource.idl: Added isTypeSupported().
1794         * platform/MIMETypeRegistry.h:
1795         (MIMETypeRegistry): Added isSupportedMediaSourceMIMEType().
1796         * platform/chromium/MIMETypeRegistryChromium.cpp:
1797         (WebCore):
1798         (WebCore::MIMETypeRegistry::isSupportedMediaSourceMIMEType): Implemented in terms of WebMimeRegistry::isSupportedMediaSourceMIMEType.
1799
1800 2013-03-20  Brent Fulgham  <bfulgham@webkit.org>
1801
1802         [WinCairo] Unreviewed VS2010 build correction.
1803
1804         * WebCore.vcxproj/WebCore.vcxproj: Enable build of NetworkStorageSessionStub.cpp
1805         for WinCairo port.
1806         * WebCore.vcxproj/WebCore.vcxproj.filters: Correct build type of
1807         CookieJarCurl from 'custom' to 'C++ source file'
1808
1809 2013-03-20  Marja Hölttä  <marja@chromium.org>
1810
1811         [V8] Rename DOMDataStore::isMainWorldObject
1812         https://bugs.webkit.org/show_bug.cgi?id=112817
1813
1814         Reviewed by Jochen Eisinger.
1815
1816         No new tests (no changes in functionality).
1817
1818         * bindings/v8/DOMDataStore.h:
1819         (WebCore::DOMDataStore::getWrapperFast):
1820         (WebCore::DOMDataStore::getWrapper):
1821         (WebCore::DOMDataStore::getWrapperForMainWorld):
1822         (WebCore::DOMDataStore::setWrapper):
1823         (WebCore::DOMDataStore::canExistInWorker):
1824
1825 2013-03-20  Ilya Tikhonovsky  <loislo@chromium.org>
1826
1827         Web Inspector: Flame Chart. Provide Overview pane for better user expirience.
1828         https://bugs.webkit.org/show_bug.cgi?id=112496
1829
1830         Reviewed by Yury Semikhatsky.
1831
1832         This patch implements basic part of Overview Pane in FlameChart.
1833         The idea of the patch is to move everything into chart-container element.
1834         And put OverviewGrid into new overview-container element.
1835
1836         Drive by change: fix the layout of the flame chart elements.
1837         Drive by change: fix the drag window & drag resizer mechanics
1838         for the case when the parent element has zero offsetLeft.
1839
1840         * inspector/front-end/FlameChart.js:
1841         (WebInspector.FlameChart):
1842         (WebInspector.FlameChart.OverviewCalculator):
1843         (WebInspector.FlameChart.OverviewCalculator.prototype._updateBoundaries):
1844         (WebInspector.FlameChart.OverviewCalculator.prototype.computePosition):
1845         (WebInspector.FlameChart.OverviewCalculator.prototype.formatTime):
1846         (WebInspector.FlameChart.OverviewCalculator.prototype.maximumBoundary):
1847         (WebInspector.FlameChart.OverviewCalculator.prototype.minimumBoundary):
1848         (WebInspector.FlameChart.OverviewCalculator.prototype.boundarySpan):
1849         (WebInspector.FlameChart.prototype._onWindowChanged):
1850         (WebInspector.FlameChart.prototype._adjustXScale):
1851         (WebInspector.FlameChart.prototype.update):
1852         * inspector/front-end/OverviewGrid.js:
1853         (WebInspector.OverviewGrid.Window):
1854         (WebInspector.OverviewGrid.Window.prototype._resizerElementStartDragging):
1855         (WebInspector.OverviewGrid.Window.prototype._leftResizeElementDragging):
1856         (WebInspector.OverviewGrid.Window.prototype._rightResizeElementDragging):
1857         (WebInspector.OverviewGrid.Window.prototype._startWindowSelectorDragging):
1858         (WebInspector.OverviewGrid.Window.prototype._windowSelectorDragging):
1859         (WebInspector.OverviewGrid.Window.prototype._endWindowSelectorDragging):
1860         (WebInspector.OverviewGrid.Window.prototype._setWindowPosition):
1861         (WebInspector.OverviewGrid.Window.prototype._onMouseWheel):
1862         (WebInspector.OverviewGrid.WindowSelector):
1863         * inspector/front-end/TimelineOverviewPane.js:
1864         * inspector/front-end/flameChart.css:
1865         (.chart-container .item-anchor):
1866         (.overview-container):
1867         (.chart-container):
1868         (#flame-chart-overview-grid .resources-dividers-label-bar):
1869         * inspector/front-end/inspectorCommon.css:
1870         (.resources-divider-label):
1871
1872 2013-03-20  Sergey Ryazanov  <serya@chromium.org>
1873
1874         Web Inspector: Plumbing CSS warnings
1875         https://bugs.webkit.org/show_bug.cgi?id=111334
1876
1877         Reviewed by Pavel Feldman.
1878
1879         Adding a framework for plumbing CSS warnings from CSSParser/grammar to the Inspector console.
1880
1881         * css/CSSParser.cpp:
1882         (WebCore::CSSParser::CSSParser):
1883         (WebCore::CSSParser::parseSheet):
1884         (WebCore::CSSParser::syntaxError):
1885         (WebCore):
1886         (WebCore::CSSParser::isLoggingErrors):
1887         (WebCore::CSSParser::logError):
1888         * css/CSSParser.h:
1889         (CSSParser):
1890         (CSSParser::Location):
1891         (WebCore):
1892         * css/StyleSheetContents.cpp:
1893         (WebCore::StyleSheetContents::parseAuthorStyleSheet):
1894         (WebCore::StyleSheetContents::parseString):
1895         (WebCore::StyleSheetContents::parseStringAtLine):
1896         * css/StyleSheetContents.h:
1897         (StyleSheetContents):
1898         * dom/StyleElement.cpp:
1899         (WebCore::StyleElement::createSheet):
1900         * page/PageConsole.cpp:
1901         (WebCore::PageConsole::addMessage):
1902
1903 2013-03-20  Justin Novosad  <junov@google.com>
1904
1905         [Chromium] Code cleanup: removing support for non-deferred 2d canvas rendering
1906         https://bugs.webkit.org/show_bug.cgi?id=112605
1907
1908         Reviewed by James Robinson.
1909
1910         Deleting all the code that was used for propagating and supporting
1911         the Chromium setting for disabling deferred 2d canvas rendering.
1912
1913         No new tests: Affected code paths covered by existing tests.
1914
1915         * html/HTMLCanvasElement.cpp:
1916         (WebCore::HTMLCanvasElement::createImageBuffer):
1917         * html/HTMLCanvasElement.h:
1918         * page/Settings.in:
1919         * platform/graphics/ImageBuffer.h:
1920         (WebCore::ImageBuffer::create):
1921         (ImageBuffer):
1922         * platform/graphics/blackberry/ImageBufferBlackBerry.cpp:
1923         (WebCore::ImageBuffer::ImageBuffer):
1924         * platform/graphics/cairo/ImageBufferCairo.cpp:
1925         (WebCore::ImageBuffer::ImageBuffer):
1926         * platform/graphics/cg/ImageBufferCG.cpp:
1927         (WebCore::ImageBuffer::ImageBuffer):
1928         * platform/graphics/chromium/Canvas2DLayerBridge.cpp:
1929         (WebCore::Canvas2DLayerBridge::Canvas2DLayerBridge):
1930         (WebCore::Canvas2DLayerBridge::~Canvas2DLayerBridge):
1931         (WebCore::Canvas2DLayerBridge::prepareForDraw):
1932         (WebCore::Canvas2DLayerBridge::storageAllocatedForRecordingChanged):
1933         (WebCore::Canvas2DLayerBridge::storageAllocatedForRecording):
1934         (WebCore::Canvas2DLayerBridge::freeMemoryIfPossible):
1935         (WebCore::Canvas2DLayerBridge::flush):
1936         (WebCore::Canvas2DLayerBridge::skCanvas):
1937         (WebCore::Canvas2DLayerBridge::prepareTexture):
1938         (WebCore::Canvas2DLayerBridge::contextAcquired):
1939         * platform/graphics/chromium/Canvas2DLayerBridge.h:
1940         (WebCore::Canvas2DLayerBridge::create):
1941         (Canvas2DLayerBridge):
1942         * platform/graphics/qt/ImageBufferQt.cpp:
1943         (WebCore::ImageBuffer::ImageBuffer):
1944         * platform/graphics/skia/ImageBufferSkia.cpp:
1945         (WebCore::createAcceleratedCanvas):
1946         (WebCore::ImageBuffer::ImageBuffer):
1947         * platform/graphics/wince/ImageBufferWinCE.cpp:
1948         (WebCore::ImageBuffer::ImageBuffer):
1949         * platform/graphics/wx/ImageBufferWx.cpp:
1950         (WebCore::ImageBuffer::ImageBuffer):
1951
1952 2013-03-20  Mike West  <mkwst@chromium.org>
1953
1954         Drop full URLs from cross-domain access errors caused by 'document.domain' mismatches.
1955         https://bugs.webkit.org/show_bug.cgi?id=112813
1956
1957         Reviewed by Timothy Hatcher.
1958
1959         Following up on http://wkbug.com/112042, this patch brings 'document.domain'
1960         mismatch error messages into line with the newly origin-only default
1961         message. There will probably be two or three more patches in this series
1962         just to keep the rebaselines down to something managably reviewable.
1963
1964         * page/DOMWindow.cpp:
1965         (WebCore::DOMWindow::crossDomainAccessErrorMessage):
1966             Move the default message redefinition up out of the final 'return' so
1967             that 'document.domain' mismatch errors grab the new text.
1968
1969 2013-03-20  Ken Kania  <kkania@chromium.org>
1970
1971         Web Inspector: Add promptText param to Page.handleJavaScriptDialog
1972         https://bugs.webkit.org/show_bug.cgi?id=112706
1973
1974         Reviewed by Pavel Feldman.
1975
1976         * inspector/Inspector.json:
1977         * inspector/InspectorClient.h:
1978         (WebCore::InspectorClient::handleJavaScriptDialog):
1979         * inspector/InspectorPageAgent.cpp:
1980         (WebCore::InspectorPageAgent::handleJavaScriptDialog):
1981         * inspector/InspectorPageAgent.h:
1982
1983 2013-03-20  Andrey Lushnikov  <lushnikov@chromium.org>
1984
1985         Web Inspector: fix SourceFrame.js compilation warning
1986         https://bugs.webkit.org/show_bug.cgi?id=112804
1987
1988         Reviewed by Yury Semikhatsky.
1989
1990         No new tests: no change in behavior.
1991
1992         - Explicitly parse lineNumber from object property name.
1993         - Add type annotations to ensure addMessageToSource is monomorphic.
1994
1995         * inspector/front-end/SourceFrame.js:
1996         (WebInspector.SourceFrame.prototype.clearMessages):
1997
1998 2013-03-20  Dan Carney  <dcarney@google.com>
1999
2000         [v8] unsafe persistent access in V8LazyEventListener
2001         https://bugs.webkit.org/show_bug.cgi?id=112807
2002
2003         Reviewed by Kentaro Hara.
2004
2005         No new tests.
2006
2007         * bindings/v8/V8LazyEventListener.cpp:
2008         (WebCore::toObjectWrapper):
2009
2010 2013-03-20  Arvid Nilsson  <anilsson@rim.com>
2011
2012         [BlackBerry] Enable appropriate vertex attribute arrays in LayerRenderer::useProgram()
2013         https://bugs.webkit.org/show_bug.cgi?id=112757
2014
2015         Reviewed by Rob Buis.
2016
2017         PR 306465
2018
2019         Make the LayerRenderer and associated code more bullet-proof when it
2020         comes to enabling vertex attribute arrays, by enabling them already
2021         when LayerRenderer::useProgram() is called. This fixes a bug where the
2022         video hole punch rectangle wasn't punched when preceding rendering
2023         caused the vertex attribute array at index 0 to be disabled, such as
2024         when rendering the text selection overlay immediately before video.
2025
2026         A number of places where the position attribute index was hard-coded
2027         to 0 were also fixed. This causes no change in behavior, the position
2028         attribute was really at 0, but nonetheless that shouldn't be hardcoded.
2029
2030         The effects of this patch are only manually testable.
2031
2032         * platform/graphics/blackberry/LayerCompositingThread.cpp:
2033         (WebCore::LayerCompositingThread::drawTextures):
2034         (WebCore::LayerCompositingThread::drawSurface):
2035         * platform/graphics/blackberry/LayerRenderer.cpp:
2036         (WebCore::LayerRenderer::compositeBuffer):
2037         (WebCore::LayerRenderer::drawColor):
2038         (WebCore::LayerRenderer::drawDebugBorder):
2039         (WebCore::LayerRenderer::drawHolePunchRect):
2040         (WebCore::LayerRenderer::compositeLayersRecursive):
2041         (WebCore::LayerRenderer::useProgram):
2042
2043 2013-03-20  Andrey Lushnikov  <lushnikov@chromium.org>
2044
2045         Web Inspector: [CodeMirror] implement highlightRange method
2046         https://bugs.webkit.org/show_bug.cgi?id=112802
2047
2048         Reviewed by Vsevolod Vlasov.
2049
2050         - Implement highlightRange/removeHighlight methods in
2051         CodeMirrorTextEditor.
2052         - Update TextEditor interface closure annotations.
2053
2054         No new tests.
2055
2056         * inspector/front-end/CodeMirrorTextEditor.js:
2057         (WebInspector.CodeMirrorTextEditor.prototype.removeHighlight):
2058         (WebInspector.CodeMirrorTextEditor.prototype.highlightRange):
2059         * inspector/front-end/DefaultTextEditor.js:
2060         * inspector/front-end/TextEditor.js:
2061
2062 2013-03-20  Andrey Lushnikov  <lushnikov@chromium.org>
2063
2064         Web Inspector: [CodeMirror] show source location for codemirror text editor
2065         https://bugs.webkit.org/show_bug.cgi?id=112798
2066
2067         Reviewed by Vsevolod Vlasov.
2068
2069         No new tests.
2070
2071         - Implement CodeMirrorTextEditor.copyRange method
2072         - Fire "selectionChange" event for text editor delegate from
2073         CodeMirrorTextEditor.
2074
2075         * inspector/front-end/CodeMirrorTextEditor.js:
2076         (WebInspector.CodeMirrorTextEditor):
2077         (WebInspector.CodeMirrorTextEditor.prototype.copyRange):
2078         (WebInspector.CodeMirrorTextEditor.prototype._cursorActivity):
2079
2080 2013-03-20  Sheriff Bot  <webkit.review.bot@gmail.com>
2081
2082         Unreviewed, rolling out r146331.
2083         http://trac.webkit.org/changeset/146331
2084         https://bugs.webkit.org/show_bug.cgi?id=112795
2085
2086         Does not work as expected (Requested by carewolf on #webkit).
2087
2088         * platform/graphics/qt/FontQt.cpp:
2089         (WebCore::Font::initFormatForTextLayout):
2090
2091 2013-03-20  Eugene Klyuchnikov  <eustas@chromium.org>
2092
2093         Web Inspector: [Resources] Local Storage: "Add item" row height doesn't match underlying grid.
2094         https://bugs.webkit.org/show_bug.cgi?id=112433
2095
2096         Reviewed by Pavel Feldman.
2097
2098         Fixed cell height to correspond grid step.
2099
2100         * inspector/front-end/dataGrid.css:
2101         (.data-grid td): Fixed cell height to correspond grid step.
2102
2103 2013-03-20  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2104
2105         [Qt] New fast/text/word-space-with-kerning-3.html fails on Qt
2106         https://bugs.webkit.org/show_bug.cgi?id=112668
2107
2108         Reviewed by Jocelyn Turcotte.
2109
2110         Kerning is on by default in Qt. This means we need to disable it
2111         when WebCore does not request it.
2112
2113         * platform/graphics/qt/FontQt.cpp:
2114         (WebCore::Font::initFormatForTextLayout):
2115
2116 2013-03-20  Ilya Tikhonovsky  <loislo@chromium.org>
2117
2118         Web Inspector: OverviewGrid rename classes according to names of js classes.
2119         https://bugs.webkit.org/show_bug.cgi?id=112786
2120
2121         Reviewed by Yury Semikhatsky.
2122
2123         It is a part of meta bug 'extract OverviewGrid from TimelineOverviewPane'.
2124         As the last step it renames timeline-...... classes to overview-grid-...... classes
2125         and moves them to inspectorCommon.css
2126
2127         * inspector/front-end/OverviewGrid.js:
2128         (WebInspector.OverviewGrid):
2129         (WebInspector.OverviewGrid.Window):
2130         (WebInspector.OverviewGrid.Window.prototype._startWindowSelectorDragging):
2131         (WebInspector.OverviewGrid.WindowSelector):
2132         (WebInspector.OverviewGrid.WindowSelector.prototype._createSelectorElement):
2133         * inspector/front-end/inspectorCommon.css:
2134         (.overview-grid-window-selector):
2135         (.overview-grid-window):
2136         (.overview-grid-dividers-background):
2137         (.overview-grid-window-rulers):
2138         (.overview-grid-window-resizer):
2139         * inspector/front-end/timelinePanel.css:
2140         (.timeline-frame-overview .overview-grid-window):
2141         (.timeline-frame-overview .overview-grid-dividers-background):
2142
2143 2013-03-20  Dmitry Zvorygin  <zvorygin@chromium.org>
2144
2145         Web Inspector: Switch Drawer animation from JavaScript to CSS transitions.
2146         https://bugs.webkit.org/show_bug.cgi?id=112586
2147
2148         This is prerequisite to make Drawer work in overlay mode.
2149
2150         Reviewed by Vsevolod Vlasov.
2151
2152         * inspector/front-end/Drawer.js:
2153         (WebInspector.Drawer):
2154         (WebInspector.Drawer.prototype.show):
2155         (WebInspector.Drawer.prototype.hide.this.animationFinished):
2156         (WebInspector.Drawer.prototype.hide):
2157         (WebInspector.Drawer.prototype.immediatelyFinishAnimation):
2158         (WebInspector.Drawer.prototype._getAnimationStyles):
2159         * inspector/front-end/UIUtils.js:
2160         * inspector/front-end/inspector.css:
2161         (.animate-slow *):
2162         (.animate #main):
2163         (.animate #floating-status-bar-container):
2164         (.animate #drawer):
2165         (.animate #bottom-status-bar-container > *):
2166
2167 2013-03-19  Eugene Klyuchnikov  <eustas@chromium.org>
2168
2169         Web Inspector: [DataGrid] Refactorings.
2170         https://bugs.webkit.org/show_bug.cgi?id=112690
2171
2172         Reviewed by Pavel Feldman.
2173
2174         1. Avoid using string literals;
2175         2. Remove unused notifications; turn "populate" to method invocation;
2176         3. Replace some getters with regular functions.
2177
2178         * inspector/front-end/DataGrid.js: Applied refactorings.
2179         * inspector/front-end/ApplicationCacheItemsView.js: Adopted changes.
2180         * inspector/front-end/BottomUpProfileDataGridTree.js: Ditto.
2181         * inspector/front-end/CPUProfileView.js: Ditto.
2182         * inspector/front-end/CSSSelectorProfileView.js: Ditto.
2183         * inspector/front-end/CookiesTable.js: Ditto.
2184         * inspector/front-end/DirectoryContentView.js: Ditto.
2185         * inspector/front-end/HeapSnapshotDataGrids.js: Ditto.
2186         * inspector/front-end/HeapSnapshotGridNodes.js: Ditto.
2187         * inspector/front-end/NativeMemorySnapshotView.js: Ditto.
2188         * inspector/front-end/NetworkPanel.js: Ditto.
2189         * inspector/front-end/ProfileDataGridTree.js: Ditto.
2190         * inspector/front-end/ResourceWebSocketFrameView.js: Ditto.
2191         * inspector/front-end/TopDownProfileDataGridTree.js: Ditto.
2192         * inspector/front-end/dataGrid.css: Ditto.
2193
2194 2013-03-19  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2195
2196         [Qt] Support -webkit-font-smoothing
2197         https://bugs.webkit.org/show_bug.cgi?id=106009
2198
2199         Reviewed by Jocelyn Turcotte.
2200
2201         Set QFont antialiasing settings based on the font smoothing settings in FontDescription.
2202
2203         * platform/graphics/qt/FontPlatformDataQt.cpp:
2204         (WebCore::FontPlatformData::FontPlatformData):
2205
2206 2013-03-20  Alexei Filippov  <alph@chromium.org>
2207
2208         Web Inspector: Allow toolbar customization
2209         https://bugs.webkit.org/show_bug.cgi?id=112440
2210
2211         Adds a tools menu item that allows the user to show/hide
2212         inspector panels on the toolbar.
2213
2214         Reviewed by Yury Semikhatsky.
2215
2216         * inspector/front-end/InspectorView.js:
2217         * inspector/front-end/Settings.js:
2218         (WebInspector.Settings):
2219         (WebInspector.ExperimentsSettings):
2220         * inspector/front-end/Toolbar.js:
2221         (WebInspector.Toolbar):
2222         (WebInspector.Toolbar.prototype.addPanel):
2223         (WebInspector.Toolbar.prototype._isPanelVisibleByDefault):
2224         (WebInspector.Toolbar.prototype.set _hidePanel):
2225         (WebInspector.Toolbar.prototype._showPanel):
2226         (WebInspector.Toolbar.prototype._togglePanelsMenu):
2227         * inspector/front-end/inspector.css:
2228         (#toolbar-panels-menu):
2229         (#toolbar-panels-menu:hover):
2230         (#toolbar-panels-menu:active):
2231         * inspector/front-end/inspector.html:
2232
2233 2013-03-20  Eugene Klyuchnikov  <eustas@chromium.org>
2234
2235         Web Inspector: [Settings] Add "storage" parameter to WebInspector.Setting
2236         https://bugs.webkit.org/show_bug.cgi?id=112667
2237
2238         Reviewed by Pavel Feldman.
2239
2240         New parameter will allow more options on how long setting will persist.
2241         Possible options are: localStorage, sessionStorage and no-storage.
2242
2243         Additional change: use delete instead of .removeItem to make it possible
2244         use any object as storage.
2245
2246         * inspector/front-end/Settings.js:
2247         Added "storage" parameter and used is instead of "window.localStorage".
2248
2249 2013-03-20  Pan Deng  <pan.deng@intel.com>
2250
2251         Web Inspector: [Network] Fix the bug of WebSocketFrameView crash.
2252         https://bugs.webkit.org/show_bug.cgi?id=112771.
2253
2254         Reviewed by Pavel Feldman.
2255
2256         WebSocketFrameView crashes when websocket receives an error message, this
2257         patch fixes this problem, and error message will be shown in dataGrid as expected.
2258
2259         No new tests.
2260
2261         * inspector/front-end/ResourceWebSocketFrameView.js:
2262         (WebInspector.ResourceWebSocketFrameView): Handle the errorMessage case.
2263
2264 2013-03-20  Dmitry Zvorygin  <zvorygin@chromium.org>
2265
2266         Remove remainings of obsolete LogLevels and MessageSources from inspector JS part.
2267         https://bugs.webkit.org/show_bug.cgi?id=112709
2268
2269         By the way tuned messagesources in ApplicationCacheGroup.
2270
2271         Reviewed by Pavel Feldman.
2272
2273         * inspector/front-end/ConsoleMessage.js:
2274         (WebInspector.ConsoleMessageImpl.prototype.toMessageElement):
2275         (WebInspector.ConsoleMessageImpl.prototype.toString):
2276         * inspector/front-end/ConsoleModel.js:
2277         * inspector/front-end/ExtensionAPI.js:
2278         (defineCommonExtensionSymbols):
2279         * inspector/front-end/ExtensionServer.js:
2280         (WebInspector.ExtensionServer.prototype._onAddConsoleMessage):
2281         (WebInspector.ExtensionServer.prototype._makeConsoleMessage):
2282         * loader/appcache/ApplicationCacheGroup.cpp:
2283         (WebCore::ApplicationCacheGroup::didReceiveResponse):
2284         (WebCore::ApplicationCacheGroup::didFinishLoading):
2285         (WebCore::ApplicationCacheGroup::didFail):
2286
2287 2013-03-20  Krzysztof Czech  <k.czech@samsung.com>
2288
2289         [GTK] accessibility/aria-scrollbar-role.html is failing
2290         https://bugs.webkit.org/show_bug.cgi?id=98358
2291
2292         Reviewed by Martin Robinson.
2293
2294         Adds support for checking an orientation attribute of accessibility object.
2295         AccessibilityObject that represents ScrollBar element should be ATK_VALUE type.
2296         ScrollBar element can be considered as a Range Widget that is able to expose some
2297         range values.
2298
2299         Test: accessibility/aria-scrollbar-role.html
2300
2301         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
2302         (setAtkStateSetFromCoreObject):
2303         (getInterfaceMaskFromObject):
2304
2305 2013-03-20  Zan Dobersek  <zdobersek@igalia.com>
2306
2307         Unreviewed. Fixing a typo in libLevelDB_la_CFLAGS assignment - cxflags -> cflags.
2308
2309         * GNUmakefile.am:
2310
2311 2013-03-20  Robert Hogan  <robert@webkit.org>
2312
2313         Absolute position div without width specified does not reflow its text when it is moved (and computed width changes)
2314         https://bugs.webkit.org/show_bug.cgi?id=112052
2315
2316         Reviewed by Emil A Eklund.
2317         
2318         If a positioned block has auto width then any movement means the block needs to be resized.
2319
2320         Test: fast/block/positioned-block-auto-width-movement.html
2321
2322         * rendering/style/RenderStyle.cpp:
2323         (WebCore::positionedObjectMoved):
2324         (WebCore::RenderStyle::diff):
2325
2326 2013-03-19  Sheriff Bot  <webkit.review.bot@gmail.com>
2327
2328         Unreviewed, rolling out r146301.
2329         http://trac.webkit.org/changeset/146301
2330         https://bugs.webkit.org/show_bug.cgi?id=112776
2331
2332         Caused hundreds of tests to hit assertions on Windows debug
2333         bots (Requested by rniwa on #webkit).
2334
2335         * CMakeLists.txt:
2336         * GNUmakefile.list.am:
2337         * Target.pri:
2338         * WebCore.exp.in:
2339         * WebCore.gypi:
2340         * WebCore.vcproj/WebCore.vcproj:
2341         * WebCore.vcxproj/WebCore.vcxproj:
2342         * WebCore.vcxproj/WebCore.vcxproj.filters:
2343         * WebCore.xcodeproj/project.pbxproj:
2344         * loader/DocumentLoader.cpp:
2345         (WebCore::DocumentLoader::DocumentLoader):
2346         (WebCore::DocumentLoader::mainResourceLoader):
2347         (WebCore::DocumentLoader::~DocumentLoader):
2348         (WebCore::DocumentLoader::mainResourceData):
2349         (WebCore::DocumentLoader::stopLoading):
2350         (WebCore::DocumentLoader::finishedLoading):
2351         (WebCore::DocumentLoader::handleSubstituteDataLoadNow):
2352         (WebCore::DocumentLoader::continueAfterNavigationPolicy):
2353         (WebCore::DocumentLoader::responseReceived):
2354         (WebCore::DocumentLoader::continueAfterContentPolicy):
2355         (WebCore::DocumentLoader::reportMemoryUsage):
2356         (WebCore::DocumentLoader::receivedData):
2357         (WebCore::DocumentLoader::clearMainResourceLoader):
2358         (WebCore::DocumentLoader::setDefersLoading):
2359         (WebCore::DocumentLoader::setMainResourceDataBufferingPolicy):
2360         (WebCore::DocumentLoader::addSubresourceLoader):
2361         (WebCore::DocumentLoader::isLoadingMainResource):
2362         (WebCore):
2363         (WebCore::DocumentLoader::maybeLoadEmpty):
2364         (WebCore::DocumentLoader::startLoadingMainResource):
2365         * loader/DocumentLoader.h:
2366         (WebCore):
2367         (DocumentLoader):
2368         * loader/MainResourceLoader.cpp: Added.
2369         (WebCore):
2370         (WebCore::MainResourceLoader::MainResourceLoader):
2371         (WebCore::MainResourceLoader::~MainResourceLoader):
2372         (WebCore::MainResourceLoader::create):
2373         (WebCore::MainResourceLoader::clearResource):
2374         (WebCore::MainResourceLoader::frameLoader):
2375         (WebCore::MainResourceLoader::request):
2376         (WebCore::MainResourceLoader::resourceData):
2377         (WebCore::MainResourceLoader::redirectReceived):
2378         (WebCore::MainResourceLoader::responseReceived):
2379         (WebCore::MainResourceLoader::dataReceived):
2380         (WebCore::MainResourceLoader::notifyFinished):
2381         (WebCore::MainResourceLoader::reportMemoryUsage):
2382         (WebCore::MainResourceLoader::load):
2383         (WebCore::MainResourceLoader::setDefersLoading):
2384         (WebCore::MainResourceLoader::defersLoading):
2385         (WebCore::MainResourceLoader::setDataBufferingPolicy):
2386         (WebCore::MainResourceLoader::loader):
2387         (WebCore::MainResourceLoader::identifier):
2388         * loader/MainResourceLoader.h: Added.
2389         (WebCore):
2390         (MainResourceLoader):
2391         (WebCore::MainResourceLoader::cachedMainResource):
2392         (WebCore::MainResourceLoader::documentLoader):
2393         * loader/mac/DocumentLoaderMac.cpp:
2394         (WebCore::DocumentLoader::schedule):
2395         (WebCore::DocumentLoader::unschedule):
2396
2397 2013-03-19  Mike West  <mkwst@chromium.org>
2398
2399         CSP 1.1: Stub out SecurityPolicyViolationEvent interface.
2400         https://bugs.webkit.org/show_bug.cgi?id=112681
2401
2402         Reviewed by Adam Barth.
2403
2404         A first pass at a SecurityPolicyViolationEvent interface is defined in
2405         CSP 1.1's editor's draft[1]. This patch puts the big components into
2406         place so that we can start getting some implementation experience with
2407         the new event interface as it's defined, and feed that back into the
2408         working group.
2409
2410         Here, we're only defining the interface, and creating a listener on the
2411         Document. Events aren't yet being fired when Content Security Policy
2412         violations occur. I'll tackle that in a future patch; adding files is
2413         a big enough annoyance to do it separately.
2414
2415         This patch has only two web-visible impacts:
2416
2417         - Document objects now have an 'onsecuritypolicyviolation' attribute.
2418         - A SecurityPolicyViolationEvent constructor is accessible on the Window object.
2419
2420         Ports that have not enabled the CSP_NEXT flag should experience no change.
2421
2422         [1]: https://dvcs.w3.org/hg/content-security-policy/raw-file/tip/csp-specification.dev.html#securitypolicyviolationevent-events
2423
2424         Test: http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-basics.html
2425
2426         * CMakeLists.txt:
2427         * GNUmakefile.list.am:
2428         * WebCore.gypi:
2429         * WebCore.vcproj/WebCore.vcproj:
2430         * WebCore.xcodeproj/project.pbxproj:
2431             Wow! A new file! This is so exciting! I'm going to tell ALL my build
2432             systems about this!
2433         * dom/Document.h:
2434         * dom/Document.idl:
2435             Define an 'onsecuritypolicyviolation' event handler on Document objects.
2436         * dom/EventNames.h:
2437         * dom/EventNames.in:
2438             Define a 'securitypolicyviolation' event type.
2439         * dom/SecurityPolicyViolationEvent.h: Added.
2440         (WebCore::SecurityPolicyViolationEventInit::SecurityPolicyViolationEventInit):
2441         (SecurityPolicyViolationEventInit):
2442         (SecurityPolicyViolationEvent):
2443         (WebCore::SecurityPolicyViolationEvent::create):
2444         (WebCore::SecurityPolicyViolationEvent::documentURI):
2445         (WebCore::SecurityPolicyViolationEvent::referrer):
2446         (WebCore::SecurityPolicyViolationEvent::blockedURI):
2447         (WebCore::SecurityPolicyViolationEvent::violatedDirective):
2448         (WebCore::SecurityPolicyViolationEvent::effectiveDirective):
2449         (WebCore::SecurityPolicyViolationEvent::originalPolicy):
2450         (WebCore::SecurityPolicyViolationEvent::sourceURL):
2451         (WebCore::SecurityPolicyViolationEvent::lineNumber):
2452         (WebCore::SecurityPolicyViolationEvent::interfaceName):
2453         (WebCore::SecurityPolicyViolationEvent::SecurityPolicyViolationEvent):
2454         * dom/SecurityPolicyViolationEvent.idl: Added.
2455             Define the SecurityPolicyViolationEvent's IDL, and then create all the
2456             boilerplate necessary to properly initialize a SecurityPolicyViolationEvent
2457             object with the relevant properties.
2458         * page/DOMWindow.idl:
2459             Add the new SecurityPolicyViolationEvent constructor to the Window object
2460             so it's available on a page.
2461
2462 2013-03-19  Eugene Klyuchnikov  <eustas@chromium.org>
2463
2464         Web Inspector: [Timeline] Tune status bar UI for limited-width window.
2465         https://bugs.webkit.org/show_bug.cgi?id=112702
2466
2467         Reviewed by Pavel Feldman.
2468
2469         Reduce filter titles when there is not enough space.
2470
2471         * inspector/front-end/TimelinePanel.js: Add classnames to elements.
2472         * inspector/front-end/timelinePanel.css: Specify "flex" behaviour.
2473
2474 2013-03-19  Nate Chapin  <japhet@chromium.org>
2475
2476         Merge MainResourceLoader into DocumentLoader
2477         https://bugs.webkit.org/show_bug.cgi?id=104969
2478
2479         Reviewed by Adam Barth.
2480
2481         No new tests, refactor only.
2482
2483         * CMakeLists.txt:
2484         * GNUmakefile.list.am:
2485         * Target.pri:
2486         * WebCore.exp.in:
2487         * WebCore.gypi:
2488         * WebCore.vcproj/WebCore.vcproj:
2489         * WebCore.vcxproj/WebCore.vcxproj:
2490         * WebCore.vcxproj/WebCore.vcxproj.filters:
2491         * WebCore.xcodeproj/project.pbxproj:
2492         * loader/DocumentLoader.cpp:
2493         (WebCore::DocumentLoader::DocumentLoader):
2494         (WebCore::DocumentLoader::mainResourceLoader):
2495         (WebCore::DocumentLoader::~DocumentLoader): Move main resource clearing from
2496             ~MainResourceLoader.
2497         (WebCore::DocumentLoader::mainResourceData):
2498         (WebCore::DocumentLoader::stopLoading):
2499         (WebCore::DocumentLoader::notifyFinished): Moved from MainResourceLoader::notifyFinished.
2500         (WebCore):
2501         (WebCore::DocumentLoader::finishedLoading):
2502         (WebCore::DocumentLoader::handleSubstituteDataLoadNow):
2503         (WebCore::DocumentLoader::redirectReceived):
2504         (WebCore::DocumentLoader::continueAfterNavigationPolicy):
2505         (WebCore::DocumentLoader::responseReceived):
2506         (WebCore::DocumentLoader::continueAfterContentPolicy):
2507         (WebCore::DocumentLoader::reportMemoryUsage):
2508         (WebCore::DocumentLoader::dataReceived):
2509         (WebCore::DocumentLoader::clearMainResourceLoader):
2510         (WebCore::DocumentLoader::setDefersLoading):
2511         (WebCore::DocumentLoader::setMainResourceDataBufferingPolicy):
2512         (WebCore::DocumentLoader::addSubresourceLoader):
2513         (WebCore::DocumentLoader::maybeLoadEmpty):
2514         (WebCore::DocumentLoader::startLoadingMainResource): Don't keep separate checks
2515              for normal and empty loads, just use a single boolean.
2516         * loader/DocumentLoader.h:
2517         (WebCore::DocumentLoader::isLoadingMainResource):
2518         * loader/MainResourceLoader.cpp: Removed.
2519         * loader/MainResourceLoader.h: Removed.
2520         * loader/mac/DocumentLoaderMac.cpp:
2521         (WebCore::DocumentLoader::schedule):
2522         (WebCore::DocumentLoader::unschedule):
2523
2524 2013-03-19  Ankur Taly  <ataly@google.com>
2525
2526         Cache a pointer to V8DOMActivityLogger in PerContextData.
2527         https://bugs.webkit.org/show_bug.cgi?id=112719
2528
2529         Reviewed by Kentaro Hara.
2530
2531         Adds a data member (and getter, setter methods) to V8PerContextData
2532         that holds a pointer to a V8DOMActivityLogger. This member is set while
2533         initializing the context for a V8DOMWindowShell. Ownership of the pointer
2534         is still retained by the HashMap in DOMWrapperWorld.
2535         As a result of this patch, subsequent patches that will implement logging
2536         for DOM API access (See bug 107207) will be able to obtain a reference to
2537         the logger directly from PerContextData. This will benefit performance as it
2538         will be faster than looking up the logger in the DOMActivityLoggerMap in
2539         DOMWrapperWorld.
2540
2541         There are no new tests as there is no change in behavior.
2542
2543         * bindings/v8/V8DOMWindowShell.cpp:
2544         (WebCore::V8DOMWindowShell::initializeIfNeeded):
2545         * bindings/v8/V8PerContextData.h:
2546         (WebCore::V8PerContextData::activityLogger):
2547         (V8PerContextData):
2548         (WebCore::V8PerContextData::setActivityLogger):
2549
2550 2013-03-19  Arnaud Renevier  <a.renevier@sisa.samsung.com>
2551
2552         do not use string reference for enum support in CodeGeneratorJS.pm
2553         https://bugs.webkit.org/show_bug.cgi?id=112760
2554
2555         Reviewed by Kentaro Hara.
2556
2557         Do use string references in generated JS bindings for enum values.
2558
2559         Test: bindings/scripts/test/TestObj.idl
2560
2561         * bindings/scripts/CodeGeneratorJS.pm:
2562         (GenerateImplementation):
2563         (GenerateParametersCheck):
2564         * bindings/scripts/test/JS/JSTestObj.cpp:
2565         (WebCore::setJSTestObjEnumAttr):
2566         (WebCore::jsTestObjPrototypeFunctionMethodWithEnumArg):
2567
2568 2013-03-19  Simon Fraser  <simon.fraser@apple.com>
2569
2570         Make RLC::haveNonMainLayersWithTiledBacking() public and fix the name
2571         https://bugs.webkit.org/show_bug.cgi?id=112763
2572
2573         Reviewed by Tim Horton.
2574
2575         Downstream code needs to call hasNonMainLayersWithTiledBacking().
2576
2577         * rendering/RenderLayerCompositor.h:
2578         (WebCore::RenderLayerCompositor::hasNonMainLayersWithTiledBacking):
2579         (RenderLayerCompositor):
2580
2581 2013-03-19  David Levin  <levin@chromium.org>
2582
2583         FrameLoader::didChangeIcons isn't called when the favicon is changed.
2584         https://bugs.webkit.org/show_bug.cgi?id=112080
2585
2586         Reviewed by Dmitry Titov.
2587
2588         Test: fast/dom/icon-url-property.html
2589
2590         * dom/Document.cpp:
2591         (WebCore::Document::addIconURL): Made the callback for didChangeIcons
2592         happen whenever there are favicon changes instead of filtering it
2593         and have to be in sync about what hosts care about. As far as I could
2594         tell no hosts rely on this callback except for Chromium, so in general
2595         doing less work here may potentially help a small amount for other
2596         ports.
2597
2598 2013-03-19  Michael Pruett  <michael@68k.org>
2599
2600         Don't throw on infinity or NaN index in HTMLOptionsCollection.add()
2601         https://bugs.webkit.org/show_bug.cgi?id=112612
2602
2603         Reviewed by Kentaro Hara.
2604
2605         HTMLOptionsCollection.add() should not throw a type error when
2606         its optional index argument is infinity or NaN. Such values
2607         should instead be converted to 0 with no error.
2608
2609         Tests: fast/dom/non-numeric-values-numeric-parameters.html
2610                fast/js/select-options-add.html
2611
2612         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
2613         (WebCore::JSHTMLOptionsCollection::add):
2614
2615 2013-03-19  Dominic Mazzoni  <dmazzoni@google.com>
2616
2617         Security: Heap-use-after-free in WebCore::AXObjectCache::getOrCreate
2618         https://bugs.webkit.org/show_bug.cgi?id=112044
2619
2620         Reviewed by Chris Fleizach.
2621
2622         Always call recalcSectionsIfNeeded before accessing
2623         table sections.
2624
2625         Test: accessibility/table-remove-cell-crash.html
2626
2627         * accessibility/AccessibilityTable.cpp:
2628         (WebCore::AccessibilityTable::addChildren):
2629
2630 2013-03-19  Arnaud Renevier  <a.renevier@sisa.samsung.com>
2631
2632         [v8] add IDL 'enum' in DOM methods
2633         https://bugs.webkit.org/show_bug.cgi?id=112644
2634
2635         Reviewed by Kentaro Hara.
2636
2637         This adds V8 support for enumerations in method parameters.
2638
2639         Test: bindings/scripts/test/TestObj.idl
2640
2641         * bindings/scripts/CodeGeneratorV8.pm:
2642         (GenerateParametersCheck):
2643         * bindings/scripts/test/V8/V8TestObj.cpp:
2644         (WebCore::TestObjV8Internal::methodWithEnumArgMethod):
2645
2646 2013-03-19  Kenneth Russell  <kbr@google.com>
2647
2648         Unreviewed, rolling out r146277.
2649         http://trac.webkit.org/changeset/146277
2650         https://bugs.webkit.org/show_bug.cgi?id=111695
2651
2652         Broke Chromium Android build
2653
2654         * Modules/speech/SpeechSynthesis.cpp:
2655         (WebCore::SpeechSynthesis::boundaryEventOccurred):
2656         (WebCore::SpeechSynthesis::didStartSpeaking):
2657         (WebCore::SpeechSynthesis::didPauseSpeaking):
2658         (WebCore::SpeechSynthesis::didResumeSpeaking):
2659         (WebCore::SpeechSynthesis::didFinishSpeaking):
2660         (WebCore::SpeechSynthesis::speakingErrorOccurred):
2661         (WebCore):
2662         * Modules/speech/SpeechSynthesis.h:
2663         (SpeechSynthesis):
2664         * Modules/speech/SpeechSynthesisUtterance.cpp:
2665         (WebCore::SpeechSynthesisUtterance::SpeechSynthesisUtterance):
2666         (WebCore::SpeechSynthesisUtterance::setVoice):
2667         * Modules/speech/SpeechSynthesisUtterance.h:
2668         (WebCore::SpeechSynthesisUtterance::text):
2669         (WebCore::SpeechSynthesisUtterance::setText):
2670         (WebCore::SpeechSynthesisUtterance::lang):
2671         (WebCore::SpeechSynthesisUtterance::setLang):
2672         (WebCore::SpeechSynthesisUtterance::volume):
2673         (WebCore::SpeechSynthesisUtterance::setVolume):
2674         (WebCore::SpeechSynthesisUtterance::rate):
2675         (WebCore::SpeechSynthesisUtterance::setRate):
2676         (WebCore::SpeechSynthesisUtterance::pitch):
2677         (WebCore::SpeechSynthesisUtterance::setPitch):
2678         (WebCore::SpeechSynthesisUtterance::startTime):
2679         (WebCore::SpeechSynthesisUtterance::setStartTime):
2680         (WebCore::SpeechSynthesisUtterance::platformUtterance):
2681         (SpeechSynthesisUtterance):
2682         * Modules/speech/SpeechSynthesisVoice.h:
2683         * WebCore.exp.in:
2684         * WebCore.gypi:
2685         * platform/PlatformSpeechSynthesis.h:
2686         (PlatformSpeechSynthesis):
2687         * platform/PlatformSpeechSynthesisUtterance.cpp:
2688         * platform/PlatformSpeechSynthesisUtterance.h:
2689         (PlatformSpeechSynthesisUtterance):
2690         * platform/PlatformSpeechSynthesisVoice.cpp:
2691         (WebCore::PlatformSpeechSynthesisVoice::create):
2692         * platform/PlatformSpeechSynthesisVoice.h:
2693         (PlatformSpeechSynthesisVoice):
2694         * platform/PlatformSpeechSynthesizer.cpp:
2695         (WebCore::PlatformSpeechSynthesizer::create):
2696         (WebCore::PlatformSpeechSynthesizer::PlatformSpeechSynthesizer):
2697         (WebCore):
2698         * platform/PlatformSpeechSynthesizer.h:
2699         (PlatformSpeechSynthesizerClient):
2700         (WebCore::PlatformSpeechSynthesizer::~PlatformSpeechSynthesizer):
2701         (PlatformSpeechSynthesizer):
2702         * platform/chromium/PlatformSpeechSynthesizerChromium.cpp: Removed.
2703         * platform/chromium/support/WebSpeechSynthesisUtterance.cpp: Removed.
2704         * platform/chromium/support/WebSpeechSynthesisVoice.cpp: Removed.
2705         * platform/chromium/support/WebSpeechSynthesizerClientImpl.cpp: Removed.
2706         * platform/chromium/support/WebSpeechSynthesizerClientImpl.h: Removed.
2707         * platform/mac/PlatformSpeechSynthesizerMac.mm:
2708         (-[WebSpeechSynthesisWrapper speakUtterance:WebCore::]):
2709         (-[WebSpeechSynthesisWrapper speechSynthesizer:didFinishSpeaking:]):
2710         (WebCore::PlatformSpeechSynthesizer::speak):
2711         * platform/mock/PlatformSpeechSynthesizerMock.cpp:
2712         (WebCore::PlatformSpeechSynthesizerMock::create):
2713         (WebCore::PlatformSpeechSynthesizerMock::PlatformSpeechSynthesizerMock):
2714         (WebCore::PlatformSpeechSynthesizerMock::speakingFinished):
2715         (WebCore::PlatformSpeechSynthesizerMock::speak):
2716         * platform/mock/PlatformSpeechSynthesizerMock.h:
2717         (PlatformSpeechSynthesizerMock):
2718
2719 2013-03-19  Antti Koivisto  <antti@apple.com>
2720
2721         Don't compute background obscuration on every repaint
2722         https://bugs.webkit.org/show_bug.cgi?id=112457
2723
2724         Reviewed by Simon Fraser.
2725
2726         Test: fast/backgrounds/obscured-background-child-style-change.html
2727         
2728         It is generally enough to compute background obscuration status once per layout rather than doing it on every repaint.
2729         Since there are fewer layouts than repaints this will allow more expensive checks in the future.
2730         
2731         With this patch adds caching and invalidation of the obscuration status.
2732
2733         * rendering/RenderBlock.cpp:
2734         (WebCore::RenderBlock::layout):
2735         
2736             Invalidate the obscuration status on layout.
2737
2738         * rendering/RenderBox.cpp:
2739         (WebCore::RenderBox::styleDidChange):
2740         
2741             Invalidate the parent obscuration status if there is repaint-only style change (often background related). 
2742             Tested by the new fast/css/obscured-background-child-style-change.html.
2743
2744         (WebCore::RenderBox::layout):
2745         (WebCore::RenderBox::computeBackgroundIsKnownToBeObscured):
2746         * rendering/RenderBox.h:
2747         * rendering/RenderImage.cpp:
2748         (WebCore::RenderImage::imageChanged):
2749         (WebCore::RenderImage::notifyFinished):
2750         (WebCore::RenderImage::boxShadowShouldBeAppliedToBackground):
2751         (WebCore::RenderImage::computeBackgroundIsKnownToBeObscured):
2752         
2753             Use CachedImage::currentFrameKnownToBeOpaque which ensures that the frame is decoded and we get the real status.
2754             Tested by an additional case in fast/css/obscured-background-child-style-change.html.
2755
2756         * rendering/RenderImage.h:
2757         * rendering/RenderObject.cpp:
2758         (WebCore::RenderObject::styleWillChange):
2759         * rendering/RenderObject.h:
2760         (WebCore::RenderObject::hasBoxDecorations):
2761         (WebCore::RenderObject::computeBackgroundIsKnownToBeObscured):
2762         (WebCore::RenderObject::RenderObjectBitfields::RenderObjectBitfields):
2763         (RenderObjectBitfields):
2764         (WebCore::RenderObject::RenderObjectBitfields::boxDecorationState):
2765         (WebCore::RenderObject::RenderObjectBitfields::setBoxDecorationState):
2766         
2767             Combine box decoration bit and the obscuration status so we only need one extra bit.
2768
2769         (WebCore::RenderObject::setNeedsSimplifiedNormalFlowLayout):
2770         (WebCore::RenderObject::setHasBoxDecorations):
2771         (WebCore::RenderObject::invalidateBackgroundObscurationStatus):
2772         (WebCore::RenderObject::backgroundIsKnownToBeObscured):
2773         * rendering/RenderReplaced.cpp:
2774         (WebCore::RenderReplaced::layout):
2775
2776 2013-03-19  Dominic Mazzoni  <dmazzoni@google.com>
2777
2778         Implement Web Speech Synthesis for Chromium
2779         https://bugs.webkit.org/show_bug.cgi?id=111695
2780
2781         Reviewed by Adam Barth.
2782
2783         Straightforward implementation of speech synthesis
2784         for Chromium by exposing interfaces for the platform
2785         to implement.
2786
2787         * Modules/speech/SpeechSynthesis.cpp:
2788         (WebCore::SpeechSynthesis::boundaryEventOccurred):
2789         (WebCore::SpeechSynthesis::didStartSpeaking):
2790         (WebCore::SpeechSynthesis::didPauseSpeaking):
2791         (WebCore::SpeechSynthesis::didResumeSpeaking):
2792         (WebCore::SpeechSynthesis::didFinishSpeaking):
2793         (WebCore::SpeechSynthesis::speakingErrorOccurred):
2794         (WebCore):
2795         * Modules/speech/SpeechSynthesis.h:
2796         (SpeechSynthesis):
2797         * Modules/speech/SpeechSynthesisUtterance.cpp:
2798         (WebCore::SpeechSynthesisUtterance::SpeechSynthesisUtterance):
2799         (WebCore):
2800         (WebCore::SpeechSynthesisUtterance::~SpeechSynthesisUtterance):
2801         (WebCore::SpeechSynthesisUtterance::setVoice):
2802         * Modules/speech/SpeechSynthesisUtterance.h:
2803         (SpeechSynthesisUtterance):
2804         (WebCore::SpeechSynthesisUtterance::text):
2805         (WebCore::SpeechSynthesisUtterance::setText):
2806         (WebCore::SpeechSynthesisUtterance::lang):
2807         (WebCore::SpeechSynthesisUtterance::setLang):
2808         (WebCore::SpeechSynthesisUtterance::volume):
2809         (WebCore::SpeechSynthesisUtterance::setVolume):
2810         (WebCore::SpeechSynthesisUtterance::rate):
2811         (WebCore::SpeechSynthesisUtterance::setRate):
2812         (WebCore::SpeechSynthesisUtterance::pitch):
2813         (WebCore::SpeechSynthesisUtterance::setPitch):
2814         (WebCore::SpeechSynthesisUtterance::startTime):
2815         (WebCore::SpeechSynthesisUtterance::setStartTime):
2816         (WebCore::SpeechSynthesisUtterance::platformUtterance):
2817         * Modules/speech/SpeechSynthesisVoice.h:
2818         (WebCore::SpeechSynthesisVoice::~SpeechSynthesisVoice):
2819         * WebCore.exp.in:
2820         * WebCore.gypi:
2821         * platform/PlatformSpeechSynthesis.h:
2822         (PlatformSpeechSynthesis):
2823         * platform/PlatformSpeechSynthesisUtterance.cpp:
2824         (WebCore):
2825         (WebCore::PlatformSpeechSynthesisUtterance::create):
2826         * platform/PlatformSpeechSynthesisUtterance.h:
2827         (PlatformSpeechSynthesisUtterance):
2828         (WebCore::PlatformSpeechSynthesisUtterance::setClient):
2829         * platform/PlatformSpeechSynthesisVoice.cpp:
2830         (WebCore):
2831         (WebCore::PlatformSpeechSynthesisVoice::create):
2832         (WebCore::PlatformSpeechSynthesisVoice::PlatformSpeechSynthesisVoice):
2833         * platform/PlatformSpeechSynthesisVoice.h:
2834         (PlatformSpeechSynthesisVoice):
2835         (WebCore::PlatformSpeechSynthesisVoice::setVoiceURI):
2836         (WebCore::PlatformSpeechSynthesisVoice::setName):
2837         (WebCore::PlatformSpeechSynthesisVoice::setLang):
2838         (WebCore::PlatformSpeechSynthesisVoice::setLocalService):
2839         (WebCore::PlatformSpeechSynthesisVoice::setIsDefault):
2840         * platform/PlatformSpeechSynthesizer.cpp:
2841         (WebCore::PlatformSpeechSynthesizer::create):
2842         (WebCore::PlatformSpeechSynthesizer::setVoiceList):
2843         (WebCore):
2844         * platform/PlatformSpeechSynthesizer.h:
2845         (WebKit):
2846         (PlatformSpeechSynthesizerClient):
2847         (PlatformSpeechSynthesizer):
2848         * platform/chromium/PlatformSpeechSynthesizerChromium.cpp: Added.
2849         (WebCore):
2850         (WebCore::PlatformSpeechSynthesizer::PlatformSpeechSynthesizer):
2851         (WebCore::PlatformSpeechSynthesizer::~PlatformSpeechSynthesizer):
2852         (WebCore::PlatformSpeechSynthesizer::initializeVoiceList):
2853         (WebCore::PlatformSpeechSynthesizer::speak):
2854         (WebCore::PlatformSpeechSynthesizer::pause):
2855         (WebCore::PlatformSpeechSynthesizer::resume):
2856         (WebCore::PlatformSpeechSynthesizer::cancel):
2857         * platform/chromium/support/WebSpeechSynthesisUtterance.cpp: Added.
2858         (WebKit):
2859         (WebKit::WebSpeechSynthesisUtterance::WebSpeechSynthesisUtterance):
2860         (WebKit::WebSpeechSynthesisUtterance::operator=):
2861         (WebKit::WebSpeechSynthesisUtterance::assign):
2862         (WebKit::WebSpeechSynthesisUtterance::reset):
2863         (WebKit::WebSpeechSynthesisUtterance::operator PassRefPtr<PlatformSpeechSynthesisUtterance>):
2864         (WebKit::WebSpeechSynthesisUtterance::operator PlatformSpeechSynthesisUtterance*):
2865         (WebKit::WebSpeechSynthesisUtterance::text):
2866         (WebKit::WebSpeechSynthesisUtterance::lang):
2867         (WebKit::WebSpeechSynthesisUtterance::voice):
2868         (WebKit::WebSpeechSynthesisUtterance::volume):
2869         (WebKit::WebSpeechSynthesisUtterance::rate):
2870         (WebKit::WebSpeechSynthesisUtterance::pitch):
2871         (WebKit::WebSpeechSynthesisUtterance::startTime):
2872         * platform/chromium/support/WebSpeechSynthesisVoice.cpp: Added.
2873         (WebKit):
2874         (WebKit::WebSpeechSynthesisVoice::assign):
2875         (WebKit::WebSpeechSynthesisVoice::reset):
2876         (WebKit::WebSpeechSynthesisVoice::setVoiceURI):
2877         (WebKit::WebSpeechSynthesisVoice::setName):
2878         (WebKit::WebSpeechSynthesisVoice::setLanguage):
2879         (WebKit::WebSpeechSynthesisVoice::setIsLocalService):
2880         (WebKit::WebSpeechSynthesisVoice::setIsDefault):
2881         (WebKit::WebSpeechSynthesisVoice::operator PassRefPtr<WebCore::PlatformSpeechSynthesisVoice>):
2882         * platform/chromium/support/WebSpeechSynthesizerClientImpl.cpp: Added.
2883         (WebCore):
2884         (WebCore::WebSpeechSynthesizerClientImpl::WebSpeechSynthesizerClientImpl):
2885         (WebCore::WebSpeechSynthesizerClientImpl::~WebSpeechSynthesizerClientImpl):
2886         (WebCore::WebSpeechSynthesizerClientImpl::setVoiceList):
2887         (WebCore::WebSpeechSynthesizerClientImpl::didStartSpeaking):
2888         (WebCore::WebSpeechSynthesizerClientImpl::didFinishSpeaking):
2889         (WebCore::WebSpeechSynthesizerClientImpl::didPauseSpeaking):
2890         (WebCore::WebSpeechSynthesizerClientImpl::didResumeSpeaking):
2891         (WebCore::WebSpeechSynthesizerClientImpl::speakingErrorOccurred):
2892         (WebCore::WebSpeechSynthesizerClientImpl::wordBoundaryEventOccurred):
2893         (WebCore::WebSpeechSynthesizerClientImpl::sentenceBoundaryEventOccurred):
2894         * platform/chromium/support/WebSpeechSynthesizerClientImpl.h: Added.
2895         (WebCore):
2896         (WebSpeechSynthesizerClientImpl):
2897         * platform/mac/PlatformSpeechSynthesizerMac.mm:
2898         (-[WebSpeechSynthesisWrapper speakUtterance:WebCore::]):
2899         (-[WebSpeechSynthesisWrapper speechSynthesizer:didFinishSpeaking:]):
2900         (WebCore::PlatformSpeechSynthesizer::PlatformSpeechSynthesizer):
2901         (WebCore):
2902         (WebCore::PlatformSpeechSynthesizer::~PlatformSpeechSynthesizer):
2903         (WebCore::PlatformSpeechSynthesizer::speak):
2904         * platform/mock/PlatformSpeechSynthesizerMock.cpp:
2905         (WebCore::PlatformSpeechSynthesizerMock::PlatformSpeechSynthesizerMock):
2906         (WebCore::PlatformSpeechSynthesizerMock::speakingFinished):
2907         (WebCore::PlatformSpeechSynthesizerMock::speak):
2908         * platform/mock/PlatformSpeechSynthesizerMock.h:
2909         (PlatformSpeechSynthesizerMock):
2910
2911 2013-03-19  Ryosuke Niwa  <rniwa@webkit.org>
2912
2913         Another build fix after r146220.
2914
2915         * English.lproj/localizedStrings.js:
2916
2917 2013-03-19  Julien Chaffraix  <jchaffraix@webkit.org>
2918
2919         [CSS Grid Layout] Add parsing for grid-auto-{row|column}
2920         https://bugs.webkit.org/show_bug.cgi?id=112724
2921
2922         Reviewed by Tony Chang.
2923
2924         This change is a first step towards handling grid-auto-{row|column}.
2925         For now, only the parsing, storing and getComputedStyle bits are implemented.
2926         In order to do so without duplicating code, the functions handling <track-size>
2927         (named <track-minmax> in the code based on a previous version of the grammar)
2928         have been tweaked to be called in a standalone fashion. The code was also
2929         updated to match the grammar more closely:
2930         - <track-minmax> is now <track-size>.
2931         - <track-group> was renmoved, folded into <track-list>.
2932
2933         Test: fast/css-grid-layout/grid-auto-columns-rows-get-set.html
2934
2935         * css/CSSComputedStyleDeclaration.cpp:
2936         (WebCore::valueForGridTrackSize):
2937         Renamed from valueForGridTrackMinMax.
2938
2939         (WebCore::valueForGridTrackList):
2940         Folded valueForGridTrackGroup here.
2941
2942         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2943         * css/CSSParser.cpp:
2944         (WebCore::CSSParser::parseValue):
2945         Added the parsing for grid-auto-{rows|columns}.
2946
2947         (WebCore::CSSParser::parseGridTrackSize):
2948         Renamed from parseGridTrackMinMax. Changed to return the parsed value (or 0 in case of
2949         error). This enables us to reuse it in parseValue. Note that this function now moves
2950         the parser value list instead of the caller.
2951
2952         (WebCore::CSSParser::parseGridTrackList):
2953         Updated after parseGridTrackSize changes and parseGridTrackGroup removal.
2954
2955         * css/CSSParser.h: Updated the names.
2956         * css/CSSProperty.cpp:
2957         (WebCore::CSSProperty::isInheritedProperty):
2958         * css/CSSPropertyNames.in:
2959         Added the 2 new non-inherited properties.
2960
2961         * css/StyleResolver.cpp:
2962         (WebCore::createGridTrackSize):
2963         Renamed from createGridTrackMinMax. Also simplified to ensure code reuse (applyProperty hands
2964         down a CSSValue) and consistency (the state wasn't consistently the last argument).
2965
2966         (WebCore::createGridTrackList):
2967         Folded createGridTrackGroup into this function.
2968
2969         (WebCore::StyleResolver::applyProperty):
2970         Added the code for the new properties.
2971
2972         * rendering/style/RenderStyle.h:
2973         * rendering/style/StyleGridData.cpp:
2974         (WebCore::StyleGridData::StyleGridData):
2975         * rendering/style/StyleGridData.h:
2976         (WebCore::StyleGridData::operator==):
2977         Added the storage and boiler-plate code for the new properties.
2978
2979 2013-03-19  Geoffrey Garen  <ggaren@apple.com>
2980
2981         Removed a using declaration to avoid name conflicts
2982         https://bugs.webkit.org/show_bug.cgi?id=112752
2983
2984         Reviewed by Ryosuke Niwa.
2985
2986         * html/ClassList.cpp: Put the using declaration here instead.
2987
2988         * html/ClassList.h: Don't put a using declaration in this header because
2989         it can cause name conflicts with SVGNames.
2990
2991 2013-03-18  Ojan Vafai  <ojan@chromium.org>
2992
2993         Make intrinsic size keywords on flexboxes work
2994         https://bugs.webkit.org/show_bug.cgi?id=112652
2995
2996         Reviewed by Tony Chang.
2997
2998         Tests: fast/css-intrinsic-dimensions/intrinsic-sized-column-flex-items.html
2999                fast/css-intrinsic-dimensions/intrinsic-sized-flex-items.html
3000
3001         * platform/Length.h:
3002         (WebCore::Length::isSpecifiedOrIntrinsic):
3003         * rendering/RenderBox.cpp:
3004         (WebCore::RenderBox::constrainLogicalWidthInRegionByMinMax):
3005         (WebCore::RenderBox::computeLogicalWidthInRegion):
3006         (WebCore::RenderBox::computeLogicalWidthInRegionUsing):
3007         Pass in the Length so that RenderFlexibleBox can call this method and avoid
3008         doing a bunch of code duplication.
3009
3010         * rendering/RenderBox.h:
3011         * rendering/RenderFlexibleBox.cpp:
3012         (WebCore::RenderFlexibleBox::computeMainAxisExtentForChild):
3013         Instead of just calling valueForLength, call computeLogicalWidthInRegionUsing so that
3014         we properly resolve intrinsic Length types. Incidentally, this should also make viewport
3015         percentage units work.
3016
3017         (WebCore::RenderFlexibleBox::adjustChildSizeForMinAndMax):
3018         Resolve intrinsic min/max Lengths. Also, instead of calling minPreferredLogicalWidth for the
3019         min-width: auto case, call computeMainAxisExtentForChild to correctly compute the min intrinsic size.
3020
3021 2013-03-19  Geoffrey Garen  <ggaren@apple.com>
3022
3023         Try to fix the Windows build.
3024
3025         * svg/SVGAnimateMotionElement.cpp:
3026         (WebCore::SVGAnimateMotionElement::hasValidAttributeType): Qualify the
3027         namespace to avoid conflicts.
3028
3029 2013-03-19  Ryosuke Niwa  <rniwa@webkit.org>
3030
3031         Windows build fix after r146264.
3032
3033         * svg/SVGAnimateMotionElement.cpp:
3034         (WebCore::SVGAnimateMotionElement::hasValidAttributeType):
3035
3036 2013-03-19  Nate Chapin  <japhet@chromium.org>
3037
3038         REGRESSION(r146223): chromium asserts/crashes in DocumentLoader
3039         https://bugs.webkit.org/show_bug.cgi?id=112745
3040
3041         Reviewed by Kenneth Russell.
3042
3043         Fixes layout tests on chromium debug
3044
3045         * loader/DocumentLoader.cpp:
3046         (WebCore::DocumentLoader::mainReceivedError): Frame might be detached, get
3047             defersLoading() from mainResourceLoader().
3048         (WebCore::DocumentLoader::responseReceived): RefPtr got dropped, it's really needed.
3049         (WebCore::DocumentLoader::receivedData): Frame might be detached, get
3050             defersLoading() from mainResourceLoader().
3051         (WebCore::DocumentLoader::cancelMainResourceLoad): The ResourceError parameter
3052             can be null if coming from the WebKit layer, we should have a default just in case.
3053
3054 2013-03-19  Geoffrey Garen  <ggaren@apple.com>
3055
3056         Refactored script content removal in the fragment parser for clarity and speed
3057         https://bugs.webkit.org/show_bug.cgi?id=112734
3058
3059         Reviewed by Enrica Casucci.
3060
3061         * WebCore.exp.in: Export!
3062
3063         * dom/DocumentFragment.cpp:
3064         (WebCore::DocumentFragment::parseHTML):
3065         (WebCore::DocumentFragment::parseXML):
3066         * dom/DocumentFragment.h:
3067         (DocumentFragment): Updated for rename of FragmentScriptingPermission to
3068         ParserContentPolicy.
3069
3070         * dom/Element.cpp:
3071         (WebCore::isEventHandlerAttribute):
3072         (WebCore::Element::isJavaScriptURLAttribute):
3073         (WebCore::Element::isJavaScriptAttribute): Fixed a FIXME by factoring
3074         out some helper functions that reuse isURLAttribute(). This makes our
3075         attribute removal slightly more precise, as reflected in test changes.
3076
3077         (WebCore::Element::stripJavaScriptAttributes): Factored this function out
3078         of parserSetAttributes to clarify that the parser is responsible for
3079         fully removing scripts before inserting anything into the DOM.
3080
3081         Now that this is a helper function, we can avoid doing any work in the
3082         common case, where script content is allowed. Also, when we do have to
3083         strip attributes, we use "two finger compaction" to avoid copying the
3084         vector, and to avoid O(N) vector removal operations when there is
3085         something to remove.
3086
3087         (WebCore::Element::parserSetAttributes):
3088         * dom/Element.h:
3089
3090         * dom/FragmentScriptingPermission.h:
3091         (WebCore::scriptingContentIsAllowed):
3092         (WebCore::disallowScriptingContent):
3093         (WebCore::pluginContentIsAllowed):
3094         (WebCore::allowPluginContent): Renamed for clarity, and added some helper
3095         functions for reading values out of this enum.
3096
3097         * dom/ScriptableDocumentParser.cpp:
3098         (WebCore::ScriptableDocumentParser::ScriptableDocumentParser): Moved
3099         a settings check into the parser constructor so we're sure that all
3100         clients get the right behavior.
3101
3102         * dom/ScriptableDocumentParser.h:
3103         (WebCore::ScriptableDocumentParser::parserContentPolicy):
3104         (ScriptableDocumentParser):
3105         * editing/markup.cpp:
3106         (WebCore::createFragmentFromMarkup):
3107         (WebCore::createFragmentFromMarkupWithContext):
3108         (WebCore::createFragmentForInnerOuterHTML):
3109         (WebCore::createContextualFragment):
3110         * editing/markup.h: Updated for renames.
3111
3112         * html/HTMLAnchorElement.cpp:
3113         (WebCore::HTMLAnchorElement::isURLAttribute): Fixed a bug where
3114         isURLAttribute would ignore href attributes in other namespaces, like
3115         xlink:href.
3116
3117         * html/HTMLBaseElement.cpp:
3118         (WebCore::HTMLBaseElement::isURLAttribute): Same bug.
3119
3120         * html/HTMLElement.cpp:
3121         (WebCore::HTMLElement::isURLAttribute): Fixed a logic error where HTMLElement
3122         wouldn't call through to its base class.
3123
3124         * html/HTMLLinkElement.cpp:
3125         (WebCore::HTMLLinkElement::isURLAttribute): Same isURLAttribute namespace
3126         bug as above.
3127
3128         * html/parser/HTMLConstructionSite.cpp:
3129         (WebCore::setAttributes): Helper function for optionally stripping
3130         disallowed attributes before setting them on an element. This helps all
3131         clients get the right behavior without sprinkling checks everywhere.
3132
3133         (WebCore::HTMLConstructionSite::HTMLConstructionSite):
3134         (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagBeforeHTML):
3135
3136         (WebCore::HTMLConstructionSite::insertScriptElement): Don't schedule the
3137         element for insertion into the document if the element is forbidden. This
3138         is slightly clearer than leaving an empty forbidden element in the document.
3139
3140         (WebCore::HTMLConstructionSite::createElement):
3141         (WebCore::HTMLConstructionSite::createHTMLElement):
3142         * html/parser/HTMLConstructionSite.h:
3143         (HTMLConstructionSite):
3144         (WebCore::HTMLConstructionSite::parserContentPolicy):
3145         * html/parser/HTMLDocumentParser.cpp:
3146         (WebCore::HTMLDocumentParser::HTMLDocumentParser):
3147         (WebCore::HTMLDocumentParser::runScriptsForPausedTreeBuilder):
3148         (WebCore::HTMLDocumentParser::parseDocumentFragment):
3149         * html/parser/HTMLDocumentParser.h:
3150         (HTMLDocumentParser):
3151         (WebCore::HTMLDocumentParser::create):
3152         * html/parser/HTMLTreeBuilder.cpp:
3153         (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
3154         (WebCore::HTMLTreeBuilder::FragmentParsingContext::FragmentParsingContext):
3155         Updated for renames and interface changes above.
3156
3157         (WebCore::HTMLTreeBuilder::processStartTagForInBody):
3158         (WebCore::HTMLTreeBuilder::processEndTag): Removed isParsingFragment()
3159         checks to make it possible to use ParserContentPolicy in more places.
3160
3161         Removed call to removeChildren() because, if an element is forbidden,
3162         we fully remove the element now. This brings behavior for <script>
3163         elements in line with behavior for plug-in elements. It also brings
3164         behavior of the HTML parser in line with behavior of the XML parser.
3165
3166         * html/parser/HTMLTreeBuilder.h:
3167         (WebCore::HTMLTreeBuilder::create):
3168         (FragmentParsingContext):
3169         (WebCore::HTMLTreeBuilder::FragmentParsingContext::contextElement):
3170         * platform/blackberry/PasteboardBlackBerry.cpp:
3171         (WebCore::Pasteboard::documentFragment):
3172         * platform/chromium/DragDataChromium.cpp:
3173         (WebCore::DragData::asFragment):
3174         * platform/chromium/PasteboardChromium.cpp:
3175         (WebCore::Pasteboard::documentFragment):
3176         * platform/gtk/PasteboardGtk.cpp:
3177         (WebCore::Pasteboard::documentFragment):
3178         * platform/mac/PasteboardMac.mm:
3179         (WebCore::Pasteboard::documentFragment):
3180         * platform/qt/DragDataQt.cpp:
3181         (WebCore::DragData::asFragment):
3182         * platform/qt/PasteboardQt.cpp:
3183         (WebCore::Pasteboard::documentFragment):
3184         * platform/win/ClipboardUtilitiesWin.cpp:
3185         (WebCore::fragmentFromCFHTML):
3186         (WebCore::fragmentFromHTML):
3187         * platform/wx/PasteboardWx.cpp:
3188         (WebCore::Pasteboard::documentFragment): Updated for renames and interface
3189         changes.
3190
3191         * svg/SVGAElement.cpp:
3192         (WebCore::SVGAElement::isURLAttribute): Fixed a bug where SVG anchor
3193         elements didn't identify their URL attributes.
3194
3195         * svg/SVGAElement.h:
3196         (SVGAElement):
3197
3198         * xml/XMLErrors.cpp:
3199         (WebCore::createXHTMLParserErrorHeader):
3200         (WebCore::XMLErrors::insertErrorMessageBlock): No need to disallow
3201         scripting attributes here because we're creating the attributes 
3202         ourselves and we know they're not scripting attributes.
3203
3204         * xml/parser/XMLDocumentParser.cpp:
3205         (WebCore::XMLDocumentParser::parseDocumentFragment):
3206         * xml/parser/XMLDocumentParser.h:
3207         (WebCore::XMLDocumentParser::create):
3208         (XMLDocumentParser): Updated for renames and interface changes above.
3209
3210         Removed the 8 inline capacity in the attribute vector so we could share
3211         helper functions with the HTML parser, which didn't have it.
3212
3213         * xml/parser/XMLDocumentParserLibxml2.cpp:
3214         (WebCore::setAttributes):
3215         (WebCore):
3216         (WebCore::XMLDocumentParser::XMLDocumentParser):
3217         (WebCore::handleNamespaceAttributes):
3218         (WebCore::handleElementAttributes):
3219         (WebCore::XMLDocumentParser::startElementNs):
3220         (WebCore::XMLDocumentParser::endElementNs):
3221         * xml/parser/XMLDocumentParserQt.cpp:
3222         (WebCore::setAttributes):
3223         (WebCore):
3224         (WebCore::XMLDocumentParser::XMLDocumentParser):
3225         (WebCore::handleNamespaceAttributes):
3226         (WebCore::handleElementAttributes):
3227         (WebCore::XMLDocumentParser::parseStartElement):
3228         (WebCore::XMLDocumentParser::parseEndElement): Same changes as for the
3229         HTML parser.
3230
3231 2013-03-19  Philip Rogers  <pdr@google.com>
3232
3233         Clean up static_casts for SVG renderers
3234         https://bugs.webkit.org/show_bug.cgi?id=111651
3235
3236         Reviewed by Abhishek Arya.
3237
3238         toRenderSVGPath and toRenderSVGFilter are preferred over static_casts because bad casts can
3239         be caught on our testing infrastructure. This patch replaces all static_casts for
3240         RenderSVGPath and RenderSVGFilter with toRenderSVGPath and toRenderSVGFilter, respectively.
3241
3242         This patch also adds FIXME to the remaining toRenderSVG* instances that are missing.
3243
3244         No new tests as this is covered with existing tests.
3245
3246         * rendering/RenderLayer.cpp:
3247         (WebCore::RenderLayer::paintLayerContents):
3248
3249             This call is currently safe due to the element->hasTagName(SVGNames::clipPathTag) check.
3250
3251         * rendering/svg/RenderSVGPath.h:
3252         (WebCore):
3253         (WebCore::toRenderSVGPath):
3254         * rendering/svg/RenderSVGResourceFilter.h:
3255         (WebCore):
3256         (WebCore::toRenderSVGFilter):
3257         * rendering/svg/RenderSVGResourceFilterPrimitive.cpp:
3258         (WebCore::RenderSVGResourceFilterPrimitive::styleDidChange):
3259         * rendering/svg/RenderSVGRoot.cpp:
3260         (WebCore::RenderSVGRoot::addResourceForClientInvalidation):
3261         * rendering/svg/SVGRenderSupport.cpp:
3262         (WebCore::SVGRenderSupport::repaintRectForRendererInLocalCoordinatesExcludingSVGShadow):
3263         (WebCore::SVGRenderSupport::rendererHasSVGShadow):
3264         (WebCore::SVGRenderSupport::setRendererHasSVGShadow):
3265         * rendering/svg/SVGRenderingContext.cpp:
3266         (WebCore::SVGRenderingContext::~SVGRenderingContext):
3267
3268             This cast was not correct! Thankfully it was not required anyway.
3269
3270         * svg/SVGCircleElement.cpp:
3271         (WebCore::SVGCircleElement::svgAttributeChanged):
3272
3273             This cast was not correct!
3274
3275         * svg/SVGEllipseElement.cpp:
3276         (WebCore::SVGEllipseElement::svgAttributeChanged):
3277
3278             This cast was not correct!
3279
3280         * svg/SVGLineElement.cpp:
3281         (WebCore::SVGLineElement::svgAttributeChanged):
3282         * svg/SVGPathElement.cpp:
3283         (WebCore::SVGPathElement::svgAttributeChanged):
3284         (WebCore::SVGPathElement::pathSegListChanged):
3285         (WebCore::SVGPathElement::getBBox):
3286         * svg/SVGPolyElement.cpp:
3287         (WebCore::SVGPolyElement::svgAttributeChanged):
3288         * svg/SVGRectElement.cpp:
3289         (WebCore::SVGRectElement::svgAttributeChanged):
3290
3291 2013-03-19  Beth Dakin  <bdakin@apple.com>
3292
3293         RenderLayer::scrollTo() should call FrameLoaderClient::didChangeScrollOffset()
3294         https://bugs.webkit.org/show_bug.cgi?id=110673
3295
3296         Reviewed by Simon Fraser.
3297
3298         FrameLoaderClient::didChangeScrollOffset() should be called whenever something is 
3299         actually being scrolled. 
3300
3301         * rendering/RenderLayer.cpp:
3302         (WebCore::RenderLayer::scrollTo):
3303
3304 2013-03-19  Marja Hölttä  <marja@chromium.org>
3305
3306         [V8] Add machinery for generating specialized bindings for the main world
3307         https://bugs.webkit.org/show_bug.cgi?id=111417
3308
3309         Reviewed by Jochen Eisinger.
3310
3311         The new specialized bindings will be faster, because they don't need to
3312         do the "main world, isolated world or a worker" check, but can right
3313         away assume that we're in the main world.
3314
3315         Added an IDL attribute (V8PerWorldBindings) to define which
3316         attribute getters / setters to specialize.
3317
3318         This patch generates main world bindings for getters and setters of Node
3319         and Element. (The possibility to generate bindings for callbacks will be
3320         added later.)
3321
3322         No new tests (updated existing bindings tests).
3323
3324         * bindings/scripts/CodeGeneratorV8.pm:
3325         (GenerateHeader):
3326         (GenerateNormalAttrGetterCallback):
3327         (GenerateNormalAttrGetter):
3328         (GenerateNormalAttrSetterCallback):
3329         (GenerateNormalAttrSetter):
3330         (GenerateNamedConstructor):
3331         (GenerateSingleBatchedAttribute):
3332         (GenerateImplementation):
3333         (GenerateCallbackImplementation):
3334         (GenerateFunctionCallString):
3335         (CreateCustomSignature):
3336         (NativeToJSValue):
3337         * bindings/scripts/IDLAttributes.txt:
3338         * bindings/scripts/test/V8/V8Float64Array.cpp:
3339         (WebCore::ConfigureV8Float64ArrayTemplate):
3340         (WebCore::V8Float64Array::GetTemplate):
3341         (WebCore::V8Float64Array::HasInstance):
3342         * bindings/scripts/test/V8/V8Float64Array.h:
3343         (WebCore::toV8ForMainWorld):
3344         (WebCore):
3345         (WebCore::toV8FastForMainWorld):
3346         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
3347         (WebCore):
3348         (WebCore::ConfigureV8TestActiveDOMObjectTemplate):
3349         (WebCore::V8TestActiveDOMObject::GetTemplate):
3350         (WebCore::V8TestActiveDOMObject::HasInstance):
3351         * bindings/scripts/test/V8/V8TestActiveDOMObject.h:
3352         (WebCore::toV8ForMainWorld):
3353         (WebCore):
3354         (WebCore::toV8FastForMainWorld):
3355         * bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
3356         (WebCore::ConfigureV8TestCustomNamedGetterTemplate):
3357         (WebCore::V8TestCustomNamedGetter::GetTemplate):
3358         (WebCore::V8TestCustomNamedGetter::HasInstance):
3359         * bindings/scripts/test/V8/V8TestCustomNamedGetter.h:
3360         (WebCore::toV8ForMainWorld):
3361         (WebCore):
3362         (WebCore::toV8FastForMainWorld):
3363         * bindings/scripts/test/V8/V8TestEventConstructor.cpp:
3364         (WebCore):
3365         (WebCore::ConfigureV8TestEventConstructorTemplate):
3366         (WebCore::V8TestEventConstructor::GetTemplate):
3367         (WebCore::V8TestEventConstructor::HasInstance):
3368         * bindings/scripts/test/V8/V8TestEventConstructor.h:
3369         (WebCore::toV8ForMainWorld):
3370         (WebCore):
3371         (WebCore::toV8FastForMainWorld):
3372         * bindings/scripts/test/V8/V8TestEventTarget.cpp:
3373         (WebCore::ConfigureV8TestEventTargetTemplate):
3374         (WebCore::V8TestEventTarget::GetTemplate):
3375         (WebCore::V8TestEventTarget::HasInstance):
3376         * bindings/scripts/test/V8/V8TestEventTarget.h:
3377         (WebCore::toV8ForMainWorld):
3378         (WebCore):
3379         (WebCore::toV8FastForMainWorld):
3380         * bindings/scripts/test/V8/V8TestException.cpp:
3381         (WebCore):
3382         (WebCore::ConfigureV8TestExceptionTemplate):
3383         (WebCore::V8TestException::GetTemplate):
3384         (WebCore::V8TestException::HasInstance):
3385         * bindings/scripts/test/V8/V8TestException.h:
3386         (WebCore::toV8ForMainWorld):
3387         (WebCore):
3388         (WebCore::toV8FastForMainWorld):
3389         * bindings/scripts/test/V8/V8TestInterface.cpp:
3390         (WebCore):
3391         (WebCore::ConfigureV8TestInterfaceTemplate):
3392         (WebCore::V8TestInterface::GetTemplate):
3393         (WebCore::V8TestInterface::HasInstance):
3394         * bindings/scripts/test/V8/V8TestInterface.h:
3395         (WebCore::toV8ForMainWorld):
3396         (WebCore):
3397         (WebCore::toV8FastForMainWorld):
3398         * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
3399         (WebCore::ConfigureV8TestMediaQueryListListenerTemplate):
3400         (WebCore::V8TestMediaQueryListListener::GetTemplate):
3401         (WebCore::V8TestMediaQueryListListener::HasInstance):
3402         * bindings/scripts/test/V8/V8TestMediaQueryListListener.h:
3403         (WebCore::toV8ForMainWorld):
3404         (WebCore):
3405         (WebCore::toV8FastForMainWorld):
3406         * bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
3407         (WebCore::V8TestNamedConstructorConstructor::GetTemplate):
3408         (WebCore::ConfigureV8TestNamedConstructorTemplate):
3409         (WebCore::V8TestNamedConstructor::GetTemplate):
3410         (WebCore::V8TestNamedConstructor::HasInstance):
3411         * bindings/scripts/test/V8/V8TestNamedConstructor.h:
3412         (WebCore::toV8ForMainWorld):
3413         (WebCore):
3414         (WebCore::toV8FastForMainWorld):
3415         * bindings/scripts/test/V8/V8TestNode.cpp:
3416         (WebCore::ConfigureV8TestNodeTemplate):
3417         (WebCore::V8TestNode::GetTemplate):
3418         (WebCore::V8TestNode::HasInstance):
3419         * bindings/scripts/test/V8/V8TestNode.h:
3420         (WebCore::toV8ForMainWorld):
3421         (WebCore):
3422         (WebCore::toV8FastForMainWorld):
3423         * bindings/scripts/test/V8/V8TestObj.cpp:
3424         (WebCore):
3425         (WebCore::ConfigureV8TestObjTemplate):
3426         (WebCore::V8TestObj::GetTemplate):
3427         (WebCore::V8TestObj::HasInstance):
3428         (WebCore::V8TestObj::installPerContextProperties):
3429         * bindings/scripts/test/V8/V8TestObj.h:
3430         (WebCore::toV8ForMainWorld):
3431         (WebCore):
3432         (WebCore::toV8FastForMainWorld):
3433         * bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:
3434         (WebCore::ConfigureV8TestOverloadedConstructorsTemplate):
3435         (WebCore::V8TestOverloadedConstructors::GetTemplate):
3436         (WebCore::V8TestOverloadedConstructors::HasInstance):
3437         * bindings/scripts/test/V8/V8TestOverloadedConstructors.h:
3438         (WebCore::toV8ForMainWorld):
3439         (WebCore):
3440         (WebCore::toV8FastForMainWorld):
3441         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
3442         (WebCore):
3443         (WebCore::ConfigureV8TestSerializedScriptValueInterfaceTemplate):
3444         (WebCore::V8TestSerializedScriptValueInterface::GetTemplate):
3445         (WebCore::V8TestSerializedScriptValueInterface::HasInstance):
3446         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:
3447         (WebCore::toV8ForMainWorld):
3448         (WebCore):
3449         (WebCore::toV8FastForMainWorld):
3450         * bindings/scripts/test/V8/V8TestTypedefs.cpp:
3451         (WebCore):
3452         (WebCore::ConfigureV8TestTypedefsTemplate):
3453         (WebCore::V8TestTypedefs::GetTemplate):
3454         (WebCore::V8TestTypedefs::HasInstance):
3455         * bindings/scripts/test/V8/V8TestTypedefs.h:
3456         (WebCore::toV8ForMainWorld):
3457         (WebCore):
3458         (WebCore::toV8FastForMainWorld):
3459         * bindings/v8/DOMDataStore.h:
3460         (WebCore::DOMDataStore::getWrapperForMainWorld):
3461         (DOMDataStore):
3462         * bindings/v8/V8DOMConfiguration.cpp:
3463         (WebCore::V8DOMConfiguration::batchConfigureAttributes):
3464         (WebCore::V8DOMConfiguration::configureTemplate):
3465         * bindings/v8/V8DOMConfiguration.h:
3466         (BatchedAttribute):
3467         (V8DOMConfiguration):
3468         (WebCore::V8DOMConfiguration::configureAttribute):
3469         * bindings/v8/custom/V8DOMWindowCustom.cpp:
3470         (WebCore::toV8ForMainWorld):
3471         (WebCore):
3472         * bindings/v8/custom/V8EventTargetCustom.cpp:
3473         (WebCore::toV8ForMainWorld):
3474         (WebCore):
3475         * bindings/v8/custom/V8IDBAnyCustom.cpp:
3476         (WebCore::toV8ForMainWorld):
3477         (WebCore):
3478         * bindings/v8/custom/V8MicroDataItemValueCustom.cpp:
3479  &