BUILD FIX (r150049): Fix RetainPtr<> type in PasteboardIOS.mm
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-05-13  David Kilzer  <ddkilzer@apple.com>
2
3         BUILD FIX (r150049): Fix RetainPtr<> type in PasteboardIOS.mm
4
5         * platform/ios/PasteboardIOS.mm:
6         (WebCore::Pasteboard::writeImage): Use RetainPtr<CFStringRef>
7         instead of RetainPtr<NSString>.
8
9 2013-05-13  Benjamin Poulain  <bpoulain@apple.com>
10
11         Remove platform/graphic's Generator
12         https://bugs.webkit.org/show_bug.cgi?id=116084
13
14         Reviewed by Darin Adler.
15
16         The Generator no longer abstract anything useful, its only
17         implementation is Gradient.
18
19         * GNUmakefile.list.am:
20         * WebCore.exp.in:
21         * WebCore.vcproj/WebCore.vcproj:
22         * WebCore.vcxproj/WebCore.vcxproj:
23         * WebCore.vcxproj/WebCore.vcxproj.filters:
24         * WebCore.xcodeproj/project.pbxproj:
25         * platform/graphics/GeneratedImage.h:
26         * platform/graphics/Generator.h: Removed.
27         * platform/graphics/GeneratorGeneratedImage.cpp:
28         (WebCore::GeneratorGeneratedImage::draw):
29         (WebCore::GeneratorGeneratedImage::drawPattern):
30         * platform/graphics/GeneratorGeneratedImage.h:
31         (WebCore::GeneratorGeneratedImage::create):
32         (WebCore::GeneratorGeneratedImage::GeneratorGeneratedImage):
33         (GeneratorGeneratedImage):
34         * platform/graphics/Gradient.h:
35         (WebCore):
36         (Gradient):
37         * platform/graphics/GraphicsContext.cpp:
38         (WebCore::GraphicsContext::fillRect):
39         * platform/graphics/GraphicsContext.h:
40         (WebCore):
41         (GraphicsContext):
42
43 2013-05-13  David Kilzer  <ddkilzer@apple.com>
44
45         Upstream iOS Clipboard and Pasteboard changes
46         <http://webkit.org/b/116062>
47
48         Reviewed by Darin Adler.
49
50         * WebCore.xcodeproj/project.pbxproj:
51         * dom/Clipboard.h:
52         * platform/Pasteboard.h:
53         * platform/ios/ClipboardIOS.h: Added.
54         * platform/ios/ClipboardIOS.mm: Added.
55         * platform/ios/PasteboardIOS.mm: Added.
56
57 2013-05-13  Huang Dongsung  <luxtella@company100.net>
58
59         [Mac] Use pageScaleFactor * deviceScaleFactor in requiresTiledLayer() and computePixelAlignment() of GraphicsLayerCA.
60         https://bugs.webkit.org/show_bug.cgi?id=107359
61
62         Reviewed by Darin Adler.
63
64         Currently GraphicsLayerCA uses pageScaleFactor in requiresTiledLayer() and
65         computePixelAlignment(), but we must use pageScaleFactor * deviceScaleFactor in
66         them.
67         It is because:
68         1. requiresTiledLayer() uses the scale to compute an actual layer size in the device
69         pixel unit.
70         2. computePixelAlignment() uses the scale to compute an aligned layer position
71         in the device pixel unit.
72
73         No new tests. We can not test about requiresTiledLayer() because it depends on
74         gpu. computePixelAlignment() is correct now because fortunately Mac uses
75         only 2 (for retina display) as a deviceScaleFactor.
76
77         * platform/graphics/ca/GraphicsLayerCA.cpp:
78         (WebCore::GraphicsLayerCA::requiresTiledLayer):
79         (WebCore::GraphicsLayerCA::computePixelAlignment):
80
81 2013-05-13  Christophe Dumez  <ch.dumez@sisa.samsung.com>
82
83         Rename BarInfo to BarProp and remove [NoInterfaceObject]
84         https://bugs.webkit.org/show_bug.cgi?id=116027
85
86         Reviewed by Andreas Kling.
87
88         Rename BarInfo to BarProp and remove [NoInterfaceObject] extended attribute from
89         the IDL interface to match the specification:
90         http://www.w3.org/html/wg/drafts/html/master/browsers.html#barprop
91
92         The new behavior also matches Firefox and Blink.
93
94         No new tests, covered by LayoutTests/fast/js/global-constructors-attributes.html.
95
96         * CMakeLists.txt:
97         * DerivedSources.cpp:
98         * DerivedSources.make:
99         * DerivedSources.pri:
100         * GNUmakefile.list.am:
101         * Target.pri:
102         * WebCore.order:
103         * WebCore.vcproj/WebCore.vcproj:
104         * WebCore.vcxproj/WebCore.vcxproj:
105         * WebCore.vcxproj/WebCore.vcxproj.filters:
106         * WebCore.xcodeproj/project.pbxproj:
107         * bindings/gobject/GNUmakefile.am:
108         * page/BarProp.cpp: Renamed from Source/WebCore/page/BarInfo.cpp.
109         * page/BarProp.h: Renamed from Source/WebCore/page/BarInfo.h.
110         * page/BarProp.idl: Renamed from Source/WebCore/page/BarInfo.idl.
111         * page/DOMWindow.cpp:
112         * page/DOMWindow.h:
113         * page/DOMWindow.idl:
114
115 2013-05-13  Anders Carlsson  <andersca@apple.com>
116
117         Remove ChromeClient::willPopupMenu
118         https://bugs.webkit.org/show_bug.cgi?id=116063
119
120         Reviewed by Andreas Kling.
121
122         Remove ChromeClient::willPopupMenu.
123
124         * page/ChromeClient.h:
125
126 2013-05-13  Beth Dakin  <bdakin@apple.com>
127
128         Headers and footers should be pinned to the left edge of the window when scrolling 
129         horizontally
130         https://bugs.webkit.org/show_bug.cgi?id=116061
131         -and corresponding-
132         <rdar://problem/13599215>
133
134         Reviewed by Simon Fraser.
135
136         The scrolling thread will need to know about the header and footer layers in order 
137         the implement this custom scrolling behavior. 
138
139         These getters will fetch the header or footer layer from the FrameView as 
140         appropriate.
141         * page/scrolling/ScrollingCoordinator.cpp:
142         (WebCore::ScrollingCoordinator::headerLayerForFrameView):
143         (WebCore::ScrollingCoordinator::footerLayerForFrameView):
144         * page/scrolling/ScrollingCoordinator.h:
145
146         When we’re scrolling on the main thread, adjust the position of the header and 
147         footer layers here.
148         (WebCore::ScrollingCoordinator::updateMainFrameScrollPosition):
149
150         ScrollingStateScrollingNode now stores GraphicsLayers and PlatformLayers for the 
151         header and footer, just like it already does for the counterScrollingLayer.
152         * page/scrolling/ScrollingStateScrollingNode.cpp:
153         (WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode):
154         * page/scrolling/ScrollingStateScrollingNode.h:
155         (ScrollingStateScrollingNode):
156         (WebCore::ScrollingStateScrollingNode::headerLayer):
157         (WebCore::ScrollingStateScrollingNode::footerLayer):
158
159         Setters for the new layers.
160         * page/scrolling/mac/ScrollingCoordinatorMac.h:
161         (ScrollingCoordinatorMac):
162         * page/scrolling/mac/ScrollingCoordinatorMac.mm:
163         (WebCore::ScrollingCoordinatorMac::frameViewRootLayerDidChange):
164         (WebCore::ScrollingCoordinatorMac::setHeaderLayerForNode):
165         (WebCore::ScrollingCoordinatorMac::setFooterLayerForNode):
166
167         These setters and getters mirror the existing one for counterScrollingLayer.
168         * page/scrolling/mac/ScrollingStateScrollingNodeMac.mm:
169         (WebCore::ScrollingStateScrollingNode::headerPlatformLayer):
170         (WebCore::ScrollingStateScrollingNode::setHeaderLayer):
171         (WebCore::ScrollingStateScrollingNode::footerPlatformLayer):
172         (WebCore::ScrollingStateScrollingNode::setFooterLayer):
173
174         And the ScrollingTree will store CALayers for the header and footer.
175         * page/scrolling/mac/ScrollingTreeScrollingNodeMac.h:
176         (ScrollingTreeScrollingNodeMac):
177         * page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
178         (WebCore::ScrollingTreeScrollingNodeMac::updateBeforeChildren):
179
180         This is where the magic happens when we are scrolling on the scrolling thread. 
181         Adjust the horizontal position the behave like a fixed object, but keep the 
182         vertical position what it was when layer was created.
183         (WebCore::ScrollingTreeScrollingNodeMac::setScrollLayerPosition):
184
185         RenderLayerCompositor must now provide getters for the header and footer.
186         * rendering/RenderLayerCompositor.h:
187         * rendering/RenderLayerCompositor.cpp:
188         (WebCore::RenderLayerCompositor::headerLayer):
189         (WebCore::RenderLayerCompositor::footerLayer):
190
191         Set the anchor point for when we adjust the position later on. Also call 
192         frameViewRootLayerDidChange() to get the new layers picked up and sent to the 
193         scrolling tree.
194         (WebCore::RenderLayerCompositor::updateLayerForHeader):
195         (WebCore::RenderLayerCompositor::updateLayerForFooter):
196
197 2013-05-12  Timothy Hatcher  <timothy@apple.com>
198
199         Add support for updating the Web Inspector toolbar height.
200
201         https://bugs.webkit.org/show_bug.cgi?id=115996
202
203         Reviewed by Joseph Pecoraro and Benjamin Poulain.
204
205         * inspector/InspectorFrontendClient.h:
206         (InspectorFrontendClient):
207         * inspector/InspectorFrontendHost.cpp:
208         (WebCore::InspectorFrontendHost::setToolbarHeight):
209         * inspector/InspectorFrontendHost.h:
210         (InspectorFrontendHost):
211         * inspector/InspectorFrontendHost.idl:
212         * testing/Internals.cpp:
213
214 2013-05-13  Dean Jackson  <dino@apple.com>
215
216         toDataURL can return an empty image in some cases
217         https://bugs.webkit.org/show_bug.cgi?id=115981
218         <rdar://problem/13760256>
219
220         Reviewed by Darin Adler.
221
222         In some accelerated rendering cases, calling toDataURL on
223         an off-screen canvas produced an empty image. The solution
224         was to force a CGContextFlush before extracting the data
225         for image generation.
226
227         While here, I collected the flushing code from other methods
228         into a single place. Also we were getting into a situation where
229         we called flush two times in a row.
230
231         Test: fast/canvas/toDataURL-not-empty.html
232
233         * platform/graphics/ImageBuffer.h:
234         (ImageBuffer): Define two new methods flushContext and flushContextIfNecessary.
235         * platform/graphics/cg/ImageBufferCG.cpp:
236         (WebCore::ImageBuffer::context): Call flushContextIfNecessary.
237         (WebCore::ImageBuffer::flushContextIfNecessary): Moved the 10.7 code in here.
238         (WebCore::ImageBuffer::flushContext): Calls CGContextFlush.
239         (WebCore::ImageBuffer::getUnmultipliedImageData): Call new helper.
240         (WebCore::ImageBuffer::getPremultipliedImageData): Call new helper.
241         (WebCore::ImageBuffer::toDataURL): Flush the CG context.
242
243 2013-05-13  David Hyatt  <hyatt@apple.com>
244
245         Regressions in flexbox layout caused by the flexing optimizations.
246         https://bugs.webkit.org/show_bug.cgi?id=116058
247         <rdar://problem/13863647>
248         
249         Reviewed by Beth Dakin.
250
251         Roll out the flex-related changes from r149597 so that the layout
252         algorithm goes back to the way it was. Leave the repainting optimizations
253         in place though.
254
255         * rendering/RenderDeprecatedFlexibleBox.cpp:
256         (WebCore::gatherFlexChildrenInfo):
257         (WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox):
258         (WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox):
259
260 2013-05-13  Philippe Normand  <pnormand@igalia.com>
261
262         Unreviewed, rolling out r150014.
263         http://trac.webkit.org/changeset/150014
264         https://bugs.webkit.org/show_bug.cgi?id=86410
265
266         Broke video playback on WK2 and some webgl tests
267
268         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
269         (WebCore::MediaPlayerPrivateGStreamerBase::MediaPlayerPrivateGStreamerBase):
270         (WebCore::MediaPlayerPrivateGStreamerBase::triggerRepaint):
271         (WebCore::MediaPlayerPrivateGStreamerBase::paint):
272         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
273         (MediaPlayerPrivateGStreamerBase):
274
275 2013-05-13  Christophe Dumez  <ch.dumez@sisa.samsung.com>
276
277         Unreviewed, rolling out r150022.
278         http://trac.webkit.org/changeset/150022
279         https://bugs.webkit.org/show_bug.cgi?id=114044
280
281         Causes assertions in media tests
282
283         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
284         (WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
285         (WebCore::MediaPlayerPrivateGStreamer::playbackPosition):
286         (WebCore::MediaPlayerPrivateGStreamer::prepareToPlay):
287         (WebCore::MediaPlayerPrivateGStreamer::currentTime):
288         (WebCore::MediaPlayerPrivateGStreamer::seek):
289         (WebCore::MediaPlayerPrivateGStreamer::handleMessage):
290         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
291         (MediaPlayerPrivateGStreamer):
292
293 2013-05-13  Bem Jones-Bey  <bjonesbe@adobe.com>
294
295         Floats should not overhang from flex items
296         https://bugs.webkit.org/show_bug.cgi?id=115925
297
298         Reviewed by David Hyatt.
299
300         Allowing floats to overhand from flex items is not only against the
301         spec, it causes bad bugs. Fix this by having flex items properly avoid
302         floats.
303
304         Test: fast/block/float/float-not-removed-crash2.html
305
306         * rendering/RenderBox.cpp:
307         (WebCore::RenderBox::avoidsFloats): Add flex items to avoid floats.
308         * rendering/RenderBox.h:
309         (WebCore::RenderBox::isFlexItemIncludingDeprecated): Determine if the current box is a
310             flex item or deprecated flex item.
311
312 2013-05-13  Zoltan Horvath  <zoltan@webkit.org>
313
314         [CSS Regions][CSS Exclusions] Shape-inside on regions should respect region borders and paddings
315         https://bugs.webkit.org/show_bug.cgi?id=115456
316
317         Reviewed by David Hyatt.
318
319         I refactored the computation logic of shape-inside on regions by removing access to RenderFlowThread from ExclusionShapeInfo's logicalTopOffset
320         function, this means all the logic is now existing in RenderBlockLineLayout.cpp. By modifying the logicalTopOffset it turned out that the borders
321         and padding hadn't worked correctly, since borders and paddings were counted twice in the shape-inside's computation. This patch adds the necessary
322         modifications to let it respect the borders and padding in the correct way. I created 2 new helper functions to prevent increasing the code size of
323         the layoutRunsAndFloatsInRange function.
324
325         I introduced 7 new tests to test for testing the correct behavior.
326
327         Tests: fast/regions/shape-inside/shape-inside-on-first-region-block-content.html
328                fast/regions/shape-inside/shape-inside-on-first-region-inline-content.html
329                fast/regions/shape-inside/shape-inside-on-second-region-block-content.html
330                fast/regions/shape-inside/shape-inside-on-second-region-inline-content.html
331                fast/regions/shape-inside/shape-inside-on-regions-inline-content.html
332                fast/regions/shape-inside/shape-inside-with-region-borders.html
333                fast/regions/shape-inside/shape-inside-with-region-padding.html
334
335         * rendering/ExclusionShapeInfo.cpp:
336         (WebCore): Remove FlowThread logic from logicalTopOffset move definition to header.
337         * rendering/ExclusionShapeInfo.h:
338         (WebCore::ExclusionShapeInfo::logicalTopOffset): Moved from cpp.
339         (WebCore::ExclusionShapeInfo::logicalLeftOffset): Add condition for RenderRegions. 
340         * rendering/RenderBlock.h:
341         (RenderBlock): Add definition to the new helper members.
342         * rendering/RenderBlockLineLayout.cpp:
343         (WebCore::RenderBlock::layoutExclusionShapeInsideInfo): Modified the flow thread case to return the appropriate region.
344         (WebCore::RenderBlock::updateLineBoundariesForExclusions): Added new helper function. Modify the shape-inside on regions
345         line boundaries and position computation logic.
346         (WebCore::RenderBlock::adjustLogicalLineTopAndLogicalHeightIfNeeded): Added new helper function which handles the flow thread case also.
347         (WebCore::RenderBlock::layoutRunsAndFloatsInRange): Modified the code to use the helper functions.
348
349 2013-05-13  Bear Travis  <betravis@adobe.com>
350
351         [css exclusions] Enable CSS Exclusions by default when CSS_EXCLUSIONS is set
352         https://bugs.webkit.org/show_bug.cgi?id=115919
353
354         Reviewed by Dean Jackson.
355
356         Change the RuntimeEnabledFeatures::isCSSExclusionsEnabled boolean to default
357         to true. CSS Exclusions can still be enabled / disabled in platforms by
358         setting the CSS_EXCLUSIONS compile flag in one of the FeatureDefine files.
359
360         Test: fast/exclusions/css-exclusions-enabled.html
361
362         * bindings/generic/RuntimeEnabledFeatures.cpp:
363         (WebCore):
364
365 2013-05-13  Suchit Agrawal  <a.suchit@samsung.com>
366
367         Cell heights are disproportional when a row-spanning cell contains a block element that determines the height of the rows
368         https://bugs.webkit.org/show_bug.cgi?id=52185
369
370         Reviewed by David Hyatt.
371
372         Cells heights are not proper when rowspan cell have its own height and rowspan height
373         is more than the height of the rows present in rowspan.
374
375         After calculating logical height of the rows in the table, we are recalculating the height
376         of the rows present in rowspan. Based on the ratio of row's logical height, we are
377         distributing rowspan cell height in rows.
378
379         Test: fast/table/table-rowspan-height-distribution-in-rows.html
380
381         * rendering/RenderTableSection.cpp:
382         (WebCore):
383
384         Update the logical height of the rows based on rowspan cell height.
385         (WebCore::RenderTableSection::distributeRowSpanHeightToRows):
386
387         It calculates logical height of the rows in the table.
388         (WebCore::RenderTableSection::calcRowLogicalHeight):
389
390         Added new private API to distribute rowSpan cell height in rows.
391         * rendering/RenderTableSection.h:
392         (RenderTableSection):
393
394 2013-04-30  Balazs Kelemen  <b.kelemen@sisa.samsung.com>
395
396         [GStreamer] cannot seek after video finished
397         https://bugs.webkit.org/show_bug.cgi?id=114044
398
399         Reviewed by Philippe Normand.
400
401         Test: media/video-seek-after-end.html
402
403         Rework the seeking logic to be able to seek after reseting the pipeline.
404         In addition to solve the actual problem this patch supposed to make seeking
405         more robust and correct.
406         The previous implementation tried to hide the complexity of asynchronous operations
407         on the pipeline. It did not handle the GST_MESSAGE_ASYNC_DONE message from the bus
408         but instead reported the seek as finished when it saw an asynchronous pending state
409         (GST_STATE_CHANGE_ASYNC) which could happen way before the seek is really done.
410         Now we pay attention to the GST_MESSAGE_ASYNC_DONE message to track the status of seeks.
411         Seeks are not the only operations executed asynchronously, changing the pipeling state is
412         similar. It means a seek can overlap with onother ongoing asynchronous operation.
413         This change address this by introducing an invariant for seeks, which is that we only request
414         a seek if there are no other ongoing asynchronous operations and the pipeline state is either
415         paused or playing (which is recommended anyway according to GStreamer's documentation).
416         This way we can be sure that the time when we get the next GST_MESSAGE_ASYNC_DONE message the
417         seek has been completed.
418
419         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
420         (WebCore::toGstClockTime): Factored time conversation into a helper.
421         (WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
422
423         (WebCore::MediaPlayerPrivateGStreamer::playbackPosition): The position might not be available
424         if the pipeline still has a pending state. As a workaround, if we are right after a seek we can
425         use the seek time. Avoiding this situation would be possible by not allowing any asynchronous
426         operation to overlap. I believe it would add a lot more complexity so I decided to rather introduce
427         this workaround. Otherwise those overlapping operations are handled fine by GStreamer.
428
429         (WebCore::MediaPlayerPrivateGStreamer::prepareToPlay): Do not reset internal state variables.
430         This function called when there is an intent to restart playback but it does not actually restart it.
431         (WebCore::MediaPlayerPrivateGStreamer::currentTime): Just removed a staling newline.
432         (WebCore::MediaPlayerPrivateGStreamer::seek): Take a look to the pipeline state and act upon that.
433         If there is an ongoing asynchronous operation make the seek pending, otherwise do it now.
434         Now we handle overlapping seeks as well because I saw that it can happen in some tests.
435         Added an early return for live streams as it doesn't makes sense to try seeking in them.
436
437         (WebCore::MediaPlayerPrivateGStreamer::handleMessage): Handle GST_MESSAGE_ASYNC_DONE and some refactoring.
438         (WebCore::MediaPlayerPrivateGStreamer::asyncStateChangeDone):
439         (WebCore::MediaPlayerPrivateGStreamer::updateStates): Only handle seeks in the pending case, the rest is
440         now handled in asyncStateChangeDone.
441         (WebCore::MediaPlayerPrivateGStreamer::cacheDuration): Do not reset the m_mediaDurationKnown if the pipeline
442         has an asynchronous pending state because it would fail. It does actually happen when we get a duration message
443         after restarting the pipeline and it would result in restarting playback from the start. It seems to be a bug
444         in GStreamer that it sends the duration message too early. Also sanitized this function by merging redundant branches.
445         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
446         (MediaPlayerPrivateGStreamer):
447
448 2013-05-12  Darin Adler  <darin@apple.com>
449
450         [Mac] Move writeRange/PlainText/URL from ClipboardMac to PasteboardMac
451         https://bugs.webkit.org/show_bug.cgi?id=116009
452
453         Reviewed by Andreas Kling.
454
455         * dom/Clipboard.cpp:
456         (WebCore::Clipboard::writeRange): Added. Moved from ClipboardMac,
457         but added some FIXMEs.
458         (WebCore::Clipboard::writePlainText): Ditto.
459         (WebCore::Clipboard::writeURL): Ditto.
460
461         * dom/Clipboard.h: Made writeURL, writeRange, and writePlainText
462         non-virtual in non-legacy clipboard implementations.
463
464         * platform/mac/ClipboardMac.h: Removed writeRange, writeURL, and
465         writePlainText.
466         * platform/mac/ClipboardMac.mm: Ditto.
467
468 2013-05-13  Noam Rosenthal  <noam@webkit.org>
469
470         [CoordGfx] requestAnimationFrame performance issues
471         https://bugs.webkit.org/show_bug.cgi?id=112345
472
473         Reviewed by Jocelyn Turcotte.
474
475         Removed current requestAnimationFrame logic from CoordinatedGraphics. The new logic
476         is entirely in WebKit2 CoordinatedLayerTreeHost.
477
478         Covered by existing tests in fast/animations.
479
480         * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
481         (WebCore::CoordinatedGraphicsScene::CoordinatedGraphicsScene):
482         (WebCore::CoordinatedGraphicsScene::paintToCurrentGLContext):
483         * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.h:
484         (CoordinatedGraphicsScene):
485
486 2013-05-13  Víctor Manuel Jáquez Leal  <vjaquez@igalia.com>
487
488         [texmap][GStreamer] Composited Video support
489         https://bugs.webkit.org/show_bug.cgi?id=86410
490
491         Reviewed by Philippe Normand.
492
493         Enable the video accelerated compositing using the WebKit's
494         TextureMapper.
495
496         This patch does not use hardware accelerated video decoding. It
497         provides a generic path for system memory buffers.
498
499         No new tests, already covered by existing tests.
500
501         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
502         (WebCore::MediaPlayerPrivateGStreamerBase::MediaPlayerPrivateGStreamerBase):
503         (WebCore):
504         (WebCore::MediaPlayerPrivateGStreamerBase::updateTexture): update the
505         texture content with the new received video buffer.
506         (WebCore::MediaPlayerPrivateGStreamerBase::triggerRepaint): choose to
507         use the accelerated compositing or the normal code path
508         (WebCore::MediaPlayerPrivateGStreamerBase::paint): if accelerated
509         compositing is used this method is halted.
510         (WebCore::MediaPlayerPrivateGStreamerBase::paintToTextureMapper): get
511         a texture from the pool and draws it if it is already available.
512         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
513         (MediaPlayerPrivateGStreamerBase):
514         (WebCore::MediaPlayerPrivateGStreamerBase::platformLayer): returns itself
515         (WebCore::MediaPlayerPrivateGStreamerBase::supportsAcceleratedRendering):
516         returns true
517
518 2013-05-13  Andreas Kling  <akling@apple.com>
519
520         Document: Use a DeferrableOneShotTimer to throw out StyleResolver when unused.
521         <http://webkit.org/b/115929>
522
523         Reviewed by Anders Carlsson.
524
525         Nothing exciting here, just replacing a rickety-looking punting mechanism with a proper
526         DeferrableOneShotTimer. Note that the timeout changes from 60 to 30 seconds because DOST
527         works by punting a full interval on next timeout.
528
529         * dom/Document.cpp:
530         (WebCore::Document::Document):
531         (WebCore::Document::didAccessStyleResolver):
532         (WebCore::Document::styleResolverThrowawayTimerFired):
533         * dom/Document.h:
534         (Document):
535
536 2013-05-13  Andreas Kling  <akling@apple.com>
537
538         REGRESSION(r149287): FoldingText only shows me half of my text.
539         <http://webkit.org/b/115956>
540         <rdar://problem/13831099>
541
542         Reviewed by Antti Koivisto.
543
544         Check if the FrameView geometry changed post-layout, and send a resize event if needed.
545         This brings us closer to the original resize event behavior, with the exception that
546         setFrameRect() still fires an event right away if possible. This means we are still
547         guarded from FOUC's but frames that layout via [WebHTMLView layoutToMinimumPageWidth]
548         also get resize events like they used to.
549
550         No new tests, because I don't know how to test this.
551
552         * page/FrameView.h:
553         * page/FrameView.cpp:
554         (WebCore::FrameView::setFrameRect):
555         (WebCore::FrameView::performPostLayoutTasks):
556         (WebCore::FrameView::sendResizeEventIfNeeded):
557
558             Factor out the resize event logic from setFrameRect() so we can call it from both
559             there and performPostLayoutTasks(). sendResizeEventIfNeeded() only sends an event
560             if view geometry or zoom factor has changed since last time it was called.
561
562 2013-05-13  Antti Koivisto  <antti@apple.com>
563
564         Remove unneeded counters from ScopeContentDistribution.
565         https://bugs.webkit.org/show_bug.cgi?id=116028
566
567         Reviewed by Andreas Kling.
568
569         They don't do much.
570
571         * WebCore.exp.in:
572         * dom/ShadowRoot.cpp:
573         (WebCore::ShadowRoot::ShadowRoot):
574         * dom/ShadowRoot.h:
575         
576             No need for registration code anymore.
577
578         * html/shadow/ContentDistributor.cpp:
579         (WebCore::ScopeContentDistribution::ScopeContentDistribution):
580         
581             Default m_insertionPointListIsValid to true to avoid crawling when there are no InsertionPoints.
582
583         (WebCore::ScopeContentDistribution::ensureInsertionPointList):
584         (WebCore::ScopeContentDistribution::registerInsertionPoint):
585         (WebCore::ScopeContentDistribution::unregisterInsertionPoint):
586         * html/shadow/ContentDistributor.h:
587         
588             Remove distributeNodeChildrenTo, it was only used by the older/younger shadow root code.
589
590         * testing/Internals.cpp:
591         * testing/Internals.h:
592         * testing/Internals.idl:
593
594 2013-05-13  Seokju Kwon  <seokju.kwon@gmail.com>
595
596         Web Inspector: Remove unused references from projects in Visual Studio
597         https://bugs.webkit.org/show_bug.cgi?id=116002
598
599         Reviewed by Csaba Osztrogonác.
600
601         nativeMemoryProfiler.css and NativeMemorySnapshotView.js were removed in r149807.
602
603         No new tests, no behavior change.
604
605         * WebCore.vcproj/WebCore.vcproj:
606         * WebCore.vcxproj/WebCore.vcxproj:
607         * WebCore.vcxproj/WebCore.vcxproj.filters:
608
609 2013-05-13  Zalan Bujtas  <zalan@apple.com>
610
611         WebProcess consuming very high CPU on linkedin.com
612         https://bugs.webkit.org/show_bug.cgi?id=115601
613
614         Reviewed by Andreas Kling.
615
616         Disable WEB_TIMING_MINIMAL.
617         Turn off window.performance and performance.now(). Some JS frameworks expect
618         additional Web Timing APIs, when performance.now() is available.
619
620         * Configurations/FeatureDefines.xcconfig:
621         * dom/EventTargetFactory.in:
622         * page/DOMWindow.cpp:
623         (WebCore::DOMWindow::~DOMWindow):
624         (WebCore::DOMWindow::resetDOMWindowProperties):
625         (WebCore):
626         * page/DOMWindow.h:
627         (DOMWindow):
628         * page/DOMWindow.idl:
629         * page/Performance.cpp:
630         (WebCore::Performance::timing):
631         * page/Performance.h:
632         (Performance):
633         * page/Performance.idl:
634
635 2013-05-12  Eric Carlson  <eric.carlson@apple.com>
636
637         REGRESSION (r149749): Video becomes invisible when it starts playing at newyorkbygehry.com
638         https://bugs.webkit.org/show_bug.cgi?id=115963
639
640         Reviewed by Dean Jackson.
641
642         Test: media/video-remove-insert-repaints.html
643
644         * html/HTMLMediaElement.cpp:
645         (WebCore::HTMLMediaElement::insertedInto): Set m_inActiveDocument when inserted into a document.
646         (WebCore::HTMLMediaElement::removedFrom): Fix logging.
647
648 2013-05-12  David Kilzer  <ddkilzer@apple.com>
649
650         Move sudden termination symbols to the Mac-only section
651
652         * WebCore.exp.in: Move the sudden termination symbols to the
653         !PLATFORM(IOS) section for reals this time.
654
655 2013-05-12  Darin Adler  <darin@apple.com>
656
657         Fix Mac build.
658
659         * platform/mac/PasteboardMac.mm: Add back include of ClipboardMac.h
660         that was removed by accident a couple of patches back.
661
662 2013-05-12  Darin Adler  <darin@apple.com>
663
664         [Mac] Moved files function from ClipboardMac to PasteboardMac
665         https://bugs.webkit.org/show_bug.cgi?id=116008
666
667         Reviewed by Anders Carlsson.
668
669         * dom/Clipboard.cpp:
670         (WebCore::Clipboard::files): Added. Moved the DOM-depdendent and
671         platform-independent part of the files function in ClipboardMac here.
672
673         * dom/Clipboard.h: Made files function non-virtual in non-legacy case.
674
675         * platform/Pasteboard.h: Removed static member function
676         absoluteURLsFromPasteboardFilenames since it can now be private to
677         PasteboardMac. Added member function readFilenames.
678
679         * platform/mac/ClipboardMac.h: Removed function member files and also
680         now-unused data member m_clipboardContents.
681
682         * platform/mac/ClipboardMac.mm: Removed files function.
683         (WebCore::ClipboardMac::ClipboardMac): Removed code to initialize
684         m_clipboardContents.
685
686         * platform/mac/PasteboardMac.mm:
687         (WebCore::absoluteURLsFromPasteboardFilenames): Changed from a static
688         member function to a file-local function.
689         (WebCore::absoluteURLsFromPasteboard): Changed to call the function
690         above in its new location.
691         (WebCore::Pasteboard::readFilenames): Added. Code from ClipboardMac,
692         minus the DOM-specific parts. Added a FIXME about the peculiar round
693         trip through NSURL this code takes.
694
695 2013-05-12  Anders Carlsson  <andersca@apple.com>
696
697         Fix WebKit2 build.
698
699         * WebCore.exp.in:
700         Put WebCore::disableSuddenTermination and WebCore::enableSuddenTermination symbols in the right section.
701
702 2013-05-12  Darin Adler  <darin@apple.com>
703
704         [Mac] Move types function from ClipboardMac to PasteboardMac
705         https://bugs.webkit.org/show_bug.cgi?id=116007
706
707         Reviewed by Anders Carlsson.
708
709         * dom/Clipboard.cpp:
710         (WebCore::Clipboard::types): Added. Calls through to Pasteboard
711         after doing checks needed at this level.
712
713         * dom/Clipboard.h: Made types function non-virtual in non-legacy case,
714         and removed non-helpful comment.
715
716         * platform/Pasteboard.h: Updated includes and comments at the top of
717         the file a bit. Removed static member function addHTMLClipboardTypesForCocoaType,
718         since it can now be private to PasteboardMac. Added member function types.
719
720         * platform/mac/ClipboardMac.h: Removed types function.
721         * platform/mac/ClipboardMac.mm: Ditto.
722
723         * platform/mac/PasteboardMac.mm:
724         (WebCore::addHTMLClipboardTypesForCocoaType): Made this a file-local
725         function instead of a static member function.
726         (WebCore::Pasteboard::types): Added. Moved from ClipboardMac.
727
728 2013-05-12  Darin Adler  <darin@apple.com>
729
730         [Mac] Move setData from ClipboardMac to PasteboardMac
731         https://bugs.webkit.org/show_bug.cgi?id=116006
732
733         Reviewed by Anders Carlsson.
734
735         * dom/Clipboard.cpp:
736         (WebCore::Clipboard::setData): Added. Calls through to Pasteboard
737         after doing checks needed at this level.
738
739         * dom/Clipboard.h: Made setData non-virtual in non-legacy case.
740
741         * platform/Pasteboard.h: Updated includes and forward declarations.
742         Removed static member function cocoaTypeFromHTMLClipboardType, since
743         it can now be private to PasteboardMac. Added static member function
744         addHTMLClipboardTypesForCocoaType, which is shared between the
745         ClipboardMac and PasteboardMac files for now. Added writeString.
746
747         * platform/mac/ClipboardMac.h: Removed setData.
748
749         * platform/mac/ClipboardMac.mm: Removed utiTypeFromCocoaType,
750         addHTMLClipboardTypesForCocoaType, and setData.
751         (WebCore::ClipboardMac::types): Call addHTMLClipboardTypesForCocoaType
752         as a Pasteboard static member function, for now.
753
754         * platform/mac/PasteboardMac.mm:
755         (WebCore::cocoaTypeFromHTMLClipboardType): Added. Moved from ClipboardMac.
756         (WebCore::Pasteboard::readString): Changed to call
757         cocoaTypeFromHTMLClipboardType as a file-local function, not a member
758         function (in fact, we didn't need to repeat the class name before, either,
759         so this is just removing something we didn't need).
760         (WebCore::utiTypeFromCocoaType): Added. Moved from ClipboardMac.
761         (WebCore::Pasteboard::addHTMLClipboardTypesForCocoaType): Ditto.
762         (WebCore::Pasteboard::writeString): Ditto.
763
764 2013-05-12  Darin Adler  <darin@apple.com>
765
766         [Mac] Move getData from ClipboardMac to PasteboardMac
767         https://bugs.webkit.org/show_bug.cgi?id=116005
768
769         Reviewed by Anders Carlsson.
770
771         * dom/Clipboard.cpp:
772         (WebCore::Clipboard::Clipboard): Added a new boolean argument, forFileDrag,
773         to the constructor. Maybe we can find a better way to do this once we move
774         all the platforms over, but this boolean seems a good way to do it for now.
775         (WebCore::Clipboard::getData): Added. Calls through to Pasteboard after
776         doing the canReadData check, which is part of DOM rules, not the platform.
777         Also checks for the file drag case like the old ClipboardMac code did.
778
779         * dom/Clipboard.h: Made getData non-virtual in non-legacy case.
780
781         * platform/Pasteboard.h: Added a static member function named
782         absoluteURLsFromPasteboardFilenames, temporary so it can be shared between
783         ClipboardMac and PasteboardMac. Added a readString public function member,
784         and a m_changeCount data member. The type of m_changeCount is long since
785         that can always hold an NSInteger but yet is a type we can compile without
786         including the header file that defines NSInteger.
787
788         * platform/mac/ClipboardMac.h: Removed getData.
789         * platform/mac/ClipboardMac.mm: Removed getData.
790         (WebCore::ClipboardMac::ClipboardMac): Added code to pass in the new
791         forFileDrag boolean.
792         (WebCore::ClipboardMac::files): Call absoluteURLsFromPasteboardFilenames
793         as a static member function in Pasteboard since we moved it there.
794
795         * platform/mac/PasteboardMac.mm:
796         (WebCore::Pasteboard::Pasteboard): Initialize the change count, so later
797         pasteboard operations can check it.
798         (WebCore::Pasteboard::absoluteURLsFromPasteboardFilenames): Added. Moved
799         here from ClipboardMac.
800         (WebCore::absoluteURLsFromPasteboard): Ditto.
801         (WebCore::Pasteboard::readString): Added. Moved here from ClipboardMac.
802
803 2013-05-12  Anders Carlsson  <andersca@apple.com>
804
805         Stop including UnusedParam.h
806         https://bugs.webkit.org/show_bug.cgi?id=116003
807
808         Reviewed by Sam Weinig.
809
810         UnusedParam.h is empty now so there's no need to include it anymore.
811
812         * Modules/encryptedmedia/CDMPrivateAVFoundation.mm:
813         * Modules/indexeddb/IDBFactoryBackendImpl.cpp:
814         * Modules/indexeddb/IDBObjectStore.cpp:
815         * Modules/webdatabase/DatabaseServer.cpp:
816         * Modules/webdatabase/DatabaseThread.cpp:
817         * bindings/js/JSDOMWindowBase.cpp:
818         * bindings/objc/DOMObject.mm:
819         * css/CSSCursorImageValue.cpp:
820         * css/DeprecatedStyleBuilder.cpp:
821         * dom/EventDispatcher.cpp:
822         * dom/Node.cpp:
823         * editing/AlternativeTextController.h:
824         * editing/Editor.cpp:
825         * html/HTMLPlugInElement.cpp:
826         * html/canvas/CanvasRenderingContext2D.cpp:
827         * html/canvas/OESVertexArrayObject.h:
828         * html/parser/HTMLConstructionSite.cpp:
829         * html/parser/HTMLTokenizer.cpp:
830         * html/track/InbandTextTrack.cpp:
831         * inspector/InspectorCanvasInstrumentation.h:
832         * inspector/InspectorConsoleInstrumentation.h:
833         * inspector/InspectorController.cpp:
834         * inspector/InspectorCounters.h:
835         * inspector/InspectorDatabaseInstrumentation.h:
836         * inspector/InspectorInstrumentation.h:
837         * loader/DocumentThreadableLoader.cpp:
838         * loader/PingLoader.cpp:
839         * loader/appcache/ApplicationCacheGroup.cpp:
840         * loader/cache/CachedResourceLoader.cpp:
841         * loader/mac/DocumentLoaderMac.cpp:
842         * page/ChromeClient.h:
843         * page/Console.cpp:
844         * page/FrameView.cpp:
845         * page/PageConsole.cpp:
846         * page/animation/AnimationController.cpp:
847         * page/animation/ImplicitAnimation.cpp:
848         * page/animation/KeyframeAnimation.cpp:
849         * platform/LocalizedStrings.cpp:
850         * platform/ScrollAnimator.h:
851         * platform/ThreadGlobalData.cpp:
852         * platform/blackberry/AsyncFileSystemBlackBerry.cpp:
853         * platform/graphics/Font.cpp:
854         * platform/graphics/GlyphBuffer.h:
855         * platform/graphics/Gradient.cpp:
856         * platform/graphics/ShadowBlur.cpp:
857         * platform/graphics/SimpleFontData.cpp:
858         * platform/graphics/SimpleFontData.h:
859         * platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:
860         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
861         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
862         * platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.mm:
863         * platform/graphics/avfoundation/objc/InbandTextTrackPrivateLegacyAVFObjC.mm:
864         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
865         * platform/graphics/blackberry/GradientBlackBerry.cpp:
866         * platform/graphics/blackberry/GraphicsContextBlackBerry.cpp:
867         * platform/graphics/ca/mac/PlatformCAAnimationMac.mm:
868         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
869         * platform/graphics/ca/mac/WebTileLayer.mm:
870         * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
871         * platform/graphics/cg/GraphicsContextCG.cpp:
872         * platform/graphics/cg/ImageBufferCG.cpp:
873         * platform/graphics/cg/ImageSourceCG.cpp:
874         * platform/graphics/clutter/PlatformClutterAnimation.cpp:
875         * platform/graphics/filters/ValidatedCustomFilterOperation.cpp:
876         * platform/graphics/gstreamer/GStreamerVersioning.cpp:
877         * platform/graphics/mac/GraphicsContext3DMac.mm:
878         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
879         * platform/graphics/mac/SimpleFontDataMac.mm:
880         * platform/graphics/mac/WebGLLayer.mm:
881         * platform/graphics/mac/WebLayer.mm:
882         * platform/graphics/mac/WebTiledLayer.mm:
883         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
884         * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
885         * platform/graphics/qt/GraphicsContext3DQt.cpp:
886         * platform/graphics/texmap/TextureMapper.h:
887         * platform/graphics/wince/ImageBufferWinCE.cpp:
888         * platform/mac/PasteboardMac.mm:
889         * platform/mac/ScrollAnimatorMac.mm:
890         * platform/mac/ScrollViewMac.mm:
891         * platform/mac/ScrollbarThemeMac.mm:
892         * platform/mac/SharedTimerMac.mm:
893         * platform/mac/WebCoreFullScreenPlaceholderView.mm:
894         * platform/mac/WebCoreObjCExtras.mm:
895         * platform/mac/WebFontCache.mm:
896         * platform/mac/WebVideoFullscreenController.mm:
897         * platform/mac/WebVideoFullscreenHUDWindowController.mm:
898         * platform/mac/WebWindowAnimation.mm:
899         * platform/network/blackberry/CredentialStorageBlackBerry.cpp:
900         * platform/network/cf/ResourceErrorCF.cpp:
901         * platform/network/mac/CookieStorageMac.mm:
902         * platform/network/mac/ResourceHandleMac.mm:
903         * platform/network/win/ResourceHandleWin.cpp:
904         * platform/text/TextEncodingDetectorICU.cpp:
905         * rendering/RenderFlowThread.h:
906         * rendering/RenderImage.cpp:
907         * rendering/RenderLayer.cpp:
908         * rendering/RenderObject.cpp:
909         * rendering/RenderTreeAsText.cpp:
910         * rendering/svg/RenderSVGResourceClipper.cpp:
911         * rendering/svg/RenderSVGResourceFilter.cpp:
912         * rendering/svg/RenderSVGResourceGradient.cpp:
913         * rendering/svg/RenderSVGResourceMasker.cpp:
914         * rendering/svg/SVGRenderSupport.cpp:
915         * rendering/svg/SVGTextLayoutEngineSpacing.cpp:
916         * workers/WorkerContext.cpp:
917         * workers/WorkerScriptLoader.cpp:
918         * xml/XMLHttpRequest.cpp:
919         * xml/parser/XMLDocumentParserLibxml2.cpp:
920
921 2013-05-12  Darin Adler  <darin@apple.com>
922
923         [Mac] Move clearAllData from ClipboardMac to PasteboardMac
924         https://bugs.webkit.org/show_bug.cgi?id=116001
925
926         Reviewed by Andreas Kling.
927
928         * dom/Clipboard.cpp:
929         (WebCore::Clipboard::clearAllData): Added. Calls through to Pasteboard after
930         doing the canWriteData check, which is part of DOM rules, not the platform.
931
932         * dom/Clipboard.h: Made clearAllData non-virtual in non-legacy case.
933
934         * platform/mac/ClipboardMac.h: Removed clearAllData.
935         * platform/mac/ClipboardMac.mm: Ditto.
936
937 2013-05-12  Darin Adler  <darin@apple.com>
938
939         [Mac] Move clearData from ClipboardMac to PasteboardMac
940         https://bugs.webkit.org/show_bug.cgi?id=116000
941
942         Reviewed by Andreas Kling.
943
944         * dom/Clipboard.cpp:
945         (WebCore::Clipboard::clearData): Added. Calls through to Pasteboard after
946         doing the canWriteData check, which is part of DOM rules, not the platform.
947
948         * dom/Clipboard.h: Made clearData non-virtual in non-legacy case.
949
950         * platform/Pasteboard.h: Added an overload of the clear function that takes
951         a single type and clears only that type. Also temporarily exported the
952         cocoaTypeFromHTMLClipboardType function as a static member so it can be used
953         in both ClipboardMac and PasteboardMac during the transition.
954
955         * platform/mac/ClipboardMac.h: Removed clearData.
956         * platform/mac/ClipboardMac.mm: Removed clearData.
957         (WebCore::ClipboardMac::getData): Changed to call cocoaTypeFromHTMLClipboardType
958         as a Pasteboard class static member function.
959         (WebCore::ClipboardMac::setData): Ditto.
960
961         * platform/mac/PasteboardMac.mm:
962         (WebCore::Pasteboard::cocoaTypeFromHTMLClipboardType): Moved here from
963         ClipboardMac.
964         (WebCore::Pasteboard::clear): Added. Moved here from ClipboardMac.
965
966 2013-05-12  Darin Adler  <darin@apple.com>
967
968         [Mac] Move hasData from ClipboardMac to PasteboardMac
969         https://bugs.webkit.org/show_bug.cgi?id=115999
970
971         Reviewed by Andreas Kling.
972
973         * dom/Clipboard.cpp:
974         (WebCore::Clipboard::hasData): Added. Calls through to Pasteboard.
975
976         * dom/Clipboard.h: Added LEGACY_VIRTUAL and LEGACY_PURE macros,
977         only for within this header file. These help us keep many functions
978         as pure virtual in the legacy style Clipboard class, but have them
979         be non-virtual in the normal/future style. Use LEGACY_VIRTUAL and
980         LEGACY_PURE to make the hasData member non-virtual.
981
982         * platform/Pasteboard.h: Added hasData, and added some blank lines and a FIXME.
983
984         * platform/mac/ClipboardMac.h: Removed hasData override.
985         * platform/mac/ClipboardMac.mm: Ditto.
986
987         * platform/mac/PasteboardMac.mm:
988         (WebCore::Pasteboard::hasData): Added. Moved code here from ClipboardMac.
989
990 2013-05-12  David Kilzer  <ddkilzer@apple.com>
991
992         BUILD FIX (r149971): sudden termination is a Mac-only concept
993
994         * WebCore.exp.in: Move sudden termination symbols to Mac-only
995         section.
996
997 2013-05-12  Andreas Kling  <akling@apple.com>
998
999         Node: Use FINAL instead of the non-virtual shadowing hack.
1000         <http://webkit.org/b/115995>
1001
1002         Reviewed by Anders Carlsson.
1003
1004         Decorate Element/Attr implementations of prefix/localName/namespaceURI getters with FINAL
1005         so that call sites with a more specific pointer type than Node* can avoid the virtual dispatch.
1006
1007         * dom/Attr.h:
1008         * dom/Element.h:
1009         * dom/Node.cpp:
1010         * dom/Node.h:
1011
1012 2013-05-11  Darin Adler  <darin@apple.com>
1013
1014         [Mac] Give every Clipboard an underlying Pasteboard
1015         https://bugs.webkit.org/show_bug.cgi?id=115979
1016
1017         Reviewed by Andreas Kling.
1018
1019         This is the first step in Clipboard and Pasteboard refactoring
1020         to fix the overlap and many layering violations.
1021
1022         * dom/Clipboard.cpp:
1023         (WebCore::Clipboard::Clipboard): Add an m_pasteboard data member,
1024         Mac-only for now, but eventually for all platforms.
1025         (WebCore::Clipboard::~Clipboard): No longer inline the destructor.
1026
1027         * dom/Clipboard.h: Add WTF_USE_LEGACY_STYLE_ABSTRACT_CLIPBOARD_CLASS
1028         flag, currently true for all non-Mac platforms. Make the constructor
1029         no longer inline. Added a PassOwnPtr<Pasteboard> argument to the
1030         constructor and an OwnPtr<Pasteboard> data member.
1031
1032         * platform/Pasteboard.h: Added a create function to make it easy
1033         to create a pasteboard given a pasteboard name.
1034
1035         * platform/mac/ClipboardMac.mm:
1036         (WebCore::ClipboardMac::ClipboardMac): Create a pasteboard and pass
1037         it to the Clipboard constructor.
1038
1039         * platform/mac/PasteboardMac.mm:
1040         (WebCore::Pasteboard::create): Added.
1041
1042 2013-05-12  Andreas Kling  <akling@apple.com>
1043
1044         Unload event listeners should prevent Safari from insta-killing the web process on last tab close.
1045         <http://webkit.org/b/115988>
1046         <rdar://problem/13870943>
1047
1048         Reviewed by Anders Carlsson.
1049
1050         Add two methods to Chrome (and ChromeClient):
1051
1052             - enableSuddenTermination()
1053             - disableSuddenTermination()
1054
1055         ..and call these from DOMWindow instead of the free global functions.
1056
1057         For WebKit1, it just calls the NSProcessInfo methods to keep behavior the same.
1058         For WebKit2, the new methods plumb through the information to the UI process.
1059
1060         Also updated the DOMWindow logic to think in terms of per-DOMWindow sudden termination counters
1061         instead of a process-global one, since that gets confusing in a WK2 world.
1062         When a DOMWindow transitions between having/not having unload/beforeunload event listeners,
1063         we send a notification to the Chrome.
1064
1065         * WebCore.exp.in:
1066         * WebCore.xcodeproj/project.pbxproj:
1067         * page/Chrome.h:
1068         (WebCore::Chrome::enableSuddenTermination):
1069         (WebCore::Chrome::disableSuddenTermination):
1070         * page/ChromeClient.h:
1071         (WebCore::ChromeClient::enableSuddenTermination):
1072         (WebCore::ChromeClient::disableSuddenTermination):
1073         * page/DOMWindow.cpp:
1074         (WebCore::addUnloadEventListener):
1075         (WebCore::removeUnloadEventListener):
1076         (WebCore::removeAllUnloadEventListeners):
1077         (WebCore::addBeforeUnloadEventListener):
1078         (WebCore::removeBeforeUnloadEventListener):
1079         (WebCore::removeAllBeforeUnloadEventListeners):
1080         (WebCore::DOMWindow::dispatchAllPendingBeforeUnloadEvents):
1081         (WebCore::DOMWindow::dispatchAllPendingUnloadEvents):
1082         (WebCore::DOMWindow::enableSuddenTermination):
1083         (WebCore::DOMWindow::disableSuddenTermination):
1084         * page/DOMWindow.h:
1085         (DOMWindow):
1086
1087 2013-05-12  Anders Carlsson  <andersca@apple.com>
1088
1089         Remove Complex.h from WTF
1090         https://bugs.webkit.org/show_bug.cgi?id=115989
1091
1092         Reviewed by Beth Dakin.
1093
1094         Replace Complex declarations with std::complex<double>. Pass by value since the struct
1095         is small enough to go into two registers on X86-64.
1096
1097         * Modules/webaudio/RealtimeAnalyser.cpp:
1098         (WebCore::RealtimeAnalyser::doFFTAnalysis):
1099         (WebCore::RealtimeAnalyser::getFloatFrequencyData):
1100         (WebCore::RealtimeAnalyser::getByteFrequencyData):
1101         (WebCore::RealtimeAnalyser::getByteTimeDomainData):
1102         * platform/audio/Biquad.cpp:
1103         (WebCore::Biquad::setZeroPolePairs):
1104         (WebCore::Biquad::setAllpassPole):
1105         (WebCore::Biquad::getFrequencyResponse):
1106         * platform/audio/Biquad.h:
1107         * platform/audio/FFTFrame.cpp:
1108         (WebCore::FFTFrame::interpolateFrequencyComponents):
1109         (WebCore::FFTFrame::extractAverageGroupDelay):
1110         (WebCore::FFTFrame::addConstantGroupDelay):
1111
1112 2013-05-12  Simon Fraser  <simon.fraser@apple.com>
1113
1114         Dropdowns on http://www.exploratorium.edu don't show anything
1115         https://bugs.webkit.org/show_bug.cgi?id=115991
1116
1117         Reviewed by Dan Bernstein.
1118         
1119         We can't optimize away the backing store of a layer by saying that
1120         it paints into a composited ancestor if its composited bounds are not contained
1121         by that ancestor.
1122
1123         Test: compositing/backing/no-backing-for-clip-overhang.html
1124
1125         * rendering/RenderLayerBacking.cpp:
1126         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): Pass in our 
1127         previously computed composited bounds relative to our composited ancestor,
1128         and its composited bounds.
1129         * rendering/RenderLayerCompositor.cpp:
1130         (WebCore::RenderLayerCompositor::requiresOwnBackingStore): If the ancestor's
1131         composited bounds don't contain the layer's composited bounds, the layer
1132         needs its own backing store.
1133         * rendering/RenderLayerCompositor.h:
1134
1135 2013-05-12  Commit Queue  <commit-queue@webkit.org>
1136
1137         Unreviewed, rolling out r149955.
1138         http://trac.webkit.org/changeset/149955
1139         https://bugs.webkit.org/show_bug.cgi?id=115990
1140
1141         Broke lots of tests (Requested by smfr on #webkit).
1142
1143         * WebCore.exp.in:
1144         * rendering/InlineFlowBox.h:
1145         * rendering/InlineTextBox.h:
1146         (InlineTextBox):
1147         * rendering/RenderApplet.h:
1148         * rendering/RenderBR.h:
1149         * rendering/RenderBlock.h:
1150         (RenderBlock):
1151         (WebCore::RenderBlock::virtualContinuation):
1152         (WebCore::RenderBlock::virtualChildren):
1153         (WebCore::RenderBlock::isRenderBlock):
1154         (WebCore::RenderBlock::isBlockFlow):
1155         (WebCore::RenderBlock::isInlineBlockOrInlineTable):
1156         (WebCore::RenderBlock::dirtyLinesFromChangedChild):
1157         (WebCore::RenderBlock::collapsedMarginBefore):
1158         (WebCore::RenderBlock::collapsedMarginAfter):
1159         * rendering/RenderBox.h:
1160         (WebCore::RenderBox::borderBoundingBox):
1161         (RenderBox):
1162         (WebCore::RenderBox::marginLogicalLeft):
1163         (WebCore::RenderBox::marginLogicalRight):
1164         * rendering/RenderBoxModelObject.h:
1165         (WebCore::RenderBoxModelObject::isBoxModelObject):
1166         * rendering/RenderButton.h:
1167         * rendering/RenderCombineText.h:
1168         * rendering/RenderCounter.h:
1169         * rendering/RenderDeprecatedFlexibleBox.h:
1170         * rendering/RenderDetailsMarker.h:
1171         * rendering/RenderEmbeddedObject.h:
1172         (RenderEmbeddedObject):
1173         (WebCore::RenderEmbeddedObject::isEmbeddedObject):
1174         (WebCore::RenderEmbeddedObject::virtualChildren):
1175         * rendering/RenderFieldset.h:
1176         * rendering/RenderFileUploadControl.h:
1177         * rendering/RenderFlexibleBox.h:
1178         * rendering/RenderFlowThread.h:
1179         * rendering/RenderFrame.h:
1180         * rendering/RenderFrameSet.h:
1181         * rendering/RenderFullScreen.cpp:
1182         * rendering/RenderFullScreen.h:
1183         * rendering/RenderGrid.h:
1184         * rendering/RenderHTMLCanvas.h:
1185         * rendering/RenderIFrame.h:
1186         * rendering/RenderImage.h:
1187         (RenderImage):
1188         (WebCore::RenderImage::isRenderImage):
1189         * rendering/RenderInline.h:
1190         (RenderInline):
1191         (WebCore::RenderInline::virtualContinuation):
1192         (WebCore::RenderInline::virtualChildren):
1193         (WebCore::RenderInline::isRenderInline):
1194         (WebCore::RenderInline::layout):
1195         (WebCore::RenderInline::requiresLayer):
1196         (WebCore::RenderInline::offsetWidth):
1197         (WebCore::RenderInline::offsetHeight):
1198         (WebCore::RenderInline::borderBoundingBox):
1199         (WebCore::RenderInline::dirtyLinesFromChangedChild):
1200         * rendering/RenderLayerModelObject.h:
1201         * rendering/RenderListBox.h:
1202         * rendering/RenderListItem.h:
1203         * rendering/RenderListMarker.h:
1204         * rendering/RenderMedia.h:
1205         (WebCore::RenderMedia::virtualChildren):
1206         (WebCore::RenderMedia::canHaveChildren):
1207         (WebCore::RenderMedia::isMedia):
1208         (WebCore::RenderMedia::isImage):
1209         (WebCore::RenderMedia::requiresForcedStyleRecalcPropagation):
1210         * rendering/RenderMediaControlElements.h:
1211         * rendering/RenderMenuList.h:
1212         * rendering/RenderMeter.h:
1213         * rendering/RenderMultiColumnBlock.h:
1214         * rendering/RenderMultiColumnFlowThread.h:
1215         * rendering/RenderMultiColumnSet.h:
1216         * rendering/RenderNamedFlowThread.h:
1217         * rendering/RenderPart.h:
1218         (RenderPart):
1219         (WebCore::RenderPart::isRenderPart):
1220         (WebCore::RenderPart::renderName):
1221         * rendering/RenderProgress.h:
1222         * rendering/RenderRegion.h:
1223         (WebCore::RenderRegion::isRenderRegion):
1224         * rendering/RenderRegionSet.h:
1225         * rendering/RenderReplaced.h:
1226         (RenderReplaced):
1227         (WebCore::RenderReplaced::renderName):
1228         * rendering/RenderReplica.h:
1229         * rendering/RenderRuby.h:
1230         * rendering/RenderRubyBase.h:
1231         * rendering/RenderRubyRun.h:
1232         * rendering/RenderRubyText.h:
1233         * rendering/RenderScrollbarPart.h:
1234         * rendering/RenderSearchField.h:
1235         * rendering/RenderSlider.h:
1236         * rendering/RenderSnapshottedPlugIn.h:
1237         (RenderSnapshottedPlugIn):
1238         * rendering/RenderTable.h:
1239         (RenderTable):
1240         (WebCore::RenderTable::renderName):
1241         (WebCore::RenderTable::isTable):
1242         (WebCore::RenderTable::avoidsFloats):
1243         * rendering/RenderTableCaption.h:
1244         * rendering/RenderTableCell.h:
1245         * rendering/RenderTableCol.h:
1246         * rendering/RenderTableRow.h:
1247         * rendering/RenderTableSection.h:
1248         * rendering/RenderText.h:
1249         (RenderText):
1250         (WebCore::RenderText::marginLeft):
1251         (WebCore::RenderText::marginRight):
1252         (WebCore::RenderText::styleWillChange):
1253         (WebCore::RenderText::length):
1254         (WebCore::RenderText::paint):
1255         (WebCore::RenderText::layout):
1256         * rendering/RenderTextControl.h:
1257         (RenderTextControl):
1258         (WebCore::RenderTextControl::renderName):
1259         (WebCore::RenderTextControl::isTextControl):
1260         (WebCore::RenderTextControl::avoidsFloats):
1261         * rendering/RenderTextControlMultiLine.h:
1262         * rendering/RenderTextControlSingleLine.h:
1263         (RenderTextControlSingleLine):
1264         (WebCore::RenderTextControlSingleLine::isTextField):
1265         * rendering/RenderTextFragment.h:
1266         * rendering/RenderTextTrackCue.h:
1267         * rendering/RenderVideo.h:
1268         * rendering/RenderView.h:
1269         * rendering/RenderWidget.h:
1270         (RenderWidget):
1271         (WebCore::RenderWidget::isWidget):
1272         * rendering/RenderWordBreak.h:
1273         * rendering/RootInlineBox.h:
1274         (RootInlineBox):
1275         * rendering/mathml/RenderMathMLBlock.h:
1276         * rendering/svg/RenderSVGBlock.h:
1277         (RenderSVGBlock):
1278         * rendering/svg/RenderSVGContainer.h:
1279         (WebCore::RenderSVGContainer::setNeedsBoundariesUpdate):
1280         (WebCore::RenderSVGContainer::virtualChildren):
1281         (WebCore::RenderSVGContainer::isSVGContainer):
1282         (WebCore::RenderSVGContainer::renderName):
1283         (RenderSVGContainer):
1284         (WebCore::RenderSVGContainer::objectBoundingBox):
1285         (WebCore::RenderSVGContainer::strokeBoundingBox):
1286         (WebCore::RenderSVGContainer::repaintRectInLocalCoordinates):
1287         * rendering/svg/RenderSVGEllipse.h:
1288         * rendering/svg/RenderSVGForeignObject.h:
1289         * rendering/svg/RenderSVGGradientStop.h:
1290         * rendering/svg/RenderSVGHiddenContainer.h:
1291         (WebCore::RenderSVGHiddenContainer::renderName):
1292         (RenderSVGHiddenContainer):
1293         (WebCore::RenderSVGHiddenContainer::isSVGHiddenContainer):
1294         * rendering/svg/RenderSVGImage.h:
1295         * rendering/svg/RenderSVGInline.h:
1296         (WebCore::RenderSVGInline::renderName):
1297         (WebCore::RenderSVGInline::requiresLayer):
1298         (WebCore::RenderSVGInline::isSVGInline):
1299         (RenderSVGInline):
1300         * rendering/svg/RenderSVGInlineText.h:
1301         * rendering/svg/RenderSVGModelObject.h:
1302         (WebCore::RenderSVGModelObject::requiresLayer):
1303         (RenderSVGModelObject):
1304         * rendering/svg/RenderSVGPath.h:
1305         * rendering/svg/RenderSVGRect.h:
1306         * rendering/svg/RenderSVGResourceClipper.h:
1307         * rendering/svg/RenderSVGResourceContainer.h:
1308         (RenderSVGResourceContainer):
1309         (WebCore::RenderSVGResourceContainer::isSVGResourceContainer):
1310         (WebCore::RenderSVGResourceContainer::toRenderSVGResourceContainer):
1311         * rendering/svg/RenderSVGResourceFilter.h:
1312         * rendering/svg/RenderSVGResourceFilterPrimitive.h:
1313         * rendering/svg/RenderSVGResourceGradient.h:
1314         (RenderSVGResourceGradient):
1315         (WebCore::RenderSVGResourceGradient::resourceBoundingBox):
1316         * rendering/svg/RenderSVGResourceLinearGradient.h:
1317         * rendering/svg/RenderSVGResourceMarker.h:
1318         * rendering/svg/RenderSVGResourceMasker.h:
1319         * rendering/svg/RenderSVGResourcePattern.h:
1320         * rendering/svg/RenderSVGResourceRadialGradient.h:
1321         * rendering/svg/RenderSVGRoot.h:
1322         * rendering/svg/RenderSVGShape.h:
1323         (WebCore::RenderSVGShape::setNeedsBoundariesUpdate):
1324         (WebCore::RenderSVGShape::setNeedsTransformUpdate):
1325         (WebCore::RenderSVGShape::repaintRectInLocalCoordinates):
1326         (WebCore::RenderSVGShape::localToParentTransform):
1327         (WebCore::RenderSVGShape::localTransform):
1328         (WebCore::RenderSVGShape::isSVGShape):
1329         (RenderSVGShape):
1330         (WebCore::RenderSVGShape::objectBoundingBox):
1331         (WebCore::RenderSVGShape::strokeBoundingBox):
1332         * rendering/svg/RenderSVGTSpan.h:
1333         * rendering/svg/RenderSVGText.h:
1334         * rendering/svg/RenderSVGTextPath.h:
1335         * rendering/svg/RenderSVGTransformableContainer.h:
1336         * rendering/svg/RenderSVGViewportContainer.h:
1337
1338 2013-05-12  Anders Carlsson  <andersca@apple.com>
1339
1340         Simplify AutodrainedPool
1341         https://bugs.webkit.org/show_bug.cgi?id=115986
1342
1343         Reviewed by Andreas Kling.
1344
1345         Remove calls to AutodrainedPool::cycle as well as the iteration counter passed to the constructor.
1346         Instead, just declare RAII pools where it seems necessary.
1347
1348         * Modules/webdatabase/DatabaseThread.cpp:
1349         (WebCore::DatabaseThread::databaseThread):
1350         * fileapi/FileThread.cpp:
1351         (WebCore::FileThread::runLoop):
1352         * loader/icon/IconDatabase.cpp:
1353         (WebCore::IconDatabase::setIconDataForIconURL):
1354         (WebCore::IconDatabase::performURLImport):
1355         (WebCore::IconDatabase::readFromDatabase):
1356
1357 2013-05-12  Andreas Kling  <akling@apple.com>
1358
1359         Apply FINAL to the Node hierarchy.
1360         <http://webkit.org/b/115984>
1361
1362         Mostly from Blink r149454 by <cevans@chromium.org>
1363         <http://src.chromium.org/viewvc/blink?view=revision&revision=149454>
1364
1365         A couple of the stable DOM/ microbenchmarks are perf positive on Linux clang:
1366
1367             - CloneNodes time reduced from 162.4 to 156.5 ms.
1368             - CreateNodes time reduced from 113.9 to 104.9 ms.
1369
1370         * dom/: Beat things with the FINAL stick.
1371         * html/: Ditto.
1372         * svg/: Ditto.
1373
1374 2013-05-12  Andreas Kling  <akling@apple.com>
1375
1376         Devirtualize some things on Document.
1377
1378         From Blink r149967 by <esprehn@chromium.org>
1379         <http://src.chromium.org/viewvc/blink?view=revision&revision=149967>
1380
1381         Several methods on Document are virtual but don't override a super class method
1382         and don't need to be virtual. This patch devirtualizes:
1383
1384             - createElementNS()
1385             - finishedParsing()
1386             - suspendScriptedAnimationControllerCallbacks()
1387             - resumeScriptedAnimationControllerCallbacks()
1388
1389         It also removes the suspend and resume callbacks from ScriptExecutionContext
1390         since they didn't need to be there.
1391
1392         * dom/Document.h:
1393         * dom/ScriptExecutionContext.h:
1394
1395 2013-05-12  Andreas Kling  <akling@apple.com>
1396
1397         Remove redundant call to removeAllEventListeners() in Document::open().
1398
1399         From Blink r150175 by <dcheng@chromium.org>
1400         <http://src.chromium.org/viewvc/blink?view=revision&revision=150175>
1401
1402         Document::open() already calls Document::removeAllEventListeners(), which
1403         removes the event listeners from the DOMWindow it's attached to, so
1404         there's no need to do it manually here as well.
1405
1406         * dom/Document.cpp:
1407         (WebCore::Document::open):
1408
1409 2013-05-12  Andreas Kling  <akling@apple.com>
1410
1411         Apply FINAL to the RenderObject hierarchy.
1412         <http://webkit.org/b/115977>
1413
1414         Mostly from Blink r148795 by <cevans@chromium.org>
1415         <http://src.chromium.org/viewvc/blink?view=revision&revision=148795>
1416
1417         * rendering/: Beat things with the FINAL stick.
1418         * WebCore.exp.in: Export a now-needed symbol.
1419
1420 2013-05-12  Carlos Garcia Campos  <cgarcia@igalia.com>
1421
1422         [GTK] Remove unnecessary GTK_CHECK_VERSION #ifdefs
1423         https://bugs.webkit.org/show_bug.cgi?id=115914
1424
1425         Reviewed by Martin Robinson.
1426
1427         * platform/graphics/gtk/FullscreenVideoControllerGtk.cpp:
1428         (WebCore::FullscreenVideoControllerGtk::hideHud):
1429         (WebCore::FullscreenVideoControllerGtk::initializeWindow):
1430         * platform/gtk/GtkVersioning.c:
1431         * platform/gtk/GtkVersioning.h:
1432         * platform/gtk/WidgetRenderingContext.cpp:
1433         (WebCore::WidgetRenderingContext::WidgetRenderingContext):
1434         * plugins/gtk/gtk2xtbin.c:
1435         (gtk_xtbin_realize):
1436
1437 2013-05-11  Brent Fulgham  <bfulgham@apple.com>
1438
1439         [Windows] Unreviewed build fix after r149932
1440
1441         * make-export-file-generator: Don't attempt to import
1442         (or use) non-existent cxxabi functions on Windows.
1443
1444 2013-05-11  Simon Fraser  <simon.fraser@apple.com>
1445
1446         Add more info to compositing log channel output
1447         https://bugs.webkit.org/show_bug.cgi?id=115978
1448
1449         Reviewed by Dean Jackson.
1450
1451         Add to compositing log channel output whether a layer paints
1452         into its compositing ancestor.
1453
1454         * rendering/RenderLayerCompositor.cpp:
1455         (WebCore::RenderLayerCompositor::logLayerInfo):
1456
1457 2013-05-10  Simon Fraser  <simon.fraser@apple.com>
1458
1459         REGRESSION: Fixed background on ColterReed.com scrolls
1460         https://bugs.webkit.org/show_bug.cgi?id=115951
1461
1462         Reviewed by Beth Dakin.
1463         
1464         The logic for painting the fixed root background into its own layer was
1465         broken when the document element's layer was composited. This could be caused
1466         by a negative z-index child of the body, or by an explicit compositing-causing
1467         style on the <html>.
1468         
1469         There were two issues. First, when painting the layer for the fixed root
1470         background, we would simply short-circuit the fixed background paint in
1471         RenderLayer::paintLayer(), when checking for a composited layer. We have
1472         to continue to paint through the composited <html> layer to get the root
1473         background in this case.
1474         
1475         Secondly, RenderLayerBacking::paintIntoLayer() would only set the PaintLayerPaintingSkipRootBackground
1476         flag if this RenderLayerBacking had a m_backgroundLayer. However, when the <html> is
1477         composited, we need to skip painting the root layer for both the RenderView's backing,
1478         and for the <html>'s backing. Checking whether there is *any* layer that paints
1479         the fixed root background (i.e. checking compositor()->fixedRootBackgroundLayer())
1480         is a simple way to fix this test.
1481
1482         Tests: platform/mac-wk2/tiled-drawing/fixed-background/fixed-background-composited-html.html
1483                platform/mac-wk2/tiled-drawing/fixed-background/fixed-background-negative-z-index-fixed.html
1484
1485         * rendering/RenderLayer.cpp:
1486         (WebCore::paintForFixedRootBackground):
1487         (WebCore::RenderLayer::paintLayer):
1488         * rendering/RenderLayerBacking.cpp:
1489         (WebCore::RenderLayerBacking::paintIntoLayer):
1490
1491 2013-05-11  Simon Fraser  <simon.fraser@apple.com>
1492
1493         Possible crash when going Back while loading PDF
1494         https://bugs.webkit.org/show_bug.cgi?id=115972
1495
1496         Reviewed by Dan Bernstein.
1497
1498         It's possible for m_frame to be null when Document::findUnsafeParentScrollPropagationBoundary()
1499         is called, so null-check currentFrame.
1500
1501         * dom/Document.cpp:
1502         (WebCore::Document::findUnsafeParentScrollPropagationBoundary):
1503
1504 2013-05-11  Alexey Proskuryakov  <ap@apple.com>
1505
1506         <rdar://problem/13823864> TextCodecICU complains about ambiguous codec names with current ICU release
1507         https://bugs.webkit.org/show_bug.cgi?id=115953
1508
1509         Reviewed by Darin Adler.
1510
1511         Store and use canonical converter name to create converters.
1512
1513         As a side effect, we now actually reuse cached converters - previously we would compare
1514         a standard encoding name to internal canonical one, which rarely match.
1515
1516         * platform/text/TextCodecICU.h:
1517         * platform/text/TextCodecICU.cpp:
1518         (WebCore::TextCodecICU::create): Pass canonical ICU converter name to constructor.
1519         (WebCore::TextCodecICU::registerEncodingNames): 
1520             - Updated terminology.
1521             - Added a comment that special cases should be kept in sync between registerEncodingNames
1522             and registerCodecs.
1523             - Moved maccyrillic alias to a correct section. It's not present in ICU even today.
1524             - Changed a few aliases to actually map to standard name, not to an overridden one
1525             (this doesn't change behavior since addToTextEncodingNameMap looks up canonical
1526             name, but is clearer).
1527         (WebCore::TextCodecICU::registerCodecs): Store a converter name to use with each
1528         canonical encoding name.
1529         (WebCore::TextCodecICU::TextCodecICU): Ditto.
1530         (WebCore::TextCodecICU::releaseICUConverter): Reset the converter to remove any
1531         leftover data.
1532         (WebCore::TextCodecICU::createICUConverter): 
1533             - Compare converter name to converter name, not to another alias name.
1534             - Use proper string comparison instead of pointer comparison.
1535             - When creating a converter, assert that the name is not ambigous - canonical
1536             converter names should never be, otherwise there would be no way to create
1537             the converter without ambiguity.
1538
1539 2013-05-11  Antoine Quint  <graouts@apple.com>
1540
1541         [Mac] The captions menu should not use a canned max-width and max-height
1542         https://bugs.webkit.org/show_bug.cgi?id=115968
1543
1544         Reviewed by Eric Carlson.
1545
1546         Use more real estate to display the captions menu should the caption names
1547         be long.
1548
1549         * css/mediaControlsQuickTime.css:
1550         (video::-webkit-media-controls-closed-captions-container):
1551         (video::-webkit-media-controls-closed-captions-track-list):
1552         Make the captions menu scale to a max-width and max-height to allow 4px
1553         above and below the menu, except on the right where it always aligns with
1554         the captions icon in the media controller.
1555         * html/shadow/MediaControlsApple.cpp:
1556         (WebCore::MediaControlsApple::createControls):
1557         Move the captions menu element to be a child of the controls instead of
1558         the panel such that it may scale relative to the controls when using %
1559         CSS values.
1560
1561 2013-05-11  Jochen Eisinger  <jochen@chromium.org>
1562
1563         Disallow a window to focus itself via javascript URLs or using target _self
1564         https://bugs.webkit.org/show_bug.cgi?id=115906
1565
1566         Reviewed by Geoffrey Garen.
1567
1568         Test: fast/dom/Window/window-focus-self.html
1569
1570         * loader/FrameLoader.cpp:
1571         (WebCore::createWindow):
1572         * page/DOMWindow.cpp:
1573         (WebCore::DOMWindow::focus):
1574
1575 2013-05-11  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1576
1577         Fix several style warnings in generated bindings
1578         https://bugs.webkit.org/show_bug.cgi?id=115961
1579
1580         Reviewed by Kentaro Hara.
1581
1582         Fix several style errors in the bindings generated under
1583         Source/WebCore/bindings/scripts/test/
1584
1585         No new tests, no behavior change.
1586
1587         * bindings/scripts/CodeGeneratorCPP.pm:
1588         (GenerateImplementation):
1589         (WriteData):
1590         * bindings/scripts/CodeGeneratorJS.pm:
1591         (GenerateHeader):
1592         (GenerateImplementation):
1593         (WriteData):
1594         * bindings/scripts/CodeGeneratorObjC.pm:
1595         (GenerateHeader):
1596         * bindings/scripts/test/CPP/WebDOMFloat64Array.cpp:
1597         * bindings/scripts/test/CPP/WebDOMTestActiveDOMObject.cpp:
1598         * bindings/scripts/test/CPP/WebDOMTestCallback.cpp:
1599         * bindings/scripts/test/CPP/WebDOMTestCustomNamedGetter.cpp:
1600         * bindings/scripts/test/CPP/WebDOMTestEventConstructor.cpp:
1601         * bindings/scripts/test/CPP/WebDOMTestEventTarget.cpp:
1602         * bindings/scripts/test/CPP/WebDOMTestException.cpp:
1603         * bindings/scripts/test/CPP/WebDOMTestInterface.cpp:
1604         * bindings/scripts/test/CPP/WebDOMTestMediaQueryListListener.cpp:
1605         * bindings/scripts/test/CPP/WebDOMTestNamedConstructor.cpp:
1606         * bindings/scripts/test/CPP/WebDOMTestNode.cpp:
1607         * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
1608         * bindings/scripts/test/CPP/WebDOMTestOverloadedConstructors.cpp:
1609         * bindings/scripts/test/CPP/WebDOMTestSerializedScriptValueInterface.cpp:
1610         * bindings/scripts/test/CPP/WebDOMTestTypedefs.cpp:
1611         * bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
1612         (WebCore::toJS):
1613         * bindings/scripts/test/JS/JSTestActiveDOMObject.h:
1614         (WebCore::JSTestActiveDOMObject::releaseImplIfNotNull):
1615         * bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
1616         (WebCore::toJS):
1617         * bindings/scripts/test/JS/JSTestCustomNamedGetter.h:
1618         (WebCore::JSTestCustomNamedGetter::releaseImplIfNotNull):
1619         * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
1620         (WebCore::toJS):
1621         * bindings/scripts/test/JS/JSTestEventConstructor.h:
1622         (WebCore::JSTestEventConstructor::releaseImplIfNotNull):
1623         * bindings/scripts/test/JS/JSTestEventTarget.cpp:
1624         (WebCore::toJS):
1625         * bindings/scripts/test/JS/JSTestEventTarget.h:
1626         (WebCore::JSTestEventTarget::releaseImplIfNotNull):
1627         * bindings/scripts/test/JS/JSTestException.cpp:
1628         (WebCore::toJS):
1629         * bindings/scripts/test/JS/JSTestException.h:
1630         (WebCore::JSTestException::releaseImplIfNotNull):
1631         * bindings/scripts/test/JS/JSTestInterface.cpp:
1632         (WebCore::toJS):
1633         * bindings/scripts/test/JS/JSTestInterface.h:
1634         (WebCore::JSTestInterface::releaseImplIfNotNull):
1635         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
1636         (WebCore::toJS):
1637         * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
1638         (WebCore::JSTestMediaQueryListListener::releaseImplIfNotNull):
1639         * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
1640         (WebCore::toJS):
1641         * bindings/scripts/test/JS/JSTestNamedConstructor.h:
1642         (WebCore::JSTestNamedConstructor::releaseImplIfNotNull):
1643         * bindings/scripts/test/JS/JSTestObj.cpp:
1644         (WebCore::toJS):
1645         * bindings/scripts/test/JS/JSTestObj.h:
1646         (WebCore::JSTestObj::releaseImplIfNotNull):
1647         * bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
1648         (WebCore::toJS):
1649         * bindings/scripts/test/JS/JSTestOverloadedConstructors.h:
1650         (WebCore::JSTestOverloadedConstructors::releaseImplIfNotNull):
1651         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
1652         (WebCore::toJS):
1653         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
1654         (WebCore::JSTestSerializedScriptValueInterface::releaseImplIfNotNull):
1655         * bindings/scripts/test/JS/JSTestTypedefs.cpp:
1656         (WebCore::toJS):
1657         * bindings/scripts/test/JS/JSTestTypedefs.h:
1658         (WebCore::JSTestTypedefs::releaseImplIfNotNull):
1659         * bindings/scripts/test/ObjC/DOMFloat64ArrayInternal.h:
1660         (WebCore):
1661         * bindings/scripts/test/ObjC/DOMTestActiveDOMObjectInternal.h:
1662         (WebCore):
1663         * bindings/scripts/test/ObjC/DOMTestCallbackInternal.h:
1664         (WebCore):
1665         * bindings/scripts/test/ObjC/DOMTestCustomNamedGetterInternal.h:
1666         (WebCore):
1667         * bindings/scripts/test/ObjC/DOMTestEventConstructorInternal.h:
1668         (WebCore):
1669         * bindings/scripts/test/ObjC/DOMTestEventTargetInternal.h:
1670         (WebCore):
1671         * bindings/scripts/test/ObjC/DOMTestExceptionInternal.h:
1672         (WebCore):
1673         * bindings/scripts/test/ObjC/DOMTestInterfaceInternal.h:
1674         (WebCore):
1675         * bindings/scripts/test/ObjC/DOMTestMediaQueryListListenerInternal.h:
1676         (WebCore):
1677         * bindings/scripts/test/ObjC/DOMTestNamedConstructorInternal.h:
1678         (WebCore):
1679         * bindings/scripts/test/ObjC/DOMTestNodeInternal.h:
1680         (WebCore):
1681         * bindings/scripts/test/ObjC/DOMTestObjInternal.h:
1682         (WebCore):
1683         * bindings/scripts/test/ObjC/DOMTestOverloadedConstructorsInternal.h:
1684         (WebCore):
1685         * bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterfaceInternal.h:
1686         (WebCore):
1687         * bindings/scripts/test/ObjC/DOMTestTypedefsInternal.h:
1688         (WebCore):
1689
1690 2013-05-11  Anders Carlsson  <andersca@apple.com>
1691
1692         Make it a build error to put invalid C++ symbol names in WebCore.exp.in
1693         https://bugs.webkit.org/show_bug.cgi?id=115958
1694
1695         Reviewed by Andreas Kling.
1696
1697         While invalid C++ symbols will eventually show up as a link error since the symbol won't be found,
1698         this makes it easier to catch invalid symbols inside of #ifdefs.
1699
1700         * make-export-file-generator:
1701         Try to demangle C++ symbols before printing them.
1702
1703 2013-05-11  David Kilzer  <ddkilzer@apple.com>
1704
1705         BUILD FIX (r149718): Move exported symbol into ENABLE(FULLSCREEN_API) section
1706
1707         Fixes the following build failure when ENABLE(FULLSCREEN_API) is
1708         off:
1709
1710             Undefined symbols for architecture i386:
1711               "__ZNK7WebCore7Element25containsFullScreenElementEv", referenced from:
1712                  -exported_symbol[s_list] command line option
1713
1714         * WebCore.exp.in: Move the symbol.
1715
1716 2013-05-11  Robert Hogan  <robert@webkit.org>
1717
1718         Unreviewed, remove some lint accidentally left in r149929.
1719
1720         * rendering/InlineFlowBox.cpp:
1721         (WebCore::verticalAlignApplies):
1722
1723 2013-03-17  Robert Hogan  <robert@webkit.org>
1724
1725         Text flow broken in elements with vertical align top/bottom and inline elements taller than line-height
1726         https://bugs.webkit.org/show_bug.cgi?id=111974
1727
1728         Reviewed by Ryosuke Niwa.
1729         
1730         Per http://www.w3.org/TR/CSS2/visudet.html#propdef-vertical-align 'vertical-align' only applies to inline and table-cell
1731         elements.
1732
1733         Test: fast/css/vertical-align-block-elements.html
1734
1735         * rendering/InlineFlowBox.cpp:
1736         (WebCore::isTextInBlockElement):
1737         (WebCore):
1738         (WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
1739         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
1740         (WebCore::InlineFlowBox::placeBoxesInBlockDirection):
1741
1742 2013-05-11  Benjamin Poulain  <bpoulain@apple.com>
1743
1744         Make CanvasStyle a plain object instead of an RefCounted object
1745         https://bugs.webkit.org/show_bug.cgi?id=115775
1746
1747         Reviewed by Andreas Kling.
1748
1749         CanvasStyle is just 2 words wide. We do not gain anything from allocating
1750         it on the heap. Change the object to be just a type and some data.
1751
1752         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
1753         (WebCore::toJS):
1754         (WebCore::toHTMLCanvasStyle):
1755         * html/HTMLCanvasElement.cpp:
1756         * html/canvas/CanvasRenderingContext2D.cpp:
1757         (WebCore::CanvasRenderingContext2D::State::State):
1758         (WebCore::CanvasRenderingContext2D::setStrokeStyle):
1759         (WebCore::CanvasRenderingContext2D::setFillStyle):
1760         (WebCore::CanvasRenderingContext2D::setStrokeColor):
1761         (WebCore::CanvasRenderingContext2D::setFillColor):
1762         (WebCore::CanvasRenderingContext2D::fullCanvasCompositedFill):
1763         (WebCore::CanvasRenderingContext2D::drawTextInternal):
1764         * html/canvas/CanvasRenderingContext2D.h:
1765         (WebCore::CanvasRenderingContext2D::strokeStyle):
1766         (CanvasRenderingContext2D):
1767         (WebCore::CanvasRenderingContext2D::fillStyle):
1768         (State):
1769         * html/canvas/CanvasStyle.cpp:
1770         (WebCore::CanvasStyle::CanvasStyle):
1771         (WebCore::CanvasStyle::createFromString):
1772         (WebCore::CanvasStyle::createFromStringWithOverrideAlpha):
1773         (WebCore::CanvasStyle::isEquivalentColor):
1774         (WebCore):
1775         (WebCore::CanvasStyle::operator=):
1776         (WebCore::CanvasStyle::applyStrokeColor):
1777         (WebCore::CanvasStyle::applyFillColor):
1778         * html/canvas/CanvasStyle.h:
1779         (CanvasStyle):
1780         (WebCore::CanvasStyle::isValid):
1781         (WebCore::CanvasStyle::CanvasStyle):
1782         (WebCore):
1783         (WebCore::CanvasStyle::operator=):
1784
1785 2013-05-11  Benjamin Poulain  <benjamin@webkit.org>
1786
1787         Gradient::platformGradient: Vector reserveCapacity -> reserveInitialCapacity
1788         https://bugs.webkit.org/show_bug.cgi?id=115779
1789
1790         Reviewed by Andreas Kling.
1791
1792         * platform/graphics/cg/GradientCG.cpp:
1793         (WebCore::Gradient::platformGradient): Clang is surprisingly smart at removing
1794         all the branches of this function. Remove two more with reserveInitialCapacity.
1795
1796 2013-05-10  Alexey Proskuryakov  <ap@apple.com>
1797
1798         <rdar://problem/13666412> Clean up some edge cases of URL parsing.
1799         https://bugs.webkit.org/show_bug.cgi?id=104919
1800
1801         Reviewed by Darin Adler.
1802
1803         Test: fast/url/segments-userinfo-vs-host.html
1804
1805         * page/SecurityOrigin.cpp:
1806         (WebCore::schemeRequiresHost):
1807         (WebCore::shouldTreatAsUniqueOrigin):
1808         Updated function name and comments (host is not the same as authority). We still
1809         need this check - KURL can still produce http URLs with an empty host (even as this
1810         patch reduces the number of such cases). So can Gecko and current draft of URL
1811         Standard.
1812         It would be good to have a guarantee that such useless URLs can not come out of
1813         URL parser, as relying on downstream code re-parsing the URL correctly would be fragile.
1814
1815         * platform/KURL.cpp:
1816         (WebCore::hostPortIsEmptyButCredentialsArePresent): Updated an argument name for
1817         correctness.
1818         (WebCore::KURL::parse):
1819         1. Reverted behavior changes from <http://trac.webkit.org/changeset/82181> - I could
1820         find no reason to allow "@" in hostnames, and having a URL like this re-parsed by
1821         a different parser would likely produce different results. It's better to just treat
1822         these edge case URLs as invalid.
1823         2. When hostname component is a lone colon, preserve it in parsed URL string,
1824         as otherwise path would get pushed in its place when re-parsing.
1825         3. When authority component is a lone colon, don't forget to "//" after scheme, too.
1826         4. Added some assertions about contents of authority component, to catch potential
1827         mis-parsing earlier.
1828
1829 2013-05-10  Alexey Proskuryakov  <ap@apple.com>
1830
1831         Make TextCodecICU not depend on TextEncoding
1832         https://bugs.webkit.org/show_bug.cgi?id=115848
1833
1834         Reviewed by Darin Adler.
1835
1836         * platform/text/TextCodecICU.cpp:
1837         (WebCore::TextCodecICU::create):
1838         (WebCore::TextCodecICU::TextCodecICU):
1839         (WebCore::TextCodecICU::createICUConverter):
1840         (WebCore::TextCodecICU::decode):
1841         (WebCore::TextCodecICU::encode):
1842         * platform/text/TextCodecICU.h:
1843         Use a plain encoding string in platform encoder wrapper, not a higher level concept.
1844
1845 2013-05-10  Laszlo Gombos  <l.gombos@samsung.com>
1846
1847         Remove Mac OS X Leopard (10.5) support
1848         https://bugs.webkit.org/show_bug.cgi?id=107964
1849
1850         Reviewed by Ryosuke Niwa.
1851
1852         Removed the code for 10.5 and removed if-def for 10.6.
1853
1854         No new tests, covered by existing tests.
1855
1856         * platform/LocalizedStrings.cpp:
1857         (WebCore::contextMenuItemTagLookUpInDictionary):
1858         * platform/graphics/cg/GraphicsContextCG.cpp:
1859         * platform/mac/EmptyProtocolDefinitions.h:
1860         * platform/mac/NSScrollerImpDetails.h:
1861         * platform/mac/WebCoreSystemInterface.h:
1862         * platform/text/mac/HyphenationMac.mm:
1863
1864 2013-05-10  Laszlo Gombos  <l.gombos@samsung.com>
1865
1866         Remove USE(OS_RANDOMNESS)
1867         https://bugs.webkit.org/show_bug.cgi?id=108095
1868
1869         Reviewed by Darin Adler.
1870
1871         Remove the USE(OS_RANDOMNESS) guard as it is turned on for all
1872         ports.
1873
1874         No new tests as this is covered by existing tests.
1875
1876         * page/Crypto.cpp:
1877         (WebCore::Crypto::getRandomValues):
1878         * platform/UUID.cpp:
1879         (WebCore::createCanonicalUUIDString):
1880
1881 2013-05-10  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1882
1883         Remove [NoInterfaceObject] from several WebAudio IDL interfaces
1884         https://bugs.webkit.org/show_bug.cgi?id=115894
1885
1886         Reviewed by Darin Adler.
1887
1888         Several WebAudio IDL interfaces had [NoInterfaceObject] extended attribute set,
1889         meaning that there was no corresponding attribute on the global window object.
1890         This behavior is not according to the specification:
1891         https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html
1892
1893         This patch removes the [NoInterfaceObject] extended attribute where needed to
1894         match the specification.
1895
1896         No new tests, already covered by existing tests.
1897
1898         * Modules/webaudio/AnalyserNode.idl:
1899         * Modules/webaudio/AudioBuffer.idl:
1900         * Modules/webaudio/AudioBufferSourceNode.idl:
1901         * Modules/webaudio/AudioDestinationNode.idl:
1902         * Modules/webaudio/AudioListener.idl:
1903         * Modules/webaudio/AudioNode.idl:
1904         * Modules/webaudio/AudioParam.idl:
1905         * Modules/webaudio/BiquadFilterNode.idl:
1906         * Modules/webaudio/ChannelMergerNode.idl:
1907         * Modules/webaudio/ChannelSplitterNode.idl:
1908         * Modules/webaudio/ConvolverNode.idl:
1909         * Modules/webaudio/DelayNode.idl:
1910         * Modules/webaudio/DynamicsCompressorNode.idl:
1911         * Modules/webaudio/GainNode.idl:
1912         * Modules/webaudio/MediaElementAudioSourceNode.idl:
1913         * Modules/webaudio/MediaStreamAudioDestinationNode.idl:
1914         * Modules/webaudio/MediaStreamAudioSourceNode.idl:
1915         * Modules/webaudio/OscillatorNode.idl:
1916         * Modules/webaudio/ScriptProcessorNode.idl:
1917         * Modules/webaudio/WaveShaperNode.idl:
1918         * Modules/webaudio/WaveTable.idl:
1919
1920 2013-05-10  Simon Fraser  <simon.fraser@apple.com>
1921
1922         REGRESSION (r145680): No box shadow rendered on element with positioned child that obscures it
1923         https://bugs.webkit.org/show_bug.cgi?id=115840
1924
1925         Reviewed by Antti Koivisto.
1926         
1927         In r107836, we moved some box-shadow painting into the paintFillLayer code for performance.
1928         However, in r145680 we started to skip background painting when we know the background is
1929         obscured. This broke shadow painting in some cases.
1930         
1931         Fix by always painting the background fill layers if we know that they will also
1932         paint the shadow.
1933
1934         Test: fast/box-shadow/box-shadow-obscured-backgrounds.html
1935
1936         * rendering/RenderBox.cpp:
1937         (WebCore::RenderBox::paintBackground):
1938
1939 2013-05-10  Simon Fraser  <simon.fraser@apple.com>
1940
1941         REGRESSION (r143626): Element shows as garbage in image gallery
1942         https://bugs.webkit.org/show_bug.cgi?id=115946
1943
1944         Reviewed by Antti Koivisto.
1945         
1946         RenderLayer::backgroundIsKnownToBeOpaqueInRect() used hasVisibleContent()
1947         to check whether the layer's content was hidden via the visibility property.
1948         However, this assumed that a passing hasVisibleContent() check meant that the
1949         entire area was covered by the renderers and layers checked layer.
1950         
1951         This is not always true. It's possible to have a visibility:hidden layer
1952         with a non-covering visbility:visible child, or even a single RenderText
1953         child that happens to have visibility:visible style. In these situations,
1954         hasVisibleContent() returns true but the entire area is not painted.
1955         
1956         So we have to fall back to on a more conservative check using the
1957         visibility style, which will give is a reliable answer for the current layer.
1958
1959         Tests: compositing/contents-opaque/hidden-with-visible-child.html
1960                compositing/contents-opaque/hidden-with-visible-text.html
1961
1962         * rendering/RenderLayer.cpp:
1963         (WebCore::RenderLayer::backgroundIsKnownToBeOpaqueInRect):
1964
1965 2013-05-10  Simon Fraser  <simon.fraser@apple.com>
1966
1967         Garbage down left side of nytimes.com page (if subscriber)
1968         https://bugs.webkit.org/show_bug.cgi?id=115839
1969
1970         Reviewed by Antti Koivisto.
1971         
1972         RenderLayer::backgroundIsKnownToBeOpaqueInRect() would incorrectly return true
1973         for layers where the given rect wasn't contained in the background rect, but
1974         where some child layer obscured the rect, even though clipping hid part
1975         of that child layer.
1976         
1977         So bail from RenderLayer::backgroundIsKnownToBeOpaqueInRect() if we have
1978         any overflow clipping. This could be enhanced in future to test whether child
1979         layers obscure the clipping rect, but that would be more expensive.
1980
1981         Test: compositing/contents-opaque/overflow-hidden-child-layers.html
1982
1983         * rendering/RenderLayer.cpp:
1984         (WebCore::RenderLayer::backgroundIsKnownToBeOpaqueInRect):
1985
1986 2013-05-10  Eric Carlson  <eric.carlson@apple.com>
1987
1988         In-band captions not visible immediately after track mode change
1989         https://bugs.webkit.org/show_bug.cgi?id=115922
1990
1991         Reviewed by Dean Jackson.
1992
1993         Test: media/track/track-in-band-mode.html
1994
1995         * html/HTMLMediaElement.cpp:
1996         (WebCore::HTMLMediaElement::textTrackModeChanged): Add cues for all loaded tracks, regardless
1997             of track type.
1998
1999 2013-05-10  Timothy Hatcher  <timothy@apple.com>
2000
2001         Web Inspector: determine the resource type in InspectorResourceAgent::willSendRequest.
2002
2003         This allows the Network timeline and Resources sidebar to filter Resources earlier,
2004         before the server sends a response. Useful for long polling (comet) XHRs.
2005
2006         https://webkit.org/b/74935
2007         rdar://problem/13726105
2008
2009         Reviewed by Joseph Pecoraro.
2010
2011         * inspector/Inspector.json:
2012         (Network.requestWillBeSent): Added.
2013         * inspector/InspectorResourceAgent.cpp:
2014         (WebCore::InspectorResourceAgent::willSendRequest): Send the type if it isn't Other along in requestWillBeSent.
2015         (WebCore::InspectorResourceAgent::didReceiveResponse): Don't determine the type here anymore. Clear the CachedResource
2016         if isNotModified like the old code path did by not setting cachedResource if !isNotModified.
2017
2018 2013-05-10  Laszlo Gombos  <l.gombos@samsung.com>
2019
2020         [CMake] Consolidate list of files to build for WebCore plugin support
2021         https://bugs.webkit.org/show_bug.cgi?id=104429
2022
2023         Reviewed by Rob Buis.
2024
2025         Move the common files to support plugins and the logic for disabling
2026         plugins) to CMakeLists.txt from PlatformXXX.cmake.
2027
2028         No new tests as there is no new functionality.
2029
2030         * CMakeLists.txt:
2031         * PlatformBlackBerry.cmake:
2032         * PlatformEfl.cmake:
2033         * PlatformWinCE.cmake:
2034
2035 2013-05-10  Robert Hogan  <robert@webkit.org>
2036
2037         REGRESSION(r148121): Empty Span does not get a linebox when it's in an anonymous block
2038         https://bugs.webkit.org/show_bug.cgi?id=115818
2039
2040         Reviewed by David Hyatt.
2041
2042         r148121 only worried about split inlines inside anonymous blocks - it ought to have 
2043         catered for empty inlines, with no continuations, inside a single solitary anonymous block too.
2044
2045         Test: fast/inline/anonymous-block-with-empty-inline.html
2046
2047         * rendering/RenderBlockLineLayout.cpp:
2048         (WebCore::hasInlineDirectionBordersPaddingOrMargin):
2049
2050 2013-05-10  Zan Dobersek  <zdobersek@igalia.com>
2051
2052         [GTK] Remove unnecessary includes in WidgetGtk.cpp
2053         https://bugs.webkit.org/show_bug.cgi?id=115912
2054
2055         Reviewed by Andreas Kling.
2056
2057         No new tests - no new functionality.
2058
2059         * platform/gtk/WidgetGtk.cpp: Remove the unnecessary includes of the Chrome.h, Frame.h, FrameView.h,
2060         Page.h and RenderObject.h headers as the included declarations are not used anywhere. ScrollView.h is
2061         included instead as it is required and was previously included by one of the removed header inclusions.
2062
2063 2013-05-10  Zan Dobersek  <zdobersek@igalia.com>
2064
2065         [Cairo] Remove the unnecessary ImageData.h include in ImageBufferCairo.cpp
2066         https://bugs.webkit.org/show_bug.cgi?id=115911
2067
2068         Reviewed by Carlos Garcia Campos.
2069
2070         No new tests - no new functionality.
2071
2072         * platform/graphics/cairo/ImageBufferCairo.cpp: Remove the ImageData.h include
2073         as the included declarations are not used anywhere.
2074
2075 2013-05-10  Zan Dobersek  <zdobersek@igalia.com>
2076
2077         [Cairo] Remove the unnecessary CSSParser.h include in GradientCairo.cpp
2078         https://bugs.webkit.org/show_bug.cgi?id=115910
2079
2080         Reviewed by Laszlo Gombos.
2081
2082         No new tests - no new functionality.
2083
2084         * platform/graphics/cairo/GradientCairo.cpp: Remove the CSSParser.h include
2085         as the included declarations are not used anywhere.
2086
2087 2013-05-10  Dean Jackson  <dino@apple.com>
2088
2089         Include tab character as a word end for kerning
2090         https://bugs.webkit.org/show_bug.cgi?id=115915
2091         <rdar://problem/13861491>
2092
2093         Reviewed by Enrica Casucci.
2094
2095         This is a follow-up to https://bugs.webkit.org/show_bug.cgi?id=112507
2096         which only looked for a space character as a word end. It should
2097         look for tab characters too.
2098
2099         Test: fast/text/word-space-with-kerning-4.html
2100
2101         * rendering/RenderBlockLineLayout.cpp:
2102         (WebCore::setLogicalWidthForTextRun): Look for '\t'.
2103
2104 2013-05-10  Anders Carlsson  <andersca@apple.com>
2105
2106         Remove EventTracer
2107         https://bugs.webkit.org/show_bug.cgi?id=115916
2108
2109         Reviewed by Sam Weinig.
2110
2111         EventTracer is dead code, remove it.
2112
2113         * CMakeLists.txt:
2114         * GNUmakefile.list.am:
2115         * Target.pri:
2116         * WebCore.vcproj/WebCore.vcproj:
2117         * WebCore.vcxproj/WebCore.vcxproj:
2118         * WebCore.vcxproj/WebCore.vcxproj.filters:
2119         * WebCore.xcodeproj/project.pbxproj:
2120         * platform/EventTracer.cpp: Removed.
2121         * platform/EventTracer.h: Removed.
2122
2123 2013-05-10  Zan Dobersek  <zdobersek@igalia.com>
2124
2125         [GTK] Generated files are regenerated always
2126         https://bugs.webkit.org/show_bug.cgi?id=115908
2127
2128         Reviewed by Carlos Garcia Campos.
2129
2130         No new tests - no change in functionality.
2131
2132         * GNUmakefile.am: Don't treat the window constructors IDL file as a dependency of the JavaScriptCore bindings.
2133         The file is generated during the IDL preprocessing, and the JSC bindings already depend on that step through
2134         the idl_supplemental_dependencies file. Because of that the window constructors IDL file has a phony target
2135         which seems to confuse the bindings generation rule into thinking that a complete regeration of the bindings is required.
2136
2137 2013-05-10  Andreas Kling  <akling@apple.com>
2138
2139         Caching of generated images in CSS should be smarter.
2140         <http://webkit.org/b/115902>
2141         <rdar://problem/13542727>
2142
2143         Reviewed by Antti Koivisto.
2144
2145         Add an IntSize => GeneratorGeneratedImage cache at the CSSImageGeneratorValue level.
2146
2147         CSSGradientValue is currently the only CSSImageGeneratorValue subclass that makes use of the cache.
2148         Generated images are kept for 3 seconds after last use.
2149
2150         The main problem with the previous approach was that background renderers (e.g <body>, <tr>, etc)
2151         would be passed to multiple CSSImageGeneratorValue::getImage() calls with different sizes requested
2152         for each of the descendent renderers that inherit their background from the same parent.
2153         The cache wasn't smart enough for this, it just thought the background renderer was changing size
2154         a lot, and would regenerate the image over and over.
2155
2156         We already had caching of intermediate image buffers for GeneratorGeneratedImage::drawPattern().
2157         This removes the eviction timer from that cache so that the intermediate images can live a bit longer.
2158
2159         (WebCore::CSSImageGeneratorValue::cachedImageForSize):
2160         (WebCore::CSSImageGeneratorValue::saveCachedImageForSize):
2161
2162             Renamed from getImage() and putImage().
2163
2164         (WebCore::CSSImageGeneratorValue::evictCachedGeneratedImage):
2165         (WebCore::CSSImageGeneratorValue::CachedGeneratedImage::CachedGeneratedImage):
2166         (WebCore::CSSImageGeneratorValue::CachedGeneratedImage::evictionTimerFired):
2167
2168             Let the CachedGeneratedImage throw itself out from cache when the timer fires.
2169
2170         * css/CSSImageGeneratorValue.h:
2171         (CachedGeneratedImage):
2172
2173             Exactly what it sounds like. These go into CSSImageGeneratorValue::m_images with the size
2174             as the hash key.
2175
2176         * platform/graphics/GeneratorGeneratedImage.cpp:
2177         (WebCore::GeneratorGeneratedImage::drawPattern):
2178         * platform/graphics/GeneratorGeneratedImage.h:
2179         (WebCore::GeneratorGeneratedImage::~GeneratorGeneratedImage):
2180         (WebCore::GeneratorGeneratedImage::GeneratorGeneratedImage):
2181
2182             Keep the intermediate image for drawPattern() until destruction instead of dropping it on
2183             a timer. These objects are now evicted by the CSSImageGeneratorValue's image cache
2184             after 3 seconds of disuse rather than kept for the lifetime of the renderer.
2185
2186         * css/CSSCanvasValue.cpp:
2187         (WebCore::CSSCanvasValue::canvasChanged):
2188         (WebCore::CSSCanvasValue::canvasResized):
2189         * css/CSSCrossfadeValue.cpp:
2190         (WebCore::CSSCrossfadeValue::crossfadeChanged):
2191         * rendering/style/StyleGeneratedImage.cpp:
2192         (WebCore::StyleGeneratedImage::addClient):
2193         * css/CSSImageGeneratorValue.cpp:
2194         (WebCore::CSSImageGeneratorValue::addClient):
2195         (WebCore::CSSImageGeneratorValue::removeClient):
2196
2197             CSSImageGeneratorValue::m_clients is now a HashCountedSet<RenderObject*>, tweak accordingly.
2198
2199 2013-05-10  Anders Carlsson  <andersca@apple.com>
2200
2201         Remove MemoryUsageSupport class
2202         https://bugs.webkit.org/show_bug.cgi?id=115913
2203
2204         Reviewed by Andreas Kling.
2205
2206         MemoryUsageSupport was just used by a single call site in InspectorTimelineAgent,
2207         and the function called always returns zero on all platforms! Remove it.
2208
2209         * CMakeLists.txt:
2210         * GNUmakefile.list.am:
2211         * Target.pri:
2212         * WebCore.vcproj/WebCore.vcproj:
2213         * WebCore.vcxproj/WebCore.vcxproj:
2214         * WebCore.vcxproj/WebCore.vcxproj.filters:
2215         * WebCore.xcodeproj/project.pbxproj:
2216         * inspector/InspectorMemoryAgent.cpp:
2217         * inspector/InspectorTimelineAgent.cpp:
2218         (WebCore):
2219         (WebCore::InspectorTimelineAgent::setNativeHeapStatistics):
2220         * platform/MemoryUsageSupport.cpp: Removed.
2221         * platform/MemoryUsageSupport.h: Removed.
2222         * platform/qt/MemoryUsageSupportQt.cpp: Removed.
2223
2224 2013-05-10  Ryosuke Niwa  <rniwa@webkit.org>
2225
2226         REGRESSION (r149652): Videos do not play on cnn.com, just black box
2227         https://bugs.webkit.org/show_bug.cgi?id=115887
2228
2229         Reviewed by Antti Koivisto.
2230
2231         The bug was caused by window and document named item maps counting the same element twice
2232         when it has the same id and name attribute values. Fixed the bug by avoiding to add or remove
2233         an element per id and name attribute updates when it had already been added or removed by
2234         name and id attribute updates respectively.
2235
2236         We do this by checking whether the other attribute affects the element's precense in window
2237         and document named item maps and avoiding to add or remove the attribute when they do and
2238         the other attribute is present in updateId and updateName.
2239
2240         Consider a scenario when an object element has id "foo", and name attribute is about to be also
2241         set to "foo". If the id attribute doesn't affect element's presense in window or document
2242         named item maps, we're done. If it does, then the maps already have this element so we don't
2243         want to add it again. Conversely, if the element already has id and name attributes set to
2244         "foo", and we're moving the id attribute, then we want to remove the element from the maps only
2245         if the id doesn't affect the presence of the element in the maps.
2246
2247         Unfortuntely, this logic doesn't work when we're inserting or removing an element on its entirely
2248         because updateId and updateName are called when both id and name attributes are present so skip
2249         this step (AlwaysUpdateHTMLDocumentNamedItemMaps) for the id attribute to break the symmetry.
2250
2251         Test: fast/dom/HTMLDocument/image-with-same-id-and-name.html
2252               fast/dom/HTMLDocument/object-with-same-id-and-name.html
2253
2254         * dom/Element.cpp:
2255         (WebCore::Element::insertedInto): Call updateId and updateName with
2256         AlwaysUpdateHTMLDocumentNamedItemMaps.
2257         (WebCore::Element::removedFrom): Ditto.
2258         (WebCore::Element::updateName): Don't add or remove this element if the id attribute has already
2259         done so except when we're inserting, removing, or cloning an element.
2260         (WebCore::Element::updateId): Ditto for the name attribute.
2261         (WebCore::Element::cloneAttributesFromElement): Added a comment and assert that we never call this
2262         function when this element is in the document. We can't update window and documemt named item
2263         maps here because image element's id attribute value, for example, is present in the document's
2264         named item map if it has a name attribute. Since this function calls updateId and updateName
2265         before updating attributes, this check is going to fail in DocumentNameCollection's
2266         nodeMatchesIfIdAttributeMatch and bad things will happen.
2267
2268         * dom/Element.h:
2269
2270         * editing/ReplaceNodeWithSpanCommand.cpp:
2271         (WebCore::swapInNodePreservingAttributesAndChildren): Clone children and attributes before
2272         inserting the swapped span to avoid hitting the assertion in cloneAttributesFromElement we added.
2273
2274         * html/HTMLImageElement.cpp:
2275         (WebCore::HTMLImageElement::parseAttribute):
2276
2277         * html/HTMLObjectElement.cpp:
2278         (WebCore::HTMLObjectElement::updateDocNamedItem):
2279
2280 2013-05-09  Dean Jackson  <dino@apple.com>
2281
2282         Don't trust character widths for internal OS X fonts in form controls
2283         https://bugs.webkit.org/show_bug.cgi?id=115883
2284         <rdar://problem/13817757>
2285
2286         Reviewed by Darin Adler.
2287
2288         We ignore the character width for a bunch of fonts when predicting
2289         the width of a form control. Some of the internal fonts in OS X are
2290         not in the ignored list. Rather than add them, simply test for
2291         fonts whose family begins with a period character ".".
2292
2293         * rendering/RenderTextControl.cpp:
2294         (WebCore::RenderTextControl::hasValidAvgCharWidth): Return false for
2295             any family that starts with "."
2296
2297 2013-05-10  Carlos Garcia Campos  <cgarcia@igalia.com>
2298
2299         [GTK] Remove unnecessary GLIB_CHECK_VERSION #ifdefs
2300         https://bugs.webkit.org/show_bug.cgi?id=115904
2301
2302         Reviewed by Martin Robinson.
2303
2304         * bindings/gobject/WebKitDOMEventTarget.cpp:
2305         * platform/gtk/GtkVersioning.c:
2306         * platform/gtk/GtkVersioning.h:
2307
2308 2013-05-10  Zoltan Arvai  <zarvai@inf.u-szeged.hu>
2309
2310         Unreviewed. Fix the ENABLE(SHARED_WORKERS) build after r149864.
2311
2312         * workers/SharedWorkerThread.cpp: include "SecurityOrigin.h"
2313
2314 2013-05-10  Claudio Saavedra  <csaavedra@igalia.com>
2315
2316         Fix build after r149864.
2317
2318         Unreviewed build fix.
2319
2320         * loader/ThreadableLoader.h: include <wtf/text/AtomicString.h>
2321         when building with RESOURCE_TIMING enabled.
2322
2323 2013-05-10  Anders Carlsson  <andersca@apple.com>
2324
2325         Fix build.
2326
2327         * bindings/js/ScriptController.cpp:
2328
2329 2013-05-10  Anders Carlsson  <andersca@apple.com>
2330
2331         Remove ScriptInstance.h
2332         https://bugs.webkit.org/show_bug.cgi?id=115900
2333
2334         Reviewed by Andreas Kling.
2335
2336         Remove yet another abstraction now that we don't support V8.
2337
2338         * GNUmakefile.list.am:
2339         * WebCore.vcproj/WebCore.vcproj:
2340         * WebCore.vcxproj/WebCore.vcxproj:
2341         * WebCore.vcxproj/WebCore.vcxproj.filters:
2342         * WebCore.xcodeproj/project.pbxproj:
2343         * bindings/js/ScriptController.h:
2344         (Bindings):
2345         (ScriptController):
2346         * bindings/js/ScriptControllerMac.mm:
2347         (WebCore::ScriptController::createScriptInstanceForWidget):
2348         * bindings/js/ScriptInstance.h: Removed.
2349         * html/HTMLPlugInElement.cpp:
2350         (WebCore::HTMLPlugInElement::getInstance):
2351         * html/HTMLPlugInElement.h:
2352         (Bindings):
2353         (HTMLPlugInElement):
2354         * platform/graphics/wince/MediaPlayerProxy.h:
2355         (WebMediaPlayerProxy):
2356         * rendering/RenderEmbeddedObject.cpp:
2357         * rendering/RenderSnapshottedPlugIn.cpp:
2358
2359 2013-05-10  Anders Carlsson  <andersca@apple.com>
2360
2361         Unreviewed, rolling out r149866.
2362         http://trac.webkit.org/changeset/149866
2363         https://bugs.webkit.org/show_bug.cgi?id=115898
2364
2365         Broke tests
2366
2367         * dom/Document.cpp:
2368         (WebCore::Document::setDomain):
2369         (WebCore::Document::initSecurityContext):
2370         * page/SecurityOrigin.cpp:
2371         (WebCore::SecurityOrigin::SecurityOrigin):
2372         (WebCore::SecurityOrigin::isolatedCopy):
2373         (WebCore::SecurityOrigin::setDomainFromDOM):
2374         (WebCore::SecurityOrigin::grantUniversalAccess):
2375         * page/SecurityOrigin.h:
2376         (SecurityOrigin):
2377
2378 2013-05-10  Andrei Bucur  <abucur@adobe.com>
2379
2380         Remove overflow dead code
2381         https://bugs.webkit.org/show_bug.cgi?id=115893
2382
2383         Reviewed by Antti Koivisto.
2384
2385         The patch removes unused public overflow accesor functions from RenderOverflow and InlineFlowBox.
2386
2387         Tests: no tests, code cleanup.
2388
2389         * rendering/InlineFlowBox.h: Removed logicalLeftLayoutOverflow and logicalRightLayoutOverflow.
2390         * rendering/RenderOverflow.h: Removed setMinYLayoutOverflow, setMaxYLayoutOverflow,
2391             setMinXLayoutOverflow, setMaxXLayoutOverflow, setMinYVisualOverflow, setMaxYVisualOverflow,
2392             setMinXVisualOverflow and setMaxXVisualOverflow.
2393
2394 2013-05-10  Anders Carlsson  <andersca@apple.com>
2395
2396         Begin making SecurityOrigin immutable
2397         https://bugs.webkit.org/show_bug.cgi?id=115898
2398
2399         Reviewed by Andreas Kling.
2400
2401         Replace SecurityOrigin::setDomainFromDOM and SecurityOrigin::grantUniversalAccess with
2402         member functions that return new SecurityOrigin objects.
2403
2404         * dom/Document.cpp:
2405         (WebCore::Document::setDomain):
2406         Update the security origin to one returned by copyWithDomainSetFromDOM.
2407     
2408         (WebCore::Document::initSecurityContext):
2409         Set the security origin to one returned by copyWithUniversalAccessGranted().
2410
2411         * page/SecurityOrigin.cpp:
2412         (WebCore::SecurityOrigin::SecurityOrigin):
2413         Add a new constructor that takes all the member variables as parameters. This is a little unwieldy at the moment,
2414         but all the boolean parameters could be replaced by a bitmask of flags.
2415
2416         (WebCore::SecurityOrigin::isolatedCopy):
2417         Call the new constructor.
2418
2419         (WebCore::SecurityOrigin::copyWithDomainSetFromDOM):
2420         Return a new security origin with m_domainWasSetInDOM set to true and the domain updated.
2421
2422         (WebCore::SecurityOrigin::copyWithUniversalAccessGranted):
2423         Return a new security origin with m_universalAccess set to true.
2424
2425 2013-05-10  Anders Carlsson  <andersca@apple.com>
2426
2427         Remove ScriptController::updateSecurityOrigin
2428         https://bugs.webkit.org/show_bug.cgi?id=115895
2429
2430         Reviewed by Antti Koivisto.
2431
2432         ScriptController::updateSecurityOrigin is just dead code now that the V8 bindings are gone.
2433
2434         * bindings/js/ScriptController.cpp:
2435         * bindings/js/ScriptController.h:
2436         * dom/Document.cpp:
2437         (WebCore::Document::setIsViewSource):
2438         (WebCore::Document::setDomain):
2439         * dom/Document.h:
2440         (Document):
2441         * dom/SecurityContext.cpp:
2442         (WebCore::SecurityContext::enforceSandboxFlags):
2443         * dom/SecurityContext.h:
2444         (SecurityContext):
2445
2446 2013-05-10  Anders Carlsson  <andersca@apple.com>
2447
2448         Stop including SecurityOrigin.h where unnecessary
2449         https://bugs.webkit.org/show_bug.cgi?id=115897
2450
2451         Reviewed by Antti Koivisto.
2452
2453         Move rarely called functions out of line so headers don't have to include SecurityOrigin.h
2454
2455         * Modules/indexeddb/IDBFactoryBackendImpl.h:
2456         * Modules/webdatabase/DatabaseBackendBase.cpp:
2457         (WebCore::DatabaseBackendBase::databaseDebugName):
2458         * Modules/webdatabase/DatabaseBackendBase.h:
2459         (DatabaseBackendBase):
2460         * Modules/webdatabase/DatabaseSync.h:
2461         * bindings/js/JSDOMWindowCustom.h:
2462         * html/parser/XSSAuditor.cpp:
2463         * loader/ThreadableLoader.cpp:
2464         (WebCore::ThreadableLoaderOptions::ThreadableLoaderOptions):
2465         (WebCore::ThreadableLoaderOptions::~ThreadableLoaderOptions):
2466         (WebCore::ThreadableLoader::create):
2467         * loader/ThreadableLoader.h:
2468         (ThreadableLoaderOptions):
2469         * loader/WorkerThreadableLoader.cpp:
2470         * workers/DedicatedWorkerContext.cpp:
2471         * workers/DedicatedWorkerThread.cpp:
2472         * workers/SharedWorkerContext.cpp:
2473         * workers/WorkerThread.cpp:
2474         * workers/WorkerThread.h:
2475
2476 2013-05-10  Carlos Garcia Campos  <cgarcia@igalia.com>
2477
2478         Unreviewed. Fix GTK+ build after r149839.
2479
2480         * platform/gtk/RenderThemeGtk3.cpp:
2481         (WebCore::gtkStyleChangedCallback):
2482
2483 2013-05-09  Chris Fleizach  <cfleizach@apple.com>
2484
2485         AX: VoiceOver is no longer seeing items in poorly formed tables
2486         https://bugs.webkit.org/show_bug.cgi?id=115837
2487
2488         Reviewed by Darin Adler.
2489
2490         In case the author didn't include the rows of a table as the 
2491         direct children, a table needs to dive down its descendant chain
2492         until the rows are found. 
2493
2494         I also took the opportunity to clean up a bit around what the different
2495         meanings of table are in the accessibility classes.
2496
2497         Test: accessibility/poorly-formed-aria-table.html
2498
2499         * accessibility/AccessibilityARIAGrid.cpp:
2500         (WebCore::AccessibilityARIAGrid::addRowDescendant):
2501         (WebCore::AccessibilityARIAGrid::addChildren):
2502         * accessibility/AccessibilityARIAGrid.h:
2503         (AccessibilityARIAGrid):
2504         * accessibility/AccessibilityARIAGridRow.cpp:
2505         (WebCore::AccessibilityARIAGridRow::parentTable):
2506         (WebCore):
2507         * accessibility/AccessibilityARIAGridRow.h:
2508         (AccessibilityARIAGridRow):
2509         * accessibility/AccessibilityObject.h:
2510         (WebCore::AccessibilityObject::isTable):
2511         * accessibility/AccessibilityTable.h:
2512         (AccessibilityTable):
2513         (WebCore::AccessibilityTable::isTable):
2514         (WebCore::toAccessibilityTable):
2515         * accessibility/AccessibilityTableRow.cpp:
2516         (WebCore::AccessibilityTableRow::parentTable):
2517
2518 2013-05-09  Yael Aharon  <yael.aharon@intel.com>
2519
2520         REGRESSION: Disabled multiline select element now responds to (certain) clicks
2521         https://bugs.webkit.org/show_bug.cgi?id=115710
2522
2523         Reviewed by Kent Tamura.
2524
2525         After http://trac.webkit.org/changeset/140286, select elements can scroll whether they
2526         are disabled or not. While they scroll, they also change the selected item.
2527         This patch allows the select element to scroll, but does not change the selection
2528         if the select element is disabled.        
2529
2530         Test: fast/forms/select/listbox-disabled-scroll-no-onchange.html
2531         Test: fast/forms/select/listbox-disabled-no-autoscroll.html
2532
2533         * rendering/RenderListBox.cpp:
2534         (WebCore::RenderListBox::autoscroll):
2535         * rendering/RenderListBox.cpp:
2536         (WebCore::RenderListBox::stopAutoscroll):
2537
2538 2013-05-09  Anders Carlsson  <andersca@apple.com>
2539
2540         Clean up SecurityOrigin::databaseIdentifier
2541         https://bugs.webkit.org/show_bug.cgi?id=115882
2542
2543         Reviewed by Beth Dakin.
2544
2545         Remove m_encodedHost and just call encodeHost from databaseIdentifier().
2546         Also, use a StringBuilder when constructing the database identifier to avoid allocating
2547         temporary String objects over and over.
2548
2549         * page/SecurityOrigin.cpp:
2550         (WebCore::SecurityOrigin::SecurityOrigin):
2551         (WebCore):
2552         (WebCore::SecurityOrigin::createFromDatabaseIdentifier):
2553         (WebCore::SecurityOrigin::databaseIdentifier):
2554         * page/SecurityOrigin.h:
2555         (SecurityOrigin):
2556
2557 2013-05-09  Anders Carlsson  <andersca@apple.com>
2558
2559         Remove m_securityOrigin from XMLHttpRequest
2560         https://bugs.webkit.org/show_bug.cgi?id=115881
2561
2562         Reviewed by Alexey Proskuryakov.
2563
2564         The security origin passed to XMLHttpRequest::create was always null, so just get rid of the member variable completely.
2565
2566         * xml/XMLHttpRequest.cpp:
2567         (WebCore::XMLHttpRequest::create):
2568         (WebCore::XMLHttpRequest::XMLHttpRequest):
2569         (WebCore::XMLHttpRequest::securityOrigin):
2570         * xml/XMLHttpRequest.h:
2571         (XMLHttpRequest):
2572
2573 2013-05-09  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2574
2575         [NoInterfaceObject] extended attribute should be removed for several interfaces
2576         https://bugs.webkit.org/show_bug.cgi?id=115852
2577
2578         Reviewed by Benjamin Poulain.
2579
2580         Remove [NoInterfaceObject] extended attribute from the following Web IDL
2581         interfaces: SecurityPolicy, History, Location, Navigator, Performance,
2582         PerformanceEntry, PerformanceMark, PerformanceMeasure, PerformanceNavigation,
2583         PerformanceResourceTiming, PerformanceTiming and Screen.
2584
2585         These interfaces should not have the [NoInterfaceObject] extended attribute
2586         according to their respective specifications:
2587         - http://www.w3.org/html/wg/drafts/html/master/browsers.html#the-history-interface
2588         - http://www.w3.org/html/wg/drafts/html/master/browsers.html#the-location-interface
2589         - https://dvcs.w3.org/hg/content-security-policy/raw-file/tip/csp-specification.dev.html#securitypolicy
2590         - http://www.w3.org/html/wg/drafts/html/master/webappapis.html#the-navigator-object
2591         - http://www.w3.org/TR/navigation-timing/#performance
2592         - https://dvcs.w3.org/hg/webperf/raw-file/tip/specs/PerformanceTimeline/Overview.html#sec-PerformanceEntry-interface
2593         - http://www.w3.org/TR/navigation-timing/#performancenavigation
2594         - http://www.w3.org/TR/navigation-timing/#performancetiming
2595         - http://www.w3.org/TR/user-timing/#performancemark
2596         - http://www.w3.org/TR/user-timing/#performancemeasure
2597         - http://www.w3c-test.org/webperf/specs/ResourceTiming/#performanceresourcetiming
2598         - http://dev.w3.org/csswg/cssom-view/#the-screen-interface
2599
2600         The new behavior is consistent with the specifications, Firefox and soon Blink.
2601
2602         No new tests, already covered by existing tests.
2603
2604         * page/DOMSecurityPolicy.idl:
2605         * page/History.idl:
2606         * page/Location.idl:
2607         * page/Navigator.idl:
2608         * page/Performance.idl:
2609         * page/PerformanceEntry.idl:
2610         * page/PerformanceMark.idl:
2611         * page/PerformanceMeasure.idl:
2612         * page/PerformanceNavigation.idl:
2613         * page/PerformanceResourceTiming.idl:
2614         * page/PerformanceTiming.idl:
2615         * page/Screen.idl:
2616
2617 2013-05-09  Robert Hogan  <robert@webkit.org>
2618
2619         REGRESSION (Safari 3-Safari 4): Replaced element with percent height in table has incorrect height
2620         https://bugs.webkit.org/show_bug.cgi?id=26394
2621
2622         Reviewed by David Hyatt.
2623
2624         Text controls or any object that has scrollable content should not flex inside a table cell. 
2625         This makes our behaviour the same as IE, FF and Opera (Presto).
2626
2627         * rendering/RenderTableSection.cpp:
2628         (WebCore::RenderTableSection::layoutRows):
2629
2630 2013-05-09  Anders Carlsson  <andersca@apple.com>
2631
2632         Build fix.
2633
2634         * WebCore.exp.in:
2635
2636 2013-05-09  Anders Carlsson  <andersca@apple.com>
2637
2638         Add a StorageStrategy hook for creating transient local storage namespaces
2639         https://bugs.webkit.org/show_bug.cgi?id=115870
2640
2641         Reviewed by Geoffrey Garen.
2642
2643         * WebCore.exp.in:
2644         Export symbol needed by WebKit2.
2645         
2646         * dom/Document.cpp:
2647         (WebCore::Document::topOrigin):
2648         * dom/Document.h:
2649         * dom/ScriptExecutionContext.h:
2650         * workers/WorkerContext.h:
2651         Remove const qualifier from topOrigin() to avoid ugly const_casts when assigning into a RefPtr<SecurityOrigin> variable.
2652
2653         * page/PageGroup.cpp:
2654         (WebCore::PageGroup::transientLocalStorage):
2655         Do a single hash lookup instead of three and use the SecurityOrigin itself as the hash key instead of a string representation of it.
2656
2657         * page/PageGroup.h:
2658         Update HashMap declaration.
2659
2660         * storage/StorageNamespace.cpp:
2661         (WebCore::StorageNamespace::transientLocalStorageNamespace):
2662         Add new implementation that will optionally call out to the storage strategy.
2663
2664         * storage/StorageNamespaceImpl.cpp:
2665         (WebCore::StorageNamespaceImpl::transientLocalStorageNamespace):
2666         Move the default implementation here from PageGroup.
2667         
2668         * storage/StorageStrategy.cpp:
2669         (WebCore::StorageStrategy::transientLocalStorageNamespace):
2670         Call the default implementation.
2671
2672 2013-05-09  Enrica Casucci  <enrica@apple.com>
2673
2674         A change in system environment should force all CSS properties to be recomputed.
2675         https://bugs.webkit.org/show_bug.cgi?id=115872
2676         <rdar://problem/13781171>
2677
2678         Reviewed by Antti Koivisto.
2679
2680         When a change in the global environment occurs, for example system colors,
2681         we need to make sure all the CSS properties are recomputed and not fetched
2682         from the cache. For this reason we invalidate the properties cache.
2683         I've also renamed the function to give it a more meaningful name.
2684         
2685         * page/Page.cpp:
2686         (WebCore::Page::updateStyleForAllPagesAfterGlobalChangeInEnvironment):
2687         * page/Page.h:
2688         * rendering/RenderTheme.cpp:
2689         (WebCore::RenderTheme::platformColorsDidChange):
2690
2691 2013-05-09  Antti Koivisto  <antti@apple.com>
2692
2693         Reoptimize free-standing :focus/link/visited/-webkit-any-link selectors.
2694         <http://webkit.org/b/115590>
2695
2696         Reviewed by Darin Adler.
2697
2698         Common pseudo selectors should go into their respective rule buckets instead of ending up in the universal one.
2699
2700         * css/RuleSet.cpp:
2701         (WebCore::RuleSet::findBestRuleSetAndAdd):
2702         
2703             Check tag selectors with * local name (usually created for namespace) for a suitable narrower bucket too.
2704
2705 2013-05-09  Darin Adler  <darin@apple.com>
2706
2707         RenderQuote has giant function for language to quotes map
2708         https://bugs.webkit.org/show_bug.cgi?id=115807
2709
2710         Reviewed by Anders Carlsson.
2711
2712         * rendering/RenderQuote.cpp:
2713         (WebCore::RenderQuote::RenderQuote): Updated for m_isAttached name change.
2714         (WebCore::RenderQuote::~RenderQuote): Updated for name change, and also split
2715         assertion with && in it into two separate assertions.
2716         (WebCore::checkNumberOfDistinctQuoteCharacters): Added. Helper function that is used
2717         to check that the number of distinct quote characters is small enough to fit into
2718         our fixed size array below.
2719         (WebCore::quotesForLanguage): Replaces the old quotesDataLanguageMap function.
2720         Returns a pointer to a struct that contains the four quote characters. This new
2721         function doesn't have the massive amount of code that the old one did. We use the
2722         standard library bsearch function to do a binary search.
2723         (WebCore::stringForQuoteCharacter): Added. This returns a string for a given quote
2724         character; one string for any given character.
2725         (WebCore::quotationMarkString): Added. Returns the string for the quotation mark.
2726         (WebCore::apostropheStringImpl): Added. Returns the string for the apostrophe.
2727         (WebCore::RenderQuote::originalText): Rewrote this to include all the logic that
2728         used to be in the quotesData function.
2729         (WebCore::RenderQuote::attachQuote): Tweak assertions as above. Removed unneeded
2730         special case for the first quote in a RenderView; sharing the code is better and
2731         there is no significant performance difference. Also use m_isAttached directly
2732         when looking at predecessores so there is no need for an isAttached function.
2733         (WebCore::RenderQuote::detachQuote): Updated assertions and for name change.
2734         (WebCore::RenderQuote::updateDepth): Ditto.
2735
2736         * rendering/RenderQuote.h: Removed unneeded includes. Marked the class FINAL since
2737         we call the originalText function in the class and we don't want to do a virtual
2738         function dispatch for that. Removed uneeded const from an argument. Removed a
2739         stray semicolon. Removed the quotesData and isAttached functions, since they are no
2740         longer needed. Renamed m_attached to m_isAttached.
2741
2742         * rendering/style/QuotesData.cpp: Removed the overload of QuotesData::create that
2743         takes four quote strings. This was only used to build up the quotes table.
2744         * rendering/style/QuotesData.h: Ditto.
2745
2746 2013-05-09  Max Feil  <mfeil@rim.com>
2747
2748         shouldUsePluginDocument() needs to be respected when a document is created
2749         https://bugs.webkit.org/show_bug.cgi?id=110308
2750
2751         Reviewed by Rob Buis.
2752
2753         In DOMImplementation::createDocument() we should create
2754         a PluginDocument for mime types that return "true" for
2755         shouldAlwaysUsePluginDocument(), even if there is no pluginData
2756         for them. This lets a client choose plugins for which the "missing
2757         plugin" text or icon should appear more consistently. Otherwise
2758         plugins referenced by iFrames will be treated as an HTMLDocument,
2759         possibly resulting in binary files rendered as gibberish text.
2760
2761         Layout test platform/blackberry/plugins/swf-as-src-of-iframe.html
2762
2763         * dom/DOMImplementation.cpp:
2764         (WebCore::DOMImplementation::createDocument):
2765
2766 2013-05-09  Timothy Hatcher  <timothy@apple.com>
2767
2768         Fix an exception when hovering native functions while paused in the debugger.
2769
2770         https://webkit.org/b/115866
2771         rdar://problem/13681982
2772
2773         Reviewed by Darin Adler and Joseph Pecoraro.
2774
2775         * inspector/InjectedScriptSource.js:
2776         (InjectedScript.prototype.getFunctionDetails): Return an error if the details
2777         is null or undefined.
2778
2779 2013-05-09  Darin Adler  <darin@apple.com>
2780
2781         [Mac] CFError leak under Objective-C garbage collection
2782         https://bugs.webkit.org/show_bug.cgi?id=115862
2783
2784         Reviewed by Benjamin Poulain.
2785
2786         * platform/network/mac/ResourceErrorMac.mm:
2787         (WebCore::ResourceError::nsError): Use adoptCF instead of adoptNS since
2788         the CFError needs a CFRelease, not an -[NSObject release].
2789
2790 2013-05-09  Alberto Garcia  <agarcia@igalia.com>
2791
2792         BlackBerry: fix call to PluginLayerWebKitThread::setHolePunchRect()
2793         https://bugs.webkit.org/show_bug.cgi?id=114953
2794
2795         Reviewed by Rob Buis.
2796
2797         data->layer needs a cast in order to call setHolePunchRect().
2798
2799         * plugins/blackberry/NPCallbacksBlackBerry.cpp:
2800         (WebCore::npSetHolePunchHandler):
2801
2802 2013-05-09  Mike Fenton  <mifenton@rim.com>
2803
2804         [BlackBerry] Style updates required based on new check-webkit-style
2805         https://bugs.webkit.org/show_bug.cgi?id=115857
2806
2807         Reviewed by Rob Buis.
2808
2809         Update WebCore/platform/graphics BlackBerry sources
2810         to match check-webkit-style updates.
2811
2812         Internally reviewed by Jakob Petsovits.
2813
2814         * platform/graphics/blackberry/CanvasLayerWebKitThread.cpp:
2815         * platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp:
2816         (WebCore::GraphicsContext3D::readPixelsIMG):
2817         (WebCore::GraphicsContext3D::paintToCanvas):
2818         * platform/graphics/blackberry/GraphicsLayerBlackBerry.cpp:
2819         (WebCore::GraphicsLayerBlackBerry::updateLayerPosition):
2820         * platform/graphics/blackberry/IntRectBlackBerry.cpp:
2821         (WebCore::IntRect::IntRect):
2822         * platform/graphics/blackberry/LayerCompositingThread.h:
2823         (WTF::::deref):
2824         * platform/graphics/blackberry/LayerFilterRenderer.cpp:
2825         (WebCore::LayerFilterRenderer::initializeSharedGLObjects):
2826         (WebCore::LayerFilterRenderer::actionsForOperations):
2827         (WebCore::LayerFilterRenderer::applyActions):
2828         * platform/graphics/blackberry/LayerRenderer.cpp:
2829         (WebCore::LayerRenderer::setViewport):
2830         (WebCore::LayerRenderer::compositeBuffer):
2831         (WebCore::LayerRenderer::drawColor):
2832         (WebCore::LayerRenderer::compositeLayersRecursive):
2833         * platform/graphics/blackberry/LayerWebKitThread.cpp:
2834         (WebCore::LayerWebKitThread::setFrame):
2835         * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
2836         (WebCore::MediaPlayerPrivate::play):
2837         (WebCore::MediaPlayerPrivate::waitMetadataTimerFired):
2838         * platform/image-decoders/blackberry/JPEGImageDecoder.cpp:
2839         (WebCore::JPEGImageDecoder::JPEGImageDecoder):
2840
2841 2013-05-09  Mike Fenton  <mifenton@rim.com>
2842
2843         [BlackBerry] Style updates required based on new check-webkit-style
2844         https://bugs.webkit.org/show_bug.cgi?id=115857
2845
2846         Reviewed by Rob Buis.
2847
2848         Update WebCore/platform/network/blackberry
2849         to match check-webkit-style updates.
2850
2851         * platform/network/blackberry/NetworkJob.cpp:
2852         (WebCore::NetworkJob::initialize):
2853         (WebCore::NetworkJob::handleSetCookieHeader):
2854         (WebCore::NetworkJob::sendResponseIfNeeded):
2855         (WebCore::NetworkJob::shouldSendClientData):
2856         * platform/network/blackberry/NetworkJob.h:
2857         (NetworkJob):
2858         * platform/network/blackberry/NetworkManager.cpp:
2859         (WebCore::NetworkManager::startJob):
2860         * platform/network/blackberry/rss/RSSFilterStream.cpp:
2861         (WebCore::isRSSContent):
2862         (WebCore::transcode):
2863
2864 2013-05-09  Mike Fenton  <mifenton@rim.com>
2865
2866         [BlackBerry] Style updates required based on new check-webkit-style
2867         https://bugs.webkit.org/show_bug.cgi?id=115857
2868
2869         Reviewed by Rob Buis.
2870
2871         Update WebCore/platform/blackberry to match check-webkit-style updates.
2872
2873         No functional changes.
2874
2875         * platform/blackberry/CookieDatabaseBackingStore/CookieDatabaseBackingStore.h:
2876         * platform/blackberry/CookieManager.cpp:
2877         (WebCore::CookieManager::getRawCookies):
2878         * platform/blackberry/CookieMap.h:
2879         (WebCore::CookieMap::count):
2880         * platform/blackberry/CookieParser.cpp:
2881         (WebCore::CookieParser::parseOneCookie):
2882         * platform/blackberry/LoggingBlackBerry.cpp:
2883         * platform/blackberry/PageClientBlackBerry.h:
2884         (Platform):
2885         (Graphics):
2886         (WebCore):
2887         * platform/blackberry/ParsedCookie.cpp:
2888         (WebCore::ParsedCookie::appendWebCoreCookie):
2889         * platform/blackberry/RenderThemeBlackBerry.cpp:
2890         (WebCore::RenderThemeBlackBerry::paintSearchFieldCancelButton):
2891         (WebCore::RenderThemeBlackBerry::paintButton):
2892         (WebCore::RenderThemeBlackBerry::paintSliderThumb):
2893         * platform/blackberry/SSLKeyGeneratorBlackBerry.cpp:
2894         (WebCore::signedPublicKeyAndChallengeString):
2895         * platform/blackberry/ScrollAnimatorBlackBerry.h:
2896
2897 2013-05-09  Chris Rogers  <crogers@google.com>
2898
2899         Require use of AudioBus::create() to avoid ref-counting issues
2900         https://bugs.webkit.org/show_bug.cgi?id=115836
2901
2902         Reviewed by Andreas Kling.
2903
2904         There were a couple of places still embedding raw AudioBus objects as
2905         member variables or local variables causing ref-counting problems
2906         now that AudioBus is ref-counted.  Make AudioBus constructor private
2907         to enforce use of AudioBus::create().
2908
2909         Adapted from Blink patch:
2910         https://chromiumcodereview.appspot.com/14628008/
2911
2912         * Modules/webaudio/AudioDestinationNode.h:
2913         (WebCore::AudioDestinationNode::LocalAudioInputProvider::LocalAudioInputProvider):
2914         (WebCore::AudioDestinationNode::LocalAudioInputProvider::set):
2915         (WebCore::AudioDestinationNode::LocalAudioInputProvider::provideInput):
2916         (LocalAudioInputProvider):
2917         * Modules/webaudio/AudioNodeInput.cpp:
2918         (WebCore::AudioNodeInput::AudioNodeInput):
2919         (WebCore::AudioNodeInput::updateInternalBus):
2920         * Modules/webaudio/AudioNodeOutput.cpp:
2921         (WebCore::AudioNodeOutput::AudioNodeOutput):
2922         (WebCore::AudioNodeOutput::updateInternalBus):
2923         * Modules/webaudio/AudioParam.cpp:
2924         (WebCore::AudioParam::calculateFinalValues):
2925         * Modules/webaudio/ConvolverNode.cpp:
2926         (WebCore::ConvolverNode::setBuffer):
2927         * Modules/webaudio/MediaStreamAudioDestinationNode.cpp:
2928         (WebCore::MediaStreamAudioDestinationNode::MediaStreamAudioDestinationNode):
2929         (WebCore::MediaStreamAudioDestinationNode::process):
2930         * Modules/webaudio/MediaStreamAudioDestinationNode.h:
2931         * Modules/webaudio/OfflineAudioDestinationNode.cpp:
2932         (WebCore::OfflineAudioDestinationNode::OfflineAudioDestinationNode):
2933         * Modules/webaudio/ScriptProcessorNode.cpp:
2934         (WebCore::ScriptProcessorNode::ScriptProcessorNode):
2935         (WebCore::ScriptProcessorNode::process):
2936         * Modules/webaudio/ScriptProcessorNode.h:
2937         (ScriptProcessorNode):
2938         * platform/audio/AudioBus.cpp:
2939         (WebCore::AudioBus::create):
2940         (WebCore):
2941         (WebCore::AudioBus::AudioBus):
2942         (WebCore::AudioBus::createBufferFromRange):
2943         (WebCore::AudioBus::createBySampleRateConverting):
2944         (WebCore::AudioBus::createByMixingToMono):
2945         * platform/audio/AudioBus.h:
2946         (AudioBus):
2947         * platform/audio/AudioFIFO.cpp:
2948         (WebCore::AudioFIFO::AudioFIFO):
2949         (WebCore::AudioFIFO::consume):
2950         (WebCore::AudioFIFO::push):
2951         * platform/audio/AudioFIFO.h:
2952         (AudioFIFO):
2953         * platform/audio/AudioPullFIFO.cpp:
2954         (WebCore::AudioPullFIFO::AudioPullFIFO):
2955         (WebCore::AudioPullFIFO::fillBuffer):
2956         * platform/audio/AudioPullFIFO.h:
2957         (AudioPullFIFO):
2958         * platform/audio/AudioResampler.cpp:
2959         (WebCore::AudioResampler::AudioResampler):
2960         (WebCore::AudioResampler::configureChannels):
2961         * platform/audio/MultiChannelResampler.cpp:
2962         * platform/audio/Reverb.cpp:
2963         (WebCore::Reverb::initialize):
2964         * platform/audio/SincResampler.cpp:
2965         (WebCore::SincResampler::consumeSource):
2966         (WebCore):
2967         * platform/audio/gstreamer/AudioDestinationGStreamer.cpp:
2968         (WebCore::AudioDestinationGStreamer::AudioDestinationGStreamer):
2969         * platform/audio/gstreamer/AudioDestinationGStreamer.h:
2970         (AudioDestinationGStreamer):
2971         * platform/audio/gstreamer/AudioFileReaderGStreamer.cpp:
2972         (WebCore::AudioFileReader::createBus):
2973         * platform/audio/ios/AudioDestinationIOS.cpp:
2974         (WebCore::AudioDestinationIOS::AudioDestinationIOS):
2975         (WebCore::AudioDestinationIOS::render):
2976         * platform/audio/ios/AudioDestinationIOS.h:
2977         (AudioDestinationIOS):
2978         * platform/audio/mac/AudioDestinationMac.cpp:
2979         (WebCore::AudioDestinationMac::AudioDestinationMac):
2980         (WebCore::AudioDestinationMac::render):
2981         * platform/audio/mac/AudioDestinationMac.h:
2982         (AudioDestinationMac):
2983         * platform/audio/mac/AudioFileReaderMac.cpp:
2984         (WebCore::AudioFileReader::createBus):
2985
2986 2013-05-09  Alberto Garcia  <agarcia@igalia.com>
2987
2988         [BlackBerry] Upstream the input popups
2989         https://bugs.webkit.org/show_bug.cgi?id=114608
2990
2991         Reviewed by Rob Buis.
2992
2993         This patch contains contributions from many members of the
2994         BlackBerry WebKit team, including:
2995
2996         Chris Hutten-Czapski
2997         David Hoon
2998         Jessica Cao
2999         Rob Buis
3000         Tiancheng Jiang
3001
3002         * Resources/blackberry/colorControlBlackBerry.css: Added.
3003         (.color-picker-popup-area):
3004         (.color-picker-content):
3005         (.color-picker-block):
3006         (#color-picker-swatch-block):
3007         (.color-picker-switcher):
3008         (.color-picker-check-mark):
3009         (.color-picker-option):
3010         (.color-picker-button):
3011         (.color-picker-highlight):
3012         (input):
3013         (.color-picker-sharp):
3014         (.color-picker-off):
3015         (.color-picker-inactive-font):
3016         (.color-picker-row):
3017         (.color-picker-hex-style):
3018         (.color-picker-input):
3019         (.color-picker-well):
3020         (.color-picker-input .color-picker-well):
3021         (.color-picker-slider):
3022         (.color-picker-slider-output):
3023         (.color-picker-range):
3024         (.color-picker-range::-webkit-slider-thumb):
3025         (.color-picker-range::-webkit-slider-thumb:active):
3026         (.red-ranger-bg):
3027         (.green-ranger-bg):
3028         (.blue-ranger-bg):
3029         (@media only screen and (height: 768px)):
3030         (@media only screen and (height: 720px)):
3031         * Resources/blackberry/colorControlBlackBerry.js: Added.
3032         (.):
3033         * Resources/blackberry/popupControlBlackBerry.css:
3034         (body):
3035         (.popup-area):
3036         (.popup-header):
3037         (.popup-content):
3038         (.popup-buttons):
3039         (.popup-button):
3040         (@media only screen and (width: 720px) and (height: 720px)):
3041         * Resources/blackberry/selectControlBlackBerry.css:
3042         (.popup-content):
3043         (@media (min-height: 918px)):
3044         (.option):
3045         (@media only screen and (width: 720px) and (height: 720px)):
3046         (.contents):
3047         (.option:active):
3048         (.selected):
3049         (.selected .contents::after):
3050         (.text):
3051         (.disabled):
3052         (.optgroup):
3053         (.optgroup-option):
3054         * Resources/blackberry/selectControlBlackBerry.js:
3055         (.):
3056         * Resources/blackberry/timeControlBlackBerry.css: Added.
3057         (#popup-content-time):
3058         (.column):
3059         (.column:not(:last-child)):
3060         (.cell):
3061         (.yearmonthdate .cell div:last-child):
3062         (.row-highlight-container):
3063         (.row-highlight-filler):
3064         (.row-highlight):
3065         (.tall-bit):
3066         (@media only screen and (width: 720px) and (height: 720px)):
3067         * Resources/blackberry/timeControlBlackBerry.js: Added.
3068         (.):
3069
3070 2013-05-09  Rob Buis  <rbuis@rim.com>
3071
3072         [BlackBerry] texmap code generates warnings
3073         https://bugs.webkit.org/show_bug.cgi?id=115815
3074
3075         Reviewed by Benjamin Poulain.
3076
3077         Add USE(TEXTURE_MAPPER) guards since Source/WebCore/CMakeLists.txt includes
3078         these files unconditionally.
3079
3080         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
3081         * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
3082         * platform/graphics/texmap/TextureMapper.h:
3083         * platform/graphics/texmap/TextureMapperBackingStore.cpp:
3084         * platform/graphics/texmap/TextureMapperBackingStore.h:
3085         * platform/graphics/texmap/TextureMapperFPSCounter.cpp:
3086         * platform/graphics/texmap/TextureMapperFPSCounter.h:
3087         * platform/graphics/texmap/TextureMapperGL.cpp:
3088         * platform/graphics/texmap/TextureMapperGL.h:
3089         * platform/graphics/texmap/TextureMapperLayer.cpp:
3090         * platform/graphics/texmap/TextureMapperLayer.h:
3091         * platform/graphics/texmap/TextureMapperTile.cpp:
3092         * platform/graphics/texmap/TextureMapperTile.h:
3093         * platform/graphics/texmap/TextureMapperTiledBackingStore.cpp:
3094         * platform/graphics/texmap/TextureMapperTiledBackingStore.h:
3095
3096 2013-05-09  Alberto Garcia  <agarcia@igalia.com>
3097
3098         PluginDatabase: add plugin directory for the BlackBerry port.
3099         https://bugs.webkit.org/show_bug.cgi?id=114943
3100
3101         Reviewed by Rob Buis.
3102
3103         XP_UNIX is defined for the BlackBerry port, but we don't want to
3104         share the same code here.
3105
3106         * plugins/PluginDatabase.cpp:
3107         (WebCore::PluginDatabase::defaultPluginDirectories):
3108         (WebCore::PluginDatabase::isPreferredPluginDirectory):
3109
3110 2013-05-09  Seokju Kwon  <seokju.kwon@gmail.com>
3111
3112         Web Inspector: Remove Memory Distribution and Memory Snapshots Panels
3113         https://bugs.webkit.org/show_bug.cgi?id=115850
3114
3115         Reviewed by Andreas Kling.
3116
3117         Removed the Memory Instrumentation Code after r148921.
3118
3119         No new tests, no behavior change.
3120
3121         * inspector/compile-front-end.py:
3122         * inspector/front-end/NativeMemorySnapshotView.js: Removed.
3123         * inspector/front-end/ProfilesPanel.js:
3124         (WebInspector.ProfilesPanel):
3125         * inspector/front-end/Settings.js:
3126         (WebInspector.Settings):
3127         (WebInspector.ExperimentsSettings):
3128         * inspector/front-end/SettingsScreen.js:
3129         * inspector/front-end/WebKit.qrc:
3130         * inspector/front-end/inspector.css:
3131         * inspector/front-end/inspector.js:
3132         (WebInspector._panelDescriptors):
3133         * inspector/front-end/nativeMemoryProfiler.css: Removed.
3134
3135 2013-05-09  Zan Dobersek  <zdobersek@igalia.com>
3136
3137         Unreviewed GTK build fix after r149796.
3138
3139         * GNUmakefile.am: Add a phony target for the window constructors file and include it among
3140         the dependencies for the non-generated code.
3141
3142 2013-05-09  Christophe Dumez  <ch.dumez@sisa.samsung.com>
3143
3144         Unreviewed build fix for Qt minimal build.
3145
3146         r149796 broke builds that have WEB_SOCKETS flag disabled.
3147
3148         * page/DOMWindow.idl:
3149
3150 2013-05-09  Christophe Dumez  <ch.dumez@sisa.samsung.com>
3151
3152         Add support for [NoInterfaceObject] Web IDL extended attribute
3153         https://bugs.webkit.org/show_bug.cgi?id=115714
3154
3155         Reviewed by Kentaro Hara.
3156
3157         *Constructor attributes on the global DOMWindow object are now automatically
3158         generated for each non-callback interface that is not declared with the
3159         [NoInterfaceObject] extended attribute. It is thus no longer needed for
3160         developers to manually add *Constructor attributes for their new interfaces
3161         unless they wish to register an "extra" constructor for their interface.
3162
3163         This patch does not modify at all the behavior on JS side. To achieve this,
3164         [NoInterfaceObject] extended attribute is added to interfaces that should
3165         not have it according to specification (e.g. History, Location, ...).
3166         This can be improved later as the behavior should not change with this
3167         patch.
3168
3169         No new tests, no behavior change.
3170
3171         * CMakeLists.txt:
3172         * DerivedSources.make:
3173         * DerivedSources.pri:
3174         * GNUmakefile.am:
3175         * GNUmakefile.list.am:
3176         * Modules/battery/BatteryManager.idl:
3177         * Modules/encryptedmedia/MediaKeyMessageEvent.idl:
3178         * Modules/encryptedmedia/MediaKeyNeededEvent.idl:
3179         * Modules/encryptedmedia/MediaKeySession.idl:
3180         * Modules/encryptedmedia/MediaKeys.idl:
3181         * Modules/filesystem/DOMFileSystem.idl:
3182         * Modules/filesystem/DOMFileSystemSync.idl:
3183         * Modules/filesystem/DirectoryEntry.idl:
3184         * Modules/filesystem/DirectoryEntrySync.idl:
3185         * Modules/filesystem/DirectoryReader.idl:
3186         * Modules/filesystem/DirectoryReaderSync.idl:
3187         * Modules/filesystem/Entry.idl:
3188         * Modules/filesystem/EntryArray.idl:
3189         * Modules/filesystem/EntryArraySync.idl:
3190         * Modules/filesystem/EntrySync.idl:
3191         * Modules/filesystem/FileEntry.idl:
3192         * Modules/filesystem/FileEntrySync.idl:
3193         * Modules/filesystem/FileWriter.idl:
3194         * Modules/filesystem/FileWriterSync.idl:
3195         * Modules/filesystem/Metadata.idl:
3196         * Modules/gamepad/Gamepad.idl:
3197         * Modules/gamepad/GamepadList.idl:
3198         * Modules/geolocation/Coordinates.idl:
3199         * Modules/geolocation/Geolocation.idl:
3200         * Modules/geolocation/Geoposition.idl:
3201         * Modules/geolocation/PositionError.idl:
3202         * Modules/indexeddb/DOMWindowIndexedDatabase.idl:
3203         * Modules/indexeddb/IDBAny.idl:
3204         * Modules/mediasource/MediaSource.idl:
3205         * Modules/mediasource/SourceBuffer.idl:
3206         * Modules/mediasource/SourceBufferList.idl:
3207         * Modules/mediastream/DOMWindowMediaStream.idl: Removed.
3208         * Modules/mediastream/MediaStream.idl:
3209         * Modules/mediastream/MediaStreamTrack.idl:
3210         * Modules/mediastream/MediaStreamTrackEvent.idl:
3211         * Modules/mediastream/NavigatorUserMediaError.idl:
3212         * Modules/mediastream/RTCDTMFSender.idl:
3213         * Modules/mediastream/RTCDTMFToneChangeEvent.idl:
3214         * Modules/mediastream/RTCDataChannel.idl:
3215         * Modules/mediastream/RTCDataChannelEvent.idl:
3216         * Modules/mediastream/RTCIceCandidateEvent.idl:
3217         * Modules/mediastream/RTCPeerConnection.idl:
3218         * Modules/mediastream/RTCStatsReport.idl:
3219         * Modules/mediastream/RTCStatsResponse.idl:
3220         * Modules/networkinfo/NetworkInfoConnection.idl:
3221         * Modules/notifications/DOMWindowNotifications.idl:
3222         * Modules/notifications/NotificationCenter.idl:
3223         * Modules/quota/StorageInfo.idl:
3224         * Modules/quota/StorageQuota.idl:
3225         * Modules/speech/DOMWindowSpeech.idl: Removed.
3226         * Modules/speech/DOMWindowSpeechSynthesis.idl:
3227         * Modules/speech/SpeechGrammar.idl:
3228         * Modules/speech/SpeechGrammarList.idl:
3229         * Modules/speech/SpeechRecognition.idl:
3230         * Modules/speech/SpeechRecognitionAlternative.idl:
3231         * Modules/speech/SpeechRecognitionError.idl:
3232         * Modules/speech/SpeechRecognitionEvent.idl:
3233         * Modules/speech/SpeechRecognitionResult.idl:
3234         * Modules/speech/SpeechRecognitionResultList.idl:
3235         * Modules/speech/SpeechSynthesis.idl:
3236         * Modules/speech/SpeechSynthesisVoice.idl:
3237         * Modules/webaudio/AnalyserNode.idl:
3238         * Modules/webaudio/AudioBuffer.idl:
3239         * Modules/webaudio/AudioBufferSourceNode.idl:
3240         * Modules/webaudio/AudioContext.idl:
3241         * Modules/webaudio/AudioDestinationNode.idl:
3242         * Modules/webaudio/AudioListener.idl:
3243         * Modules/webaudio/AudioNode.idl:
3244         * Modules/webaudio/AudioParam.idl:
3245         * Modules/webaudio/AudioSourceNode.idl:
3246         * Modules/webaudio/BiquadFilterNode.idl:
3247         * Modules/webaudio/ChannelMergerNode.idl:
3248         * Modules/webaudio/ChannelSplitterNode.idl:
3249         * Modules/webaudio/ConvolverNode.idl:
3250         * Modules/webaudio/DOMWindowWebAudio.idl: Removed.
3251         * Modules/webaudio/DelayNode.idl:
3252         * Modules/webaudio/DynamicsCompressorNode.idl:
3253         * Modules/webaudio/GainNode.idl:
3254         * Modules/webaudio/MediaElementAudioSourceNode.idl:
3255         * Modules/webaudio/MediaStreamAudioDestinationNode.idl:
3256         * Modules/webaudio/MediaStreamAudioSourceNode.idl:
3257         * Modules/webaudio/OfflineAudioContext.idl:
3258         * Modules/webaudio/OscillatorNode.idl:
3259         * Modules/webaudio/PannerNode.idl:
3260         * Modules/webaudio/ScriptProcessorNode.idl:
3261         * Modules/webaudio/WaveShaperNode.idl:
3262         * Modules/webaudio/WaveTable.idl:
3263         * Modules/webdatabase/DOMWindowWebDatabase.idl:
3264         * Modules/webdatabase/Database.idl:
3265         * Modules/webdatabase/DatabaseSync.idl:
3266         * Modules/webdatabase/SQLError.idl:
3267         * Modules/webdatabase/SQLResultSet.idl:
3268         * Modules/webdatabase/SQLResultSetRowList.idl:
3269         * Modules/webdatabase/SQLTransaction.idl:
3270         * Modules/webdatabase/SQLTransactionSync.idl:
3271         * Modules/websockets/DOMWindowWebSocket.idl: Removed.
3272         * Modules/websockets/WebSocket.idl:
3273         * PlatformBlackBerry.cmake:
3274         * UseJSC.cmake:
3275         * WebCore.xcodeproj/project.pbxproj:
3276         * bindings/scripts/IDLAttributes.txt:
3277         * bindings/scripts/IDLParser.pm:
3278         (parseTypedef):
3279         * bindings/scripts/preprocess-idls.pl:
3280         (GenerateConstructorAttribute):
3281         (getFileContents):
3282         (getPartialInterfaceNameFromIDL):
3283         (isCallbackInterfaceFromIDL):
3284         (trim):
3285         (getInterfaceExtendedAttributesFromIDL):
3286         * css/CSSFontFaceLoadEvent.idl:
3287         * css/CSSFontFaceRule.idl:
3288         * css/CSSSupportsRule.idl:
3289         * css/CSSUnknownRule.idl:
3290         * css/DOMWindowCSS.idl:
3291         * css/FontLoader.idl:
3292         * css/MediaQueryList.idl:
3293         * css/MediaQueryListListener.idl:
3294         * css/StyleMedia.idl:
3295         * dom/CustomElementConstructor.idl:
3296         * dom/DOMError.idl:
3297         * dom/DOMNamedFlowCollection.idl:
3298         * dom/DataTransferItem.idl:
3299         * dom/DataTransferItemList.idl:
3300         * dom/EventListener.idl:
3301         * dom/EventTarget.idl:
3302         * dom/NodeIterator.idl:
3303         * dom/ShadowRoot.idl:
3304         * dom/TreeWalker.idl:
3305         * dom/WebKitNamedFlow.idl:
3306         * fileapi/FileException.idl:
3307         * fileapi/FileReaderSync.idl:
3308         * html/HTMLAudioElement.idl:
3309         * html/HTMLDetailsElement.idl:
3310         * html/HTMLOptionElement.idl:
3311         * html/MediaError.idl:
3312         * html/MediaKeyError.idl:
3313         * html/MicroDataItemValue.idl:
3314         * html/RadioNodeList.idl:
3315         * html/ValidityState.idl:
3316         * html/canvas/CanvasRenderingContext.idl:
3317         * html/canvas/DOMPath.idl:
3318         * html/canvas/EXTDrawBuffers.idl:
3319         * html/canvas/EXTTextureFilterAnisotropic.idl:
3320         * html/canvas/OESElementIndexUint.idl:
3321         * html/canvas/OESStandardDerivatives.idl:
3322         * html/canvas/OESTextureFloat.idl:
3323         * html/canvas/OESTextureHalfFloat.idl:
3324         * html/canvas/OESVertexArrayObject.idl:
3325         * html/canvas/WebGLCompressedTextureATC.idl:
3326         * html/canvas/WebGLCompressedTexturePVRTC.idl:
3327         * html/canvas/WebGLCompressedTextureS3TC.idl:
3328         * html/canvas/WebGLContextAttributes.idl:
3329         * html/canvas/WebGLDebugRendererInfo.idl:
3330         * html/canvas/WebGLDebugShaders.idl:
3331         * html/canvas/WebGLDepthTexture.idl:
3332         * html/canvas/WebGLLoseContext.idl:
3333         * html/canvas/WebGLVertexArrayObjectOES.idl:
3334         * html/track/AudioTrack.idl:
3335         * html/track/AudioTrackList.idl:
3336         * html/track/TextTrackRegionList.idl:
3337         * html/track/VideoTrack.idl:
3338         * html/track/VideoTrackList.idl:
3339         * inspector/InjectedScriptHost.idl:
3340         * inspector/InspectorFrontendHost.idl:
3341         * inspector/JavaScriptCallFrame.idl:
3342         * inspector/ScriptProfile.idl:
3343         * inspector/ScriptProfileNode.idl:
3344         * loader/appcache/DOMApplicationCache.idl:
3345         * page/AbstractView.idl:
3346         * page/BarInfo.idl:
3347         * page/Console.idl:
3348         * page/Crypto.idl:
3349         * page/DOMSecurityPolicy.idl:
3350         * page/DOMWindow.idl:
3351         * page/History.idl:
3352         * page/Location.idl:
3353         * page/MemoryInfo.idl:
3354         * page/Navigator.idl:
3355         * page/PagePopupController.idl:
3356         * page/Performance.idl:
3357         * page/PerformanceEntry.idl:
3358         * page/PerformanceEntryList.idl:
3359         * page/PerformanceMark.idl:
3360         * page/PerformanceMeasure.idl:
3361         * page/PerformanceNavigation.idl:
3362         * page/PerformanceResourceTiming.idl:
3363         * page/PerformanceTiming.idl:
3364         * page/Screen.idl:
3365         * page/SpeechInputResult.idl:
3366         * page/SpeechInputResultList.idl:
3367         * page/WorkerNavigator.idl:
3368         * page/make_settings.pl:
3369         (generateInternalSettingsIdlFile):
3370         * svg/ElementTimeControl.idl:
3371         * svg/SVGAnimationElement.idl:
3372         * svg/SVGExternalResourcesRequired.idl:
3373         * svg/SVGFilterPrimitiveStandardAttributes.idl:
3374         * svg/SVGFitToViewBox.idl:
3375         * svg/SVGLangSpace.idl:
3376         * svg/SVGLocatable.idl:
3377         * svg/SVGStyledElement.idl:
3378         * svg/SVGTests.idl:
3379         * svg/SVGTransformable.idl:
3380         * svg/SVGURIReference.idl:
3381         * testing/InternalSettings.idl:
3382         * testing/Internals.idl:
3383         * testing/MallocStatistics.idl:
3384         * testing/TypeConversions.idl:
3385         * workers/AbstractWorker.idl:
3386         * workers/DedicatedWorkerContext.idl:
3387         * workers/SharedWorker.idl:
3388         * workers/SharedWorkerContext.idl:
3389         * workers/WorkerContext.idl:
3390         * workers/WorkerLocation.idl:
3391         * xml/XPathExpression.idl:
3392         * xml/XPathNSResolver.idl:
3393
3394 2013-05-09  ChangSeok Oh  <changseok.oh@collabora.com>
3395
3396         [GTK][AC] Buildfix after r149694
3397         https://bugs.webkit.org/show_bug.cgi?id=115797
3398
3399         Reviewed by Gustavo Noronha Silva.
3400
3401         Some interfaces, such as a return value and parameters of functions are changed.
3402
3403         No new tests since no functionality changed.
3404
3405         * platform/graphics/clutter/GraphicsLayerClutter.cpp:
3406         (WebCore::animationHasStepsTimingFunction):
3407         (WebCore::GraphicsLayerClutter::timingFunctionForAnimationValue):
3408         (WebCore::GraphicsLayerClutter::setTransformAnimationKeyframes):
3409         (WebCore::GraphicsLayerClutter::setTransformAnimationEndpoints):
3410         (WebCore::GraphicsLayerClutter::createTransformAnimationsFromKeyframes):
3411         (WebCore::GraphicsLayerClutter::setAnimationEndpoints):
3412         (WebCore::GraphicsLayerClutter::setAnimationKeyframes):
3413         * platform/graphics/clutter/GraphicsLayerClutter.h:
3414         (GraphicsLayerClutter):
3415
3416 2013-05-08  Rob Buis  <rbuis@rim.com>
3417
3418         Fix some compiler warnings (miscellaneous)
3419         https://bugs.webkit.org/show_bug.cgi?id=80790
3420
3421         Reviewed by Brent Fulgham.
3422
3423         Get rid of the following warning for BlackBerry:
3424
3425         NavigatorContentUtils.cpp:60:78: warning: comparison of unsigned expression < 0 is always false [-Wtype-limits]
3426
3427         by not compiling any of the code to add protocols to the protocol whitelist.
3428
3429         * Modules/navigatorcontentutils/NavigatorContentUtils.cpp:
3430         (WebCore::initProtocolHandlerWhitelist):
3431
3432 2013-05-08  peavo@outlook.com  <peavo@outlook.com>
3433
3434         [Windows] The function seekFile() is not implemented.
3435         https://bugs.webkit.org/show_bug.cgi?id=115246
3436
3437         Reviewed by Brent Fulgham.
3438
3439         Implemented seekFile() function for Windows.
3440
3441         * platform/win/FileSystemWin.cpp:
3442         (WebCore::seekFile):
3443
3444 2013-05-08  Seokju Kwon  <seokju.kwon@gmail.com>
3445
3446         Web Inspector: Fix a typo in Settings.js
3447         https://bugs.webkit.org/show_bug.cgi?id=115849
3448
3449         Reviewed by Joseph Pecoraro.
3450
3451         No new tests, no behavior change.
3452
3453         * inspector/front-end/Settings.js:
3454         (WebInspector.Settings):
3455
3456 2013-05-08  Ryosuke Niwa  <rniwa@webkit.org>
3457
3458         SecurityOrigin doesn’t need to forward declare or include Document
3459         https://bugs.webkit.org/show_bug.cgi?id=115847
3460
3461         Reviewed by Alexey Proskuryakov.
3462
3463         Merge https://chromium.googlesource.com/chromium/blink/+/fc7a88caa9c41f3471d8994a530643e5225f82fc.
3464
3465         Removed unused Document forward declaration+include from SecurityOrigin.
3466
3467         * page/SecurityOrigin.cpp:
3468         * page/SecurityOrigin.h:
3469
3470 2013-05-08  David Kilzer  <ddkilzer@apple.com>
3471
3472         BUILD FIX: Don't use adoptCF() with NSDictionary * object
3473
3474         Fixes the following build failure:
3475
3476             In file included from Source/WebCore/platform/network/mac/ResourceErrorMac.mm:27:
3477             In file included from Source/WebCore/platform/network/cf/ResourceError.h:31:
3478             /usr/local/include/wtf/RetainPtr.h:81:13: error: static_assert failed "Don't use adoptCF with Objective-C pointer types, use adoptNS."
3479                         static_assert(!std::is_convertible<T, id>::value, "Don't use adoptCF with Objective-C pointer types, use adoptNS.");
3480                         ^             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3481             /usr/local/include/wtf/RetainPtr.h:274:16: note: in instantiation of member function 'WTF::RetainPtr<NSDictionary *>::RetainPtr' requested here
3482                     return RetainPtr<T>(AdoptCF, o);
3483                            ^
3484             Source/WebCore/platform/network/mac/ResourceErrorMac.mm:214:44: note: in instantiation of function template specialization 'WTF::adoptCF<NSDictionary *>' requested here
3485                     RetainPtr<NSDictionary> userInfo = adoptCF((NSDictionary *) CFErrorCopyUserInfo(error));
3486                                                        ^
3487             1 error generated.
3488
3489         * platform/network/mac/ResourceErrorMac.mm:
3490         (WebCore::ResourceError::nsError): Switch from adoptCF() to
3491         adoptNS().  This is in USE(CFNETWORK) code, so it's not
3492         exercised on the Mac.
3493
3494 2013-05-08  Ryosuke Niwa  <rniwa@webkit.org>
3495
3496         Remove Editor::setSelectionOffsets
3497         https://bugs.webkit.org/show_bug.cgi?id=115831
3498
3499         Reviewed by Andreas Kling.
3500
3501         Removed the function added in r120985 for Chromium Android port.
3502
3503         * editing/Editor.cpp:
3504         * editing/Editor.h:
3505
3506 2013-05-07  Ryosuke Niwa  <rniwa@webkit.org>
3507
3508         Potential use-after-free of Frame
3509         https://bugs.webkit.org/show_bug.cgi?id=115774
3510
3511         Reviewed by Simon Fraser.
3512
3513         Merge https://chromium.googlesource.com/chromium/blink/+/c5b4a6db82e8280c7fc55ee3dc3a84c6b026e66e.
3514
3515         * page/Frame.cpp:
3516         (WebCore::Frame::setPrinting):
3517         (WebCore::Frame::setPageAndTextZoomFactors):
3518         (WebCore::Frame::deviceOrPageScaleFactorChanged):
3519
3520 2013-05-08  Roger Fong  <roger_fong@apple.com>
3521
3522         Unreviewed build fix, AppleWin port.
3523
3524         * platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:
3525         * platform/graphics/avfoundation/InbandTextTrackPrivateAVF.h:
3526         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
3527         (WebCore::MediaPlayerPrivateAVFoundation::MediaPlayerPrivateAVFoundation):
3528         (WebCore::MediaPlayerPrivateAVFoundation::seek):
3529         (WebCore::MediaPlayerPrivateAVFoundation::seekCompleted):
3530         (WebCore::MediaPlayerPrivateAVFoundation::dispatchNotification):
3531         (WebCore):
3532         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
3533         (MediaPlayerPrivateAVFoundation):
3534
3535 2013-05-08  Xingnan Wang  <xingnan.wang@intel.com>
3536
3537         Heap-use-after-free in WebCore::AudioNodeOutput::pull
3538         https://bugs.webkit.org/show_bug.cgi?id=111362
3539
3540         Reviewed by Chris Rogers.
3541
3542         * Modules/webaudio/AudioBuffer.cpp:
3543         (WebCore::AudioBuffer::createFromAudioFileData):
3544         * Modules/webaudio/AudioNodeInput.cpp:
3545         (WebCore::AudioNodeInput::AudioNodeInput):
3546         (WebCore::AudioNodeInput::updateInternalBus):
3547         * Modules/webaudio/AudioNodeInput.h:
3548         (AudioNodeInput):
3549         * Modules/webaudio/AudioNodeOutput.cpp:
3550         (WebCore::AudioNodeOutput::AudioNodeOutput):
3551         (WebCore::AudioNodeOutput::updateInternalBus):
3552         (WebCore::AudioNodeOutput::pull):
3553         (WebCore::AudioNodeOutput::bus):
3554         * Modules/webaudio/AudioNodeOutput.h:
3555         (AudioNodeOutput):
3556         * Modules/webaudio/OfflineAudioDestinationNode.cpp:
3557         (WebCore::OfflineAudioDestinationNode::OfflineAudioDestinationNode):
3558         * Modules/webaudio/OfflineAudioDestinationNode.h:
3559         (OfflineAudioDestinationNode):
3560         * platform/audio/AudioBus.cpp:
3561         (WebCore::AudioBus::createBufferFromRange):
3562         (WebCore::AudioBus::createBySampleRateConverting):
3563         (WebCore::AudioBus::createByMixingToMono):
3564         * platform/audio/AudioBus.h:
3565         (AudioBus):
3566         * platform/audio/AudioFileReader.h:
3567         (WebCore):
3568         * platform/audio/AudioResampler.cpp:
3569         (WebCore::AudioResampler::AudioResampler):
3570         (WebCore::AudioResampler::configureChannels):
3571         * platform/audio/AudioResampler.h:
3572         (AudioResampler):
3573         * platform/audio/HRTFElevation.cpp:
3574         (WebCore::getConcatenatedImpulseResponsesForSubject):
3575         (WebCore::HRTFElevation::calculateKernelsForAzimuthElevation):
3576         * platform/audio/MultiChannelResampler.cpp:
3577         * platform/audio/Reverb.cpp:
3578         (WebCore::Reverb::initialize):
3579         * platform/audio/Reverb.h:
3580         (Reverb):
3581         * platform/audio/efl/AudioBusEfl.cpp:
3582         (WebCore::AudioBus::loadPlatformResource):
3583         * platform/audio/gstreamer/AudioFileReaderGStreamer.cpp:
3584         (AudioFileReader):
3585         (WebCore::AudioFileReader::createBus):
3586         (WebCore::createBusFromAudioFile):
3587         (WebCore::createBusFromInMemoryAudioFile):
3588         * platform/audio/gtk/AudioBusGtk.cpp:
3589         (WebCore::AudioBus::loadPlatformResource):
3590         * platform/audio/mac/AudioBusMac.mm:
3591         (WebCore::AudioBus::loadPlatformResource):
3592         * platform/audio/mac/AudioFileReaderMac.cpp:
3593         (WebCore::AudioFileReader::createBus):
3594         (WebCore::createBusFromAudioFile):
3595         (WebCore::createBusFromInMemoryAudioFile):
3596         * platform/audio/mac/AudioFileReaderMac.h:
3597         (AudioFileReader):
3598         * platform/audio/qt/AudioBusQt.cpp:
3599         (WebCore::AudioBus::loadPlatformResource):
3600
3601 2013-05-08  Eli Fidler  <efidler@blackberry.com>
3602
3603         [BlackBerry] Fix usage of BlackBerry::Platform::String
3604         https://bugs.webkit.org/show_bug.cgi?id=115781
3605
3606         Reviewed by Rob Buis.
3607
3608         BlackBerry PRs 304193 and 327181
3609         Internally Reviewed by Mike Lattanzio, Arvid Nilsson, Joe Mason, Jeff Rogers, and George Staikos
3610
3611         We currently have a problem where we're passing UTF-8 encoded data into
3612         the char* constructors of BlackBerry::Platform::String. This means the string
3613         thinks its data is not UTF-8.
3614
3615         * platform/blackberry/ClipboardBlackBerry.cpp:
3616         (WebCore::ClipboardBlackBerry::setData):
3617         (WebCore::ClipboardBlackBerry::writeURL):
3618         (WebCore::ClipboardBlackBerry::writePlainText):
3619         * platform/blackberry/CookieManager.cpp:
3620         (WebCore::CookieManager::getRawCookies):
3621         (WebCore::CookieManager::getBackingStoreCookies):
3622         * platform/blackberry/CookieParser.cpp:
3623         (WebCore::CookieParser::CookieParser):
3624         (WebCore::CookieParser::parseOneCookie):
3625         * platform/blackberry/CursorBlackBerry.cpp:
3626         (WebCore::Cursor::Cursor):
3627         * platform/blackberry/PlatformBlob.cpp:
3628         (WebCore::PlatformBlob::nextDataItem):
3629         * platform/blackberry/WorkerAsyncFileSystemBlackBerry.cpp:
3630         (WebCore::WorkerAsyncFileSystemBlackBerry::openFileSystemOnMainThread):
3631         (WebCore::WorkerAsyncFileSystemBlackBerry::deleteFileSystemOnMainThread):
3632         (WebCore::WorkerAsyncFileSystemBlackBerry::moveOnMainThread):
3633         (WebCore::WorkerAsyncFileSystemBlackBerry::copyOnMainThread):
3634         (WebCore::WorkerAsyncFileSystemBlackBerry::removeOnMainThread):
3635         (WebCore::WorkerAsyncFileSystemBlackBerry::removeRecursivelyOnMainThread):
3636         (WebCore::WorkerAsyncFileSystemBlackBerry::readMetadataOnMainThread):
3637         (WebCore::WorkerAsyncFileSystemBlackBerry::createFileOnMainThread):
3638         (WebCore::WorkerAsyncFileSystemBlackBerry::createDirectoryOnMainThread):
3639         (WebCore::WorkerAsyncFileSystemBlackBerry::fileExistsOnMainThread):
3640         (WebCore::WorkerAsyncFileSystemBlackBerry::directoryExistsOnMainThread):
3641         (WebCore::WorkerAsyncFileSystemBlackBerry::readDirectoryOnMainThread):
3642         (WebCore::WorkerAsyncFileSystemBlackBerry::createWriterOnMainThread):
3643         (WebCore::WorkerAsyncFileSystemBlackBerry::createSnapshotFileAndReadMetadataOnMainThread):
3644         * platform/graphics/blackberry/ImageBlackBerry.cpp:
3645         (WebCore::Image::loadPlatformResource):
3646         * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
3647         (WebCore::MediaPlayerPrivate::load):
3648         (WebCore::MediaPlayerPrivate::notifyChallengeResult):
3649         (WebCore::toWebMediaStreamSource):
3650         (WebCore::toWebMediaStreamDescriptor):
3651         * platform/network/blackberry/NetworkManager.cpp:
3652         (WebCore::NetworkManager::startJob):
3653         * platform/network/blackberry/SocketStreamHandleBlackBerry.cpp:
3654         (WebCore::SocketStreamHandle::SocketStreamHandle):
3655         * platform/network/blackberry/rss/RSSFilterStream.cpp:
3656         (WebCore::RSSFilterStream::notifyStatusReceived):
3657         (WebCore::RSSFilterStream::notifyHeadersReceived):
3658         (WebCore::RSSFilterStream::convertContentToHtml):
3659         (WebCore::RSSFilterStream::charset):
3660         (WebCore::RSSFilterStream::removeHeader):
3661         (WebCore::RSSFilterStream::updateHeader):
3662         (WebCore::RSSFilterStream::updateRSSHeaders):
3663         * platform/network/blackberry/rss/RSSFilterStream.h:
3664         * platform/text/blackberry/StringBlackBerry.cpp:
3665         (WTF::String::operator BlackBerry::Platform::String):
3666
3667 2013-05-08  Anders Carlsson  <andersca@apple.com>
3668
3669         Assert at compile time that we don't pass Objective-C object pointers to adoptCF
3670         https://bugs.webkit.org/show_bug.cgi?id=115823
3671
3672         Reviewed by Geoffrey Garen.
3673
3674         * platform/graphics/ca/mac/TileController.mm:
3675         (WebCore::TileController::TileController):
3676         Use adoptNS for CALayer.
3677
3678 2013-05-08  Eric Carlson  <eric.carlson@apple.com>
3679
3680         TextTrackCue should support empty content
3681         https://bugs.webkit.org/show_bug.cgi?id=115821
3682
3683         Reviewed by Jer Noble.
3684
3685         Test: media/track/track-cue-empty-text-crash.html
3686
3687         * html/shadow/MediaControlElements.cpp:
3688         (WebCore::MediaControlTextTrackContainerElement::updateDisplay): Don't bother trying to render
3689             cues with no content.
3690
3691         * html/track/TextTrackCue.cpp:
3692         (WebCore::TextTrackCue::getCueAsHTML): Return early if there isn't a node tree.
3693         (WebCore::TextTrackCue::createCueRenderingTree): Ditto.
3694         (WebCore::TextTrackCue::determineTextDirection): Ditto.
3695         (WebCore::TextTrackCue::updateDisplayTree): Return early if there isn't a cue rendering tree.
3696
3697 2013-05-08  Roger Fong  <roger_fong@apple.com>
3698
3699         Unreviewed AppleWin build fix.
3700
3701         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h:
3702         (MediaPlayerPrivateAVFoundationCF):
3703         (WebCore::MediaPlayerPrivateAVFoundationCF::currentTrack):
3704
3705 2013-05-08  José Dapena Paz  <jdapena@igalia.com> and Zan Dobersek  <zdobersek@igalia.com>
3706
3707         [GTK] Plumb the Automake build system for the Battery Status API feature
3708         https://bugs.webkit.org/show_bug.cgi?id=115718
3709
3710         Reviewed by Martin Robinson.
3711
3712         No new tests - no new functionality. The feature is not enabled yet, though all the relevant tests
3713         pass when it is.
3714
3715         * GNUmakefile.am: Add the Modules/battery directory to the list of search paths for header inclusions.
3716         Include the same directory under the IDL_PATH variable so the IDL files it contains are processed.
3717         List these IDL files using a wildcard under the EXTRA_DIST list.
3718         * GNUmakefile.list.am: Add the build targets for the module source files, IDLs and resulting JS bindings.
3719         * bindings/gobject/GNUmakefile.am: Add the build targets for the GObject DOM bindings.
3720
3721 2013-05-08  Roger Fong  <roger_fong@apple.com>
3722
3723         Unreviewed. AppleWin VS2010 build fix.
3724
3725         * WebCore.vcxproj/WebCore.vcxproj:
3726         * WebCore.vcxproj/WebCore.vcxproj.filters:
3727
3728 2013-05-08  Darin Adler  <darin@apple.com>
3729
3730         REGRESSION(r149700): fast/css-generated-content/close-quote-negative-depth.html
3731         https://bugs.webkit.org/show_bug.cgi?id=115776
3732
3733         Reviewed by Anders Carlsson.
3734
3735         I changed depth to more closely match what is in the CSS3 specification.
3736         There may be a more optimal way to make it work, but this seems the most straightforward.
3737
3738         * rendering/RenderQuote.cpp:
3739         (WebCore::RenderQuote::RenderQuote): Initialize m_depth to -1 because that depth
3740         is consistent with the empty string that is the initial value of the text. The
3741         real depth will be calculated when the node is attached.
3742         (WebCore::RenderQuote::originalText): Removed the "depth - 1" logic that
3743         used to be done for close quotes. Instead, the updateDepth function now correctly
3744         subtracts one for the close quote itself, not just afterward. Also added an early
3745         exit when the depth is negative; these changes together fix the bug.
3746         (WebCore::RenderQuote::attachQuote): Added a call to updateDepth even for the render
3747         quote head, we now need that to set the depth either to 0 or to -1.
3748         (WebCore::RenderQuote::detachQuote): Removed code to set m_depth to 0;  if we are not
3749         resetting the text then m_depth should be left matching the text, otherwise updateDepth
3750         might not do its job correctly if the quote is later re-attached. What matters is that
3751         m_depth and the text are in sync.
3752         (WebCore::RenderQuote::updateDepth): Changed updating logic in two ways. First,
3753         compute the depth in a local variable rather than computing it in a data member
3754         after first saving off the old value of the data member. That's clearer style.
3755         Second, add the code to change negative depths to zero when propagating to the
3756         next quote in the chain, which matches how the standard is written, and decrement
3757         the depth of the close quote itself, not the quote after the close quote.
3758
3759 2013-05-08  Eric Carlson  <eric.carlson@apple.com>
3760
3761         Prevent crash when track is deleted during video element deletion.
3762         https://bugs.webkit.org/show_bug.cgi?id=106183
3763
3764         Reviewed by Dean Jackson.
3765
3766         Test: media/track/track-remove-crash.html
3767
3768         * html/HTMLMediaElement.cpp:
3769         (WebCore::HTMLMediaElement::removedFrom): Set m_inActiveDocument to false so we
3770             do not process text track cues or dispatch related events.
3771
3772 2013-05-08  Eric Carlson  <eric.carlson@apple.com>
3773
3774         [Mac] Unreviewed buildfix after r149741.
3775
3776         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
3777         (WebCore::MediaPlayerPrivateAVFoundationObjC::setClosedCaptionsVisible):
3778
3779 2013-05-08  Eric Carlson  <eric.carlson@apple.com>
3780
3781         [Mac] Inband text tracks are not in track menu on Lion
3782         https://bugs.webkit.org/show_bug.cgi?id=115740
3783
3784         Reviewed by Dean Jackson.
3785
3786         No new tests, covered by existing tests.
3787
3788         * html/HTMLMediaElement.cpp:
3789         (WebCore::HTMLMediaElement::HTMLMediaElement): Remove m_legacyWebKitClosedCaptionsVisible.
3790         (WebCore::HTMLMediaElement::setClosedCaptionsVisible): Set m_closedCaptionsVisible
3791             to false immediately, it will be reset to the appropriate value if necessary.
3792         (WebCore::HTMLMediaElement::setWebkitClosedCaptionsVisible): Remove m_legacyWebKitClosedCaptionsVisible.
3793         (WebCore::HTMLMediaElement::webkitClosedCaptionsVisible): Remove m_legacyWebKitClosedCaptionsVisible.
3794         * html/HTMLMediaElement.h:
3795
3796         * platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp: Remove 
3797             HAVE(AVFOUNDATION_TEXT_TRACK_SUPPORT) requirement. AVFOUNDATION_TEXT_TRACK_SUPPORT ->
3798             AVFOUNDATION_MEDIA_SELECTION_GROUP
3799         * platform/graphics/avfoundation/InbandTextTrackPrivateAVF.h: Ditto.
3800
3801         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp: 
3802         (WebCore::MediaPlayerPrivateAVFoundation::MediaPlayerPrivateAVFoundation): Ditto.
3803         (WebCore::MediaPlayerPrivateAVFoundation::seek): Ditto.
3804         (WebCore::MediaPlayerPrivateAVFoundation::seekCompleted): Ditto.
3805         (WebCore::MediaPlayerPrivateAVFoundation::dispatchNotification): Ditto.
3806         (WebCore::MediaPlayerPrivateAVFoundation::trackModeChanged): Ditto.
3807         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:  Ditto.
3808
3809         * platform/graphics/avfoundation/objc/InbandTextTrackPrivateLegacyAVFObjC.h:  Ditto.
3810         * platform/graphics/avfoundation/objc/InbandTextTrackPrivateLegacyAVFObjC.mm:
3811         (WebCore::InbandTextTrackPrivateLegacyAVFObjC::kind): Don't look at media characteristics, 
3812             a legacy CC track is always Captions.
3813         (WebCore::InbandTextTrackPrivateLegacyAVFObjC::isClosedCaptions): Ditto.
3814         (WebCore::InbandTextTrackPrivateLegacyAVFObjC::containsOnlyForcedSubtitles): Ditto.
3815         (WebCore::InbandTextTrackPrivateLegacyAVFObjC::isMainProgramContent): Ditto.
3816         (WebCore::InbandTextTrackPrivateLegacyAVFObjC::isEasyToRead): Ditto.
3817         (WebCore::InbandTextTrackPrivateLegacyAVFObjC::label): Use different AVFoundation API on 10.7.
3818         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
3819
3820         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
3821         (WebCore::MediaPlayerPrivateAVFoundationObjC::MediaPlayerPrivateAVFoundationObjC): AVFOUNDATION_TEXT_TRACK_SUPPORT ->
3822             AVFOUNDATION_MEDIA_SELECTION_GROUP.
3823         (WebCore::MediaPlayerPrivateAVFoundationObjC::cancelLoad): Ditto.
3824         (WebCore::MediaPlayerPrivateAVFoundationObjC::setClosedCaptionsVisible): Do nothing. AVFOUNDATION_TEXT_TRACK_SUPPORT ->
3825             AVFOUNDATION_MEDIA_SELECTION_GROUP.
3826         (WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged): Support legacy CC tracks
3827             only on 10.8. AVFOUNDATION_TEXT_TRACK_SUPPORT -> AVFOUNDATION_MEDIA_SELECTION_GROUP
3828         (WebCore::MediaPlayerPrivateAVFoundationObjC::processLegacyClosedCaptionsTracks): Ditto.
3829         (WebCore::MediaPlayerPrivateAVFoundationObjC::setCurrentTrack): Ditto.
3830         (WebCore::MediaPlayerPrivateAVFoundationObjC::languageOfPrimaryAudioTrack): AVFOUNDATION_TEXT_TRACK_SUPPORT -> 
3831             AVFOUNDATION_MEDIA_SELECTION_GROUP
3832
3833 2013-05-08  Sergio Villar Senin  <svillar@igalia.com>
3834
3835         Allow blank spaces before colon (:) on CSS variable definition
3836         https://bugs.webkit.org/show_bug.cgi?id=115802
3837
3838         Reviewed by Darin Adler.
3839
3840         Test: css3/css-variable-definition.html
3841
3842         Modified the grammar to allow blank spaces before the colon on CSS
3843         variable definitions.
3844
3845         * css/CSSGrammar.y.in:
3846
3847 2013-05-08  Gustavo Noronha Silva  <gustavo.noronha@collabora.com>
3848
3849         [GStreamer] Does memory buffering even with preload set to none
3850         https://bugs.webkit.org/show_bug.cgi?id=115754
3851
3852         Reviewed by Philippe Normand.
3853
3854         Covered by existing tests.
3855
3856         Revision 148840 fixed on-disk buffering being done when preload is set to none,
3857         but memory buffering is still being done. That is because setting the state to
3858         paused causes GStreamer to start loading the media, to gather information. Only
3859         doing that when committing the load avoids that while maintaining the tested
3860         behaviour unchanged.
3861
3862         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
3863         (WebCore::MediaPlayerPrivateGStreamer::load): move setting pause state to commitLoad.
3864         (WebCore::MediaPlayerPrivateGStreamer::commitLoad): see above.
3865
3866 2013-05-08  Andreas Kling  <akling@apple.com>
3867
3868         SVGStyledElement::getPresentationAttribute() does not need to be virtual.
3869
3870         From Blink r149888 by <cevans@chromium.org>
3871         <http://src.chromium.org/viewvc/blink?view=revision&revision=149888>
3872
3873         * svg/SVGStyledElement.h:
3874
3875 2013-05-08  Allan Sandfeld Jensen  <allan.jensen@digia.com>
3876
3877         Crash when loading link to audio file
3878         https://bugs.webkit.org/show_bug.cgi?id=115794
3879
3880         Reviewed by Jocelyn Turcotte.
3881
3882         Do not access a null pointer frame.
3883
3884         * loader/appcache/ApplicationCacheHost.cpp:
3885         (WebCore::ApplicationCacheHost::isApplicationCacheEnabled):
3886
3887 2013-05-08  Christophe Dumez  <ch.dumez@sisa.samsung.com>
3888
3889         Remove unused [TransferList] extended attribute
3890         https://bugs.webkit.org/show_bug.cgi?id=115788
3891
3892         Reviewed by Kentaro Hara.
3893
3894         Remove [TransferList] extended attribute and corresponding tests as it has no
3895         effect on the generated JSC bindings.
3896
3897         No new tests, no behavior change.
3898
3899         * bindings/scripts/IDLAttributes.txt:
3900         * bindings/scripts/test/CPP/WebDOMTestSerializedScriptValueInterface.cpp:
3901         * bindings/scripts/test/CPP/WebDOMTestSerializedScriptValueInterface.h:
3902         (WebDOMTestSerializedScriptValueInterface):
3903         * bindings/scripts/test/CPP/WebDOMTestTypedefs.cpp:
3904         * bindings/scripts/test/CPP/WebDOMTestTypedefs.h:
3905         (WebDOMTestTypedefs):
3906         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp:
3907         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
3908         * bindings/scripts/test/GObject/WebKitDOMTestTypedefs.cpp:
3909         * bindings/scripts/test/GObject/WebKitDOMTestTypedefs.h:
3910         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
3911         (WebCore):
3912         (WebCore::JSTestSerializedScriptValueInterfaceConstructor::finishCreation):
3913         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
3914         (JSTestSerializedScriptValueInterfacePrototype):
3915         (JSTestSerializedScriptValueInterfaceConstructor):
3916         * bindings/scripts/test/JS/JSTestTypedefs.cpp:
3917         (WebCore):
3918         * bindings/scripts/test/JS/JSTestTypedefs.h:
3919         (WebCore):
3920         * bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterface.h:
3921         * bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterface.mm:
3922         * bindings/scripts/test/ObjC/DOMTestTypedefs.h:
3923         * bindings/scripts/test/ObjC/DOMTestTypedefs.mm:
3924         * bindings/scripts/test/TestSerializedScriptValueInterface.idl:
3925         * bindings/scripts/test/TestTypedefs.idl:
3926
3927 2013-05-08  Dongseong Hwang  <dongseong.hwang@intel.com>
3928
3929         Make optional arguments in CanvasRenderingContext2D match the spec.
3930         https://bugs.webkit.org/show_bug.cgi?id=115723
3931
3932         Reviewed by Dean Jackson.
3933
3934         WebKit r98985 set many arguments optional although the canvas spec[1] does not
3935         indicate. So this patch corrects CanvasRenderingContext2D.idl to match the spec.
3936
3937         [1] http://www.w3.org/html/wg/drafts/2dcontext/html5_canvas/
3938
3939         Covered by existing tests:
3940           canvas/philip/tests/2d.missingargs.html
3941           fast/canvas/canvas-overloads-strokeRect.html
3942           inspector/profiler/canvas2d/canvas2d-profiler-capturing-basics.html
3943
3944         * html/canvas/CanvasRenderingContext2D.idl:
3945
3946 2013-05-08  Ryosuke Niwa  <rniwa@webkit.org>
3947
3948         Remove unused method and de-virtualize others in Element.h
3949         https://bugs.webkit.org/show_bug.cgi?id=115770
3950
3951         Reviewed by Andreas Kling.
3952
3953         Merge https://chromium.googlesource.com/chromium/blink/+/c2c2ff9cb69f46f5cc9d289b2bfbdb8ab5bd3e49
3954
3955         The de-virtualization possibilities were noted whilst "FINALizing" the Node
3956         hierarchy. If a method is successfully marked FINAL but then fails when marked
3957         OVERRIDE as well, the method by definition does not need to be virtual.
3958
3959         * WebCore.exp.in:
3960         * dom/Element.h:
3961         (WebCore::Element::hasAuthorShadowRoot):
3962
3963 2013-05-06  Darin Adler  <darin@apple.com>
3964
3965         Use adoptCF and adoptNS in more places
3966         https://bugs.webkit.org/show_bug.cgi?id=115657
3967
3968         Reviewed by Sam Weinig.
3969
3970         This is similar to my last set of changes, but covers code that I missed with
3971         global replace using the Safari Xcode workspace.
3972
3973         * platform/cf/win/CertificateCFWin.cpp:
3974         (WebCore::copyCertificateToData):
3975         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
3976         (WebCore::MediaPlayerPrivateAVFoundationCF::platformBufferedTimeRanges):
3977         (WebCore::MediaPlayerPrivateAVFoundationCF::platformMinTimeSeekable):
3978         (WebCore::MediaPlayerPrivateAVFoundationCF::platformMaxTimeSeekable):
3979         (WebCore::MediaPlayerPrivateAVFoundationCF::platformMaxTimeLoaded):
3980         (WebCore::MediaPlayerPrivateAVFoundationCF::totalBytes):
3981         (WebCore::mimeTypeCache):
3982         (WebCore::MediaPlayerPrivateAVFoundationCF::tracksChanged):
3983         (WebCore::MediaPlayerPrivateAVFoundationCF::sizeChanged):
3984         (WebCore::AVFWrapper::createAssetForURL):
3985         (WebCore::AVFWrapper::createPlayer):
3986         (WebCore::AVFWrapper::createPlayerItem):
3987         (WebCore::AVFWrapper::setAsset):
3988         (WebCore::AVFWrapper::platformLayer):
3989         (WebCore::AVFWrapper::createAVCFVideoLayer):
3990         (WebCore::AVFWrapper::createImageGenerator):
3991         * platform/graphics/avfoundation/objc/InbandTextTrackPrivateLegacyAVFObjC.mm:
3992         (WebCore::InbandTextTrackPrivateLegacyAVFObjC::language):
3993         * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
3994         (toCACFTimingFunction):
3995         (PlatformCAAnimation::PlatformCAAnimation):
3996         (PlatformCAAnimation::setFromValue):
3997         (PlatformCAAnimation::setToValue):
3998         (PlatformCAAnimation::setValues):
3999         (PlatformCAAnimation::setKeyTimes):
4000         (PlatformCAAnimation::setTimingFunctions):
4001         * platform/graphics/ca/win/PlatformCALayerWin.cpp:
4002         (PlatformCALayer::PlatformCALayer):
4003         (PlatformCALayer::setBackgroundColor):
4004         (PlatformCALayer::setBorderColor):
4005         * platform/graphics/ca/win/PlatformCALayerWinInternal.cpp:
4006         (PlatformCALayerWinInternal::PlatformCALayerWinInternal):
4007         (PlatformCALayerWinInternal::addTile):
4008         * platform/graphics/ca/win/WKCACFViewLayerTreeHost.cpp:
4009         (WebCore::WKCACFViewLayerTreeHost::WKCACFViewLayerTreeHost):
4010         * platform/graphics/gstreamer/PlatformVideoWindowMac.mm:
4011         (PlatformVideoWindow::PlatformVideoWindow):
4012         * platform/graphics/win/FontCustomPlatformData.cpp:
4013         (WebCore::FontCustomPlatformData::fontPlatformData):
4014         * platform/graphics/win/FontPlatformDataCGWin.cpp:
4015         (WebCore::getPostScriptName):
4016         (WebCore::FontPlatformData::platformDataInit):
4017         * platform/graphics/win/GraphicsContextCGWin.cpp:
4018         (WebCore::GraphicsContext::drawWindowsBitmap):
4019         * platform/graphics/win/ImageCGWin.cpp:
4020         (WebCore::BitmapImage::create):
4021         * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp:
4022         (WebCore::MediaPlayerPrivateFullscreenWindow::setRootChildLayer):
4023         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
4024         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::rfc2616DateStringFromTime):
4025         (WebCore::QTCFDictionaryCreateWithDataCallback):
4026         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::retrieveCurrentImage):
4027         * platform/graphics/win/WKCAImageQueue.cpp:
4028         (WebCore::WKCAImageQueue::WKCAImageQueue):
4029         * platform/image-decoders/ImageDecoder.h: