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