58365fd0329d522f4e2fbb4b3fec01c0286a7f64
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-05-10  Alexey Proskuryakov  <ap@apple.com>
2
3         Make TextCodecICU not depend on TextEncoding
4         https://bugs.webkit.org/show_bug.cgi?id=115848
5
6         Reviewed by Darin Adler.
7
8         * platform/text/TextCodecICU.cpp:
9         (WebCore::TextCodecICU::create):
10         (WebCore::TextCodecICU::TextCodecICU):
11         (WebCore::TextCodecICU::createICUConverter):
12         (WebCore::TextCodecICU::decode):
13         (WebCore::TextCodecICU::encode):
14         * platform/text/TextCodecICU.h:
15         Use a plain encoding string in platform encoder wrapper, not a higher level concept.
16
17 2013-05-10  Laszlo Gombos  <l.gombos@samsung.com>
18
19         Remove Mac OS X Leopard (10.5) support
20         https://bugs.webkit.org/show_bug.cgi?id=107964
21
22         Reviewed by Ryosuke Niwa.
23
24         Removed the code for 10.5 and removed if-def for 10.6.
25
26         No new tests, covered by existing tests.
27
28         * platform/LocalizedStrings.cpp:
29         (WebCore::contextMenuItemTagLookUpInDictionary):
30         * platform/graphics/cg/GraphicsContextCG.cpp:
31         * platform/mac/EmptyProtocolDefinitions.h:
32         * platform/mac/NSScrollerImpDetails.h:
33         * platform/mac/WebCoreSystemInterface.h:
34         * platform/text/mac/HyphenationMac.mm:
35
36 2013-05-10  Laszlo Gombos  <l.gombos@samsung.com>
37
38         Remove USE(OS_RANDOMNESS)
39         https://bugs.webkit.org/show_bug.cgi?id=108095
40
41         Reviewed by Darin Adler.
42
43         Remove the USE(OS_RANDOMNESS) guard as it is turned on for all
44         ports.
45
46         No new tests as this is covered by existing tests.
47
48         * page/Crypto.cpp:
49         (WebCore::Crypto::getRandomValues):
50         * platform/UUID.cpp:
51         (WebCore::createCanonicalUUIDString):
52
53 2013-05-10  Christophe Dumez  <ch.dumez@sisa.samsung.com>
54
55         Remove [NoInterfaceObject] from several WebAudio IDL interfaces
56         https://bugs.webkit.org/show_bug.cgi?id=115894
57
58         Reviewed by Darin Adler.
59
60         Several WebAudio IDL interfaces had [NoInterfaceObject] extended attribute set,
61         meaning that there was no corresponding attribute on the global window object.
62         This behavior is not according to the specification:
63         https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html
64
65         This patch removes the [NoInterfaceObject] extended attribute where needed to
66         match the specification.
67
68         No new tests, already covered by existing tests.
69
70         * Modules/webaudio/AnalyserNode.idl:
71         * Modules/webaudio/AudioBuffer.idl:
72         * Modules/webaudio/AudioBufferSourceNode.idl:
73         * Modules/webaudio/AudioDestinationNode.idl:
74         * Modules/webaudio/AudioListener.idl:
75         * Modules/webaudio/AudioNode.idl:
76         * Modules/webaudio/AudioParam.idl:
77         * Modules/webaudio/BiquadFilterNode.idl:
78         * Modules/webaudio/ChannelMergerNode.idl:
79         * Modules/webaudio/ChannelSplitterNode.idl:
80         * Modules/webaudio/ConvolverNode.idl:
81         * Modules/webaudio/DelayNode.idl:
82         * Modules/webaudio/DynamicsCompressorNode.idl:
83         * Modules/webaudio/GainNode.idl:
84         * Modules/webaudio/MediaElementAudioSourceNode.idl:
85         * Modules/webaudio/MediaStreamAudioDestinationNode.idl:
86         * Modules/webaudio/MediaStreamAudioSourceNode.idl:
87         * Modules/webaudio/OscillatorNode.idl:
88         * Modules/webaudio/ScriptProcessorNode.idl:
89         * Modules/webaudio/WaveShaperNode.idl:
90         * Modules/webaudio/WaveTable.idl:
91
92 2013-05-10  Simon Fraser  <simon.fraser@apple.com>
93
94         REGRESSION (r145680): No box shadow rendered on element with positioned child that obscures it
95         https://bugs.webkit.org/show_bug.cgi?id=115840
96
97         Reviewed by Antti Koivisto.
98         
99         In r107836, we moved some box-shadow painting into the paintFillLayer code for performance.
100         However, in r145680 we started to skip background painting when we know the background is
101         obscured. This broke shadow painting in some cases.
102         
103         Fix by always painting the background fill layers if we know that they will also
104         paint the shadow.
105
106         Test: fast/box-shadow/box-shadow-obscured-backgrounds.html
107
108         * rendering/RenderBox.cpp:
109         (WebCore::RenderBox::paintBackground):
110
111 2013-05-10  Simon Fraser  <simon.fraser@apple.com>
112
113         REGRESSION (r143626): Element shows as garbage in image gallery
114         https://bugs.webkit.org/show_bug.cgi?id=115946
115
116         Reviewed by Antti Koivisto.
117         
118         RenderLayer::backgroundIsKnownToBeOpaqueInRect() used hasVisibleContent()
119         to check whether the layer's content was hidden via the visibility property.
120         However, this assumed that a passing hasVisibleContent() check meant that the
121         entire area was covered by the renderers and layers checked layer.
122         
123         This is not always true. It's possible to have a visibility:hidden layer
124         with a non-covering visbility:visible child, or even a single RenderText
125         child that happens to have visibility:visible style. In these situations,
126         hasVisibleContent() returns true but the entire area is not painted.
127         
128         So we have to fall back to on a more conservative check using the
129         visibility style, which will give is a reliable answer for the current layer.
130
131         Tests: compositing/contents-opaque/hidden-with-visible-child.html
132                compositing/contents-opaque/hidden-with-visible-text.html
133
134         * rendering/RenderLayer.cpp:
135         (WebCore::RenderLayer::backgroundIsKnownToBeOpaqueInRect):
136
137 2013-05-10  Simon Fraser  <simon.fraser@apple.com>
138
139         Garbage down left side of nytimes.com page (if subscriber)
140         https://bugs.webkit.org/show_bug.cgi?id=115839
141
142         Reviewed by Antti Koivisto.
143         
144         RenderLayer::backgroundIsKnownToBeOpaqueInRect() would incorrectly return true
145         for layers where the given rect wasn't contained in the background rect, but
146         where some child layer obscured the rect, even though clipping hid part
147         of that child layer.
148         
149         So bail from RenderLayer::backgroundIsKnownToBeOpaqueInRect() if we have
150         any overflow clipping. This could be enhanced in future to test whether child
151         layers obscure the clipping rect, but that would be more expensive.
152
153         Test: compositing/contents-opaque/overflow-hidden-child-layers.html
154
155         * rendering/RenderLayer.cpp:
156         (WebCore::RenderLayer::backgroundIsKnownToBeOpaqueInRect):
157
158 2013-05-10  Eric Carlson  <eric.carlson@apple.com>
159
160         In-band captions not visible immediately after track mode change
161         https://bugs.webkit.org/show_bug.cgi?id=115922
162
163         Reviewed by Dean Jackson.
164
165         Test: media/track/track-in-band-mode.html
166
167         * html/HTMLMediaElement.cpp:
168         (WebCore::HTMLMediaElement::textTrackModeChanged): Add cues for all loaded tracks, regardless
169             of track type.
170
171 2013-05-10  Timothy Hatcher  <timothy@apple.com>
172
173         Web Inspector: determine the resource type in InspectorResourceAgent::willSendRequest.
174
175         This allows the Network timeline and Resources sidebar to filter Resources earlier,
176         before the server sends a response. Useful for long polling (comet) XHRs.
177
178         https://webkit.org/b/74935
179         rdar://problem/13726105
180
181         Reviewed by Joseph Pecoraro.
182
183         * inspector/Inspector.json:
184         (Network.requestWillBeSent): Added.
185         * inspector/InspectorResourceAgent.cpp:
186         (WebCore::InspectorResourceAgent::willSendRequest): Send the type if it isn't Other along in requestWillBeSent.
187         (WebCore::InspectorResourceAgent::didReceiveResponse): Don't determine the type here anymore. Clear the CachedResource
188         if isNotModified like the old code path did by not setting cachedResource if !isNotModified.
189
190 2013-05-10  Laszlo Gombos  <l.gombos@samsung.com>
191
192         [CMake] Consolidate list of files to build for WebCore plugin support
193         https://bugs.webkit.org/show_bug.cgi?id=104429
194
195         Reviewed by Rob Buis.
196
197         Move the common files to support plugins and the logic for disabling
198         plugins) to CMakeLists.txt from PlatformXXX.cmake.
199
200         No new tests as there is no new functionality.
201
202         * CMakeLists.txt:
203         * PlatformBlackBerry.cmake:
204         * PlatformEfl.cmake:
205         * PlatformWinCE.cmake:
206
207 2013-05-10  Robert Hogan  <robert@webkit.org>
208
209         REGRESSION(r148121): Empty Span does not get a linebox when it's in an anonymous block
210         https://bugs.webkit.org/show_bug.cgi?id=115818
211
212         Reviewed by David Hyatt.
213
214         r148121 only worried about split inlines inside anonymous blocks - it ought to have 
215         catered for empty inlines, with no continuations, inside a single solitary anonymous block too.
216
217         Test: fast/inline/anonymous-block-with-empty-inline.html
218
219         * rendering/RenderBlockLineLayout.cpp:
220         (WebCore::hasInlineDirectionBordersPaddingOrMargin):
221
222 2013-05-10  Zan Dobersek  <zdobersek@igalia.com>
223
224         [GTK] Remove unnecessary includes in WidgetGtk.cpp
225         https://bugs.webkit.org/show_bug.cgi?id=115912
226
227         Reviewed by Andreas Kling.
228
229         No new tests - no new functionality.
230
231         * platform/gtk/WidgetGtk.cpp: Remove the unnecessary includes of the Chrome.h, Frame.h, FrameView.h,
232         Page.h and RenderObject.h headers as the included declarations are not used anywhere. ScrollView.h is
233         included instead as it is required and was previously included by one of the removed header inclusions.
234
235 2013-05-10  Zan Dobersek  <zdobersek@igalia.com>
236
237         [Cairo] Remove the unnecessary ImageData.h include in ImageBufferCairo.cpp
238         https://bugs.webkit.org/show_bug.cgi?id=115911
239
240         Reviewed by Carlos Garcia Campos.
241
242         No new tests - no new functionality.
243
244         * platform/graphics/cairo/ImageBufferCairo.cpp: Remove the ImageData.h include
245         as the included declarations are not used anywhere.
246
247 2013-05-10  Zan Dobersek  <zdobersek@igalia.com>
248
249         [Cairo] Remove the unnecessary CSSParser.h include in GradientCairo.cpp
250         https://bugs.webkit.org/show_bug.cgi?id=115910
251
252         Reviewed by Laszlo Gombos.
253
254         No new tests - no new functionality.
255
256         * platform/graphics/cairo/GradientCairo.cpp: Remove the CSSParser.h include
257         as the included declarations are not used anywhere.
258
259 2013-05-10  Dean Jackson  <dino@apple.com>
260
261         Include tab character as a word end for kerning
262         https://bugs.webkit.org/show_bug.cgi?id=115915
263         <rdar://problem/13861491>
264
265         Reviewed by Enrica Casucci.
266
267         This is a follow-up to https://bugs.webkit.org/show_bug.cgi?id=112507
268         which only looked for a space character as a word end. It should
269         look for tab characters too.
270
271         Test: fast/text/word-space-with-kerning-4.html
272
273         * rendering/RenderBlockLineLayout.cpp:
274         (WebCore::setLogicalWidthForTextRun): Look for '\t'.
275
276 2013-05-10  Anders Carlsson  <andersca@apple.com>
277
278         Remove EventTracer
279         https://bugs.webkit.org/show_bug.cgi?id=115916
280
281         Reviewed by Sam Weinig.
282
283         EventTracer is dead code, remove it.
284
285         * CMakeLists.txt:
286         * GNUmakefile.list.am:
287         * Target.pri:
288         * WebCore.vcproj/WebCore.vcproj:
289         * WebCore.vcxproj/WebCore.vcxproj:
290         * WebCore.vcxproj/WebCore.vcxproj.filters:
291         * WebCore.xcodeproj/project.pbxproj:
292         * platform/EventTracer.cpp: Removed.
293         * platform/EventTracer.h: Removed.
294
295 2013-05-10  Zan Dobersek  <zdobersek@igalia.com>
296
297         [GTK] Generated files are regenerated always
298         https://bugs.webkit.org/show_bug.cgi?id=115908
299
300         Reviewed by Carlos Garcia Campos.
301
302         No new tests - no change in functionality.
303
304         * GNUmakefile.am: Don't treat the window constructors IDL file as a dependency of the JavaScriptCore bindings.
305         The file is generated during the IDL preprocessing, and the JSC bindings already depend on that step through
306         the idl_supplemental_dependencies file. Because of that the window constructors IDL file has a phony target
307         which seems to confuse the bindings generation rule into thinking that a complete regeration of the bindings is required.
308
309 2013-05-10  Andreas Kling  <akling@apple.com>
310
311         Caching of generated images in CSS should be smarter.
312         <http://webkit.org/b/115902>
313         <rdar://problem/13542727>
314
315         Reviewed by Antti Koivisto.
316
317         Add an IntSize => GeneratorGeneratedImage cache at the CSSImageGeneratorValue level.
318
319         CSSGradientValue is currently the only CSSImageGeneratorValue subclass that makes use of the cache.
320         Generated images are kept for 3 seconds after last use.
321
322         The main problem with the previous approach was that background renderers (e.g <body>, <tr>, etc)
323         would be passed to multiple CSSImageGeneratorValue::getImage() calls with different sizes requested
324         for each of the descendent renderers that inherit their background from the same parent.
325         The cache wasn't smart enough for this, it just thought the background renderer was changing size
326         a lot, and would regenerate the image over and over.
327
328         We already had caching of intermediate image buffers for GeneratorGeneratedImage::drawPattern().
329         This removes the eviction timer from that cache so that the intermediate images can live a bit longer.
330
331         (WebCore::CSSImageGeneratorValue::cachedImageForSize):
332         (WebCore::CSSImageGeneratorValue::saveCachedImageForSize):
333
334             Renamed from getImage() and putImage().
335
336         (WebCore::CSSImageGeneratorValue::evictCachedGeneratedImage):
337         (WebCore::CSSImageGeneratorValue::CachedGeneratedImage::CachedGeneratedImage):
338         (WebCore::CSSImageGeneratorValue::CachedGeneratedImage::evictionTimerFired):
339
340             Let the CachedGeneratedImage throw itself out from cache when the timer fires.
341
342         * css/CSSImageGeneratorValue.h:
343         (CachedGeneratedImage):
344
345             Exactly what it sounds like. These go into CSSImageGeneratorValue::m_images with the size
346             as the hash key.
347
348         * platform/graphics/GeneratorGeneratedImage.cpp:
349         (WebCore::GeneratorGeneratedImage::drawPattern):
350         * platform/graphics/GeneratorGeneratedImage.h:
351         (WebCore::GeneratorGeneratedImage::~GeneratorGeneratedImage):
352         (WebCore::GeneratorGeneratedImage::GeneratorGeneratedImage):
353
354             Keep the intermediate image for drawPattern() until destruction instead of dropping it on
355             a timer. These objects are now evicted by the CSSImageGeneratorValue's image cache
356             after 3 seconds of disuse rather than kept for the lifetime of the renderer.
357
358         * css/CSSCanvasValue.cpp:
359         (WebCore::CSSCanvasValue::canvasChanged):
360         (WebCore::CSSCanvasValue::canvasResized):
361         * css/CSSCrossfadeValue.cpp:
362         (WebCore::CSSCrossfadeValue::crossfadeChanged):
363         * rendering/style/StyleGeneratedImage.cpp:
364         (WebCore::StyleGeneratedImage::addClient):
365         * css/CSSImageGeneratorValue.cpp:
366         (WebCore::CSSImageGeneratorValue::addClient):
367         (WebCore::CSSImageGeneratorValue::removeClient):
368
369             CSSImageGeneratorValue::m_clients is now a HashCountedSet<RenderObject*>, tweak accordingly.
370
371 2013-05-10  Anders Carlsson  <andersca@apple.com>
372
373         Remove MemoryUsageSupport class
374         https://bugs.webkit.org/show_bug.cgi?id=115913
375
376         Reviewed by Andreas Kling.
377
378         MemoryUsageSupport was just used by a single call site in InspectorTimelineAgent,
379         and the function called always returns zero on all platforms! Remove it.
380
381         * CMakeLists.txt:
382         * GNUmakefile.list.am:
383         * Target.pri:
384         * WebCore.vcproj/WebCore.vcproj:
385         * WebCore.vcxproj/WebCore.vcxproj:
386         * WebCore.vcxproj/WebCore.vcxproj.filters:
387         * WebCore.xcodeproj/project.pbxproj:
388         * inspector/InspectorMemoryAgent.cpp:
389         * inspector/InspectorTimelineAgent.cpp:
390         (WebCore):
391         (WebCore::InspectorTimelineAgent::setNativeHeapStatistics):
392         * platform/MemoryUsageSupport.cpp: Removed.
393         * platform/MemoryUsageSupport.h: Removed.
394         * platform/qt/MemoryUsageSupportQt.cpp: Removed.
395
396 2013-05-10  Ryosuke Niwa  <rniwa@webkit.org>
397
398         REGRESSION (r149652): Videos do not play on cnn.com, just black box
399         https://bugs.webkit.org/show_bug.cgi?id=115887
400
401         Reviewed by Antti Koivisto.
402
403         The bug was caused by window and document named item maps counting the same element twice
404         when it has the same id and name attribute values. Fixed the bug by avoiding to add or remove
405         an element per id and name attribute updates when it had already been added or removed by
406         name and id attribute updates respectively.
407
408         We do this by checking whether the other attribute affects the element's precense in window
409         and document named item maps and avoiding to add or remove the attribute when they do and
410         the other attribute is present in updateId and updateName.
411
412         Consider a scenario when an object element has id "foo", and name attribute is about to be also
413         set to "foo". If the id attribute doesn't affect element's presense in window or document
414         named item maps, we're done. If it does, then the maps already have this element so we don't
415         want to add it again. Conversely, if the element already has id and name attributes set to
416         "foo", and we're moving the id attribute, then we want to remove the element from the maps only
417         if the id doesn't affect the presence of the element in the maps.
418
419         Unfortuntely, this logic doesn't work when we're inserting or removing an element on its entirely
420         because updateId and updateName are called when both id and name attributes are present so skip
421         this step (AlwaysUpdateHTMLDocumentNamedItemMaps) for the id attribute to break the symmetry.
422
423         Test: fast/dom/HTMLDocument/image-with-same-id-and-name.html
424               fast/dom/HTMLDocument/object-with-same-id-and-name.html
425
426         * dom/Element.cpp:
427         (WebCore::Element::insertedInto): Call updateId and updateName with
428         AlwaysUpdateHTMLDocumentNamedItemMaps.
429         (WebCore::Element::removedFrom): Ditto.
430         (WebCore::Element::updateName): Don't add or remove this element if the id attribute has already
431         done so except when we're inserting, removing, or cloning an element.
432         (WebCore::Element::updateId): Ditto for the name attribute.
433         (WebCore::Element::cloneAttributesFromElement): Added a comment and assert that we never call this
434         function when this element is in the document. We can't update window and documemt named item
435         maps here because image element's id attribute value, for example, is present in the document's
436         named item map if it has a name attribute. Since this function calls updateId and updateName
437         before updating attributes, this check is going to fail in DocumentNameCollection's
438         nodeMatchesIfIdAttributeMatch and bad things will happen.
439
440         * dom/Element.h:
441
442         * editing/ReplaceNodeWithSpanCommand.cpp:
443         (WebCore::swapInNodePreservingAttributesAndChildren): Clone children and attributes before
444         inserting the swapped span to avoid hitting the assertion in cloneAttributesFromElement we added.
445
446         * html/HTMLImageElement.cpp:
447         (WebCore::HTMLImageElement::parseAttribute):
448
449         * html/HTMLObjectElement.cpp:
450         (WebCore::HTMLObjectElement::updateDocNamedItem):
451
452 2013-05-09  Dean Jackson  <dino@apple.com>
453
454         Don't trust character widths for internal OS X fonts in form controls
455         https://bugs.webkit.org/show_bug.cgi?id=115883
456         <rdar://problem/13817757>
457
458         Reviewed by Darin Adler.
459
460         We ignore the character width for a bunch of fonts when predicting
461         the width of a form control. Some of the internal fonts in OS X are
462         not in the ignored list. Rather than add them, simply test for
463         fonts whose family begins with a period character ".".
464
465         * rendering/RenderTextControl.cpp:
466         (WebCore::RenderTextControl::hasValidAvgCharWidth): Return false for
467             any family that starts with "."
468
469 2013-05-10  Carlos Garcia Campos  <cgarcia@igalia.com>
470
471         [GTK] Remove unnecessary GLIB_CHECK_VERSION #ifdefs
472         https://bugs.webkit.org/show_bug.cgi?id=115904
473
474         Reviewed by Martin Robinson.
475
476         * bindings/gobject/WebKitDOMEventTarget.cpp:
477         * platform/gtk/GtkVersioning.c:
478         * platform/gtk/GtkVersioning.h:
479
480 2013-05-10  Zoltan Arvai  <zarvai@inf.u-szeged.hu>
481
482         Unreviewed. Fix the ENABLE(SHARED_WORKERS) build after r149864.
483
484         * workers/SharedWorkerThread.cpp: include "SecurityOrigin.h"
485
486 2013-05-10  Claudio Saavedra  <csaavedra@igalia.com>
487
488         Fix build after r149864.
489
490         Unreviewed build fix.
491
492         * loader/ThreadableLoader.h: include <wtf/text/AtomicString.h>
493         when building with RESOURCE_TIMING enabled.
494
495 2013-05-10  Anders Carlsson  <andersca@apple.com>
496
497         Fix build.
498
499         * bindings/js/ScriptController.cpp:
500
501 2013-05-10  Anders Carlsson  <andersca@apple.com>
502
503         Remove ScriptInstance.h
504         https://bugs.webkit.org/show_bug.cgi?id=115900
505
506         Reviewed by Andreas Kling.
507
508         Remove yet another abstraction now that we don't support V8.
509
510         * GNUmakefile.list.am:
511         * WebCore.vcproj/WebCore.vcproj:
512         * WebCore.vcxproj/WebCore.vcxproj:
513         * WebCore.vcxproj/WebCore.vcxproj.filters:
514         * WebCore.xcodeproj/project.pbxproj:
515         * bindings/js/ScriptController.h:
516         (Bindings):
517         (ScriptController):
518         * bindings/js/ScriptControllerMac.mm:
519         (WebCore::ScriptController::createScriptInstanceForWidget):
520         * bindings/js/ScriptInstance.h: Removed.
521         * html/HTMLPlugInElement.cpp:
522         (WebCore::HTMLPlugInElement::getInstance):
523         * html/HTMLPlugInElement.h:
524         (Bindings):
525         (HTMLPlugInElement):
526         * platform/graphics/wince/MediaPlayerProxy.h:
527         (WebMediaPlayerProxy):
528         * rendering/RenderEmbeddedObject.cpp:
529         * rendering/RenderSnapshottedPlugIn.cpp:
530
531 2013-05-10  Anders Carlsson  <andersca@apple.com>
532
533         Unreviewed, rolling out r149866.
534         http://trac.webkit.org/changeset/149866
535         https://bugs.webkit.org/show_bug.cgi?id=115898
536
537         Broke tests
538
539         * dom/Document.cpp:
540         (WebCore::Document::setDomain):
541         (WebCore::Document::initSecurityContext):
542         * page/SecurityOrigin.cpp:
543         (WebCore::SecurityOrigin::SecurityOrigin):
544         (WebCore::SecurityOrigin::isolatedCopy):
545         (WebCore::SecurityOrigin::setDomainFromDOM):
546         (WebCore::SecurityOrigin::grantUniversalAccess):
547         * page/SecurityOrigin.h:
548         (SecurityOrigin):
549
550 2013-05-10  Andrei Bucur  <abucur@adobe.com>
551
552         Remove overflow dead code
553         https://bugs.webkit.org/show_bug.cgi?id=115893
554
555         Reviewed by Antti Koivisto.
556
557         The patch removes unused public overflow accesor functions from RenderOverflow and InlineFlowBox.
558
559         Tests: no tests, code cleanup.
560
561         * rendering/InlineFlowBox.h: Removed logicalLeftLayoutOverflow and logicalRightLayoutOverflow.
562         * rendering/RenderOverflow.h: Removed setMinYLayoutOverflow, setMaxYLayoutOverflow,
563             setMinXLayoutOverflow, setMaxXLayoutOverflow, setMinYVisualOverflow, setMaxYVisualOverflow,
564             setMinXVisualOverflow and setMaxXVisualOverflow.
565
566 2013-05-10  Anders Carlsson  <andersca@apple.com>
567
568         Begin making SecurityOrigin immutable
569         https://bugs.webkit.org/show_bug.cgi?id=115898
570
571         Reviewed by Andreas Kling.
572
573         Replace SecurityOrigin::setDomainFromDOM and SecurityOrigin::grantUniversalAccess with
574         member functions that return new SecurityOrigin objects.
575
576         * dom/Document.cpp:
577         (WebCore::Document::setDomain):
578         Update the security origin to one returned by copyWithDomainSetFromDOM.
579     
580         (WebCore::Document::initSecurityContext):
581         Set the security origin to one returned by copyWithUniversalAccessGranted().
582
583         * page/SecurityOrigin.cpp:
584         (WebCore::SecurityOrigin::SecurityOrigin):
585         Add a new constructor that takes all the member variables as parameters. This is a little unwieldy at the moment,
586         but all the boolean parameters could be replaced by a bitmask of flags.
587
588         (WebCore::SecurityOrigin::isolatedCopy):
589         Call the new constructor.
590
591         (WebCore::SecurityOrigin::copyWithDomainSetFromDOM):
592         Return a new security origin with m_domainWasSetInDOM set to true and the domain updated.
593
594         (WebCore::SecurityOrigin::copyWithUniversalAccessGranted):
595         Return a new security origin with m_universalAccess set to true.
596
597 2013-05-10  Anders Carlsson  <andersca@apple.com>
598
599         Remove ScriptController::updateSecurityOrigin
600         https://bugs.webkit.org/show_bug.cgi?id=115895
601
602         Reviewed by Antti Koivisto.
603
604         ScriptController::updateSecurityOrigin is just dead code now that the V8 bindings are gone.
605
606         * bindings/js/ScriptController.cpp:
607         * bindings/js/ScriptController.h:
608         * dom/Document.cpp:
609         (WebCore::Document::setIsViewSource):
610         (WebCore::Document::setDomain):
611         * dom/Document.h:
612         (Document):
613         * dom/SecurityContext.cpp:
614         (WebCore::SecurityContext::enforceSandboxFlags):
615         * dom/SecurityContext.h:
616         (SecurityContext):
617
618 2013-05-10  Anders Carlsson  <andersca@apple.com>
619
620         Stop including SecurityOrigin.h where unnecessary
621         https://bugs.webkit.org/show_bug.cgi?id=115897
622
623         Reviewed by Antti Koivisto.
624
625         Move rarely called functions out of line so headers don't have to include SecurityOrigin.h
626
627         * Modules/indexeddb/IDBFactoryBackendImpl.h:
628         * Modules/webdatabase/DatabaseBackendBase.cpp:
629         (WebCore::DatabaseBackendBase::databaseDebugName):
630         * Modules/webdatabase/DatabaseBackendBase.h:
631         (DatabaseBackendBase):
632         * Modules/webdatabase/DatabaseSync.h:
633         * bindings/js/JSDOMWindowCustom.h:
634         * html/parser/XSSAuditor.cpp:
635         * loader/ThreadableLoader.cpp:
636         (WebCore::ThreadableLoaderOptions::ThreadableLoaderOptions):
637         (WebCore::ThreadableLoaderOptions::~ThreadableLoaderOptions):
638         (WebCore::ThreadableLoader::create):
639         * loader/ThreadableLoader.h:
640         (ThreadableLoaderOptions):
641         * loader/WorkerThreadableLoader.cpp:
642         * workers/DedicatedWorkerContext.cpp:
643         * workers/DedicatedWorkerThread.cpp:
644         * workers/SharedWorkerContext.cpp:
645         * workers/WorkerThread.cpp:
646         * workers/WorkerThread.h:
647
648 2013-05-10  Carlos Garcia Campos  <cgarcia@igalia.com>
649
650         Unreviewed. Fix GTK+ build after r149839.
651
652         * platform/gtk/RenderThemeGtk3.cpp:
653         (WebCore::gtkStyleChangedCallback):
654
655 2013-05-09  Chris Fleizach  <cfleizach@apple.com>
656
657         AX: VoiceOver is no longer seeing items in poorly formed tables
658         https://bugs.webkit.org/show_bug.cgi?id=115837
659
660         Reviewed by Darin Adler.
661
662         In case the author didn't include the rows of a table as the 
663         direct children, a table needs to dive down its descendant chain
664         until the rows are found. 
665
666         I also took the opportunity to clean up a bit around what the different
667         meanings of table are in the accessibility classes.
668
669         Test: accessibility/poorly-formed-aria-table.html
670
671         * accessibility/AccessibilityARIAGrid.cpp:
672         (WebCore::AccessibilityARIAGrid::addRowDescendant):
673         (WebCore::AccessibilityARIAGrid::addChildren):
674         * accessibility/AccessibilityARIAGrid.h:
675         (AccessibilityARIAGrid):
676         * accessibility/AccessibilityARIAGridRow.cpp:
677         (WebCore::AccessibilityARIAGridRow::parentTable):
678         (WebCore):
679         * accessibility/AccessibilityARIAGridRow.h:
680         (AccessibilityARIAGridRow):
681         * accessibility/AccessibilityObject.h:
682         (WebCore::AccessibilityObject::isTable):
683         * accessibility/AccessibilityTable.h:
684         (AccessibilityTable):
685         (WebCore::AccessibilityTable::isTable):
686         (WebCore::toAccessibilityTable):
687         * accessibility/AccessibilityTableRow.cpp:
688         (WebCore::AccessibilityTableRow::parentTable):
689
690 2013-05-09  Yael Aharon  <yael.aharon@intel.com>
691
692         REGRESSION: Disabled multiline select element now responds to (certain) clicks
693         https://bugs.webkit.org/show_bug.cgi?id=115710
694
695         Reviewed by Kent Tamura.
696
697         After http://trac.webkit.org/changeset/140286, select elements can scroll whether they
698         are disabled or not. While they scroll, they also change the selected item.
699         This patch allows the select element to scroll, but does not change the selection
700         if the select element is disabled.        
701
702         Test: fast/forms/select/listbox-disabled-scroll-no-onchange.html
703         Test: fast/forms/select/listbox-disabled-no-autoscroll.html
704
705         * rendering/RenderListBox.cpp:
706         (WebCore::RenderListBox::autoscroll):
707         * rendering/RenderListBox.cpp:
708         (WebCore::RenderListBox::stopAutoscroll):
709
710 2013-05-09  Anders Carlsson  <andersca@apple.com>
711
712         Clean up SecurityOrigin::databaseIdentifier
713         https://bugs.webkit.org/show_bug.cgi?id=115882
714
715         Reviewed by Beth Dakin.
716
717         Remove m_encodedHost and just call encodeHost from databaseIdentifier().
718         Also, use a StringBuilder when constructing the database identifier to avoid allocating
719         temporary String objects over and over.
720
721         * page/SecurityOrigin.cpp:
722         (WebCore::SecurityOrigin::SecurityOrigin):
723         (WebCore):
724         (WebCore::SecurityOrigin::createFromDatabaseIdentifier):
725         (WebCore::SecurityOrigin::databaseIdentifier):
726         * page/SecurityOrigin.h:
727         (SecurityOrigin):
728
729 2013-05-09  Anders Carlsson  <andersca@apple.com>
730
731         Remove m_securityOrigin from XMLHttpRequest
732         https://bugs.webkit.org/show_bug.cgi?id=115881
733
734         Reviewed by Alexey Proskuryakov.
735
736         The security origin passed to XMLHttpRequest::create was always null, so just get rid of the member variable completely.
737
738         * xml/XMLHttpRequest.cpp:
739         (WebCore::XMLHttpRequest::create):
740         (WebCore::XMLHttpRequest::XMLHttpRequest):
741         (WebCore::XMLHttpRequest::securityOrigin):
742         * xml/XMLHttpRequest.h:
743         (XMLHttpRequest):
744
745 2013-05-09  Christophe Dumez  <ch.dumez@sisa.samsung.com>
746
747         [NoInterfaceObject] extended attribute should be removed for several interfaces
748         https://bugs.webkit.org/show_bug.cgi?id=115852
749
750         Reviewed by Benjamin Poulain.
751
752         Remove [NoInterfaceObject] extended attribute from the following Web IDL
753         interfaces: SecurityPolicy, History, Location, Navigator, Performance,
754         PerformanceEntry, PerformanceMark, PerformanceMeasure, PerformanceNavigation,
755         PerformanceResourceTiming, PerformanceTiming and Screen.
756
757         These interfaces should not have the [NoInterfaceObject] extended attribute
758         according to their respective specifications:
759         - http://www.w3.org/html/wg/drafts/html/master/browsers.html#the-history-interface
760         - http://www.w3.org/html/wg/drafts/html/master/browsers.html#the-location-interface
761         - https://dvcs.w3.org/hg/content-security-policy/raw-file/tip/csp-specification.dev.html#securitypolicy
762         - http://www.w3.org/html/wg/drafts/html/master/webappapis.html#the-navigator-object
763         - http://www.w3.org/TR/navigation-timing/#performance
764         - https://dvcs.w3.org/hg/webperf/raw-file/tip/specs/PerformanceTimeline/Overview.html#sec-PerformanceEntry-interface
765         - http://www.w3.org/TR/navigation-timing/#performancenavigation
766         - http://www.w3.org/TR/navigation-timing/#performancetiming
767         - http://www.w3.org/TR/user-timing/#performancemark
768         - http://www.w3.org/TR/user-timing/#performancemeasure
769         - http://www.w3c-test.org/webperf/specs/ResourceTiming/#performanceresourcetiming
770         - http://dev.w3.org/csswg/cssom-view/#the-screen-interface
771
772         The new behavior is consistent with the specifications, Firefox and soon Blink.
773
774         No new tests, already covered by existing tests.
775
776         * page/DOMSecurityPolicy.idl:
777         * page/History.idl:
778         * page/Location.idl:
779         * page/Navigator.idl:
780         * page/Performance.idl:
781         * page/PerformanceEntry.idl:
782         * page/PerformanceMark.idl:
783         * page/PerformanceMeasure.idl:
784         * page/PerformanceNavigation.idl:
785         * page/PerformanceResourceTiming.idl:
786         * page/PerformanceTiming.idl:
787         * page/Screen.idl:
788
789 2013-05-09  Robert Hogan  <robert@webkit.org>
790
791         REGRESSION (Safari 3-Safari 4): Replaced element with percent height in table has incorrect height
792         https://bugs.webkit.org/show_bug.cgi?id=26394
793
794         Reviewed by David Hyatt.
795
796         Text controls or any object that has scrollable content should not flex inside a table cell. 
797         This makes our behaviour the same as IE, FF and Opera (Presto).
798
799         * rendering/RenderTableSection.cpp:
800         (WebCore::RenderTableSection::layoutRows):
801
802 2013-05-09  Anders Carlsson  <andersca@apple.com>
803
804         Build fix.
805
806         * WebCore.exp.in:
807
808 2013-05-09  Anders Carlsson  <andersca@apple.com>
809
810         Add a StorageStrategy hook for creating transient local storage namespaces
811         https://bugs.webkit.org/show_bug.cgi?id=115870
812
813         Reviewed by Geoffrey Garen.
814
815         * WebCore.exp.in:
816         Export symbol needed by WebKit2.
817         
818         * dom/Document.cpp:
819         (WebCore::Document::topOrigin):
820         * dom/Document.h:
821         * dom/ScriptExecutionContext.h:
822         * workers/WorkerContext.h:
823         Remove const qualifier from topOrigin() to avoid ugly const_casts when assigning into a RefPtr<SecurityOrigin> variable.
824
825         * page/PageGroup.cpp:
826         (WebCore::PageGroup::transientLocalStorage):
827         Do a single hash lookup instead of three and use the SecurityOrigin itself as the hash key instead of a string representation of it.
828
829         * page/PageGroup.h:
830         Update HashMap declaration.
831
832         * storage/StorageNamespace.cpp:
833         (WebCore::StorageNamespace::transientLocalStorageNamespace):
834         Add new implementation that will optionally call out to the storage strategy.
835
836         * storage/StorageNamespaceImpl.cpp:
837         (WebCore::StorageNamespaceImpl::transientLocalStorageNamespace):
838         Move the default implementation here from PageGroup.
839         
840         * storage/StorageStrategy.cpp:
841         (WebCore::StorageStrategy::transientLocalStorageNamespace):
842         Call the default implementation.
843
844 2013-05-09  Enrica Casucci  <enrica@apple.com>
845
846         A change in system environment should force all CSS properties to be recomputed.
847         https://bugs.webkit.org/show_bug.cgi?id=115872
848         <rdar://problem/13781171>
849
850         Reviewed by Antti Koivisto.
851
852         When a change in the global environment occurs, for example system colors,
853         we need to make sure all the CSS properties are recomputed and not fetched
854         from the cache. For this reason we invalidate the properties cache.
855         I've also renamed the function to give it a more meaningful name.
856         
857         * page/Page.cpp:
858         (WebCore::Page::updateStyleForAllPagesAfterGlobalChangeInEnvironment):
859         * page/Page.h:
860         * rendering/RenderTheme.cpp:
861         (WebCore::RenderTheme::platformColorsDidChange):
862
863 2013-05-09  Antti Koivisto  <antti@apple.com>
864
865         Reoptimize free-standing :focus/link/visited/-webkit-any-link selectors.
866         <http://webkit.org/b/115590>
867
868         Reviewed by Darin Adler.
869
870         Common pseudo selectors should go into their respective rule buckets instead of ending up in the universal one.
871
872         * css/RuleSet.cpp:
873         (WebCore::RuleSet::findBestRuleSetAndAdd):
874         
875             Check tag selectors with * local name (usually created for namespace) for a suitable narrower bucket too.
876
877 2013-05-09  Darin Adler  <darin@apple.com>
878
879         RenderQuote has giant function for language to quotes map
880         https://bugs.webkit.org/show_bug.cgi?id=115807
881
882         Reviewed by Anders Carlsson.
883
884         * rendering/RenderQuote.cpp:
885         (WebCore::RenderQuote::RenderQuote): Updated for m_isAttached name change.
886         (WebCore::RenderQuote::~RenderQuote): Updated for name change, and also split
887         assertion with && in it into two separate assertions.
888         (WebCore::checkNumberOfDistinctQuoteCharacters): Added. Helper function that is used
889         to check that the number of distinct quote characters is small enough to fit into
890         our fixed size array below.
891         (WebCore::quotesForLanguage): Replaces the old quotesDataLanguageMap function.
892         Returns a pointer to a struct that contains the four quote characters. This new
893         function doesn't have the massive amount of code that the old one did. We use the
894         standard library bsearch function to do a binary search.
895         (WebCore::stringForQuoteCharacter): Added. This returns a string for a given quote
896         character; one string for any given character.
897         (WebCore::quotationMarkString): Added. Returns the string for the quotation mark.
898         (WebCore::apostropheStringImpl): Added. Returns the string for the apostrophe.
899         (WebCore::RenderQuote::originalText): Rewrote this to include all the logic that
900         used to be in the quotesData function.
901         (WebCore::RenderQuote::attachQuote): Tweak assertions as above. Removed unneeded
902         special case for the first quote in a RenderView; sharing the code is better and
903         there is no significant performance difference. Also use m_isAttached directly
904         when looking at predecessores so there is no need for an isAttached function.
905         (WebCore::RenderQuote::detachQuote): Updated assertions and for name change.
906         (WebCore::RenderQuote::updateDepth): Ditto.
907
908         * rendering/RenderQuote.h: Removed unneeded includes. Marked the class FINAL since
909         we call the originalText function in the class and we don't want to do a virtual
910         function dispatch for that. Removed uneeded const from an argument. Removed a
911         stray semicolon. Removed the quotesData and isAttached functions, since they are no
912         longer needed. Renamed m_attached to m_isAttached.
913
914         * rendering/style/QuotesData.cpp: Removed the overload of QuotesData::create that
915         takes four quote strings. This was only used to build up the quotes table.
916         * rendering/style/QuotesData.h: Ditto.
917
918 2013-05-09  Max Feil  <mfeil@rim.com>
919
920         shouldUsePluginDocument() needs to be respected when a document is created
921         https://bugs.webkit.org/show_bug.cgi?id=110308
922
923         Reviewed by Rob Buis.
924
925         In DOMImplementation::createDocument() we should create
926         a PluginDocument for mime types that return "true" for
927         shouldAlwaysUsePluginDocument(), even if there is no pluginData
928         for them. This lets a client choose plugins for which the "missing
929         plugin" text or icon should appear more consistently. Otherwise
930         plugins referenced by iFrames will be treated as an HTMLDocument,
931         possibly resulting in binary files rendered as gibberish text.
932
933         Layout test platform/blackberry/plugins/swf-as-src-of-iframe.html
934
935         * dom/DOMImplementation.cpp:
936         (WebCore::DOMImplementation::createDocument):
937
938 2013-05-09  Timothy Hatcher  <timothy@apple.com>
939
940         Fix an exception when hovering native functions while paused in the debugger.
941
942         https://webkit.org/b/115866
943         rdar://problem/13681982
944
945         Reviewed by Darin Adler and Joseph Pecoraro.
946
947         * inspector/InjectedScriptSource.js:
948         (InjectedScript.prototype.getFunctionDetails): Return an error if the details
949         is null or undefined.
950
951 2013-05-09  Darin Adler  <darin@apple.com>
952
953         [Mac] CFError leak under Objective-C garbage collection
954         https://bugs.webkit.org/show_bug.cgi?id=115862
955
956         Reviewed by Benjamin Poulain.
957
958         * platform/network/mac/ResourceErrorMac.mm:
959         (WebCore::ResourceError::nsError): Use adoptCF instead of adoptNS since
960         the CFError needs a CFRelease, not an -[NSObject release].
961
962 2013-05-09  Alberto Garcia  <agarcia@igalia.com>
963
964         BlackBerry: fix call to PluginLayerWebKitThread::setHolePunchRect()
965         https://bugs.webkit.org/show_bug.cgi?id=114953
966
967         Reviewed by Rob Buis.
968
969         data->layer needs a cast in order to call setHolePunchRect().
970
971         * plugins/blackberry/NPCallbacksBlackBerry.cpp:
972         (WebCore::npSetHolePunchHandler):
973
974 2013-05-09  Mike Fenton  <mifenton@rim.com>
975
976         [BlackBerry] Style updates required based on new check-webkit-style
977         https://bugs.webkit.org/show_bug.cgi?id=115857
978
979         Reviewed by Rob Buis.
980
981         Update WebCore/platform/graphics BlackBerry sources
982         to match check-webkit-style updates.
983
984         Internally reviewed by Jakob Petsovits.
985
986         * platform/graphics/blackberry/CanvasLayerWebKitThread.cpp:
987         * platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp:
988         (WebCore::GraphicsContext3D::readPixelsIMG):
989         (WebCore::GraphicsContext3D::paintToCanvas):
990         * platform/graphics/blackberry/GraphicsLayerBlackBerry.cpp:
991         (WebCore::GraphicsLayerBlackBerry::updateLayerPosition):
992         * platform/graphics/blackberry/IntRectBlackBerry.cpp:
993         (WebCore::IntRect::IntRect):
994         * platform/graphics/blackberry/LayerCompositingThread.h:
995         (WTF::::deref):
996         * platform/graphics/blackberry/LayerFilterRenderer.cpp:
997         (WebCore::LayerFilterRenderer::initializeSharedGLObjects):
998         (WebCore::LayerFilterRenderer::actionsForOperations):
999         (WebCore::LayerFilterRenderer::applyActions):
1000         * platform/graphics/blackberry/LayerRenderer.cpp:
1001         (WebCore::LayerRenderer::setViewport):
1002         (WebCore::LayerRenderer::compositeBuffer):
1003         (WebCore::LayerRenderer::drawColor):
1004         (WebCore::LayerRenderer::compositeLayersRecursive):
1005         * platform/graphics/blackberry/LayerWebKitThread.cpp:
1006         (WebCore::LayerWebKitThread::setFrame):
1007         * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
1008         (WebCore::MediaPlayerPrivate::play):
1009         (WebCore::MediaPlayerPrivate::waitMetadataTimerFired):
1010         * platform/image-decoders/blackberry/JPEGImageDecoder.cpp:
1011         (WebCore::JPEGImageDecoder::JPEGImageDecoder):
1012
1013 2013-05-09  Mike Fenton  <mifenton@rim.com>
1014
1015         [BlackBerry] Style updates required based on new check-webkit-style
1016         https://bugs.webkit.org/show_bug.cgi?id=115857
1017
1018         Reviewed by Rob Buis.
1019
1020         Update WebCore/platform/network/blackberry
1021         to match check-webkit-style updates.
1022
1023         * platform/network/blackberry/NetworkJob.cpp:
1024         (WebCore::NetworkJob::initialize):
1025         (WebCore::NetworkJob::handleSetCookieHeader):
1026         (WebCore::NetworkJob::sendResponseIfNeeded):
1027         (WebCore::NetworkJob::shouldSendClientData):
1028         * platform/network/blackberry/NetworkJob.h:
1029         (NetworkJob):
1030         * platform/network/blackberry/NetworkManager.cpp:
1031         (WebCore::NetworkManager::startJob):
1032         * platform/network/blackberry/rss/RSSFilterStream.cpp:
1033         (WebCore::isRSSContent):
1034         (WebCore::transcode):
1035
1036 2013-05-09  Mike Fenton  <mifenton@rim.com>
1037
1038         [BlackBerry] Style updates required based on new check-webkit-style
1039         https://bugs.webkit.org/show_bug.cgi?id=115857
1040
1041         Reviewed by Rob Buis.
1042
1043         Update WebCore/platform/blackberry to match check-webkit-style updates.
1044
1045         No functional changes.
1046
1047         * platform/blackberry/CookieDatabaseBackingStore/CookieDatabaseBackingStore.h:
1048         * platform/blackberry/CookieManager.cpp:
1049         (WebCore::CookieManager::getRawCookies):
1050         * platform/blackberry/CookieMap.h:
1051         (WebCore::CookieMap::count):
1052         * platform/blackberry/CookieParser.cpp:
1053         (WebCore::CookieParser::parseOneCookie):
1054         * platform/blackberry/LoggingBlackBerry.cpp:
1055         * platform/blackberry/PageClientBlackBerry.h:
1056         (Platform):
1057         (Graphics):
1058         (WebCore):
1059         * platform/blackberry/ParsedCookie.cpp:
1060         (WebCore::ParsedCookie::appendWebCoreCookie):
1061         * platform/blackberry/RenderThemeBlackBerry.cpp:
1062         (WebCore::RenderThemeBlackBerry::paintSearchFieldCancelButton):
1063         (WebCore::RenderThemeBlackBerry::paintButton):
1064         (WebCore::RenderThemeBlackBerry::paintSliderThumb):
1065         * platform/blackberry/SSLKeyGeneratorBlackBerry.cpp:
1066         (WebCore::signedPublicKeyAndChallengeString):
1067         * platform/blackberry/ScrollAnimatorBlackBerry.h:
1068
1069 2013-05-09  Chris Rogers  <crogers@google.com>
1070
1071         Require use of AudioBus::create() to avoid ref-counting issues
1072         https://bugs.webkit.org/show_bug.cgi?id=115836
1073
1074         Reviewed by Andreas Kling.
1075
1076         There were a couple of places still embedding raw AudioBus objects as
1077         member variables or local variables causing ref-counting problems
1078         now that AudioBus is ref-counted.  Make AudioBus constructor private
1079         to enforce use of AudioBus::create().
1080
1081         Adapted from Blink patch:
1082         https://chromiumcodereview.appspot.com/14628008/
1083
1084         * Modules/webaudio/AudioDestinationNode.h:
1085         (WebCore::AudioDestinationNode::LocalAudioInputProvider::LocalAudioInputProvider):
1086         (WebCore::AudioDestinationNode::LocalAudioInputProvider::set):
1087         (WebCore::AudioDestinationNode::LocalAudioInputProvider::provideInput):
1088         (LocalAudioInputProvider):
1089         * Modules/webaudio/AudioNodeInput.cpp:
1090         (WebCore::AudioNodeInput::AudioNodeInput):
1091         (WebCore::AudioNodeInput::updateInternalBus):
1092         * Modules/webaudio/AudioNodeOutput.cpp:
1093         (WebCore::AudioNodeOutput::AudioNodeOutput):
1094         (WebCore::AudioNodeOutput::updateInternalBus):
1095         * Modules/webaudio/AudioParam.cpp:
1096         (WebCore::AudioParam::calculateFinalValues):
1097         * Modules/webaudio/ConvolverNode.cpp:
1098         (WebCore::ConvolverNode::setBuffer):
1099         * Modules/webaudio/MediaStreamAudioDestinationNode.cpp:
1100         (WebCore::MediaStreamAudioDestinationNode::MediaStreamAudioDestinationNode):
1101         (WebCore::MediaStreamAudioDestinationNode::process):
1102         * Modules/webaudio/MediaStreamAudioDestinationNode.h:
1103         * Modules/webaudio/OfflineAudioDestinationNode.cpp:
1104         (WebCore::OfflineAudioDestinationNode::OfflineAudioDestinationNode):
1105         * Modules/webaudio/ScriptProcessorNode.cpp:
1106         (WebCore::ScriptProcessorNode::ScriptProcessorNode):
1107         (WebCore::ScriptProcessorNode::process):
1108         * Modules/webaudio/ScriptProcessorNode.h:
1109         (ScriptProcessorNode):
1110         * platform/audio/AudioBus.cpp:
1111         (WebCore::AudioBus::create):
1112         (WebCore):
1113         (WebCore::AudioBus::AudioBus):
1114         (WebCore::AudioBus::createBufferFromRange):
1115         (WebCore::AudioBus::createBySampleRateConverting):
1116         (WebCore::AudioBus::createByMixingToMono):
1117         * platform/audio/AudioBus.h:
1118         (AudioBus):
1119         * platform/audio/AudioFIFO.cpp:
1120         (WebCore::AudioFIFO::AudioFIFO):
1121         (WebCore::AudioFIFO::consume):
1122         (WebCore::AudioFIFO::push):
1123         * platform/audio/AudioFIFO.h:
1124         (AudioFIFO):
1125         * platform/audio/AudioPullFIFO.cpp:
1126         (WebCore::AudioPullFIFO::AudioPullFIFO):
1127         (WebCore::AudioPullFIFO::fillBuffer):
1128         * platform/audio/AudioPullFIFO.h:
1129         (AudioPullFIFO):
1130         * platform/audio/AudioResampler.cpp:
1131         (WebCore::AudioResampler::AudioResampler):
1132         (WebCore::AudioResampler::configureChannels):
1133         * platform/audio/MultiChannelResampler.cpp:
1134         * platform/audio/Reverb.cpp:
1135         (WebCore::Reverb::initialize):
1136         * platform/audio/SincResampler.cpp:
1137         (WebCore::SincResampler::consumeSource):
1138         (WebCore):
1139         * platform/audio/gstreamer/AudioDestinationGStreamer.cpp:
1140         (WebCore::AudioDestinationGStreamer::AudioDestinationGStreamer):
1141         * platform/audio/gstreamer/AudioDestinationGStreamer.h:
1142         (AudioDestinationGStreamer):
1143         * platform/audio/gstreamer/AudioFileReaderGStreamer.cpp:
1144         (WebCore::AudioFileReader::createBus):
1145         * platform/audio/ios/AudioDestinationIOS.cpp:
1146         (WebCore::AudioDestinationIOS::AudioDestinationIOS):
1147         (WebCore::AudioDestinationIOS::render):
1148         * platform/audio/ios/AudioDestinationIOS.h:
1149         (AudioDestinationIOS):
1150         * platform/audio/mac/AudioDestinationMac.cpp:
1151         (WebCore::AudioDestinationMac::AudioDestinationMac):
1152         (WebCore::AudioDestinationMac::render):
1153         * platform/audio/mac/AudioDestinationMac.h:
1154         (AudioDestinationMac):
1155         * platform/audio/mac/AudioFileReaderMac.cpp:
1156         (WebCore::AudioFileReader::createBus):
1157
1158 2013-05-09  Alberto Garcia  <agarcia@igalia.com>
1159
1160         [BlackBerry] Upstream the input popups
1161         https://bugs.webkit.org/show_bug.cgi?id=114608
1162
1163         Reviewed by Rob Buis.
1164
1165         This patch contains contributions from many members of the
1166         BlackBerry WebKit team, including:
1167
1168         Chris Hutten-Czapski
1169         David Hoon
1170         Jessica Cao
1171         Rob Buis
1172         Tiancheng Jiang
1173
1174         * Resources/blackberry/colorControlBlackBerry.css: Added.
1175         (.color-picker-popup-area):
1176         (.color-picker-content):
1177         (.color-picker-block):
1178         (#color-picker-swatch-block):
1179         (.color-picker-switcher):
1180         (.color-picker-check-mark):
1181         (.color-picker-option):
1182         (.color-picker-button):
1183         (.color-picker-highlight):
1184         (input):
1185         (.color-picker-sharp):
1186         (.color-picker-off):
1187         (.color-picker-inactive-font):
1188         (.color-picker-row):
1189         (.color-picker-hex-style):
1190         (.color-picker-input):
1191         (.color-picker-well):
1192         (.color-picker-input .color-picker-well):
1193         (.color-picker-slider):
1194         (.color-picker-slider-output):
1195         (.color-picker-range):
1196         (.color-picker-range::-webkit-slider-thumb):
1197         (.color-picker-range::-webkit-slider-thumb:active):
1198         (.red-ranger-bg):
1199         (.green-ranger-bg):
1200         (.blue-ranger-bg):
1201         (@media only screen and (height: 768px)):
1202         (@media only screen and (height: 720px)):
1203         * Resources/blackberry/colorControlBlackBerry.js: Added.
1204         (.):
1205         * Resources/blackberry/popupControlBlackBerry.css:
1206         (body):
1207         (.popup-area):
1208         (.popup-header):
1209         (.popup-content):
1210         (.popup-buttons):
1211         (.popup-button):
1212         (@media only screen and (width: 720px) and (height: 720px)):
1213         * Resources/blackberry/selectControlBlackBerry.css:
1214         (.popup-content):
1215         (@media (min-height: 918px)):
1216         (.option):
1217         (@media only screen and (width: 720px) and (height: 720px)):
1218         (.contents):
1219         (.option:active):
1220         (.selected):
1221         (.selected .contents::after):
1222         (.text):
1223         (.disabled):
1224         (.optgroup):
1225         (.optgroup-option):
1226         * Resources/blackberry/selectControlBlackBerry.js:
1227         (.):
1228         * Resources/blackberry/timeControlBlackBerry.css: Added.
1229         (#popup-content-time):
1230         (.column):
1231         (.column:not(:last-child)):
1232         (.cell):
1233         (.yearmonthdate .cell div:last-child):
1234         (.row-highlight-container):
1235         (.row-highlight-filler):
1236         (.row-highlight):
1237         (.tall-bit):
1238         (@media only screen and (width: 720px) and (height: 720px)):
1239         * Resources/blackberry/timeControlBlackBerry.js: Added.
1240         (.):
1241
1242 2013-05-09  Rob Buis  <rbuis@rim.com>
1243
1244         [BlackBerry] texmap code generates warnings
1245         https://bugs.webkit.org/show_bug.cgi?id=115815
1246
1247         Reviewed by Benjamin Poulain.
1248
1249         Add USE(TEXTURE_MAPPER) guards since Source/WebCore/CMakeLists.txt includes
1250         these files unconditionally.
1251
1252         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
1253         * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
1254         * platform/graphics/texmap/TextureMapper.h:
1255         * platform/graphics/texmap/TextureMapperBackingStore.cpp:
1256         * platform/graphics/texmap/TextureMapperBackingStore.h:
1257         * platform/graphics/texmap/TextureMapperFPSCounter.cpp:
1258         * platform/graphics/texmap/TextureMapperFPSCounter.h:
1259         * platform/graphics/texmap/TextureMapperGL.cpp:
1260         * platform/graphics/texmap/TextureMapperGL.h:
1261         * platform/graphics/texmap/TextureMapperLayer.cpp:
1262         * platform/graphics/texmap/TextureMapperLayer.h:
1263         * platform/graphics/texmap/TextureMapperTile.cpp:
1264         * platform/graphics/texmap/TextureMapperTile.h:
1265         * platform/graphics/texmap/TextureMapperTiledBackingStore.cpp:
1266         * platform/graphics/texmap/TextureMapperTiledBackingStore.h:
1267
1268 2013-05-09  Alberto Garcia  <agarcia@igalia.com>
1269
1270         PluginDatabase: add plugin directory for the BlackBerry port.
1271         https://bugs.webkit.org/show_bug.cgi?id=114943
1272
1273         Reviewed by Rob Buis.
1274
1275         XP_UNIX is defined for the BlackBerry port, but we don't want to
1276         share the same code here.
1277
1278         * plugins/PluginDatabase.cpp:
1279         (WebCore::PluginDatabase::defaultPluginDirectories):
1280         (WebCore::PluginDatabase::isPreferredPluginDirectory):
1281
1282 2013-05-09  Seokju Kwon  <seokju.kwon@gmail.com>
1283
1284         Web Inspector: Remove Memory Distribution and Memory Snapshots Panels
1285         https://bugs.webkit.org/show_bug.cgi?id=115850
1286
1287         Reviewed by Andreas Kling.
1288
1289         Removed the Memory Instrumentation Code after r148921.
1290
1291         No new tests, no behavior change.
1292
1293         * inspector/compile-front-end.py:
1294         * inspector/front-end/NativeMemorySnapshotView.js: Removed.
1295         * inspector/front-end/ProfilesPanel.js:
1296         (WebInspector.ProfilesPanel):
1297         * inspector/front-end/Settings.js:
1298         (WebInspector.Settings):
1299         (WebInspector.ExperimentsSettings):
1300         * inspector/front-end/SettingsScreen.js:
1301         * inspector/front-end/WebKit.qrc:
1302         * inspector/front-end/inspector.css:
1303         * inspector/front-end/inspector.js:
1304         (WebInspector._panelDescriptors):
1305         * inspector/front-end/nativeMemoryProfiler.css: Removed.
1306
1307 2013-05-09  Zan Dobersek  <zdobersek@igalia.com>
1308
1309         Unreviewed GTK build fix after r149796.
1310
1311         * GNUmakefile.am: Add a phony target for the window constructors file and include it among
1312         the dependencies for the non-generated code.
1313
1314 2013-05-09  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1315
1316         Unreviewed build fix for Qt minimal build.
1317
1318         r149796 broke builds that have WEB_SOCKETS flag disabled.
1319
1320         * page/DOMWindow.idl:
1321
1322 2013-05-09  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1323
1324         Add support for [NoInterfaceObject] Web IDL extended attribute
1325         https://bugs.webkit.org/show_bug.cgi?id=115714
1326
1327         Reviewed by Kentaro Hara.
1328
1329         *Constructor attributes on the global DOMWindow object are now automatically
1330         generated for each non-callback interface that is not declared with the
1331         [NoInterfaceObject] extended attribute. It is thus no longer needed for
1332         developers to manually add *Constructor attributes for their new interfaces
1333         unless they wish to register an "extra" constructor for their interface.
1334
1335         This patch does not modify at all the behavior on JS side. To achieve this,
1336         [NoInterfaceObject] extended attribute is added to interfaces that should
1337         not have it according to specification (e.g. History, Location, ...).
1338         This can be improved later as the behavior should not change with this
1339         patch.
1340
1341         No new tests, no behavior change.
1342
1343         * CMakeLists.txt:
1344         * DerivedSources.make:
1345         * DerivedSources.pri:
1346         * GNUmakefile.am:
1347         * GNUmakefile.list.am:
1348         * Modules/battery/BatteryManager.idl:
1349         * Modules/encryptedmedia/MediaKeyMessageEvent.idl:
1350         * Modules/encryptedmedia/MediaKeyNeededEvent.idl:
1351         * Modules/encryptedmedia/MediaKeySession.idl:
1352         * Modules/encryptedmedia/MediaKeys.idl:
1353         * Modules/filesystem/DOMFileSystem.idl:
1354         * Modules/filesystem/DOMFileSystemSync.idl:
1355         * Modules/filesystem/DirectoryEntry.idl:
1356         * Modules/filesystem/DirectoryEntrySync.idl:
1357         * Modules/filesystem/DirectoryReader.idl:
1358         * Modules/filesystem/DirectoryReaderSync.idl:
1359         * Modules/filesystem/Entry.idl:
1360         * Modules/filesystem/EntryArray.idl:
1361         * Modules/filesystem/EntryArraySync.idl:
1362         * Modules/filesystem/EntrySync.idl:
1363         * Modules/filesystem/FileEntry.idl:
1364         * Modules/filesystem/FileEntrySync.idl:
1365         * Modules/filesystem/FileWriter.idl:
1366         * Modules/filesystem/FileWriterSync.idl:
1367         * Modules/filesystem/Metadata.idl:
1368         * Modules/gamepad/Gamepad.idl:
1369         * Modules/gamepad/GamepadList.idl:
1370         * Modules/geolocation/Coordinates.idl:
1371         * Modules/geolocation/Geolocation.idl:
1372         * Modules/geolocation/Geoposition.idl:
1373         * Modules/geolocation/PositionError.idl:
1374         * Modules/indexeddb/DOMWindowIndexedDatabase.idl:
1375         * Modules/indexeddb/IDBAny.idl:
1376         * Modules/mediasource/MediaSource.idl:
1377         * Modules/mediasource/SourceBuffer.idl:
1378         * Modules/mediasource/SourceBufferList.idl:
1379         * Modules/mediastream/DOMWindowMediaStream.idl: Removed.
1380         * Modules/mediastream/MediaStream.idl:
1381         * Modules/mediastream/MediaStreamTrack.idl:
1382         * Modules/mediastream/MediaStreamTrackEvent.idl:
1383         * Modules/mediastream/NavigatorUserMediaError.idl:
1384         * Modules/mediastream/RTCDTMFSender.idl:
1385         * Modules/mediastream/RTCDTMFToneChangeEvent.idl:
1386         * Modules/mediastream/RTCDataChannel.idl:
1387         * Modules/mediastream/RTCDataChannelEvent.idl:
1388         * Modules/mediastream/RTCIceCandidateEvent.idl:
1389         * Modules/mediastream/RTCPeerConnection.idl:
1390         * Modules/mediastream/RTCStatsReport.idl:
1391         * Modules/mediastream/RTCStatsResponse.idl:
1392         * Modules/networkinfo/NetworkInfoConnection.idl:
1393         * Modules/notifications/DOMWindowNotifications.idl:
1394         * Modules/notifications/NotificationCenter.idl:
1395         * Modules/quota/StorageInfo.idl:
1396         * Modules/quota/StorageQuota.idl:
1397         * Modules/speech/DOMWindowSpeech.idl: Removed.
1398         * Modules/speech/DOMWindowSpeechSynthesis.idl:
1399         * Modules/speech/SpeechGrammar.idl:
1400         * Modules/speech/SpeechGrammarList.idl:
1401         * Modules/speech/SpeechRecognition.idl:
1402         * Modules/speech/SpeechRecognitionAlternative.idl:
1403         * Modules/speech/SpeechRecognitionError.idl:
1404         * Modules/speech/SpeechRecognitionEvent.idl:
1405         * Modules/speech/SpeechRecognitionResult.idl:
1406         * Modules/speech/SpeechRecognitionResultList.idl:
1407         * Modules/speech/SpeechSynthesis.idl:
1408         * Modules/speech/SpeechSynthesisVoice.idl:
1409         * Modules/webaudio/AnalyserNode.idl:
1410         * Modules/webaudio/AudioBuffer.idl:
1411         * Modules/webaudio/AudioBufferSourceNode.idl:
1412         * Modules/webaudio/AudioContext.idl:
1413         * Modules/webaudio/AudioDestinationNode.idl:
1414         * Modules/webaudio/AudioListener.idl:
1415         * Modules/webaudio/AudioNode.idl:
1416         * Modules/webaudio/AudioParam.idl:
1417         * Modules/webaudio/AudioSourceNode.idl:
1418         * Modules/webaudio/BiquadFilterNode.idl:
1419         * Modules/webaudio/ChannelMergerNode.idl:
1420         * Modules/webaudio/ChannelSplitterNode.idl:
1421         * Modules/webaudio/ConvolverNode.idl:
1422         * Modules/webaudio/DOMWindowWebAudio.idl: Removed.
1423         * Modules/webaudio/DelayNode.idl:
1424         * Modules/webaudio/DynamicsCompressorNode.idl:
1425         * Modules/webaudio/GainNode.idl:
1426         * Modules/webaudio/MediaElementAudioSourceNode.idl:
1427         * Modules/webaudio/MediaStreamAudioDestinationNode.idl:
1428         * Modules/webaudio/MediaStreamAudioSourceNode.idl:
1429         * Modules/webaudio/OfflineAudioContext.idl:
1430         * Modules/webaudio/OscillatorNode.idl:
1431         * Modules/webaudio/PannerNode.idl:
1432         * Modules/webaudio/ScriptProcessorNode.idl:
1433         * Modules/webaudio/WaveShaperNode.idl:
1434         * Modules/webaudio/WaveTable.idl:
1435         * Modules/webdatabase/DOMWindowWebDatabase.idl:
1436         * Modules/webdatabase/Database.idl:
1437         * Modules/webdatabase/DatabaseSync.idl:
1438         * Modules/webdatabase/SQLError.idl:
1439         * Modules/webdatabase/SQLResultSet.idl:
1440         * Modules/webdatabase/SQLResultSetRowList.idl:
1441         * Modules/webdatabase/SQLTransaction.idl:
1442         * Modules/webdatabase/SQLTransactionSync.idl:
1443         * Modules/websockets/DOMWindowWebSocket.idl: Removed.
1444         * Modules/websockets/WebSocket.idl:
1445         * PlatformBlackBerry.cmake:
1446         * UseJSC.cmake:
1447         * WebCore.xcodeproj/project.pbxproj:
1448         * bindings/scripts/IDLAttributes.txt:
1449         * bindings/scripts/IDLParser.pm:
1450         (parseTypedef):
1451         * bindings/scripts/preprocess-idls.pl:
1452         (GenerateConstructorAttribute):
1453         (getFileContents):
1454         (getPartialInterfaceNameFromIDL):
1455         (isCallbackInterfaceFromIDL):
1456         (trim):
1457         (getInterfaceExtendedAttributesFromIDL):
1458         * css/CSSFontFaceLoadEvent.idl:
1459         * css/CSSFontFaceRule.idl:
1460         * css/CSSSupportsRule.idl:
1461         * css/CSSUnknownRule.idl:
1462         * css/DOMWindowCSS.idl:
1463         * css/FontLoader.idl:
1464         * css/MediaQueryList.idl:
1465         * css/MediaQueryListListener.idl:
1466         * css/StyleMedia.idl:
1467         * dom/CustomElementConstructor.idl:
1468         * dom/DOMError.idl:
1469         * dom/DOMNamedFlowCollection.idl:
1470         * dom/DataTransferItem.idl:
1471         * dom/DataTransferItemList.idl:
1472         * dom/EventListener.idl:
1473         * dom/EventTarget.idl:
1474         * dom/NodeIterator.idl:
1475         * dom/ShadowRoot.idl:
1476         * dom/TreeWalker.idl:
1477         * dom/WebKitNamedFlow.idl:
1478         * fileapi/FileException.idl:
1479         * fileapi/FileReaderSync.idl:
1480         * html/HTMLAudioElement.idl:
1481         * html/HTMLDetailsElement.idl:
1482         * html/HTMLOptionElement.idl:
1483         * html/MediaError.idl:
1484         * html/MediaKeyError.idl:
1485         * html/MicroDataItemValue.idl:
1486         * html/RadioNodeList.idl:
1487         * html/ValidityState.idl:
1488         * html/canvas/CanvasRenderingContext.idl:
1489         * html/canvas/DOMPath.idl:
1490         * html/canvas/EXTDrawBuffers.idl:
1491         * html/canvas/EXTTextureFilterAnisotropic.idl:
1492         * html/canvas/OESElementIndexUint.idl:
1493         * html/canvas/OESStandardDerivatives.idl:
1494         * html/canvas/OESTextureFloat.idl:
1495         * html/canvas/OESTextureHalfFloat.idl:
1496         * html/canvas/OESVertexArrayObject.idl:
1497         * html/canvas/WebGLCompressedTextureATC.idl:
1498         * html/canvas/WebGLCompressedTexturePVRTC.idl:
1499         * html/canvas/WebGLCompressedTextureS3TC.idl:
1500         * html/canvas/WebGLContextAttributes.idl:
1501         * html/canvas/WebGLDebugRendererInfo.idl:
1502         * html/canvas/WebGLDebugShaders.idl:
1503         * html/canvas/WebGLDepthTexture.idl:
1504         * html/canvas/WebGLLoseContext.idl:
1505         * html/canvas/WebGLVertexArrayObjectOES.idl:
1506         * html/track/AudioTrack.idl:
1507         * html/track/AudioTrackList.idl:
1508         * html/track/TextTrackRegionList.idl:
1509         * html/track/VideoTrack.idl:
1510         * html/track/VideoTrackList.idl:
1511         * inspector/InjectedScriptHost.idl:
1512         * inspector/InspectorFrontendHost.idl:
1513         * inspector/JavaScriptCallFrame.idl:
1514         * inspector/ScriptProfile.idl:
1515         * inspector/ScriptProfileNode.idl:
1516         * loader/appcache/DOMApplicationCache.idl:
1517         * page/AbstractView.idl:
1518         * page/BarInfo.idl:
1519         * page/Console.idl:
1520         * page/Crypto.idl:
1521         * page/DOMSecurityPolicy.idl:
1522         * page/DOMWindow.idl:
1523         * page/History.idl:
1524         * page/Location.idl:
1525         * page/MemoryInfo.idl:
1526         * page/Navigator.idl:
1527         * page/PagePopupController.idl:
1528         * page/Performance.idl:
1529         * page/PerformanceEntry.idl:
1530         * page/PerformanceEntryList.idl:
1531         * page/PerformanceMark.idl:
1532         * page/PerformanceMeasure.idl:
1533         * page/PerformanceNavigation.idl:
1534         * page/PerformanceResourceTiming.idl:
1535         * page/PerformanceTiming.idl:
1536         * page/Screen.idl:
1537         * page/SpeechInputResult.idl:
1538         * page/SpeechInputResultList.idl:
1539         * page/WorkerNavigator.idl:
1540         * page/make_settings.pl:
1541         (generateInternalSettingsIdlFile):
1542         * svg/ElementTimeControl.idl:
1543         * svg/SVGAnimationElement.idl:
1544         * svg/SVGExternalResourcesRequired.idl:
1545         * svg/SVGFilterPrimitiveStandardAttributes.idl:
1546         * svg/SVGFitToViewBox.idl:
1547         * svg/SVGLangSpace.idl:
1548         * svg/SVGLocatable.idl:
1549         * svg/SVGStyledElement.idl:
1550         * svg/SVGTests.idl:
1551         * svg/SVGTransformable.idl:
1552         * svg/SVGURIReference.idl:
1553         * testing/InternalSettings.idl:
1554         * testing/Internals.idl:
1555         * testing/MallocStatistics.idl:
1556         * testing/TypeConversions.idl:
1557         * workers/AbstractWorker.idl:
1558         * workers/DedicatedWorkerContext.idl:
1559         * workers/SharedWorker.idl:
1560         * workers/SharedWorkerContext.idl:
1561         * workers/WorkerContext.idl:
1562         * workers/WorkerLocation.idl:
1563         * xml/XPathExpression.idl:
1564         * xml/XPathNSResolver.idl:
1565
1566 2013-05-09  ChangSeok Oh  <changseok.oh@collabora.com>
1567
1568         [GTK][AC] Buildfix after r149694
1569         https://bugs.webkit.org/show_bug.cgi?id=115797
1570
1571         Reviewed by Gustavo Noronha Silva.
1572
1573         Some interfaces, such as a return value and parameters of functions are changed.
1574
1575         No new tests since no functionality changed.
1576
1577         * platform/graphics/clutter/GraphicsLayerClutter.cpp:
1578         (WebCore::animationHasStepsTimingFunction):
1579         (WebCore::GraphicsLayerClutter::timingFunctionForAnimationValue):
1580         (WebCore::GraphicsLayerClutter::setTransformAnimationKeyframes):
1581         (WebCore::GraphicsLayerClutter::setTransformAnimationEndpoints):
1582         (WebCore::GraphicsLayerClutter::createTransformAnimationsFromKeyframes):
1583         (WebCore::GraphicsLayerClutter::setAnimationEndpoints):
1584         (WebCore::GraphicsLayerClutter::setAnimationKeyframes):
1585         * platform/graphics/clutter/GraphicsLayerClutter.h:
1586         (GraphicsLayerClutter):
1587
1588 2013-05-08  Rob Buis  <rbuis@rim.com>
1589
1590         Fix some compiler warnings (miscellaneous)
1591         https://bugs.webkit.org/show_bug.cgi?id=80790
1592
1593         Reviewed by Brent Fulgham.
1594
1595         Get rid of the following warning for BlackBerry:
1596
1597         NavigatorContentUtils.cpp:60:78: warning: comparison of unsigned expression < 0 is always false [-Wtype-limits]
1598
1599         by not compiling any of the code to add protocols to the protocol whitelist.
1600
1601         * Modules/navigatorcontentutils/NavigatorContentUtils.cpp:
1602         (WebCore::initProtocolHandlerWhitelist):
1603
1604 2013-05-08  peavo@outlook.com  <peavo@outlook.com>
1605
1606         [Windows] The function seekFile() is not implemented.
1607         https://bugs.webkit.org/show_bug.cgi?id=115246
1608
1609         Reviewed by Brent Fulgham.
1610
1611         Implemented seekFile() function for Windows.
1612
1613         * platform/win/FileSystemWin.cpp:
1614         (WebCore::seekFile):
1615
1616 2013-05-08  Seokju Kwon  <seokju.kwon@gmail.com>
1617
1618         Web Inspector: Fix a typo in Settings.js
1619         https://bugs.webkit.org/show_bug.cgi?id=115849
1620
1621         Reviewed by Joseph Pecoraro.
1622
1623         No new tests, no behavior change.
1624
1625         * inspector/front-end/Settings.js:
1626         (WebInspector.Settings):
1627
1628 2013-05-08  Ryosuke Niwa  <rniwa@webkit.org>
1629
1630         SecurityOrigin doesn’t need to forward declare or include Document
1631         https://bugs.webkit.org/show_bug.cgi?id=115847
1632
1633         Reviewed by Alexey Proskuryakov.
1634
1635         Merge https://chromium.googlesource.com/chromium/blink/+/fc7a88caa9c41f3471d8994a530643e5225f82fc.
1636
1637         Removed unused Document forward declaration+include from SecurityOrigin.
1638
1639         * page/SecurityOrigin.cpp:
1640         * page/SecurityOrigin.h:
1641
1642 2013-05-08  David Kilzer  <ddkilzer@apple.com>
1643
1644         BUILD FIX: Don't use adoptCF() with NSDictionary * object
1645
1646         Fixes the following build failure:
1647
1648             In file included from Source/WebCore/platform/network/mac/ResourceErrorMac.mm:27:
1649             In file included from Source/WebCore/platform/network/cf/ResourceError.h:31:
1650             /usr/local/include/wtf/RetainPtr.h:81:13: error: static_assert failed "Don't use adoptCF with Objective-C pointer types, use adoptNS."
1651                         static_assert(!std::is_convertible<T, id>::value, "Don't use adoptCF with Objective-C pointer types, use adoptNS.");
1652                         ^             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1653             /usr/local/include/wtf/RetainPtr.h:274:16: note: in instantiation of member function 'WTF::RetainPtr<NSDictionary *>::RetainPtr' requested here
1654                     return RetainPtr<T>(AdoptCF, o);
1655                            ^
1656             Source/WebCore/platform/network/mac/ResourceErrorMac.mm:214:44: note: in instantiation of function template specialization 'WTF::adoptCF<NSDictionary *>' requested here
1657                     RetainPtr<NSDictionary> userInfo = adoptCF((NSDictionary *) CFErrorCopyUserInfo(error));
1658                                                        ^
1659             1 error generated.
1660
1661         * platform/network/mac/ResourceErrorMac.mm:
1662         (WebCore::ResourceError::nsError): Switch from adoptCF() to
1663         adoptNS().  This is in USE(CFNETWORK) code, so it's not
1664         exercised on the Mac.
1665
1666 2013-05-08  Ryosuke Niwa  <rniwa@webkit.org>
1667
1668         Remove Editor::setSelectionOffsets
1669         https://bugs.webkit.org/show_bug.cgi?id=115831
1670
1671         Reviewed by Andreas Kling.
1672
1673         Removed the function added in r120985 for Chromium Android port.
1674
1675         * editing/Editor.cpp:
1676         * editing/Editor.h:
1677
1678 2013-05-07  Ryosuke Niwa  <rniwa@webkit.org>
1679
1680         Potential use-after-free of Frame
1681         https://bugs.webkit.org/show_bug.cgi?id=115774
1682
1683         Reviewed by Simon Fraser.
1684
1685         Merge https://chromium.googlesource.com/chromium/blink/+/c5b4a6db82e8280c7fc55ee3dc3a84c6b026e66e.
1686
1687         * page/Frame.cpp:
1688         (WebCore::Frame::setPrinting):
1689         (WebCore::Frame::setPageAndTextZoomFactors):
1690         (WebCore::Frame::deviceOrPageScaleFactorChanged):
1691
1692 2013-05-08  Roger Fong  <roger_fong@apple.com>
1693
1694         Unreviewed build fix, AppleWin port.
1695
1696         * platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:
1697         * platform/graphics/avfoundation/InbandTextTrackPrivateAVF.h:
1698         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
1699         (WebCore::MediaPlayerPrivateAVFoundation::MediaPlayerPrivateAVFoundation):
1700         (WebCore::MediaPlayerPrivateAVFoundation::seek):
1701         (WebCore::MediaPlayerPrivateAVFoundation::seekCompleted):
1702         (WebCore::MediaPlayerPrivateAVFoundation::dispatchNotification):
1703         (WebCore):
1704         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
1705         (MediaPlayerPrivateAVFoundation):
1706
1707 2013-05-08  Xingnan Wang  <xingnan.wang@intel.com>
1708
1709         Heap-use-after-free in WebCore::AudioNodeOutput::pull
1710         https://bugs.webkit.org/show_bug.cgi?id=111362
1711
1712         Reviewed by Chris Rogers.
1713
1714         * Modules/webaudio/AudioBuffer.cpp:
1715         (WebCore::AudioBuffer::createFromAudioFileData):
1716         * Modules/webaudio/AudioNodeInput.cpp:
1717         (WebCore::AudioNodeInput::AudioNodeInput):
1718         (WebCore::AudioNodeInput::updateInternalBus):
1719         * Modules/webaudio/AudioNodeInput.h:
1720         (AudioNodeInput):
1721         * Modules/webaudio/AudioNodeOutput.cpp:
1722         (WebCore::AudioNodeOutput::AudioNodeOutput):
1723         (WebCore::AudioNodeOutput::updateInternalBus):
1724         (WebCore::AudioNodeOutput::pull):
1725         (WebCore::AudioNodeOutput::bus):
1726         * Modules/webaudio/AudioNodeOutput.h:
1727         (AudioNodeOutput):
1728         * Modules/webaudio/OfflineAudioDestinationNode.cpp:
1729         (WebCore::OfflineAudioDestinationNode::OfflineAudioDestinationNode):
1730         * Modules/webaudio/OfflineAudioDestinationNode.h:
1731         (OfflineAudioDestinationNode):
1732         * platform/audio/AudioBus.cpp:
1733         (WebCore::AudioBus::createBufferFromRange):
1734         (WebCore::AudioBus::createBySampleRateConverting):
1735         (WebCore::AudioBus::createByMixingToMono):
1736         * platform/audio/AudioBus.h:
1737         (AudioBus):
1738         * platform/audio/AudioFileReader.h:
1739         (WebCore):
1740         * platform/audio/AudioResampler.cpp:
1741         (WebCore::AudioResampler::AudioResampler):
1742         (WebCore::AudioResampler::configureChannels):
1743         * platform/audio/AudioResampler.h:
1744         (AudioResampler):
1745         * platform/audio/HRTFElevation.cpp:
1746         (WebCore::getConcatenatedImpulseResponsesForSubject):
1747         (WebCore::HRTFElevation::calculateKernelsForAzimuthElevation):
1748         * platform/audio/MultiChannelResampler.cpp:
1749         * platform/audio/Reverb.cpp:
1750         (WebCore::Reverb::initialize):
1751         * platform/audio/Reverb.h:
1752         (Reverb):
1753         * platform/audio/efl/AudioBusEfl.cpp:
1754         (WebCore::AudioBus::loadPlatformResource):
1755         * platform/audio/gstreamer/AudioFileReaderGStreamer.cpp:
1756         (AudioFileReader):
1757         (WebCore::AudioFileReader::createBus):
1758         (WebCore::createBusFromAudioFile):
1759         (WebCore::createBusFromInMemoryAudioFile):
1760         * platform/audio/gtk/AudioBusGtk.cpp:
1761         (WebCore::AudioBus::loadPlatformResource):
1762         * platform/audio/mac/AudioBusMac.mm:
1763         (WebCore::AudioBus::loadPlatformResource):
1764         * platform/audio/mac/AudioFileReaderMac.cpp:
1765         (WebCore::AudioFileReader::createBus):
1766         (WebCore::createBusFromAudioFile):
1767         (WebCore::createBusFromInMemoryAudioFile):
1768         * platform/audio/mac/AudioFileReaderMac.h:
1769         (AudioFileReader):
1770         * platform/audio/qt/AudioBusQt.cpp:
1771         (WebCore::AudioBus::loadPlatformResource):
1772
1773 2013-05-08  Eli Fidler  <efidler@blackberry.com>
1774
1775         [BlackBerry] Fix usage of BlackBerry::Platform::String
1776         https://bugs.webkit.org/show_bug.cgi?id=115781
1777
1778         Reviewed by Rob Buis.
1779
1780         BlackBerry PRs 304193 and 327181
1781         Internally Reviewed by Mike Lattanzio, Arvid Nilsson, Joe Mason, Jeff Rogers, and George Staikos
1782
1783         We currently have a problem where we're passing UTF-8 encoded data into
1784         the char* constructors of BlackBerry::Platform::String. This means the string
1785         thinks its data is not UTF-8.
1786
1787         * platform/blackberry/ClipboardBlackBerry.cpp:
1788         (WebCore::ClipboardBlackBerry::setData):
1789         (WebCore::ClipboardBlackBerry::writeURL):
1790         (WebCore::ClipboardBlackBerry::writePlainText):
1791         * platform/blackberry/CookieManager.cpp:
1792         (WebCore::CookieManager::getRawCookies):
1793         (WebCore::CookieManager::getBackingStoreCookies):
1794         * platform/blackberry/CookieParser.cpp:
1795         (WebCore::CookieParser::CookieParser):
1796         (WebCore::CookieParser::parseOneCookie):
1797         * platform/blackberry/CursorBlackBerry.cpp:
1798         (WebCore::Cursor::Cursor):
1799         * platform/blackberry/PlatformBlob.cpp:
1800         (WebCore::PlatformBlob::nextDataItem):
1801         * platform/blackberry/WorkerAsyncFileSystemBlackBerry.cpp:
1802         (WebCore::WorkerAsyncFileSystemBlackBerry::openFileSystemOnMainThread):
1803         (WebCore::WorkerAsyncFileSystemBlackBerry::deleteFileSystemOnMainThread):
1804         (WebCore::WorkerAsyncFileSystemBlackBerry::moveOnMainThread):
1805         (WebCore::WorkerAsyncFileSystemBlackBerry::copyOnMainThread):
1806         (WebCore::WorkerAsyncFileSystemBlackBerry::removeOnMainThread):
1807         (WebCore::WorkerAsyncFileSystemBlackBerry::removeRecursivelyOnMainThread):
1808         (WebCore::WorkerAsyncFileSystemBlackBerry::readMetadataOnMainThread):
1809         (WebCore::WorkerAsyncFileSystemBlackBerry::createFileOnMainThread):
1810         (WebCore::WorkerAsyncFileSystemBlackBerry::createDirectoryOnMainThread):
1811         (WebCore::WorkerAsyncFileSystemBlackBerry::fileExistsOnMainThread):
1812         (WebCore::WorkerAsyncFileSystemBlackBerry::directoryExistsOnMainThread):
1813         (WebCore::WorkerAsyncFileSystemBlackBerry::readDirectoryOnMainThread):
1814         (WebCore::WorkerAsyncFileSystemBlackBerry::createWriterOnMainThread):
1815         (WebCore::WorkerAsyncFileSystemBlackBerry::createSnapshotFileAndReadMetadataOnMainThread):
1816         * platform/graphics/blackberry/ImageBlackBerry.cpp:
1817         (WebCore::Image::loadPlatformResource):
1818         * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
1819         (WebCore::MediaPlayerPrivate::load):
1820         (WebCore::MediaPlayerPrivate::notifyChallengeResult):
1821         (WebCore::toWebMediaStreamSource):
1822         (WebCore::toWebMediaStreamDescriptor):
1823         * platform/network/blackberry/NetworkManager.cpp:
1824         (WebCore::NetworkManager::startJob):
1825         * platform/network/blackberry/SocketStreamHandleBlackBerry.cpp:
1826         (WebCore::SocketStreamHandle::SocketStreamHandle):
1827         * platform/network/blackberry/rss/RSSFilterStream.cpp:
1828         (WebCore::RSSFilterStream::notifyStatusReceived):
1829         (WebCore::RSSFilterStream::notifyHeadersReceived):
1830         (WebCore::RSSFilterStream::convertContentToHtml):
1831         (WebCore::RSSFilterStream::charset):
1832         (WebCore::RSSFilterStream::removeHeader):
1833         (WebCore::RSSFilterStream::updateHeader):
1834         (WebCore::RSSFilterStream::updateRSSHeaders):
1835         * platform/network/blackberry/rss/RSSFilterStream.h:
1836         * platform/text/blackberry/StringBlackBerry.cpp:
1837         (WTF::String::operator BlackBerry::Platform::String):
1838
1839 2013-05-08  Anders Carlsson  <andersca@apple.com>
1840
1841         Assert at compile time that we don't pass Objective-C object pointers to adoptCF
1842         https://bugs.webkit.org/show_bug.cgi?id=115823
1843
1844         Reviewed by Geoffrey Garen.
1845
1846         * platform/graphics/ca/mac/TileController.mm:
1847         (WebCore::TileController::TileController):
1848         Use adoptNS for CALayer.
1849
1850 2013-05-08  Eric Carlson  <eric.carlson@apple.com>
1851
1852         TextTrackCue should support empty content
1853         https://bugs.webkit.org/show_bug.cgi?id=115821
1854
1855         Reviewed by Jer Noble.
1856
1857         Test: media/track/track-cue-empty-text-crash.html
1858
1859         * html/shadow/MediaControlElements.cpp:
1860         (WebCore::MediaControlTextTrackContainerElement::updateDisplay): Don't bother trying to render
1861             cues with no content.
1862
1863         * html/track/TextTrackCue.cpp:
1864         (WebCore::TextTrackCue::getCueAsHTML): Return early if there isn't a node tree.
1865         (WebCore::TextTrackCue::createCueRenderingTree): Ditto.
1866         (WebCore::TextTrackCue::determineTextDirection): Ditto.
1867         (WebCore::TextTrackCue::updateDisplayTree): Return early if there isn't a cue rendering tree.
1868
1869 2013-05-08  Roger Fong  <roger_fong@apple.com>
1870
1871         Unreviewed AppleWin build fix.
1872
1873         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h:
1874         (MediaPlayerPrivateAVFoundationCF):
1875         (WebCore::MediaPlayerPrivateAVFoundationCF::currentTrack):
1876
1877 2013-05-08  José Dapena Paz  <jdapena@igalia.com> and Zan Dobersek  <zdobersek@igalia.com>
1878
1879         [GTK] Plumb the Automake build system for the Battery Status API feature
1880         https://bugs.webkit.org/show_bug.cgi?id=115718
1881
1882         Reviewed by Martin Robinson.
1883
1884         No new tests - no new functionality. The feature is not enabled yet, though all the relevant tests
1885         pass when it is.
1886
1887         * GNUmakefile.am: Add the Modules/battery directory to the list of search paths for header inclusions.
1888         Include the same directory under the IDL_PATH variable so the IDL files it contains are processed.
1889         List these IDL files using a wildcard under the EXTRA_DIST list.
1890         * GNUmakefile.list.am: Add the build targets for the module source files, IDLs and resulting JS bindings.
1891         * bindings/gobject/GNUmakefile.am: Add the build targets for the GObject DOM bindings.
1892
1893 2013-05-08  Roger Fong  <roger_fong@apple.com>
1894
1895         Unreviewed. AppleWin VS2010 build fix.
1896
1897         * WebCore.vcxproj/WebCore.vcxproj:
1898         * WebCore.vcxproj/WebCore.vcxproj.filters:
1899
1900 2013-05-08  Darin Adler  <darin@apple.com>
1901
1902         REGRESSION(r149700): fast/css-generated-content/close-quote-negative-depth.html
1903         https://bugs.webkit.org/show_bug.cgi?id=115776
1904
1905         Reviewed by Anders Carlsson.
1906
1907         I changed depth to more closely match what is in the CSS3 specification.
1908         There may be a more optimal way to make it work, but this seems the most straightforward.
1909
1910         * rendering/RenderQuote.cpp:
1911         (WebCore::RenderQuote::RenderQuote): Initialize m_depth to -1 because that depth
1912         is consistent with the empty string that is the initial value of the text. The
1913         real depth will be calculated when the node is attached.
1914         (WebCore::RenderQuote::originalText): Removed the "depth - 1" logic that
1915         used to be done for close quotes. Instead, the updateDepth function now correctly
1916         subtracts one for the close quote itself, not just afterward. Also added an early
1917         exit when the depth is negative; these changes together fix the bug.
1918         (WebCore::RenderQuote::attachQuote): Added a call to updateDepth even for the render
1919         quote head, we now need that to set the depth either to 0 or to -1.
1920         (WebCore::RenderQuote::detachQuote): Removed code to set m_depth to 0;  if we are not
1921         resetting the text then m_depth should be left matching the text, otherwise updateDepth
1922         might not do its job correctly if the quote is later re-attached. What matters is that
1923         m_depth and the text are in sync.
1924         (WebCore::RenderQuote::updateDepth): Changed updating logic in two ways. First,
1925         compute the depth in a local variable rather than computing it in a data member
1926         after first saving off the old value of the data member. That's clearer style.
1927         Second, add the code to change negative depths to zero when propagating to the
1928         next quote in the chain, which matches how the standard is written, and decrement
1929         the depth of the close quote itself, not the quote after the close quote.
1930
1931 2013-05-08  Eric Carlson  <eric.carlson@apple.com>
1932
1933         Prevent crash when track is deleted during video element deletion.
1934         https://bugs.webkit.org/show_bug.cgi?id=106183
1935
1936         Reviewed by Dean Jackson.
1937
1938         Test: media/track/track-remove-crash.html
1939
1940         * html/HTMLMediaElement.cpp:
1941         (WebCore::HTMLMediaElement::removedFrom): Set m_inActiveDocument to false so we
1942             do not process text track cues or dispatch related events.
1943
1944 2013-05-08  Eric Carlson  <eric.carlson@apple.com>
1945
1946         [Mac] Unreviewed buildfix after r149741.
1947
1948         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
1949         (WebCore::MediaPlayerPrivateAVFoundationObjC::setClosedCaptionsVisible):
1950
1951 2013-05-08  Eric Carlson  <eric.carlson@apple.com>
1952
1953         [Mac] Inband text tracks are not in track menu on Lion
1954         https://bugs.webkit.org/show_bug.cgi?id=115740
1955
1956         Reviewed by Dean Jackson.
1957
1958         No new tests, covered by existing tests.
1959
1960         * html/HTMLMediaElement.cpp:
1961         (WebCore::HTMLMediaElement::HTMLMediaElement): Remove m_legacyWebKitClosedCaptionsVisible.
1962         (WebCore::HTMLMediaElement::setClosedCaptionsVisible): Set m_closedCaptionsVisible
1963             to false immediately, it will be reset to the appropriate value if necessary.
1964         (WebCore::HTMLMediaElement::setWebkitClosedCaptionsVisible): Remove m_legacyWebKitClosedCaptionsVisible.
1965         (WebCore::HTMLMediaElement::webkitClosedCaptionsVisible): Remove m_legacyWebKitClosedCaptionsVisible.
1966         * html/HTMLMediaElement.h:
1967
1968         * platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp: Remove 
1969             HAVE(AVFOUNDATION_TEXT_TRACK_SUPPORT) requirement. AVFOUNDATION_TEXT_TRACK_SUPPORT ->
1970             AVFOUNDATION_MEDIA_SELECTION_GROUP
1971         * platform/graphics/avfoundation/InbandTextTrackPrivateAVF.h: Ditto.
1972
1973         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp: 
1974         (WebCore::MediaPlayerPrivateAVFoundation::MediaPlayerPrivateAVFoundation): Ditto.
1975         (WebCore::MediaPlayerPrivateAVFoundation::seek): Ditto.
1976         (WebCore::MediaPlayerPrivateAVFoundation::seekCompleted): Ditto.
1977         (WebCore::MediaPlayerPrivateAVFoundation::dispatchNotification): Ditto.
1978         (WebCore::MediaPlayerPrivateAVFoundation::trackModeChanged): Ditto.
1979         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:  Ditto.
1980
1981         * platform/graphics/avfoundation/objc/InbandTextTrackPrivateLegacyAVFObjC.h:  Ditto.
1982         * platform/graphics/avfoundation/objc/InbandTextTrackPrivateLegacyAVFObjC.mm:
1983         (WebCore::InbandTextTrackPrivateLegacyAVFObjC::kind): Don't look at media characteristics, 
1984             a legacy CC track is always Captions.
1985         (WebCore::InbandTextTrackPrivateLegacyAVFObjC::isClosedCaptions): Ditto.
1986         (WebCore::InbandTextTrackPrivateLegacyAVFObjC::containsOnlyForcedSubtitles): Ditto.
1987         (WebCore::InbandTextTrackPrivateLegacyAVFObjC::isMainProgramContent): Ditto.
1988         (WebCore::InbandTextTrackPrivateLegacyAVFObjC::isEasyToRead): Ditto.
1989         (WebCore::InbandTextTrackPrivateLegacyAVFObjC::label): Use different AVFoundation API on 10.7.
1990         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
1991
1992         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
1993         (WebCore::MediaPlayerPrivateAVFoundationObjC::MediaPlayerPrivateAVFoundationObjC): AVFOUNDATION_TEXT_TRACK_SUPPORT ->
1994             AVFOUNDATION_MEDIA_SELECTION_GROUP.
1995         (WebCore::MediaPlayerPrivateAVFoundationObjC::cancelLoad): Ditto.
1996         (WebCore::MediaPlayerPrivateAVFoundationObjC::setClosedCaptionsVisible): Do nothing. AVFOUNDATION_TEXT_TRACK_SUPPORT ->
1997             AVFOUNDATION_MEDIA_SELECTION_GROUP.
1998         (WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged): Support legacy CC tracks
1999             only on 10.8. AVFOUNDATION_TEXT_TRACK_SUPPORT -> AVFOUNDATION_MEDIA_SELECTION_GROUP
2000         (WebCore::MediaPlayerPrivateAVFoundationObjC::processLegacyClosedCaptionsTracks): Ditto.
2001         (WebCore::MediaPlayerPrivateAVFoundationObjC::setCurrentTrack): Ditto.
2002         (WebCore::MediaPlayerPrivateAVFoundationObjC::languageOfPrimaryAudioTrack): AVFOUNDATION_TEXT_TRACK_SUPPORT -> 
2003             AVFOUNDATION_MEDIA_SELECTION_GROUP
2004
2005 2013-05-08  Sergio Villar Senin  <svillar@igalia.com>
2006
2007         Allow blank spaces before colon (:) on CSS variable definition
2008         https://bugs.webkit.org/show_bug.cgi?id=115802
2009
2010         Reviewed by Darin Adler.
2011
2012         Test: css3/css-variable-definition.html
2013
2014         Modified the grammar to allow blank spaces before the colon on CSS
2015         variable definitions.
2016
2017         * css/CSSGrammar.y.in:
2018
2019 2013-05-08  Gustavo Noronha Silva  <gustavo.noronha@collabora.com>
2020
2021         [GStreamer] Does memory buffering even with preload set to none
2022         https://bugs.webkit.org/show_bug.cgi?id=115754
2023
2024         Reviewed by Philippe Normand.
2025
2026         Covered by existing tests.
2027
2028         Revision 148840 fixed on-disk buffering being done when preload is set to none,
2029         but memory buffering is still being done. That is because setting the state to
2030         paused causes GStreamer to start loading the media, to gather information. Only
2031         doing that when committing the load avoids that while maintaining the tested
2032         behaviour unchanged.
2033
2034         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
2035         (WebCore::MediaPlayerPrivateGStreamer::load): move setting pause state to commitLoad.
2036         (WebCore::MediaPlayerPrivateGStreamer::commitLoad): see above.
2037
2038 2013-05-08  Andreas Kling  <akling@apple.com>
2039
2040         SVGStyledElement::getPresentationAttribute() does not need to be virtual.
2041
2042         From Blink r149888 by <cevans@chromium.org>
2043         <http://src.chromium.org/viewvc/blink?view=revision&revision=149888>
2044
2045         * svg/SVGStyledElement.h:
2046
2047 2013-05-08  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2048
2049         Crash when loading link to audio file
2050         https://bugs.webkit.org/show_bug.cgi?id=115794
2051
2052         Reviewed by Jocelyn Turcotte.
2053
2054         Do not access a null pointer frame.
2055
2056         * loader/appcache/ApplicationCacheHost.cpp:
2057         (WebCore::ApplicationCacheHost::isApplicationCacheEnabled):
2058
2059 2013-05-08  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2060
2061         Remove unused [TransferList] extended attribute
2062         https://bugs.webkit.org/show_bug.cgi?id=115788
2063
2064         Reviewed by Kentaro Hara.
2065
2066         Remove [TransferList] extended attribute and corresponding tests as it has no
2067         effect on the generated JSC bindings.
2068
2069         No new tests, no behavior change.
2070
2071         * bindings/scripts/IDLAttributes.txt:
2072         * bindings/scripts/test/CPP/WebDOMTestSerializedScriptValueInterface.cpp:
2073         * bindings/scripts/test/CPP/WebDOMTestSerializedScriptValueInterface.h:
2074         (WebDOMTestSerializedScriptValueInterface):
2075         * bindings/scripts/test/CPP/WebDOMTestTypedefs.cpp:
2076         * bindings/scripts/test/CPP/WebDOMTestTypedefs.h:
2077         (WebDOMTestTypedefs):
2078         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp:
2079         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
2080         * bindings/scripts/test/GObject/WebKitDOMTestTypedefs.cpp:
2081         * bindings/scripts/test/GObject/WebKitDOMTestTypedefs.h:
2082         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
2083         (WebCore):
2084         (WebCore::JSTestSerializedScriptValueInterfaceConstructor::finishCreation):
2085         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
2086         (JSTestSerializedScriptValueInterfacePrototype):
2087         (JSTestSerializedScriptValueInterfaceConstructor):
2088         * bindings/scripts/test/JS/JSTestTypedefs.cpp:
2089         (WebCore):
2090         * bindings/scripts/test/JS/JSTestTypedefs.h:
2091         (WebCore):
2092         * bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterface.h:
2093         * bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterface.mm:
2094         * bindings/scripts/test/ObjC/DOMTestTypedefs.h:
2095         * bindings/scripts/test/ObjC/DOMTestTypedefs.mm:
2096         * bindings/scripts/test/TestSerializedScriptValueInterface.idl:
2097         * bindings/scripts/test/TestTypedefs.idl:
2098
2099 2013-05-08  Dongseong Hwang  <dongseong.hwang@intel.com>
2100
2101         Make optional arguments in CanvasRenderingContext2D match the spec.
2102         https://bugs.webkit.org/show_bug.cgi?id=115723
2103
2104         Reviewed by Dean Jackson.
2105
2106         WebKit r98985 set many arguments optional although the canvas spec[1] does not
2107         indicate. So this patch corrects CanvasRenderingContext2D.idl to match the spec.
2108
2109         [1] http://www.w3.org/html/wg/drafts/2dcontext/html5_canvas/
2110
2111         Covered by existing tests:
2112           canvas/philip/tests/2d.missingargs.html
2113           fast/canvas/canvas-overloads-strokeRect.html
2114           inspector/profiler/canvas2d/canvas2d-profiler-capturing-basics.html
2115
2116         * html/canvas/CanvasRenderingContext2D.idl:
2117
2118 2013-05-08  Ryosuke Niwa  <rniwa@webkit.org>
2119
2120         Remove unused method and de-virtualize others in Element.h
2121         https://bugs.webkit.org/show_bug.cgi?id=115770
2122
2123         Reviewed by Andreas Kling.
2124
2125         Merge https://chromium.googlesource.com/chromium/blink/+/c2c2ff9cb69f46f5cc9d289b2bfbdb8ab5bd3e49
2126
2127         The de-virtualization possibilities were noted whilst "FINALizing" the Node
2128         hierarchy. If a method is successfully marked FINAL but then fails when marked
2129         OVERRIDE as well, the method by definition does not need to be virtual.
2130
2131         * WebCore.exp.in:
2132         * dom/Element.h:
2133         (WebCore::Element::hasAuthorShadowRoot):
2134
2135 2013-05-06  Darin Adler  <darin@apple.com>
2136
2137         Use adoptCF and adoptNS in more places
2138         https://bugs.webkit.org/show_bug.cgi?id=115657
2139
2140         Reviewed by Sam Weinig.
2141
2142         This is similar to my last set of changes, but covers code that I missed with
2143         global replace using the Safari Xcode workspace.
2144
2145         * platform/cf/win/CertificateCFWin.cpp:
2146         (WebCore::copyCertificateToData):
2147         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
2148         (WebCore::MediaPlayerPrivateAVFoundationCF::platformBufferedTimeRanges):
2149         (WebCore::MediaPlayerPrivateAVFoundationCF::platformMinTimeSeekable):
2150         (WebCore::MediaPlayerPrivateAVFoundationCF::platformMaxTimeSeekable):
2151         (WebCore::MediaPlayerPrivateAVFoundationCF::platformMaxTimeLoaded):
2152         (WebCore::MediaPlayerPrivateAVFoundationCF::totalBytes):
2153         (WebCore::mimeTypeCache):
2154         (WebCore::MediaPlayerPrivateAVFoundationCF::tracksChanged):
2155         (WebCore::MediaPlayerPrivateAVFoundationCF::sizeChanged):
2156         (WebCore::AVFWrapper::createAssetForURL):
2157         (WebCore::AVFWrapper::createPlayer):
2158         (WebCore::AVFWrapper::createPlayerItem):
2159         (WebCore::AVFWrapper::setAsset):
2160         (WebCore::AVFWrapper::platformLayer):
2161         (WebCore::AVFWrapper::createAVCFVideoLayer):
2162         (WebCore::AVFWrapper::createImageGenerator):
2163         * platform/graphics/avfoundation/objc/InbandTextTrackPrivateLegacyAVFObjC.mm:
2164         (WebCore::InbandTextTrackPrivateLegacyAVFObjC::language):
2165         * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
2166         (toCACFTimingFunction):
2167         (PlatformCAAnimation::PlatformCAAnimation):
2168         (PlatformCAAnimation::setFromValue):
2169         (PlatformCAAnimation::setToValue):
2170         (PlatformCAAnimation::setValues):
2171         (PlatformCAAnimation::setKeyTimes):
2172         (PlatformCAAnimation::setTimingFunctions):
2173         * platform/graphics/ca/win/PlatformCALayerWin.cpp:
2174         (PlatformCALayer::PlatformCALayer):
2175         (PlatformCALayer::setBackgroundColor):
2176         (PlatformCALayer::setBorderColor):
2177         * platform/graphics/ca/win/PlatformCALayerWinInternal.cpp:
2178         (PlatformCALayerWinInternal::PlatformCALayerWinInternal):
2179         (PlatformCALayerWinInternal::addTile):
2180         * platform/graphics/ca/win/WKCACFViewLayerTreeHost.cpp:
2181         (WebCore::WKCACFViewLayerTreeHost::WKCACFViewLayerTreeHost):
2182         * platform/graphics/gstreamer/PlatformVideoWindowMac.mm:
2183         (PlatformVideoWindow::PlatformVideoWindow):
2184         * platform/graphics/win/FontCustomPlatformData.cpp:
2185         (WebCore::FontCustomPlatformData::fontPlatformData):
2186         * platform/graphics/win/FontPlatformDataCGWin.cpp:
2187         (WebCore::getPostScriptName):
2188         (WebCore::FontPlatformData::platformDataInit):
2189         * platform/graphics/win/GraphicsContextCGWin.cpp:
2190         (WebCore::GraphicsContext::drawWindowsBitmap):
2191         * platform/graphics/win/ImageCGWin.cpp:
2192         (WebCore::BitmapImage::create):
2193         * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp:
2194         (WebCore::MediaPlayerPrivateFullscreenWindow::setRootChildLayer):
2195         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
2196         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::rfc2616DateStringFromTime):
2197         (WebCore::QTCFDictionaryCreateWithDataCallback):
2198         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::retrieveCurrentImage):
2199         * platform/graphics/win/WKCAImageQueue.cpp:
2200         (WebCore::WKCAImageQueue::WKCAImageQueue):
2201         * platform/image-decoders/ImageDecoder.h:
2202         (WebCore::ImageDecoder::qcmsOutputDeviceProfile):
2203         * platform/network/cf/AuthenticationCF.cpp:
2204         (WebCore::core):
2205         * platform/network/cf/CookieJarCFNet.cpp:
2206         (WebCore::cookieDomain):
2207         (WebCore::cookieName):
2208         (WebCore::cookiePath):
2209         (WebCore::cookieValue):
2210         (WebCore::filterCookies):
2211         (WebCore::setCookiesFromDOM):
2212         (WebCore::cookiesForDOM):
2213         (WebCore::cookieRequestHeaderFieldValue):
2214         (WebCore::getRawCookies):
2215         (WebCore::deleteCookie):
2216         (WebCore::getHostnamesWithCookies):
2217         (WebCore::deleteCookiesForHostname):
2218         * platform/network/curl/ResourceHandleManager.cpp:
2219         (WebCore::certificatePath):
2220         * platform/win/ClipboardUtilitiesWin.cpp:
2221         (WebCore::urlFromPath):
2222         (WebCore::getURL):
2223         * platform/win/LocalizedStringsWin.cpp:
2224         (WebCore::createWebKitBundle):
2225         (WebCore::localizedString):
2226         * platform/win/SearchPopupMenuWin.cpp:
2227         (WebCore::SearchPopupMenuWin::saveRecentSearches):
2228         (WebCore::SearchPopupMenuWin::loadRecentSearches):
2229         * plugins/mac/PluginPackageMac.cpp:
2230         (WebCore::stringListFromResourceId):
2231         (WebCore::PluginPackage::fetchInfo):
2232         (WebCore::PluginPackage::load):
2233         * plugins/mac/PluginViewMac.mm:
2234         (WebCore::PluginView::platformStart):
2235         * rendering/RenderThemeSafari.cpp:
2236         (WebCore::RenderThemeSafari::platformFocusRingColor):
2237         (WebCore::RenderThemeSafari::paintMenuListButtonGradients):
2238         (WebCore::RenderThemeSafari::paintSliderTrack):
2239         Use adoptCF and adoptNS throughout.
2240
2241 2013-05-07  Benjamin Poulain  <bpoulain@apple.com>
2242
2243         Make CanvasStyle's CMYKAValues allocated on the heap and move the pointer in the union.
2244         https://bugs.webkit.org/show_bug.cgi?id=115764
2245
2246         Reviewed by Andreas Kling.
2247
2248         CMYKA input is uncommon enough that we should not pay the price for
2249         every CanvasStyle.
2250         Make those values heap allocated and put the pointer in the union. Since
2251         the RGBA32 values are needed for CMYKA, a RGBA32 value is added to the structure.
2252
2253         * html/canvas/CanvasStyle.cpp:
2254         (WebCore::CanvasStyle::CanvasStyle):
2255         (WebCore::CanvasStyle::~CanvasStyle):
2256         (WebCore::CanvasStyle::isEquivalentColor):
2257         (WebCore::CanvasStyle::isEquivalentCMYKA):
2258         (WebCore::CanvasStyle::applyStrokeColor):
2259         (WebCore::CanvasStyle::applyFillColor):
2260         * html/canvas/CanvasStyle.h:
2261         (CanvasStyle):
2262         (CMYKAValues):
2263         (WebCore::CanvasStyle::CMYKAValues::CMYKAValues):
2264         (WebCore::CanvasStyle::color):
2265         (WebCore):
2266
2267 2013-05-07  Darin Adler  <darin@apple.com>
2268
2269         Use OwnPtr instead of deleteAllValues for requests in PluginView
2270         https://bugs.webkit.org/show_bug.cgi?id=115731
2271
2272         Reviewed by Sam Weinig.
2273
2274         * plugins/PluginView.cpp:
2275         (WebCore::PluginView::~PluginView): Removed the call to deleteAllValues.
2276         (WebCore::PluginView::requestTimerFired): Use release to remove an OwnPtr
2277         from m_requests rather than an explicit delete. Also use !isEmpty instead
2278         of size > 0.
2279         (WebCore::PluginView::scheduleRequest): Changed argument type to PassOwnPtr.
2280         (WebCore::PluginView::load): Use adoptPtr to call scheduleRequest.
2281
2282         * plugins/PluginView.h: Changed argument type of scheduleRequest to
2283         PassOwnPtr, and m_requests to a Vector<OwnPtr>.
2284
2285 2013-05-07  Antti Koivisto  <antti@apple.com>
2286
2287         Remove SelectRuleFeatureSet
2288         https://bugs.webkit.org/show_bug.cgi?id=115757
2289
2290         Reviewed by Benjamin Poulain.
2291
2292         This is dead code.
2293
2294         * CMakeLists.txt:
2295         * GNUmakefile.list.am:
2296         * Target.pri:
2297         * WebCore.exp.in:
2298         * WebCore.vcproj/WebCore.vcproj:
2299         * WebCore.xcodeproj/project.pbxproj:
2300         * dom/Element.cpp:
2301         (WebCore::Element::attributeChanged):
2302         (WebCore):
2303         (WebCore::Element::didAffectSelector):
2304         * dom/Element.h:
2305         (Element):
2306         * dom/ElementShadow.h:
2307         (WebCore::ElementShadow::invalidateDistribution):
2308         * html/shadow/ContentDistributor.cpp:
2309         (WebCore::ContentDistributor::ContentDistributor):
2310         (WebCore):
2311         * html/shadow/ContentDistributor.h:
2312         (ContentDistributor):
2313         * html/shadow/InsertionPoint.cpp:
2314         (WebCore::InsertionPoint::insertedInto):
2315         (WebCore::InsertionPoint::removedFrom):
2316         * html/shadow/InsertionPoint.h:
2317         (InsertionPoint):
2318         * html/shadow/SelectRuleFeatureSet.cpp: Removed.
2319         * html/shadow/SelectRuleFeatureSet.h: Removed.
2320         * testing/Internals.cpp:
2321         (WebCore):
2322         * testing/Internals.idl:
2323
2324 2013-05-07  Anders Carlsson  <andersca@apple.com>
2325
2326         Store the quotes in the same allocation as the QuotesData object
2327         https://bugs.webkit.org/show_bug.cgi?id=115768
2328
2329         Reviewed by Andreas Kling.
2330
2331         Since the QuotesData object is immutable we don't need a Vector to store the quote pairs,
2332         they can just be stored after the class data.
2333
2334         * rendering/style/QuotesData.cpp:
2335         (WebCore::sizeForQuotesDataWithQuoteCount):
2336         Helper function for computing the allocation size.
2337
2338         (WebCore::QuotesData::create):
2339         Use fastMalloc + placement new.
2340
2341         (WebCore::QuotesData::QuotesData):
2342         Use placement new to allocate the quote pairs.
2343
2344         (WebCore::QuotesData::~QuotesData):
2345         Destroy the quote pairs.
2346
2347         (WebCore::QuotesData::openQuote):
2348         Stop using Vector.
2349
2350         (WebCore::QuotesData::closeQuote):
2351         Ditto.
2352
2353         (WebCore::operator==):
2354         Ditto.
2355
2356         * rendering/style/QuotesData.h:
2357
2358 2013-05-07  Benjamin Poulain  <bpoulain@apple.com>
2359
2360         We should not ref() the RefPtr twice in CanvasStyle
2361
2362         Reviewed by Darin Adler.
2363
2364         * html/canvas/CanvasStyle.cpp:
2365         (WebCore::CanvasStyle::CanvasStyle):
2366         We leak the ref of PassRefPtr, we should not ref() it a second time.
2367
2368 2013-05-07  Ryosuke Niwa  <rniwa@webkit.org>
2369
2370         Devirtualize Document class type checking
2371         https://bugs.webkit.org/show_bug.cgi?id=115755
2372
2373         Reviewed by Benjamin Poulain.
2374
2375         Merge https://chromium.googlesource.com/chromium/blink/+/dae5adc768d5ce6bff301df6515745da8ea24950
2376
2377         Document has a bunch of virtual bool is*Document() methods on it, but it also has
2378         two bools for XHTML and HTML documents which is silly. We can merge them all
2379         together into an enum of values and devirtualize the type checking methods.
2380
2381         * dom/Document.cpp:
2382         (WebCore::Document::Document):
2383         (WebCore::Document::createElement):
2384         * dom/Document.h:
2385         (WebCore::Document::create):
2386         (WebCore::Document::createXHTML):
2387         (WebCore::Document::isHTMLDocument):
2388         (WebCore::Document::isXHTMLDocument):
2389         (WebCore::Document::isImageDocument):
2390         (WebCore::Document::isSVGDocument):
2391         (WebCore::Document::isPluginDocument):
2392         (WebCore::Document::isMediaDocument):
2393         (WebCore::Document):
2394         * html/HTMLDocument.cpp:
2395         (WebCore::HTMLDocument::HTMLDocument):
2396         * html/HTMLDocument.h:
2397         (WebCore::HTMLDocument):
2398         * html/ImageDocument.cpp:
2399         (WebCore::ImageDocument::ImageDocument):
2400         * html/ImageDocument.h:
2401         (WebCore::ImageDocument):
2402         * html/MediaDocument.cpp:
2403         (WebCore::MediaDocument::MediaDocument):
2404         * html/MediaDocument.h:
2405         (WebCore::MediaDocument):
2406         * html/PluginDocument.cpp:
2407         (WebCore::PluginDocument::PluginDocument):
2408         * html/PluginDocument.h:
2409         (WebCore::PluginDocument):
2410         * loader/PlaceholderDocument.h:
2411         (WebCore::PlaceholderDocument::PlaceholderDocument):
2412         * svg/SVGDocument.cpp:
2413         (WebCore::SVGDocument::SVGDocument):
2414         * svg/SVGDocument.h:
2415         (WebCore::SVGDocument):
2416
2417 2013-05-07  Anders Carlsson  <andersca@apple.com>
2418
2419         Begin unraveling the mess that is QuotesData
2420         https://bugs.webkit.org/show_bug.cgi?id=115765
2421
2422         Reviewed by Andreas Kling.
2423
2424         Change QuotesData to be an immutable object and fix other things that are broken.
2425
2426         * css/StyleResolver.cpp:
2427         (WebCore::StyleResolver::applyProperty):
2428         QuotesData::addPair is gone. Instead, create the Vector up front and pass it to QuotesData.
2429
2430         * rendering/RenderQuote.cpp:
2431         (WebCore::RenderQuote::originalText):
2432         Update for renames.
2433
2434         * rendering/style/QuotesData.cpp:
2435         (WebCore::QuotesData::create):
2436         Remove the create overload that wasn't used. Add a new create overload that takes a Vector.
2437
2438         (WebCore::QuotesData::openQuote):
2439         Rename this from getOpenQuote and clean it up.
2440
2441         (WebCore::QuotesData::closeQuote):
2442         Rename this from getCloseQuote and clean it up.
2443
2444         (WebCore::operator==):
2445         Replace the equals member function with a proper equality operator.
2446
2447         * rendering/style/RenderStyle.cpp:
2448         (WebCore::RenderStyle::diff):
2449         Stop calling QuotesData::equals. Use the same idiom as used for other properties.
2450
2451         (WebCore::RenderStyle::setQuotes):
2452         * rendering/style/StyleRareInheritedData.cpp:
2453         Use operator==.
2454
2455         (WebCore::quotesDataEquivalent):
2456         Add helper function.
2457
2458         (WebCore::StyleRareInheritedData::operator==):
2459         Call quotesDataEquivalent.
2460
2461 2013-05-06  Enrica Casucci  <enrica@apple.com>
2462
2463         Support -webkit-system-font on OS X.
2464         https://bugs.webkit.org/show_bug.cgi?id=115758
2465         <rdar://problem/13433854>
2466
2467         Reviewed by Dean Jackson.
2468
2469         Test: platform/mac/fast/text/systemFont.html
2470
2471         * platform/mac/WebFontCache.mm:
2472         (+[WebFontCache internalFontWithFamily:traits:weight:size:]):
2473
2474 2013-05-07  Benjamin Poulain  <bpoulain@apple.com>
2475
2476         Move CanvasGradient and CanvasPattern in the union of CanvasStyle
2477         https://bugs.webkit.org/show_bug.cgi?id=115759
2478
2479         Reviewed by Andreas Kling.
2480
2481         The Gradient and Pattern are exclusive with the other values, but they
2482         were left out of the union because they are ref-counted.
2483
2484         This patch moves them in the union, and simply does the ref-counting manually.
2485
2486         * html/canvas/CanvasStyle.cpp:
2487         (WebCore::CanvasStyle::CanvasStyle):
2488         (WebCore::CanvasStyle::~CanvasStyle):
2489         * html/canvas/CanvasStyle.h:
2490         (CanvasStyle):
2491         (WebCore::CanvasStyle::canvasGradient):
2492         (WebCore::CanvasStyle::canvasPattern):
2493
2494 2013-05-07  Anders Carlsson  <andersca@apple.com>
2495
2496         Remove custom allocator support from PODArena
2497         https://bugs.webkit.org/show_bug.cgi?id=115762
2498
2499         Reviewed by Andreas Kling.
2500
2501         Nobody uses PODArena with a custom allocator, so just get rid of it and always use fastMalloc/fastFree.
2502
2503         * platform/PODArena.h:
2504         (WebCore::PODArena::PODArena):
2505         (WebCore::PODArena::allocateBase):
2506         (WebCore::PODArena::Chunk::Chunk):
2507         (WebCore::PODArena::Chunk::~Chunk):
2508         (Chunk):
2509         * platform/PODFreeListArena.h:
2510         (WebCore::PODFreeListArena::allocate):
2511         (WebCore::PODFreeListArena::FreeListChunk::FreeListChunk):
2512
2513 2013-05-07  Anders Carlsson  <andersca@apple.com>
2514
2515         Clean up KeyframeValueList and related classes
2516         https://bugs.webkit.org/show_bug.cgi?id=115738
2517
2518         Reviewed by Simon Fraser.
2519
2520         Add static create() functions to the AnimationValue subclasses, and change a bunch of parameters
2521         and return values that can never be null from pointer types to reference types to better indicate this.
2522
2523         * platform/graphics/GraphicsLayer.cpp:
2524         (WebCore::filterOperationsAt):
2525         (WebCore::GraphicsLayer::validateFilterOperations):
2526         (WebCore::operationsAt):
2527         (WebCore::GraphicsLayer::validateTransformOperations):
2528         * platform/graphics/GraphicsLayer.h:
2529         (AnimationValue):
2530         (WebCore::AnimationValue::AnimationValue):
2531         (WebCore::FloatAnimationValue::create):
2532         (FloatAnimationValue):
2533         (WebCore::FloatAnimationValue::FloatAnimationValue):
2534         (WebCore::TransformAnimationValue::create):
2535         (TransformAnimationValue):
2536         (WebCore::TransformAnimationValue::value):
2537         (WebCore::TransformAnimationValue::TransformAnimationValue):
2538         (WebCore::FilterAnimationValue::create):
2539         (WebCore::FilterAnimationValue::value):
2540         (WebCore::FilterAnimationValue::FilterAnimationValue):
2541         (FilterAnimationValue):
2542         (WebCore::KeyframeValueList::~KeyframeValueList):
2543         (KeyframeValueList):
2544         (WebCore::KeyframeValueList::at):
2545         * platform/graphics/ca/GraphicsLayerCA.cpp:
2546         (WebCore::animationHasStepsTimingFunction):
2547         (WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes):
2548         (WebCore::GraphicsLayerCA::createFilterAnimationsFromKeyframes):
2549         (WebCore::GraphicsLayerCA::timingFunctionForAnimationValue):
2550         (WebCore::GraphicsLayerCA::setAnimationEndpoints):
2551         (WebCore::GraphicsLayerCA::setAnimationKeyframes):
2552         (WebCore::GraphicsLayerCA::setTransformAnimationEndpoints):
2553         (WebCore::GraphicsLayerCA::setTransformAnimationKeyframes):
2554         (WebCore::GraphicsLayerCA::setFilterAnimationEndpoints):
2555         (WebCore::GraphicsLayerCA::setFilterAnimationKeyframes):
2556         * platform/graphics/ca/GraphicsLayerCA.h:
2557         (GraphicsLayerCA):
2558         * rendering/RenderLayerBacking.cpp:
2559         (WebCore::RenderLayerBacking::startAnimation):
2560         (WebCore::RenderLayerBacking::startTransition):
2561
2562 2013-05-07  Anders Carlsson  <andersca@apple.com>
2563
2564         Add and remove databases and origins from the database tracker
2565         https://bugs.webkit.org/show_bug.cgi?id=115752
2566
2567         Reviewed by Andreas Kling.
2568
2569         Add symbols needed by WebKit2.
2570
2571         * WebCore.exp.in:
2572
2573 2013-05-07  Beth Dakin  <bdakin@apple.com>
2574
2575         Still possible to fire paint-related LayoutMilestones before CA has committed the 
2576         changes
2577         https://bugs.webkit.org/show_bug.cgi?id=115753
2578         -and corresponding-
2579         <rdar://problem/13822315>
2580
2581         Reviewed by Simon Fraser.
2582
2583         To ensure we wait for the CA commit, we should wait until the end of the runloop 
2584         with a zero-delay timer.
2585
2586         * rendering/RenderLayerCompositor.cpp:
2587         (WebCore::RenderLayerCompositor::RenderLayerCompositor):
2588         (WebCore::RenderLayerCompositor::flushPendingLayerChanges):
2589         (WebCore::RenderLayerCompositor::paintRelatedMilestonesTimerFired):
2590         (WebCore):
2591         * rendering/RenderLayerCompositor.h:
2592         (RenderLayerCompositor):
2593
2594 2013-05-07  Chris Fleizach  <cfleizach@apple.com>
2595
2596         Bug 115694 - Fix bad cast to RenderHTMLCanvas
2597         https://bugs.webkit.org/show_bug.cgi?id=115694
2598
2599         Reviewed by Ryosuke Niwa.
2600
2601         Don't cast to RenderHTML until we check what kind of object it is.
2602
2603         * accessibility/AccessibilityRenderObject.cpp:
2604         (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
2605
2606 2013-05-07  Anders Carlsson  <andersca@apple.com>
2607
2608         The storage database tracker should know when databases come and go
2609         https://bugs.webkit.org/show_bug.cgi?id=115748
2610
2611         Reviewed by Andreas Kling.
2612
2613         Export symbol needed by WebKit2.
2614
2615         * WebCore.exp.in:
2616
2617 2013-05-07  Darin Adler  <darin@apple.com>
2618
2619         Use OwnPtr instead of deleteAllValues in SVGResourcesCache
2620         https://bugs.webkit.org/show_bug.cgi?id=115729
2621
2622         Reviewed by Benjamin Poulain.
2623
2624         * rendering/svg/SVGResourcesCache.cpp:
2625         (WebCore::SVGResourcesCache::~SVGResourcesCache): Removed call to deleteAllValues.
2626         (WebCore::SVGResourcesCache::addResourcesFromRenderObject): Use adoptPtr and release
2627         to create new SVGResources object.
2628         (WebCore::SVGResourcesCache::removeResourcesFromRenderObject): Use take to remove
2629         the SVGResources from the map rather than a get combined with delete/take.
2630         (WebCore::SVGResourcesCache::cachedResourcesForRenderObject): Removed unneeded
2631         call to contains, since get already returns 0 if there is no item in the map.
2632         (WebCore::SVGResourcesCache::resourceDestroyed): Use typedef for the map type so
2633         we don't have to repeat the type.
2634
2635         * rendering/svg/SVGResourcesCache.h: Added typedef CacheMap, and changed value
2636         type to OwnPtr.
2637
2638 2013-05-07  Anders Carlsson  <andersca@apple.com>
2639
2640         REGRESSION(r149647): Assertion failure in LocalStorageDatabaseTracker::setLocalStorageDirectoryInternal
2641         https://bugs.webkit.org/show_bug.cgi?id=115711
2642
2643         Reviewed by Andreas Kling.
2644
2645         Export SQLiteDatabase::close.
2646
2647         * WebCore.exp.in:
2648
2649 2013-05-06  Ryosuke Niwa  <rniwa@webkit.org>
2650
2651         Add an 'isReadOnly' member to IDL parse tree structure
2652         https://bugs.webkit.org/show_bug.cgi?id=115704
2653
2654         Reviewed by Kentaro Hara.
2655
2656         Add an 'isReadOnly' member to IDL parse tree structure by merging
2657         https://chromium.googlesource.com/chromium/blink/+/d6add80ecd08bcd88a6ae0e1698d929830b3bd8b
2658         and update Objective-C, C++, and GObject binding generators to use isReadOnly.
2659
2660         * bindings/scripts/CodeGeneratorCPP.pm:
2661         (GenerateHeader):
2662         (GenerateImplementation):
2663         * bindings/scripts/CodeGeneratorGObject.pm:
2664         (GetWriteableProperties):
2665         (GenerateProperty):
2666         (GenerateFunctions):
2667         * bindings/scripts/CodeGeneratorJS.pm:
2668         (IsReadonly):
2669         * bindings/scripts/CodeGeneratorObjC.pm:
2670         (GenerateHeader):
2671         (GenerateImplementation):
2672         * bindings/scripts/IDLParser.pm:
2673         (parseAttributeRest):
2674         (parseExceptionField):
2675         (parseAttributeRestOld):
2676
2677 2013-05-07  Darin Adler  <darin@apple.com>
2678
2679         Use OwnPtr instead of deleteAllValues in SMILTimeContainer
2680         https://bugs.webkit.org/show_bug.cgi?id=115730
2681
2682         Reviewed by Geoffrey Garen.
2683
2684         * svg/animation/SMILTimeContainer.cpp:
2685         (WebCore::SMILTimeContainer::~SMILTimeContainer): Removed call to deleteAllValues.
2686         (WebCore::SMILTimeContainer::schedule): Use add instead of get/set to put a new
2687         AnimationsVector into the map as needed.
2688         (WebCore::SMILTimeContainer::setElapsed): Added get since values are OwnPtr now.
2689         (WebCore::SMILTimeContainer::updateAnimations): Ditto.
2690
2691         * svg/animation/SMILTimeContainer.h: Changed value type of GroupedAnimationsMap
2692         to OwnPtr instead of raw pointer.
2693
2694 2013-05-07  Anders Carlsson  <andersca@apple.com>
2695
2696         Remove AlwaysInline.h from WTF
2697         https://bugs.webkit.org/show_bug.cgi?id=115727
2698
2699         Reviewed by Brent Fulgham.
2700
2701         The macro that used to be in AlwaysInline.h is now in Compiler.h so there's no reason
2702         to keep AlwaysInline.h around anymore.
2703
2704         * WebCore.vcproj/WebCore.vcproj:
2705         * bindings/js/JSDOMWindowCustom.h:
2706         * bindings/scripts/CodeGeneratorJS.pm:
2707         (GenerateHeader):
2708         * platform/graphics/filters/FEConvolveMatrix.h:
2709         * rendering/InlineIterator.h:
2710         * rendering/InlineTextBox.cpp:
2711         * rendering/RenderBlockLineLayout.cpp:
2712         * rendering/RenderText.cpp:
2713
2714 2013-05-07  peavo@outlook.com  <peavo@outlook.com>
2715
2716         [Curl] POST requests sometimes fail.
2717         https://bugs.webkit.org/show_bug.cgi?id=111844
2718
2719         Reviewed by Brent Fulgham.
2720
2721         Curl adds the header 'Expect: 100-Continue' when sending a POST request.
2722         When we receive the header 'HTTP/1.1 100 Continue', we should not call
2723         ResourceHandleClient::didReceiveResponse(), as this will cancel the request,
2724         because the MIME type is empty in this case, causing the POST request to fail.
2725         This header is only sent as an info header, or provisional response.
2726         
2727         In addition, this patch changes the classification of http code 304 (Not modified).
2728         It is not reported as a redirect anymore, but as a response
2729         (ResourceHandleClient::didReceiveResponse() is called.
2730
2731         * platform/network/curl/ResourceHandleManager.cpp:
2732         (WebCore::isHttpInfo): Added helper method to determine if http code is http info.
2733         (WebCore::isHttpRedirect): Added helper method to determine if http code is http redirect.
2734         (WebCore::headerCallback): Just return when receiving the header'HTTP/1.1 100 Continue'.
2735
2736 2013-05-07  Carlos Garcia Campos  <cgarcia@igalia.com>
2737
2738         [X11][BlackBerry] Check if MOZ_X11 is defined instead of XP_UNIX npruntime_internal.h
2739         https://bugs.webkit.org/show_bug.cgi?id=113687
2740
2741         Reviewed by Anders Carlsson.
2742
2743         It's assumed that all UNIX platforms use X11 for plugins, which is
2744         not the case of BlackBerry.
2745
2746         * bridge/npruntime_internal.h: Use MOZ_X11 instead of XP_UNIX.
2747
2748 2013-05-07  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
2749
2750         HashTraits<RefPtr<P> >::PeekType should be raw pointer for better performance
2751         https://bugs.webkit.org/show_bug.cgi?id=115646
2752
2753         Reviewed by Darin Adler.
2754
2755         No new tests, no new functionality.
2756
2757         * accessibility/AXObjectCache.cpp:
2758         (WebCore::AXObjectCache::get):
2759         (WebCore::AXObjectCache::remove):
2760         * accessibility/AXObjectCache.h:
2761         (WebCore::AXObjectCache::objectFromAXID):
2762         * css/CSSImageGeneratorValue.cpp:
2763         (WebCore::CSSImageGeneratorValue::getImage):
2764         * css/InspectorCSSOMWrappers.cpp:
2765         (WebCore::InspectorCSSOMWrappers::getWrapperForRuleInSheets):
2766         * css/StyleResolver.cpp:
2767         (WebCore::StyleResolver::loadPendingSVGDocuments):
2768         * html/HTMLAnchorElement.cpp:
2769         (WebCore::HTMLAnchorElement::rootEditableElementForSelectionOnMouseDown):
2770         * html/HTMLFormElement.cpp:
2771         (WebCore::HTMLFormElement::elementForAlias):
2772         * html/shadow/ContentDistributor.cpp:
2773         (WebCore::ContentDistributor::findInsertionPointFor):
2774         * loader/appcache/ApplicationCache.cpp:
2775         (WebCore::ApplicationCache::resourceForURL):
2776         * loader/archive/ArchiveResourceCollection.cpp:
2777         (WebCore::ArchiveResourceCollection::archiveResourceForURL):
2778         * page/PageGroup.cpp:
2779         (WebCore::PageGroup::transientLocalStorage):
2780         * page/animation/CompositeAnimation.cpp:
2781         (WebCore::CompositeAnimation::updateTransitions):
2782         (WebCore::CompositeAnimation::pauseTransitionAtTime):
2783         * platform/graphics/ca/GraphicsLayerCA.cpp:
2784         (WebCore::GraphicsLayerCA::updateMaskLayer):
2785         * platform/network/BlobRegistryImpl.cpp:
2786         (WebCore::BlobRegistryImpl::getBlobDataFromURL):
2787         * plugins/PluginDatabase.cpp:
2788         (WebCore::PluginDatabase::pluginForMIMEType):
2789         (WebCore::PluginDatabase::MIMETypeForExtension):
2790         * rendering/RenderCounter.cpp:
2791         (WebCore::makeCounterNode):
2792         (showCounterRendererTree):
2793         * svg/graphics/filters/SVGFilterBuilder.cpp:
2794         (WebCore::SVGFilterBuilder::getEffectById):
2795             Updated accordingly to new HashMap<.., RefPtr>::get() semantics.
2796
2797 2013-05-06  Darin Adler  <darin@apple.com>
2798
2799         Use OwnPtr instead of deleteAllValues in KeyframeValueList
2800         https://bugs.webkit.org/show_bug.cgi?id=115652
2801
2802         Reviewed by Simon Fraser.
2803
2804         Also made a few related style fixes in the functions touched.
2805
2806         * platform/graphics/GraphicsLayer.cpp:
2807         (WebCore::KeyframeValueList::insert): Change argument type to PassOwnPtr
2808         and update use of m_values since it has OwnPtr now instead of raw pointer.
2809
2810         * platform/graphics/GraphicsLayer.h: Move conditional includes to a
2811         separate paragraph, removed an unneeded forward class declaration.
2812         (WebCore::AnimationValue::AnimationValue): Marked this constructor explicit
2813         and removed an unneeded if statement.
2814         (WebCore::AnimationValue::clone): Changed to use adoptPtr and PassOwnPtr.
2815         (WebCore::FloatAnimationValue::clone): Changed this to return a PassOwnPtr.
2816         (WebCore::TransformAnimationValue::TransformAnimationValue): Marked explicit.
2817         (WebCore::TransformAnimationValue::clone): Changed to use adoptPtr and PassOwnPtr.
2818         (WebCore::FilterAnimationValue::FilterAnimationValue): Marked explicit.
2819         (WebCore::FilterAnimationValue::clone): Changed to use adoptPtr and PassOwnPtr.
2820         (WebCore::KeyframeValueList::KeyframeValueList): Marked explicit.
2821         (WebCore::KeyframeValueList::~KeyframeValueList): Removed, since the default
2822         destructor works without an explicit deleteAllValues call.
2823         (WebCore::KeyframeValueList::at): Added call to get needed since the vector
2824         contains OwnPtr now.
2825         (WebCore::KeyframeValueList::insert): Changed to take PassOwnPtr and then
2826         removed now-redundant comment saying "takes ownership of the pointer".
2827         (WebCore::KeyframeValueList::m_values): Changed type to Vector<OwnPtr>.
2828
2829         * rendering/RenderLayerBacking.cpp:
2830         (WebCore::RenderLayerBacking::startAnimation): Added adoptPtr next to the
2831         all the places new was done before calling KeyframeValueList::insert. Also
2832         simplified the booleans and #if in this function.
2833         (WebCore::RenderLayerBacking::startTransition): Ditto.
2834
2835 2013-05-06  Ryosuke Niwa  <rniwa@webkit.org>
2836
2837         [Replaceable] attributes must be readonly
2838         https://bugs.webkit.org/show_bug.cgi?id=115692
2839
2840         Reviewed by Kentaro Hara.
2841
2842         Merge https://chromium.googlesource.com/chromium/blink/+/ac61fbfe875d3c3c37d529683139ceb0ad4330bb.
2843
2844         Web IDL specification says [Replaceable] attributes are readonly:
2845         http://www.w3.org/TR/2012/CR-WebIDL-20120419/#Replaceable
2846
2847         Update the two instances of [Replaceable] in WebCore that didn't have readonly modifier to match
2848         the specifcation and the rest of WebCore. There should be no behavioral changes as the code generator
2849         already assumed [Replaceable] attributes are readonly.
2850
2851         * html/HTMLDocument.idl:
2852         * page/DOMWindow.idl:
2853
2854 2013-05-06  Darin Adler  <darin@apple.com>
2855
2856         Use OwnPtr instead of deleteAllValues in DocumentMarkerController
2857         https://bugs.webkit.org/show_bug.cgi?id=115655
2858
2859         Reviewed by Andreas Kling.
2860
2861         * dom/DocumentMarkerController.cpp:
2862         (WebCore::DocumentMarkerController::~DocumentMarkerController): Added here
2863         so the destructor isn't implicitly inline.
2864         (WebCore::DocumentMarkerController::detach): Removed now-unneeded code to
2865         call deleteAllValues. Also moved code to set m_possiblyExistingMarkerTypes
2866         to after clearing m_markers to be consistent with how other functions do it.
2867         (WebCore::DocumentMarkerController::addMarker): Changed code to use the
2868         add idiom to avoid double hash table lookup. Changed to use adoptPtr since
2869         the map now contains OwnPtr.
2870         (WebCore::DocumentMarkerController::removeMarkers): Removed explicit calls
2871         to delete list since removing the entry from the map now deletes the list.
2872         Moved the code to check if m_markers has become empty so it's only called
2873         when we actually remove something from m_markers.
2874         (WebCore::DocumentMarkerController::markerContainingPoint): Added get().
2875         (WebCore::DocumentMarkerController::renderedRectsForMarkers): Added get().
2876         (WebCore::DocumentMarkerController::removeMarkers): Changed to use a new
2877         interface to removeMarkersFromList. This eliminated the need to copy the
2878         entire map when removing markers; instead we can just copy the keys.
2879         (WebCore::DocumentMarkerController::removeMarkersFromList): Changed to use
2880         an iterator instead of being passed the key/value pair from the map. Also
2881         rearranged the logic so there is less repeated code and removed some now-
2882         unneeded comments.
2883         (WebCore::DocumentMarkerController::repaintMarkers): Added get().
2884         (WebCore::DocumentMarkerController::invalidateRenderedRectsForMarkersInRect):
2885         Added get().
2886         (WebCore::DocumentMarkerController::showMarkers): Added get().
2887
2888         * dom/DocumentMarkerController.h: Removed implementation of the destructor
2889         that called the detach function; that was just sharing the now-unneeded
2890         call to deleteAllValues. Changed the type of the map to use an OwnPtr for
2891         the value. Changed the interface of removeMarkersFromList to take a map
2892         iterator instead of a key/value pair.
2893
2894 2013-05-06  Beth Dakin  <bdakin@apple.com>
2895
2896         Reproducible crash in RenderBoxModelObject::adjustedPositionRelativeToOffsetParent()
2897         https://bugs.webkit.org/show_bug.cgi?id=115685
2898         -and corresponding-
2899         <rdar://problem/13700734>
2900
2901         Reviewed by Sam Weinig.
2902
2903         This fix here is just to rollout the change that caused this regression, which is 
2904         http://trac.webkit.org/changeset/147395 . That change was not intended to cause any 
2905         behavioral differences. The change made it so RenderObject::offsetParent() returned 
2906         an Element* instead of a RenderBoxModelObject*. However, can muddle things when the 
2907         object we are returning is a continuation. Multiple RenderObjects have the same 
2908         Element in a continuation, so this new code can lead to a crash in 
2909         adjustedPositionRelativeToOffsetParent() when we expect to walk the RenderObject 
2910         chain and find the offsetParent in the Element’s parent chain. But we might crash in 
2911         some complicated continuation scenarios because we lost this disambiguation of which 
2912         RenderObject to start with.
2913
2914         Roll out.
2915         * dom/Element.cpp:
2916         (WebCore::Element::offsetParent):
2917         * rendering/RenderBoxModelObject.cpp:
2918         (WebCore::RenderBoxModelObject::adjustedPositionRelativeToOffsetParent):
2919         * rendering/RenderObject.cpp:
2920         (WebCore::RenderObject::offsetParent):
2921         * rendering/RenderObject.h:
2922         (RenderObject):
2923
2924 2013-05-06  Ryosuke Niwa  <rniwa@webkit.org>
2925
2926         Unify ways to cache named item in HTMLCollections
2927         https://bugs.webkit.org/show_bug.cgi?id=115584
2928
2929         Reviewed by Antti Koivisto.
2930
2931         Refactor the code to share the same infrastructure for both id and name attributes maps.
2932
2933         Also get rid of shouldRegisterAsNamedItem and shouldRegisterAsExtraNamedItem from various Element subclasses
2934         as these member functions were duplicating the information in HTMLNameCollection.cpp. Nevertheless, HTMLImageElement
2935         and HTMLObjectElement still update HTMLDocument's window and document name getter maps when their presence as named
2936         item changes due to an attribute change and children changes respectively.
2937
2938         * bindings/js/JSDOMWindowCustom.cpp:
2939         (WebCore::namedItemGetter): Use windowNamedItemMap().containsSingle() instead of collection->hasExactlyOneItem() to
2940         avoid instantiating HTMLCollection until we know for sure we're returning multiple items.
2941         (WebCore::JSDOMWindow::getOwnPropertySlot): Call windowNamedItemMap().contains() instead of document->hasNamedItem()
2942         since the latter has been removed.
2943         (WebCore::JSDOMWindow::getOwnPropertySlotByIndex): Ditto.
2944         (WebCore::JSDOMWindow::getOwnPropertyDescriptor): Ditto.
2945
2946         * bindings/js/JSHTMLDocumentCustom.cpp:
2947         (WebCore::JSHTMLDocument::canGetItemsForName): Call documentNamedItemMap().contains() instead of
2948         document->hasExtraNamedItem() since the latter has been removed.
2949         (WebCore::JSHTMLDocument::nameGetter): Use documentNamedItemMap().containsSingle() instead of
2950         collection->hasExactlyOneItem() to avoid instantiating HTMLCollection when we're returning the first item.
2951
2952         * dom/Document.cpp:
2953         (WebCore::Document::windowNamedItems): Instantiate WindowNameCollection, which is a subclass of HTMLNameCollection,
2954         instead of HTMLNameCollection since the latter class no longer has a public constructor.
2955         (WebCore::Document::documentNamedItems): Ditto; instantiate DocumentNameCollection.
2956
2957         * dom/DocumentOrderedMap.cpp:
2958         (WebCore::keyMatchesName): Added for name attribute.
2959         (WebCore::keyMatchesWindowNamedItem): Added for window name getter.
2960         (WebCore::keyMatchesDocumentNamedItem): Added for document name getter.
2961         (WebCore::DocumentOrderedMap::getElementByName): Added for name attribute.
2962         (WebCore::DocumentOrderedMap::getElementByWindowNamedItem): Added for window name getter.
2963         (WebCore::DocumentOrderedMap::getElementByDocumentNamedItem): Added for document name getter.
2964
2965         * dom/DocumentOrderedMap.h:
2966         (WebCore::DocumentOrderedMap::containsSingle): Added.
2967         (WebCore::DocumentOrderedMap::containsMultiple): Fixed the bug that containsMultiple returns true even when
2968         the duplicate count has been reduced to 1. Unfortunately this behavior change is not testable because the old code
2969         worked properly (though less efficient) even if this function returned a wrong value.
2970
2971         * dom/Element.cpp:
2972         (WebCore::Element::insertedInto):
2973         (WebCore::Element::removedFrom):
2974         (WebCore::Element::updateName): Added. Updates TreeScope's name attribute map as well as HTMLDocument's window name
2975         and document name maps.
2976         (WebCore::Element::updateId): Added the code to update HTMLDocument's window name and document name maps.
2977
2978         * dom/Element.h:
2979         (Element): Removed shouldRegisterAsNamedItem, shouldRegisterAsExtraNamedItem, updateNamedItemRegistration, and
2980         updateExtraNamedItemRegistration as they're no longer used.
2981
2982         * dom/TreeScope.cpp:
2983         (SameSizeAsTreeScope):
2984         (WebCore::TreeScope::getElementByName): Added.
2985         (WebCore::TreeScope::addElementByName): Added.
2986         (WebCore::TreeScope::removeElementByName): Added.
2987
2988         * dom/TreeScope.h:
2989         (WebCore::TreeScope::hasElementWithName): Added.
2990         (WebCore::TreeScope::containsMultipleElementsWithName): Added.
2991
2992         * html/HTMLAppletElement.h:
2993         (HTMLAppletElement):
2994
2995         * html/HTMLCollection.cpp:
2996         (WebCore::isMatchingElement): Use HTMLNameCollection subclasses' nodeMatches.
2997         (WebCore::HTMLCollection::namedItem): Added a fast path for named item.
2998         (WebCore::HTMLCollection::hasNamedItem): Use namedItem to avoid the work in the fast path.
2999
3000         * html/HTMLCollection.h:
3001         (HTMLCollection): Removed checkForNameMatch.
3002         * html/HTMLDocument.cpp:
3003         (WebCore): Removed various member functions related to m_namedItemCounts and m_extraNamedItemCounts.
3004
3005         * html/HTMLDocument.h:
3006         (WebCore::HTMLDocument::documentNamedItemMap): Added.
3007         (WebCore::HTMLDocument::windowNamedItemMap): Added.
3008         (HTMLDocument): Replaced m_namedItemCounts and m_extraNamedItemCounts by m_documentNamedItem and m_windowNamedItem.
3009         Note that they're not one to one.
3010
3011         * html/HTMLEmbedElement.h:
3012         (HTMLEmbedElement):
3013
3014         * html/HTMLFormElement.h:
3015         (HTMLFormElement):
3016
3017         * html/HTMLIFrameElement.cpp: Removed the code to track the element's name since we already do this in Element.
3018         (WebCore::HTMLIFrameElement::parseAttribute):
3019
3020         * html/HTMLIFrameElement.h:
3021         (HTMLIFrameElement):
3022
3023         * html/HTMLImageElement.cpp:
3024         (WebCore::HTMLImageElement::parseAttribute): Update the HTMLDocument's maps when the name attribute's existence
3025         changes its presence on window and document name getters in turn. This behavior change, again, appears to be
3026         untestable due to the old being more graceful when DocumentOrderedMap returned a wrong value.
3027
3028         * html/HTMLImageElement.h:
3029
3030         * html/HTMLNameCollection.cpp:
3031         (WebCore::HTMLNameCollection::HTMLNameCollection): No longer overrides itemAfter. This enables backwards traversals
3032         of the tree along with other optimizations in HTMLCollection.
3033
3034         (WebCore::WindowNameCollection::nodeMatchesIfNameAttributeMatch): Added. Used in Element::updateName to determine
3035         whether add() or remove() should be called on HTMLDocument's maps.
3036         (WebCore::WindowNameCollection::nodeMatches): Added.
3037
3038         (WebCore::DocumentNameCollection::nodeMatchesIfIdAttributeMatch): Added. Used in Element::updateName to determine
3039         whether add() or remove() should be called on HTMLDocument's maps.
3040         (WebCore::DocumentNameCollection::nodeMatchesIfNameAttributeMatch): Ditto.
3041         (WebCore::DocumentNameCollection::nodeMatches): Added.
3042
3043         * html/HTMLNameCollection.h:
3044         (HTMLNameCollection): Removed create since this class shouldn't be instantiated on its own.
3045
3046         (WebCore::WindowNameCollection): Added.
3047         (WebCore::WindowNameCollection::create): Added.
3048         (WebCore::WindowNameCollection::nodeMatches): Added.
3049         (WebCore::WindowNameCollection::nodeMatchesIfIdAttributeMatch): Added.
3050         (WebCore::WindowNameCollection::WindowNameCollection): Added.
3051         (WebCore::DocumentNameCollection): Added.
3052         (WebCore::DocumentNameCollection::create): Added.
3053         (WebCore::DocumentNameCollection::nodeMatches): Added.
3054         (WebCore::DocumentNameCollection::DocumentNameCollection): Added.
3055
3056         * html/HTMLObjectElement.cpp:
3057         (WebCore::HTMLObjectElement::updateDocNamedItem): Update both window and document getter maps of HTMLDocument when
3058         the visibility of this element changes due to the DOM mutations in the subtree.
3059
3060         * html/HTMLObjectElement.h:
3061         (WebCore::HTMLObjectElement):
3062         (WebCore::toHTMLObjectElement): Added.
3063
3064 2013-05-06  Andreas Kling  <akling@apple.com>
3065
3066         Flaky Test: fast/frames/crash-remove-iframe-during-object-beforeload.html
3067         <http://webkit.org/b/115674>
3068
3069         Reviewed by Alexey Proskuryakov.
3070
3071         Don't cache the Document::renderer() in a local since layout may blow it away.
3072
3073         * dom/Document.cpp:
3074         (WebCore::Document::implicitClose):
3075
3076 2013-05-06  Anders Carlsson  <andersca@apple.com>
3077
3078         More work on LocalStorageDatabaseTracker
3079         https://bugs.webkit.org/show_bug.cgi?id=115680
3080
3081         Reviewed by Andreas Kling.
3082
3083         Export symbols needed by WebKit2.
3084
3085         * WebCore.exp.in:
3086
3087 2013-05-06  Manuel Rego Casasnovas  <rego@igalia.com>
3088
3089         [GTK] Add webkit_uri_scheme_request_finish_error
3090         https://bugs.webkit.org/show_bug.cgi?id=94316
3091
3092         Reviewed by Anders Carlsson.
3093
3094         No behaviour change, covered by existing tests.
3095
3096         * platform/network/soup/ResourceError.h:
3097         (ResourceError): Rename genericIOError() to genericGError().
3098         * platform/network/soup/ResourceErrorSoup.cpp:
3099         (WebCore::ResourceError::httpError): Use genercicGError() instead of
3100         genericIOError().
3101         (WebCore::ResourceError::genericGError): Use error domain instead of
3102         always return a G_IO_ERROR.
3103         * platform/network/soup/ResourceHandleSoup.cpp: Use genericGError()
3104         instead of genericIOError().
3105         (WebCore::redirectSkipCallback):
3106         (WebCore::readCallback):
3107
3108 2013-05-06  Bem Jones-Bey  <bjonesbe@adobe.com>
3109
3110         Heap-use-after-free in WebCore::InlineFlowBox::deleteLine
3111         https://bugs.webkit.org/show_bug.cgi?id=114772
3112
3113         Reviewed by David Hyatt.
3114
3115         Fix the new use after free issues in Ruby.
3116
3117         Test: fast/ruby/ruby-svg-crash.html
3118
3119         * rendering/RenderRubyRun.cpp:
3120         (WebCore::RenderRubyRun::removeChild):
3121
3122 2013-05-06  Robert Hogan  <robert@webkit.org>
3123
3124         REGRESSION(r140024): child of fixed div inside of absolute div does not get resized when window is resized
3125         https://bugs.webkit.org/show_bug.cgi?id=115379
3126
3127         Reviewed by David Hyatt.
3128
3129         When detecting whether a fixed pos object needed to move with an absolute ancestor we checked
3130         whether the logical width of the fixed pos object had changed. This check prevented the fixed pos
3131         object from detecting later on that it needed to relayout its children in layoutBlock(). So recompute the width
3132         for our check instead of updating it.
3133
3134         Test: fast/block/positioning/child-of-fixed-pos-after-movement.html
3135
3136         * rendering/RenderBlock.cpp:
3137         (WebCore::RenderBlock::markFixedPositionObjectForLayoutIfNeeded):
3138
3139 2013-05-06  Mike Lattanzio  <mlattanzio@blackberry.com>
3140
3141         [BlackBerry] Enable and Expose Text Autosizing through BlackBerry::WebKit::WebSettings
3142         https://bugs.webkit.org/show_bug.cgi?id=113808
3143
3144         Reviewed by Rob Buis.
3145
3146         Added TextAutosizer.cpp to the BlackBerry build.
3147
3148         * PlatformBlackBerry.cmake:
3149
3150 2013-05-06  Darin Adler  <darin@apple.com>
3151
3152         Use OwnPtr instead of deleteAllValues in SVGAttributeToPropertyMap
3153         https://bugs.webkit.org/show_bug.cgi?id=115653
3154
3155         Reviewed by Andreas Kling.
3156
3157         Also made a few style fixes to the code at the same time.
3158
3159         * svg/properties/SVGAttributeToPropertyMap.cpp:
3160         (WebCore::SVGAttributeToPropertyMap::addProperties): Changed argument to
3161         const because there was no reason for it to be non-const. Added calls to
3162         get() since the items in the map are now OwnPtr. Added a couple FIXMEs
3163         about performance mistakes.
3164         (WebCore::SVGAttributeToPropertyMap::addProperty): Added a FIXME about
3165         a small performance mistake, and updated to use OwnPtr instead of raw
3166         pointers.
3167         (WebCore::SVGAttributeToPropertyMap::synchronizeProperties): Added a call
3168         to get().
3169
3170         * svg/properties/SVGAttributeToPropertyMap.h: Removed now-unneeded
3171         constructor and destructor definitions. Changed the type for the
3172         addProperties to be const&. Added a comment about incorrect function
3173         naming. Changed the type of the map data member to use OwnPtr.
3174
3175 2013-05-06  Antti Koivisto  <antti@apple.com>
3176
3177         Remove more code that was only needed for younger/older shadow trees
3178         https://bugs.webkit.org/show_bug.cgi?id=115662
3179
3180         Reviewed by Andreas Kling.
3181
3182         This is dead code.
3183
3184         * WebCore.exp.in:
3185         * dom/ComposedShadowTreeWalker.cpp:
3186         (WebCore::nodeCanBeDistributed):
3187         (WebCore::ComposedShadowTreeWalker::traverseParentBackToShadowRootOrHost):
3188         * dom/EventPathWalker.cpp:
3189         (WebCore::EventPathWalker::moveToParent):
3190         * html/shadow/ContentDistributor.cpp:
3191         (WebCore::ScopeContentDistribution::ScopeContentDistribution):
3192         (WebCore::ScopeContentDistribution::registerInsertionPoint):
3193         (WebCore::ScopeContentDistribution::unregisterInsertionPoint):
3194         (WebCore):
3195         (WebCore::ScopeContentDistribution::hasInsertionPoint):
3196         (WebCore::ContentDistributor::invalidate):
3197         * html/shadow/ContentDistributor.h:
3198         (ScopeContentDistribution):
3199         * html/shadow/InsertionPoint.cpp:
3200         (WebCore::InsertionPoint::contains):
3201         (WebCore::resolveReprojection):
3202         (WebCore::collectInsertionPointsWhereNodeIsDistributed):
3203         * html/shadow/InsertionPoint.h:
3204         * testing/Internals.cpp:
3205         (WebCore):
3206         * testing/Internals.h:
3207         (Internals):
3208         * testing/Internals.idl:
3209
3210 2013-05-06  Tiancheng Jiang  <tijiang@rim.com>
3211
3212         [BlackBerry] Update HTML5 progress bar UX.
3213         https://bugs.webkit.org/show_bug.cgi?id=115284.
3214
3215         Reviewed by Rob Buis.
3216
3217         BlackBerry PR 331729.
3218         Internally Reviewed by Jeff Rogers.
3219
3220         Use GL render to paint progress bar to meet UX specs.
3221         Also change the slider range to GL render.
3222
3223         * platform/blackberry/RenderThemeBlackBerry.cpp:
3224         (WebCore):
3225         (WebCore::RenderThemeBlackBerry::paintSliderTrack):
3226         (WebCore::RenderThemeBlackBerry::paintProgressTrackRect):
3227         (WebCore::drawProgressTexture):
3228         (WebCore::RenderThemeBlackBerry::paintProgressBar):
3229         * platform/blackberry/RenderThemeBlackBerry.h:
3230         (RenderThemeBlackBerry):
3231
3232 2013-05-06  Bem Jones-Bey  <bjonesbe@adobe.com>
3233
3234         [CSS Exclusions] remove unused -webkit-wrap property
3235         https://bugs.webkit.org/show_bug.cgi?id=102105
3236
3237         Reviewed by Darin Adler.
3238
3239         Remove -webkit-wrap property and all mentions. This property doesn't
3240         exist in the spec anymore, and was never implemented more than just
3241         parsing the property.
3242
3243         * WebCore.order:
3244         * css/CSSComputedStyleDeclaration.cpp:
3245         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3246         * css/CSSParser.cpp:
3247         (WebCore::CSSParser::parseValue):
3248         * css/CSSProperty.cpp:
3249         (WebCore::CSSProperty::isInheritedProperty):
3250         * css/CSSPropertyNames.in:
3251         * css/StylePropertySet.cpp:
3252         (WebCore::StylePropertySet::getPropertyValue):
3253         (WebCore::StylePropertySet::asText):
3254         * css/StylePropertyShorthand.cpp:
3255         (WebCore::shorthandForProperty):
3256         * css/StylePropertyShorthand.h:
3257         (WebCore):
3258         * css/StyleResolver.cpp:
3259         (WebCore::StyleResolver::applyProperty):
3260
3261 2013-05-06  Anders Carlsson  <andersca@apple.com>
3262
3263         Write storage changes to disk
3264         https://bugs.webkit.org/show_bug.cgi?id=115660
3265
3266         Reviewed by Andreas Kling.
3267
3268         Export symbols needed by WebKit2.
3269
3270         * WebCore.exp.in:
3271
3272 2013-05-06  Tiancheng Jiang  <tijiang@rim.com>
3273
3274         [BlackBerry] Update HTML5 progress bar UX.
3275         https://bugs.webkit.org/show_bug.cgi?id=115284.
3276
3277         Reviewed by Rob Buis.
3278
3279         BlackBerry PR 331729.
3280         Internally Reviewed by Jeff Rogers.
3281
3282         * platform/blackberry/RenderThemeBlackBerry.cpp:
3283         (WebCore):
3284         (WebCore::createLinearGradient):
3285         (WebCore::RenderThemeBlackBerry::paintSliderTrack):
3286         (WebCore::RenderThemeBlackBerry::paintSliderTrackRect):
3287         (WebCore::RenderThemeBlackBerry::paintProgressBar):
3288         * platform/blackberry/RenderThemeBlackBerry.h:
3289         (RenderThemeBlackBerry):
3290
3291 2013-05-06  Víctor Manuel Jáquez Leal  <vjaquez@igalia.com>
3292
3293         [texmap] draw content if graphics layer displays a video
3294         https://bugs.webkit.org/show_bug.cgi?id=114742
3295
3296         Reviewed by Noam Rosenthal.
3297
3298         Bug #86410 focuses on having composited/accelerated video using the
3299         TextureMapper. But the video is not rendered fast by using the
3300         repaint() method. In the case of the TextureMapper it is required to
3301         call a content display as fast as possible.
3302
3303         This patch adds the class TextureMapperPlatformLayer::Client with the
3304         method setLayerNeedsDisplay(). The GraphicsLayerTextureMapper
3305         implements this new class and the new method calls
3306         setContentsNeedsDisplay(), causing a faster content display when
3307         requested.
3308
3309         No new tests. Covered by existing tests.
3310
3311         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
3312         (WebCore::GraphicsLayerTextureMapper::setContentsToMedia): sets itself
3313         as the TextureMapperPlatformLayer's client
3314         * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
3315         (WebCore::GraphicsLayerTextureMapper::setLayerNeedsDisplay):
3316         TextureMapperPlatformLayer::Client::setLayerNeedsDisplay implementation
3317         (GraphicsLayerTextureMapper):
3318         * platform/graphics/texmap/TextureMapperPlatformLayer.h:
3319         (Client): New class
3320         (WebCore::TextureMapperPlatformLayer::TextureMapperPlatformLayer):
3321         (WebCore::TextureMapperPlatformLayer::setClient): client setter
3322         (WebCore::TextureMapperPlatformLayer::setLayerNeedsDisplay): facade
3323         for client's method
3324
3325 2013-05-02  David Hyatt  <hyatt@apple.com>
3326
3327         Improve the performance of RenderDeprecatedFlexibleBox.
3328         https://bugs.webkit.org/show_bug.cgi?id=115543.
3329
3330         Optimize deprecated flexible box layout to be much faster. This patch implements
3331         the following optimizations in the deprecated flexible box:
3332         
3333         (1) Defer repainting of children until they have been placed into their final
3334         positions. This is done by collecting all of the old frame rects into a Vector
3335         and then doing a walk after layout is finished to repaint any of the children if
3336         they moved from that position. This code matches the new RenderFlexibleBox's system
3337         for repainting moved children.
3338         
3339         (2) Implement support for layout deltas. We keep a Vector of layout deltas for each
3340         child as we shift them around, and every time we lay a child out again, we apply that
3341         child's current layout delta to avoid repainting at the new position. RenderFlexibleBox
3342         does not have support for layout deltas yet, so we'll need to implement this in the
3343         new flexbox code as well.
3344         
3345         (3) Optimize flexible objects to avoid laying them out unflexed. When laying out
3346         horizontal and vertical boxes now, we lay out the inflexible items first. We then
3347         check to see if the inflexible extent of all those children has changed.
3348         
3349         If this extent didn't change, and the flexible items either don't need layout or there
3350         is only one flexing item, then we avoid laying out the item in an unflexed state
3351         and simply lay out one time with the flex applied instead. The new RenderFlexibleBox
3352         does not have these optimizations and would benefit from them in the block-direction box
3353         case (it uses preferred logical widths in the inline-direction box case, and so avoided
3354         layouts in that direction already).
3355         
3356         Reviewed by Beth Dakin.
3357
3358         * rendering/RenderDeprecatedFlexibleBox.cpp:
3359         (WebCore::appendChildFrameRects):
3360         Cache all of the old child frame rects so that we can compare them with the final
3361         positions for repaintDuringLayoutIfMoved. This collection is identical to what the
3362         new flexbox code does.
3363         
3364         (WebCore::appendChildLayoutDeltas):
3365         Build up a vector that tracks layout deltas. We apply these layout deltas every
3366         time we lay out a child so that any repainting done during layout ignores our shifted
3367         position and just keeps using the old position. The new flexbox does not have this
3368         code yet.
3369
3370         (WebCore::repaintChildrenDuringLayoutIfMoved):
3371         After final placement of children, we do a single pass over all of the children and
3372         repaint them if they shifted their positions. This matches how the new flexbox works.
3373         
3374         (WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
3375         Collect the frame rects and layout deltas, and defer repainting of children to the
3376         end of layout.
3377         
3378         (WebCore::gatherFlexChildrenInfo):
3379         Don't clear flex overrides when gathering flex information. Add additional information
3380         such as the number of flexing items so that we can use it to optimize flex layout.
3381         
3382         (WebCore::layoutChildIfNeededApplyingDelta):
3383         A helper for applying your current layout delta for a child when laying that child out.
3384         
3385         (WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox):
3386         (WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox):
3387         Both methods are patched to aggregate layout deltas as children move around during
3388         the multiple passes. In addition we now optimize layout in a couple of cases, such
3389         as when the inflexible space stays the same (thus giving a flexible object the
3390         same amount of available space, avoiding a need to lay out unflexed first).
3391         
3392         (WebCore::RenderDeprecatedFlexibleBox::placeChild):
3393         Patched to add to our cached layout delta for that child when we do a movement.
3394
3395         * rendering/RenderDeprecatedFlexibleBox.h:
3396         Changes to method signatures.
3397
3398 2013-05-04  Andy Estes  <aestes@apple.com>
3399
3400         REGRESSION (r125592): Reproducible crash in DOMWindow::open when a delegate closes the new window in decidePolicyForNavigationAction
3401         https://bugs.webkit.org/show_bug.cgi?id=115609
3402
3403         Reviewed by Oliver Hunt.
3404
3405         When a window created by window.open() is navigated, the embedder might
3406         close it in decidePolicyForNavigationAction. If this happens, we end up
3407         with a pointer to a deleted Frame.
3408
3409         Fix this by keeping a strong reference to the Frame created by
3410         createWindow(). We can later determine if the window was closed by
3411         checking if the new Frame has a detached Page.
3412
3413         Added an API test: WebKit1.CloseNewWindowInNavigationPolicyDelegate.
3414
3415         * page/DOMWindow.cpp:
3416         (WebCore::DOMWindow::createWindow):
3417
3418 2013-05-06  Zan Dobersek  <zdobersek@igalia.com>
3419
3420         [GTK] Move GeolocationProviderGeoclue into libPlatform
3421         https://bugs.webkit.org/show_bug.cgi?id=115591
3422
3423         Reviewed by Martin Robinson.
3424
3425         No new tests - no new functionality.
3426
3427         * GNUmakefile.am: Remove the Source/WebCore/platform/geoclue directory from the webkitgtk_cppflags list.
3428         * GNUmakefile.list.am: Move the GeolocationProviderGeoclue(Client) sources under platform_sources.
3429
3430 2013-05-06  Zoltan Arvai  <zarvai@inf.u-szeged.hu>
3431
3432         [Qt][Win] Unreviewed buildfix after r149579.
3433
3434         * plugins/win/PluginDatabaseWin.cpp:
3435         (WebCore::addQtWebKitPluginPath):
3436
3437 2013-05-06  Antoine Quint  <graouts@apple.com>
3438
3439         Manage the presentation of the snapshotted plug-in using JavaScript
3440         https://bugs.webkit.org/show_bug.cgi?id=115548
3441
3442         Reviewed by Dean Jackson.
3443
3444         * Resources/plugIns.js:
3445         (createOverlay):
3446         Implement the createOverlay(shadowRoot, titleText, subtitleText) method
3447         that is called from WebCore (HTMLPlugInImageElement::didAddUserAgentShadowRoot)
3448         to allow the injected script to customize the shadow root for a snapshotted
3449         plug-in. This is a default implementation, clients are expected to customize
3450         this by providing their own JS file with enhanced behavior.
3451
3452         * css/CSSDefaultStyleSheets.cpp:
3453         (WebCore::CSSDefaultStyleSheets::ensureDefaultStyleSheetsForElement):
3454         Since we no longer have a default shadow tree generated in C++, it makes little
3455         sense for clients to extend the default snapshotted plug-in stylesheet, so we
3456         only insert it if no custom one is provided by the chrome client.
3457
3458         * css/plugIns.css:
3459         Better styling of the default snapshotted plug-in overlay look by using CSS
3460         flex boxes. Also using more explicit selector as an optimization.
3461
3462         * dom/Document.cpp:
3463         (WebCore::Document::ensurePlugInsInjectedScript):
3464         Expose a new method to allow HTMLPlugInImageElement instances to ensure that
3465         the JavaScript code required to customize the snapshotted plug-in's shadow root
3466         is indeed injected in the current document. The actual injection would only
3467         happen once per document so all snapshotted plug-ins share the same scripting
3468         context.
3469
3470         * dom/Document.h:
3471         Expose the new ensurePlugInsInjectedScript method and the m_hasInjectedPlugInsScript
3472         property used to ensure injection happens only once per document.
3473
3474         * html/HTMLPlugInImageElement.cpp:
3475         (WebCore::titleText):
3476         (WebCore::subtitleText):
3477         Store the localized strings for each mime-type in a static hash map as it can be
3478         costly to retrieve them each time from the client. It is expected the chrome client
3479         will want to provide localized strings taking into account the snapshotted plug-in's
3480         mime-type, so we're adding this as a parameter.
3481         (WebCore::HTMLPlugInImageElement::checkSnapshotStatus):
3482         Dispatch a "resize" event to the shadow root to notify the injected script that the
3483         snapshotted plug-in's metrics have changed and to allow the overlay to update itself
3484         as a result.
3485         (WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot):
3486         Remove all the DOM generation code in favor of an approach where we create a shared
3487         DOM scripting world in which we inject JavaScript code that will perform the same
3488         task but will additionally be provided by the client in order to provide a completely
3489         custom overlay for the snapshotted plug-in. The sole contract is for the JavaScript
3490         to implement a createOverlay(shadowRoot, titleText, subtitleText) method.
3491         (WebCore::HTMLPlugInImageElement::partOfSnapshotOverlay):
3492         Renamed method to be generic to the overlay as opposed to text labels and use the
3493         element with CSS class name "snapshot-overlay" as the comparison node.
3494
3495         * html/HTMLPlugInImageElement.h:
3496         (HTMLPlugInImageElement):
3497         Removing a couple of unused members since we no longer generate the shadow DOM from C++
3498         and rename the partOfSnapshotLabel method to partOfSnapshotOverlay.
3499
3500         * page/ChromeClient.h:
3501         (WebCore::ChromeClient::plugInStartLabelTitle):
3502         (WebCore::ChromeClient::plugInStartLabelSubtitle):
3503         (WebCore::ChromeClient::plugInExtraScript):
3504         Pass in the mime-type to plugInStartLabelTitle and plugInStartLabelSubtitle and expose
3505         a new plugInExtraScript method to allow the chrome client to provide a custom JS file
3506         for the management of the shadow root.
3507
3508         * rendering/RenderSnapshottedPlugIn.cpp:
3509         (WebCore::RenderSnapshottedPlugIn::handleEvent):
3510         Update the terminology from "label" to "overlay" per the changes made in HTMLPlugInImageElement.
3511
3512 2013-05-06  Robert Hogan  <robert@webkit.org>
3513
3514         REGRESSION(r140907) - Backport blink r149612 to fix vertical-align and rowspan issue
3515         https://bugs.webkit.org/show_bug.cgi?id=115611
3516
3517         Patch by Julien Chaffraix.
3518         Reviewed by Benjamin Poulain.
3519
3520         Backport phttps://src.chromium.org/viewvc/blink?view=rev&revision=149612 from 
3521         https://chromiumcodereview.appspot.com/14105010
3522         
3523         Fix the rows' height computation with vertical-align: baseline and rowspan.
3524         r140907 was careful in avoiding updating the baseline descent for
3525         spanning cells. However it still added the non-spanning cells baseline
3526         descent to the spanning cells' row height computation.
3527         This change avoids the previous issue by not adding the baseline
3528         descent in this case.
3529
3530         Test: fast/table/baseline-align-rowspan.html
3531
3532         * rendering/RenderTableSection.cpp:
3533         (WebCore::RenderTableSection::calcRowLogicalHeight):
3534
3535 2013-05-05  Anders Carlsson  <andersca@apple.com>
3536
3537         Remove Vector::prepend
3538         https://bugs.webkit.org/show_bug.cgi?id=115618
3539
3540         Reviewed by Geoffrey Garen.
3541
3542         Replace calls to Vector::prepend with either Vector::insert,
3543         or a combination of Vector::append and Vector::reverse.
3544
3545         * accessibility/AccessibilityObject.cpp:
3546         (WebCore::AccessibilityObject::scrollToGlobalPoint):
3547         * css/CSSGradientValue.cpp:
3548         (WebCore::CSSGradientValue::addStops):
3549         * css/CSSValueList.h:
3550         (WebCore::CSSValueList::prepend):
3551         * dom/Document.cpp:
3552         (WebCore::Document::iconURLs):
3553         * editing/TextIterator.cpp:
3554         (WebCore::SearchBuffer::prependContext):
3555         * editing/VisibleUnits.cpp:
3556         (WebCore::previousBoundary):
3557         (WebCore::nextBoundary):
3558         * history/HistoryItem.cpp:
3559         (WebCore::HistoryItem::padDailyCountsForNewVisit):
3560         (WebCore::HistoryItem::collapseDailyVisitsToWeekly):
3561         * inspector/InjectedScriptHost.cpp:
3562         (WebCore::InjectedScriptHost::addInspectedObject):
3563         * platform/graphics/SVGGlyph.cpp:
3564         (WebCore::charactersWithArabicForm):
3565
3566 2013-05-05  Sam Weinig  <sam@webkit.org>
3567
3568         Remove empty function SQLiteFileSystem::registerSQLiteVFS() and its callers
3569         https://bugs.webkit.org/show_bug.cgi?id=115619
3570
3571         Reviewed by Dan Bernstein.
3572
3573         * Modules/webdatabase/DatabaseTracker.cpp:
3574         * platform/sql/SQLiteFileSystem.cpp:
3575         * platform/sql/SQLiteFileSystem.h:
3576         * storage/StorageTracker.cpp:
3577
3578 2013-05-05  Chris Fleizach  <cfleizach@apple.com>
3579
3580         AX: aria-checked not exposed correctly on menuitemcheckbox or menuitemradio roles
3581         https://bugs.webkit.org/show_bug.cgi?id=115499
3582
3583         Reviewed by Tim Horton.
3584
3585         Expose isChecked() for menu item objects.
3586         Return the Mac-platform specific value that you find on menu items for "checked" menu items.
3587
3588         Test: platform/mac/accessibility/aria-menuitem-checked-value.html
3589
3590         * accessibility/AccessibilityNodeObject.cpp:
3591         (WebCore::AccessibilityNodeObject::isChecked):
3592         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
3593         (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
3594
3595 2013-05-05  Tim Horton  <timothy_horton@apple.com>
3596
3597         [wk2] Page Overlays: deviceScaleFactor doesn't update when the display changes
3598         https://bugs.webkit.org/show_bug.cgi?id=115577
3599         <rdar://problem/13762583>
3600
3601         Reviewed by Darin Adler.
3602
3603         * WebCore.exp.in:
3604         Export GraphicsLayer::noteDeviceOrPageScaleFactorChangedIncludingDescendants
3605
3606 2013-05-05  Anders Carlsson  <andersca@apple.com>
3607
3608         Remove the Vector::append overload that takes a Vector
3609         https://bugs.webkit.org/show_bug.cgi?id=115535
3610
3611         Reviewed by Andreas Kling.
3612
3613         Use Vector::appendVector instead.
3614
3615         * Modules/indexeddb/IDBBackingStore.cpp:
3616         (WebCore::IDBBackingStore::putRecord):
3617         (WebCore::IDBBackingStore::putIndexDataForRecord):
3618         * Modules/indexeddb/IDBLevelDBCoding.cpp:
3619         (WebCore::IDBLevelDBCoding::encodeStringWithLength):
3620         (WebCore::IDBLevelDBCoding::encodeIDBKey):
3621         (WebCore::IDBLevelDBCoding::encodeIDBKeyPath):
3622         (WebCore::IDBLevelDBCoding::SchemaVersionKey::encode):
3623         (WebCore::IDBLevelDBCoding::MaxDatabaseIdKey::encode):
3624         (WebCore::IDBLevelDBCoding::DataVersionKey::encode):
3625         (WebCore::IDBLevelDBCoding::DatabaseFreeListKey::encode):
3626         (WebCore::IDBLevelDBCoding::DatabaseNameKey::encode):
3627         (WebCore::IDBLevelDBCoding::DatabaseMetaDataKey::encode):
3628         (WebCore::IDBLevelDBCoding::ObjectStoreMetaDataKey::encode):
3629         (WebCore::IDBLevelDBCoding::IndexMetaDataKey::encode):
3630         (WebCore::IDBLevelDBCoding::ObjectStoreFreeListKey::encode):
3631         (WebCore::IDBLevelDBCoding::IndexFreeListKey::encode):
3632         (WebCore::IDBLevelDBCoding::ObjectStoreNamesKey::encode):
3633         (WebCore::IDBLevelDBCoding::IndexNamesKey::encode):
3634         (WebCore::IDBLevelDBCoding::ObjectStoreDataKey::encode):
3635         (WebCore::IDBLevelDBCoding::ExistsEntryKey::encode):
3636         (WebCore::IDBLevelDBCoding::IndexDataKey::encode):
3637         * Modules/webaudio/AudioContext.cpp:
3638         (WebCore::AudioContext::clear):
3639         (WebCore::AudioContext::scheduleNodeDeletion):
3640         * accessibility/AccessibilityARIAGrid.cpp:
3641         (WebCore::AccessibilityARIAGrid::addTableCellChild):
3642         * accessibility/AccessibilityTable.cpp:
3643         (WebCore::AccessibilityTable::cells):
3644         * css/RuleFeature.cpp:
3645         (WebCore::RuleFeatureSet::add):
3646         * css/StyleResolver.cpp:
3647         (WebCore::StyleResolver::addToMatchedPropertiesCache):
3648         * dom/DocumentStyleSheetCollection.cpp:
3649         (WebCore::collectActiveCSSStyleSheetsFromSeamlessParents):
3650         (WebCore::DocumentStyleSheetCollection::updateActiveStyleSheets):
3651         * dom/Range.cpp:
3652         (WebCore::Range::getBorderAndTextQuads):
3653         * html/FormController.cpp:
3654         (WebCore::FormController::getReferencedFilePaths):
3655         * html/canvas/CanvasRenderingContext2D.cpp:
3656         (WebCore::CanvasRenderingContext2D::setLineDash):
3657         * html/parser/HTMLFormattingElementList.cpp:
3658         (WebCore::HTMLFormattingElementList::tryToEnsureNoahsArkConditionQuickly):
3659         * html/track/WebVTTToken.h:
3660         (WebCore::WebVTTToken::addNewClass):
3661         (WebCore::WebVTTToken::addNewAnnotation):
3662         * page/CaptionUserPreferencesMac.mm:
3663         (WebCore::CaptionUserPreferencesMac::preferredLanguages):
3664         * platform/FileChooser.cpp:
3665         (WebCore::FileChooserSettings::acceptTypes):
3666         * platform/SharedBufferChunkReader.cpp:
3667         (WebCore::SharedBufferChunkReader::nextChunk):
3668         * platform/graphics/MediaPlayer.cpp:
3669         (WebCore::MediaPlayer::getSitesInMediaCache):
3670         * platform/graphics/ca/GraphicsLayerCA.cpp:
3671         (WebCore::GraphicsLayerCA::updateSublayerList):
3672         * platform/mac/PasteboardMac.mm:
3673         (WebCore::createWritableTypesForImage):
3674         (WebCore::writableTypesForImage):
3675         (WebCore::Pasteboard::writeSelectionForTypes):
3676         * platform/network/FormDataBuilder.cpp:
3677         (WebCore::FormDataBuilder::generateUniqueBoundaryString):
3678         * plugins/PluginDatabase.cpp:
3679         (WebCore::PluginDatabase::defaultPluginDirectories):
3680         * rendering/RenderBlockLineLayout.cpp:
3681         (WebCore::constructBidiRunsForSegment):
3682         * rendering/RenderLayerCompositor.cpp:
3683         (WebCore::RenderLayerCompositor::OverlapMap::popCompositingContainer):
3684         * rendering/RenderTableSection.cpp:
3685         (WebCore::RenderTableSection::splitColumn):
3686         * svg/SVGGlyphMap.h:
3687         (WebCore::SVGGlyphMap::collectGlyphsForString):
3688         * xml/XPathNodeSet.h:
3689         (WebCore::XPath::NodeSet::append):
3690
3691 2013-05-05  Anders Carlsson  <andersca@apple.com>
3692
3693         Try to fix the Windows build.
3694
3695         Make plugIns.js have a non-zero length.
3696
3697         * Resources/plugIns.js:
3698
3699 2013-05-04  Dean Jackson  <dino@apple.com>
3700
3701         Animations and Transitions should not start when globally suspended
3702         https://bugs.webkit.org/show_bug.cgi?id=114915
3703
3704         Reviewed by Sam Weinig.
3705
3706         When the Document's AnimationController was suspended, we still
3707         started new transitions and animations. Change this so that
3708         animations enter a paused-but-new state, where they are frozen
3709         until the AnimationController resumes. At that time, it is as
3710         if they had just appeared: any delay counts down before
3711         the animation starts.
3712
3713         For transitions, the change in value must still happen, but
3714         it does so immediately. No transitionend event should be fired.
3715         This produces a slightly confusing behaviour, because any
3716         in-progress transitions are suspended, but any new style changes
3717         happen instantly. This might sound contradictory, but in general
3718         suspending the document is a rare (and dangerous) thing to do.
3719
3720         Previously, the Document would call resumeAnimations as it loaded,
3721         effectively starting all the animations. This meant if you suspended
3722         animations before loading a document, it was ignored as soon as the
3723         load finished. Now there is a separate method startAnimationsIfNotSuspended
3724         which checks to see if the document is suspended as it loads.
3725
3726         In order to handle this case, I added a new state to the Animation
3727         machinery: AnimationStatePausedNew. This is an animation that was created
3728         in the suspended state.
3729
3730         Tests: animations/added-while-suspended.html
3731                transitions/started-while-suspended.html
3732
3733         * WebCore.exp.in: Export AnimationController::isSuspended().
3734
3735         * dom/Document.cpp:
3736         (WebCore::Document::implicitClose):
3737             resumeAnimationsForDocument() -> startAnimationsIfNotSuspended()
3738
3739         * page/animation/AnimationBase.cpp:
3740         (WebCore::nameForState): New name for AnimationStatePausedNew.
3741         (WebCore::AnimationBase::updateStateMachine): Handle new state AnimationStatePausedNew. The
3742             most important change is that when go from PausedNew to Running, we jump back into
3743             the New state and continue from there.
3744         (WebCore::AnimationBase::updatePlayState): suspended -> isSuspended
3745         * page/animation/AnimationBase.h: New state: AnimationStatePausedNew
3746         (WebCore::AnimationBase::waitingToStart): Add AnimationStatePausedNew.
3747         (WebCore::AnimationBase::paused): Add AnimationStatePausedNew.
3748         (WebCore::AnimationBase::isNew): Add AnimationStatePausedNew.
3749
3750         * page/animation/AnimationController.cpp:
3751         (WebCore::AnimationControllerPrivate::AnimationControllerPrivate): Initialise m_suspended.
3752         (WebCore::AnimationControllerPrivate::clear): suspended -> isSuspended
3753         (WebCore::AnimationControllerPrivate::updateAnimations): Ditto.
3754         (WebCore::AnimationControllerPrivate::updateAnimationTimerForRenderer): Ditto.
3755         (WebCore::AnimationControllerPrivate::suspendAnimations): Update m_suspended.
3756         (WebCore::AnimationControllerPrivate::resumeAnimations): Ditto.
3757         (WebCore::AnimationControllerPrivate::suspendAnimationsForDocument):
3758         (WebCore::AnimationControllerPrivate::resumeAnimationsForDocument):
3759         (WebCore::AnimationControllerPrivate::startAnimationsIfNotSuspended): New method that will
3760             only resume animations if we were not globally suspended.
3761         (WebCore::AnimationController::isSuspended): New method.
3762         (WebCore::AnimationController::suspendAnimations): Add logging.
3763         (WebCore::AnimationController::resumeAnimations): Add logging.
3764         (WebCore::AnimationController::suspendAnimationsForDocument): Add logging.
3765         (WebCore::AnimationController::resumeAnimationsForDocument): Add logging.
3766         (WebCore::AnimationController::startAnimationsIfNotSuspended): Calls private method.
3767         * page/animation/AnimationController.h:
3768         (AnimationController): Add isSuspended() and animationsForDocumentMayStart().
3769         * page/animation/AnimationControllerPrivate.h:
3770         (WebCore::AnimationControllerPrivate::isSuspended): New method.
3771         (AnimationControllerPrivate): Add m_isSuspended member.
3772
3773         * page/animation/CompositeAnimation.cpp:
3774         (WebCore::CompositeAnimation::CompositeAnimation): Moved from header - initialise m_isSuspended.
3775         (WebCore::CompositeAnimation::updateTransitions): Do not create ImplicitAnimation if suspended.
3776         (WebCore::CompositeAnimation::updateKeyframeAnimations): Move to AnimationStatePausedNew if suspended.
3777         (WebCore::CompositeAnimation::suspendAnimations): m_suspended -> m_isSuspended
3778         (WebCore::CompositeAnimation::resumeAnimations): Ditto.
3779         * page/animation/CompositeAnimation.h:
3780         (WebCore::CompositeAnimation::isSuspended): Renamed from suspended()
3781
3782         * page/animation/KeyframeAnimation.cpp:
3783         (WebCore::KeyframeAnimation::animate): If we're in the AnimationStatePausedNew state, then
3784             we need to go to the first frame (to handle fill mode).
3785
3786         * testing/Internals.cpp:
3787         (WebCore::Internals::animationsAreSuspended): New exposed method to reflect AnimationController.
3788         * testing/Internals.h: Add animationsAreSuspended.
3789         * testing/Internals.idl: Ditto.
3790
3791 2013-05-04  Sam Weinig  <sam@webkit.org>
3792
3793         Move PopupMenuMac and SearchPopupMenuMac to Source/WebKit/mac
3794         matching where they are in WebKit2.
3795
3796         Reviewed by Anders Carlsson.
3797
3798         * WebCore.exp.in:
3799         * WebCore.xcodeproj/project.pbxproj:
3800         * platform/mac/PopupMenuMac.h: Removed.
3801         * platform/mac/PopupMenuMac.mm: Removed.
3802         * platform/mac/SearchPopupMenuMac.h: Removed.
3803         * platform/mac/SearchPopupMenuMac.mm: Removed.
3804
3805 2013-05-04  Christophe Dumez  <ch.dumez@sisa.samsung.com>
3806
3807         Get rid of special cases in AddIncludesForTypeInImpl
3808         https://bugs.webkit.org/show_bug.cgi?id=115602
3809
3810         Reviewed by Benjamin Poulain.
3811
3812         Get rid of the special cases in AddIncludesForTypeInImpl subroutine in the
3813         JS bindings generator. Those are no longer needed and special cases should
3814         be avoided in the generator.
3815
3816         No new tests, no behavior change.
3817
3818         * bindings/scripts/CodeGeneratorJS.pm:
3819         (AddIncludesForTypeInImpl):
3820
3821 2013-05-04  Christophe Dumez  <ch.dumez@sisa.samsung.com>
3822
3823         Get rid of AddIncludesForSVGAnimatedType in bindings generator
3824         https://bugs.webkit.org/show_bug.cgi?id=115603
3825
3826         Reviewed by Benjamin Poulain.
3827
3828         Remove AddIncludesForSVGAnimatedType subroutine from the bindings generator
3829         as it is a special case which is no longer needed.
3830
3831         No new tests, no behavior change.
3832
3833         * bindings/scripts/CodeGeneratorJS.pm:
3834         (GenerateImplementation):
3835
3836 2013-05-04  Antoine Quint  <graouts@apple.com>
3837
3838         Update code generators to handle a new JavaScript file for snapshotted plug-ins
3839         https://bugs.webkit.org/show_bug.cgi?id=115596
3840
3841         Reviewed by Dean Jackson.
3842
3843         In preparation for https://webkit.org/b/115548, adding a new JS file at
3844         Resources/plugIns.js that we will use to provide presentation for the
3845         snapshotted plug-ins overlay.
3846
3847         * CMakeLists.txt:
3848         * DerivedSources.cpp:
3849         * DerivedSources.make:
3850         * DerivedSources.pri:
3851         * GNUmakefile.am:
3852         * GNUmakefile.list.am:
3853         * Resources/plugIns.js: Added.
3854         * WebCore.vcproj/WebCore.vcproj:
3855         * WebCore.vcxproj/WebCore.vcxproj:
3856         * WebCore.vcxproj/WebCore.vcxproj.filters:
3857         * WebCore.xcodeproj/project.pbxproj:
3858
3859 2013-05-04  Andreas Kling  <akling@apple.com>
3860
3861         REGRESSION(r142647): Flaky Test: fast/frames/crash-remove-iframe-during-object-beforeload.html
3862         <http://webkit.org/b/115322>
3863         <rdar://problem/13810719>
3864
3865         Reviewed by Anders Carlsson.
3866
3867         Don't cache the FrameView::renderView() in a local since updating Widgets may blow it away.
3868
3869         * page/FrameView.cpp:
3870         (WebCore::FrameView::performPostLayoutTasks):
3871
3872 2013-05-04  Andreas Kling  <akling@apple.com>
3873
3874         Remove GraphicsContext::strokeArc(), which is unused.
3875
3876         From Blink r149608 by <jbroman@chromium.org>
3877         <http://src.chromium.org/viewvc/blink?view=revision&revision=149608>
3878
3879         This is no longer used since almost a year ago, when HAVE(PATH_BASED_BORDER_RADIUS_DRAWING) was inlined.
3880
3881         * platform/graphics/GraphicsContext.h:
3882         * platform/graphics/blackberry/GraphicsContextBlackBerry.cpp:
3883         * platform/graphics/cairo/GraphicsContextCairo.cpp:
3884         * platform/graphics/cg/GraphicsContextCG.cpp:
3885         * platform/graphics/wince/GraphicsContextWinCE.cpp:
3886
3887 2013-05-04  Andreas Kling  <akling@apple.com>
3888
3889         Remove unused CSSSelector::isCustomPseudoType().
3890
3891         From Blink r149574 by <dominicc@chromium.org>
3892         <http://src.chromium.org/viewvc/blink?view=revision&revision=149574>
3893
3894         * css/CSSSelector.h:
3895         * css/CSSSelector.cpp:
3896
3897 2013-05-04  Andreas Kling  <akling@apple.com>
3898
3899         Remove ShadowRoot's previous/next ShadowRoot pointers.
3900         <http://webkit.org/b/115588>
3901
3902         Reviewed by Anders Carlsson.
3903
3904         ShadowRoot no longer inherits from DoublyLinkedListNode<ShadowRoot> because that code wasn't
3905         doing anything anymore. Shrinks ShadowRoot by two pointers.
3906
3907         * dom/ElementShadow.h:
3908         * dom/ShadowRoot.cpp:
3909         (SameSizeAsShadowRoot):
3910         (WebCore::ShadowRoot::ShadowRoot):
3911         (WebCore::ShadowRoot::~ShadowRoot):
3912         * dom/ShadowRoot.h:
3913
3914 2013-05-04  Andreas Kling  <akling@apple.com>
3915
3916         RenderObject: don't change GraphicsContext state when not drawing dashed/dotted lines.
3917
3918         From Blink r149546 by <jbroman@chromium.org>
3919         <http://src.chromium.org/viewvc/blink?view=revision&revision=149546>
3920
3921         Previously, there was asymmetry between changing and restoring state (certain state
3922         would be restored only if thickness was positive, i.e. a line was actually drawn.)
3923
3924         * rendering/RenderObject.cpp:
3925         (WebCore::RenderObject::drawLineForBoxSide):
3926
3927 2013-05-03  Andreas Kling  <akling@apple.com>
3928
3929         Remove CSS selector profiler branches from ElementRuleCollector loop.
3930         <http://webkit.org/b/115581>
3931
3932         Reviewed by Antti Koivisto.
3933
3934         Templatize the method so we don't have to check for active inspector frontends on every
3935         pass through the loop.
3936
3937         Time spent in this loop goes down from 0.5% to 0.2% on iTunes Store, WebCore binary size
3938         goes up 480 bytes (sorry Benjamin, I'll make it up to you.)
3939
3940         * css/ElementRuleCollector.h:
3941         * css/ElementRuleCollector.cpp:
3942         (WebCore::ElementRuleCollector::collectMatchingRulesForList):
3943         (WebCore::ElementRuleCollector::doCollectMatchingRulesForList):
3944
3945 2013-04-30  Robert Hogan  <robert@webkit.org>
3946
3947         REGRESSION(r140907): Incorrect baseline on cells after updating vertical-align
3948         https://bugs.webkit.org/show_bug.cgi?id=115432
3949
3950         Reviewed by Julien Chaffraix.
3951
3952         If a cell changes vertical-align any intrinsic padding it has is now redundant. It
3953         needs to calculate its new height from RenderTableRow::layout() and then find its
3954         new intrinsic padding in RenderTableSection::layoutRows().
3955
3956         Test: fast/table/correct-baseline-after-style-change.html
3957
3958         * rendering/RenderTableCell.cpp:
3959         (WebCore::RenderTableCell::styleDidChange):
3960
3961 2013-05-03  Arnaud Renevier  <a.renevier@sisa.samsung.com>
3962
3963         incorrect repainting when a table has a transform
3964         https://bugs.webkit.org/show_bug.cgi?id=109867
3965
3966         Reviewed by Simon Fraser.
3967
3968         Disable LayoutState when table, tableRow or tableSection render
3969         objects have transforms or reflections.
3970
3971         Tests: fast/repaint/reflection-table-layout.html
3972                fast/repaint/transform-table-layout.html
3973
3974         * rendering/RenderTable.cpp:
3975         (WebCore::RenderTable::layout):
3976         * rendering/RenderTableRow.cpp:
3977         (WebCore::RenderTableRow::layout):
3978         * rendering/RenderTableSection.cpp:
3979         (WebCore::RenderTableSection::layout):
3980         (WebCore::RenderTableSection::layoutRows):
3981
3982 2013-05-03  Antti Koivisto  <antti@apple.com>
3983
3984         Remove concept of younger and older shadow trees
3985         https://bugs.webkit.org/show_bug.cgi?id=115570
3986
3987         Reviewed by Andreas Kling.
3988
3989         Younger and older shadow trees are an obscure corner of the Shadow DOM spec.
3990         
3991         Support only one shadow tree per element. This simplifies many things. 
3992
3993         * dom/ComposedShadowTreeWalker.cpp:
3994         (WebCore::ComposedShadowTreeWalker::traverseChild):
3995         (WebCore::ComposedShadowTreeWalker::traverseSiblingInCurrentTree):
3996         (WebCore):
3997         (WebCore::ComposedShadowTreeWalker::traverseParent):
3998         (WebCore::ComposedShadowTreeWalker::traverseParentInCurrentTree):
3999         (WebCore::ComposedShadowTreeWalker::traverseParentBackToShadowRootOrHost):
4000         * dom/ComposedShadowTreeWalker.h:
4001         (WebCore::ComposedShadowTreeWalker::assertPrecondition):
4002         (ComposedShadowTreeWalker):
4003         * dom/ContainerNodeAlgorithms.cpp:
4004         (WebCore::ChildNodeInsertionNotifier::notifyDescendantInsertedIntoDocument):
4005         (WebCore::ChildNodeInsertionNotifier::notifyDescendantInsertedIntoTree):
4006         (WebCore::ChildNodeRemovalNotifier::notifyDescendantRemovedFromDocument):
4007         (WebCore::ChildNodeRemovalNotifier::notifyDescendantRemovedFromTree):
4008         (WebCore::ChildFrameDisconnector::collectFrameOwners):
4009         (WebCore::assertConnectedSubrameCountIsConsistent):
4010         * dom/Document.cpp:
4011         (WebCore::Document::buildAccessKeyMap):
4012         * dom/Element.cpp:
4013         (WebCore::Element::authorShadowRoot):
4014         (WebCore::Element::userAgentShadowRoot):
4015         (WebCore::Element::ensureUserAgentShadowRoot):
4016         * dom/Element.h:
4017         (Element):
4018         (WebCore::Element::hasAuthorShadowRoot):
4019         * dom/Element.idl:
4020         * dom/ElementShadow.cpp:
4021         (WebCore::ElementShadow::addShadowRoot):
4022         
4023         Allow only one ShadowRoot per ElementShadow. Remove linked list handling.
4024         
4025         (WebCore::ElementShadow::removeAllShadowRoots):
4026         (WebCore::ElementShadow::attach):
4027         (WebCore::ElementShadow::detach):
4028         (WebCore::ElementShadow::childNeedsStyleRecalc):
4029         (WebCore::ElementShadow::needsStyleRecalc):
4030         (WebCore::ElementShadow::recalcStyle):
4031         (WebCore::ElementShadow::removeAllEventListeners):
4032         * dom/ElementShadow.h:
4033         (WebCore::ElementShadow::shadowRoot):
4034         (ElementShadow):
4035         (WebCore::ElementShadow::host):
4036         (WebCore::Node::shadowRoot):
4037         (WebCore):
4038         * dom/Node.cpp:
4039         (WebCore):
4040         (WebCore::Node::showNodePathForThis):
4041         (WebCore::traverseTreeAndMark):
4042         (WebCore::showSubTreeAcrossFrame):
4043         * dom/Node.h:
4044         (Node):
4045         * dom/ShadowRoot.cpp:
4046         (WebCore::ShadowRoot::insertedInto):
4047         * dom/ShadowRoot.h:
4048         (ShadowRoot):
4049         
4050             Remove LinkedList base.
4051         
4052         * dom/TreeScopeAdopter.cpp:
4053         (WebCore::TreeScopeAdopter::moveTreeToNewScope):
4054         (WebCore::TreeScopeAdopter::moveTreeToNewDocument):
4055         * html/shadow/ContentDistributor.cpp:
4056         (WebCore::ContentDistributor::distribute):
4057         (WebCore::ContentDistributor::invalidate):