Unreviewed rollout of r162534, this caused inspector test failures.
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2014-01-22  Joseph Pecoraro  <pecoraro@apple.com>
2
3         Unreviewed rollout of r162534, this caused inspector test failures.
4
5         * bindings/js/PageScriptDebugServer.cpp:
6         (WebCore::PageScriptDebugServer::addListener):
7         (WebCore::PageScriptDebugServer::removeListener):
8         (WebCore::PageScriptDebugServer::recompileAllJSFunctions):
9         (WebCore::PageScriptDebugServer::didRemoveLastListener):
10         * bindings/js/PageScriptDebugServer.h:
11         * bindings/js/ScriptDebugServer.cpp:
12         (WebCore::ScriptDebugServer::ScriptDebugServer):
13         (WebCore::ScriptDebugServer::recompileAllJSFunctionsSoon):
14         (WebCore::ScriptDebugServer::recompileAllJSFunctionsTimerFired):
15         * bindings/js/ScriptDebugServer.h:
16         * bindings/js/WorkerScriptDebugServer.cpp:
17         (WebCore::WorkerScriptDebugServer::addListener):
18         (WebCore::WorkerScriptDebugServer::recompileAllJSFunctions):
19         (WebCore::WorkerScriptDebugServer::removeListener):
20         * inspector/InspectorProfilerAgent.cpp:
21
22 2014-01-22  peavo@outlook.com  <peavo@outlook.com>
23
24         Crashes in setTextForIterator
25         https://bugs.webkit.org/show_bug.cgi?id=127424
26
27         Reviewed by Brent Fulgham.
28
29         * platform/text/icu/UTextProviderLatin1.cpp:
30         (WebCore::uTextLatin1Clone): Provide correct buffer size in utext_setup function call.
31         (WebCore::uTextLatin1Access): Give correct buffer size to memset call.
32         (WebCore::openLatin1UTextProvider): Ditto.
33
34 2014-01-22  Jer Noble  <jer.noble@apple.com>
35
36         [Mac] MediaPlayerPrivateMediaSourceAVFObjC::load ASSERTs on lots of tests
37         https://bugs.webkit.org/show_bug.cgi?id=127430
38
39         Reviewed by Eric Carlson.
40
41         When other registered media engines cannot load a URL, the engine selection
42         will eventually pick MediaPlayerPrivateMediaSourceAVFObjC and ask it to load
43         the URL. Instead of ASSERTing here, simply reject the URL by setting the
44         network state to FormatError.
45
46         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
47         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::load):
48
49 2014-01-22  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
50
51         [EFL][GTK] Get EFL and GTK compiling with ACCESSIBILITY disabled
52         https://bugs.webkit.org/show_bug.cgi?id=127119
53
54         Reviewed by Mario Sanchez Prada.
55
56         At build time, the compiler was not able to determine which Timer's constructor to call in AXObjectCache when
57         ACCESSIBILITY is not enabled, fixing that.
58         Also guarding some members in AccessibilityObject that are only being used by EFL and GTK with ACCESSIBILITY.
59
60         * accessibility/AXObjectCache.h:
61         (WebCore::AXObjectCache::AXObjectCache):
62         * accessibility/AccessibilityObject.h:
63
64 2014-01-22  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
65
66         Refactor calculation of hasRx and hasRy values in SVGPathData
67         https://bugs.webkit.org/show_bug.cgi?id=127423
68
69         Reviewed by Darin Adler.
70
71         This is a follow-up on https://bugs.webkit.org/show_bug.cgi?id=127337
72
73         * rendering/svg/SVGPathData.cpp:
74         (WebCore::updatePathFromRectElement):
75
76 2014-01-21  Joseph Pecoraro  <pecoraro@apple.com>
77
78         Web Inspector: Remove recompileAllJSFunctions timer in ScriptDebugServer
79         https://bugs.webkit.org/show_bug.cgi?id=127409
80
81         Reviewed by Timothy Hatcher.
82
83         * bindings/js/ScriptDebugServer.h:
84         * bindings/js/ScriptDebugServer.cpp:
85         (WebCore::ScriptDebugServer::ScriptDebugServer):
86         Remove m_recompileTimer and the recompile soon function.
87         We can just recompile immediately in all existing cases.
88
89         * bindings/js/PageScriptDebugServer.h:
90         * bindings/js/PageScriptDebugServer.cpp:
91         (WebCore::PageScriptDebugServer::addListener):
92         (WebCore::PageScriptDebugServer::removeListener):
93         (WebCore::PageScriptDebugServer::recompileAllJSFunctions):
94         (WebCore::PageScriptDebugServer::didAddFirstListener):
95         (WebCore::PageScriptDebugServer::didRemoveLastListener):
96         Add a "didAddFirstListener" to match "didRemoveLastListener".
97         Only recompile functions when we attach the debugger and when
98         we detach the last listener.
99
100         * bindings/js/WorkerScriptDebugServer.cpp:
101         (WebCore::WorkerScriptDebugServer::addListener):
102         (WebCore::WorkerScriptDebugServer::removeListener):
103         (WebCore::WorkerScriptDebugServer::recompileAllJSFunctions):
104         Same thing. Also rearrange the functions to read better.
105
106         * inspector/InspectorProfilerAgent.cpp:
107         Use the direct recompile function instead of the removed "soon" version.
108
109 2014-01-22  Robert Sipka  <sipka@inf.u-szeged.hu>
110
111         [curl] Improve detecting and handling of SSL client certificate
112         https://bugs.webkit.org/show_bug.cgi?id=125006
113
114         Reviewed by Brent Fulgham.
115
116         Add client certificate handling.
117
118         * platform/network/ResourceHandle.h:
119         * platform/network/curl/ResourceError.h:
120         (WebCore::ResourceError::hasSSLConnectError):
121         * platform/network/curl/ResourceHandleCurl.cpp:
122         (WebCore::ResourceHandle::setClientCertificateInfo):
123         * platform/network/curl/ResourceHandleManager.cpp:
124         (WebCore::ResourceHandleManager::initializeHandle):
125         * platform/network/curl/SSLHandle.cpp:
126         (WebCore::addAllowedClientCertificate):
127         (WebCore::setSSLClientCertificate):
128         * platform/network/curl/SSLHandle.h:
129
130 2014-01-22  Mihai Maerean  <mmaerean@adobe.com>
131
132         [CSS Regions] layerOwner in RenderNamedFlowFragment cannot return null
133         https://bugs.webkit.org/show_bug.cgi?id=127343
134
135         Reviewed by Sam Weinig.
136
137         RenderNamedFlowFragment::layerOwner cannot return null because regions create stacking
138         contexts which create layers.
139
140         No new tests, no functional change.
141
142         * rendering/RenderFlowThread.cpp:
143         (WebCore::RenderFlowThread::hasCompositingRegionDescendant):
144         * rendering/RenderLayer.cpp:
145         (WebCore::RenderLayer::calculateClipRects):
146         * rendering/RenderLayerBacking.cpp:
147         (WebCore::RenderLayerBacking::adjustAncestorCompositingBoundsForFlowThread):
148         * rendering/RenderLayerCompositor.cpp:
149         (WebCore::RenderLayerCompositor::computeRegionCompositingRequirements):
150         * rendering/RenderNamedFlowFragment.h:
151
152 2014-01-22  Antti Koivisto  <antti@apple.com>
153
154         Avoid unthrottled layer flushes triggered by RenderLayerCompositor::ensureRootLayer
155         https://bugs.webkit.org/show_bug.cgi?id=127426
156
157         Reviewed by Anders Carlsson.
158         
159         * rendering/RenderLayerCompositor.cpp:
160         (WebCore::RenderLayerCompositor::updateScrollLayerPosition):
161         (WebCore::RenderLayerCompositor::frameViewDidScroll):
162
163             Factor scroll layer position update to a function.
164
165         (WebCore::RenderLayerCompositor::ensureRootLayer):
166         
167             Stop calling frameViewDidChangeSize/frameViewDidScroll. Instead call the relevent functions
168             directly. This avoid unthrottled layer flush that is done when the view actually scrolls.
169
170         * rendering/RenderLayerCompositor.h:
171
172 2014-01-22  Mihai Tica  <mitica@adobe.com>
173
174         [CSS Background Blending] -webkit-background-blend-mode fails for certain SVG files
175         https://bugs.webkit.org/show_bug.cgi?id=127350
176
177         Reviewed by Dirk Schulze.
178
179         The graphics context of the SVG inherits the blend mode set
180         on the background layer. Fix consists in drawing the SVG
181         in a transparency layer.
182
183         Test: css3/compositing/background-blend-mode-svg.html
184
185         * svg/graphics/SVGImage.cpp:
186         (WebCore::SVGImage::draw): Begin a transparency layer if a blend mode is set.
187
188 2014-01-22  Antti Koivisto  <antti@apple.com>
189
190         Update overlay scrollbars in single pass
191         https://bugs.webkit.org/show_bug.cgi?id=127289
192
193         Reviewed by Anders Carlsson.
194
195         * platform/ScrollView.cpp:
196         (WebCore::ScrollView::updateScrollbars):
197         
198             Multi-pass scrollbar resolution is only needed for traditional scrollbars. Overlay scrollbars don't affect layout.
199
200 2014-01-22  Mihnea Ovidenie  <mihnea@adobe.com>
201
202         [CSSRegions] Incorrect layout of a region pseudo children
203         https://bugs.webkit.org/show_bug.cgi?id=126146
204
205         Reviewed by David Hyatt.
206
207         Test: fast/regions/collapse-anonymous-region.html
208
209         A region behaviour, styled using -webkit-flow-from, is modeled using an anonymous
210         block created to fragment the named flow content inside the region. We have to prevent
211         the behaviour of anonymous children collapsing for this block to make sure that the
212         region element children are still laid out properly when the region element becomes an ordinary
213         element.
214
215         * rendering/RenderBlockFlow.h:
216
217 2014-01-21  Ryuan Choi  <ryuan.choi@samsung.com>
218
219         Remove unused "acceleratedCompositingForScrollableFramesEnabled" setting
220         https://bugs.webkit.org/show_bug.cgi?id=127402
221
222         Reviewed by Anders Carlsson.
223
224         compositing/iframes/iframe-composited-scrolling.html is updated because
225         there are no usages in WebCore.
226
227         * page/Settings.in:
228
229 2014-01-21  Alex Christensen  <achristensen@webkit.org>
230
231         Compile fix for using libsoup on Windows.
232         https://bugs.webkit.org/show_bug.cgi?id=127377
233
234         Reviewed by Daniel Bates.
235
236         * platform/network/soup/ProxyResolverSoup.cpp:
237         (soupProxyResolverWkSetProperty):
238         (soupProxyResolverWkGetProperty):
239         (soupProxyResolverWkGetProxyURISync):
240         Replaced uint with unsigned.
241
242 2014-01-21  Daniel Bates  <dabates@apple.com>
243
244         Break up single assertion into two assertions in HTMLMediaElement::returnPlatformLayer()
245
246         Following up after <http://trac.webkit.org/changeset/162473>, we should break up
247         the assertion into two assertions as suggested by Darin Adler. Separating the single
248         assertion into two assertions makes it straightforward to determine the conjunct that
249         failed among other benefits.
250
251         * html/HTMLMediaElement.cpp:
252         (WebCore::HTMLMediaElement::parseAttribute):
253
254 2014-01-21  Brady Eidson  <beidson@apple.com>
255
256         The IDB backing store put() method shouldn't call IDB callbacks directly
257         https://bugs.webkit.org/show_bug.cgi?id=127399
258
259         Reviewed by Beth Dakin.
260
261         Refactor the put() callback to take a resulting key or an error.
262         * Modules/indexeddb/IDBServerConnection.h:
263
264         * Modules/indexeddb/IDBTransactionBackendOperations.cpp:
265         (WebCore::PutOperation::perform): Call to the backing store, then perform the
266           appropriate IDB callback whether a key or an error was returned.
267         * Modules/indexeddb/IDBTransactionBackendOperations.h:
268
269         * Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.cpp:
270         (WebCore::IDBServerConnectionLevelDB::put): Don’t call IDB callbacks directly.
271           Instead, pass the resulting key/error back to the PutOperation.
272         * Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.h:
273
274 2014-01-21  Jae Hyun Park  <jae.park@company100.net>
275
276         Use nullptr in HTMLCanvasElement
277         https://bugs.webkit.org/show_bug.cgi?id=127388
278
279         Reviewed by Gyuyoung Kim.
280
281         * html/HTMLCanvasElement.cpp:
282         (WebCore::HTMLCanvasElement::getContext):
283         (WebCore::HTMLCanvasElement::drawingContext):
284         (WebCore::HTMLCanvasElement::existingDrawingContext):
285
286 2014-01-21  László Langó  <llango.u-szeged@partner.samsung.com>
287
288         Assertion failure in Range::nodeWillBeRemoved
289         https://bugs.webkit.org/show_bug.cgi?id=121694
290
291         Reviewed by Ryosuke Niwa.
292
293         Based on Blink a change: https://chromium.googlesource.com/chromium/blink/+/407c1d7b2c45974aa614b3f847ffe9e8fce205fa
294
295         This patch fix an assertion failure. Range::nodeWillBeRemoved() might
296         be called with removed node in ContainerNode, when DOMNodeRemovedFromDocument
297         event handler calls removeChild(), for node being removed.
298
299         Test: fast/dom/Range/remove-twice-crash.html
300
301         * dom/ContainerNode.cpp:
302         (WebCore::ContainerNode::willRemoveChild):
303         * dom/ContainerNode.h:
304
305 2014-01-21  Tim Horton  <timothy_horton@apple.com>
306
307         REGRESSION (r161580): Some PDFs render outside their <img>
308         https://bugs.webkit.org/show_bug.cgi?id=127381
309         <rdar://problem/15872168>
310
311         Reviewed by Simon Fraser.
312
313         * platform/graphics/cg/PDFDocumentImage.cpp:
314         (WebCore::transformContextForPainting):
315         Only try to make the scale uniform if it isn't already, and use the minimum
316         of the two original scales when doing so, so that it is absolutely certain
317         to fit inside space allocated for the image during layout.
318
319 2014-01-21  Simon Fraser  <simon.fraser@apple.com>
320
321         Remove #if PLATFORM(IOS) in various places around customFixedPositionLayoutRect() code
322         https://bugs.webkit.org/show_bug.cgi?id=127373
323
324         Reviewed by Beth Dakin.
325
326         Instead of PLATFORM(IOS) #idefs at every call site for viewportConstrainedVisibleContentRect(),
327         move the #ifdef inside viewportConstrainedVisibleContentRect().
328         
329         The one call site that needs special handling is RenderLayerBacking::updateCompositedBounds(),
330         which needs to avoid clipping fixed layers to the custom fixed position rect, but instead to
331         visibleContentRect() (which is really the document bounds on iOS). This ensures that the
332         fixed layers aren't clipped when zooming out.
333
334         * page/FrameView.cpp:
335         (WebCore::FrameView::viewportConstrainedVisibleContentRect):
336         * rendering/RenderBoxModelObject.cpp:
337         (WebCore::RenderBoxModelObject::stickyPositionOffset):
338         * rendering/RenderLayerBacking.cpp:
339         (WebCore::RenderLayerBacking::updateCompositedBounds):
340         * rendering/RenderLayerCompositor.cpp:
341         (WebCore::RenderLayerCompositor::requiresCompositingForPosition):
342         (WebCore::RenderLayerCompositor::computeFixedViewportConstraints):
343         (WebCore::RenderLayerCompositor::computeStickyViewportConstraints):
344
345 2014-01-21  Andy Estes  <aestes@apple.com>
346
347         [iOS] Allow all clients to link against WebCore
348         https://bugs.webkit.org/show_bug.cgi?id=127372
349         
350         Reviewed by Dan Bernstein.
351
352         * Configurations/WebCore.xcconfig:
353
354 2014-01-21  Bear Travis  <betravis@adobe.com>
355
356         [CSS Shapes] Preserve box-shape order when serializing shape values
357         https://bugs.webkit.org/show_bug.cgi?id=127200
358
359         Reviewed by Dirk Schulze.
360
361         Convert the parsed shape-box pair to a CSSValueList rather than directly
362         adding the box value to BasicShape. The CSSValueList preserves the
363         shape-box ordering, and cleans up a little bit of the code shared between
364         clip and shape values.
365
366         Modifying existing parsing tests.
367
368         * css/CSSComputedStyleDeclaration.cpp:
369         (WebCore::shapePropertyValue): Factor out code common to generating shape
370         values.
371         (WebCore::ComputedStyleExtractor::propertyValue): Generate a CSSValueList when
372         you have both a shape and a box.
373         * css/CSSParser.cpp:
374         (WebCore::CSSParser::parseBasicShapeAndOrBox): Factor out code common to clip
375         paths and shape properties that parses the [basic-shape || box] syntax from
376         the CSS Shapes spec.
377         (WebCore::CSSParser::parseShapeProperty): Parse shape-box pairs as a CSSValueList.
378         * css/DeprecatedStyleBuilder.cpp:
379         (WebCore::ApplyPropertyShape::applyValue): Use the CSSValueList for shape-box pairs.
380         * css/CSSValueList.h:
381         (WebCore::CSSValueList::itemWithoutBoundsCheck): Add a const version.
382         * page/animation/CSSPropertyAnimation.cpp:
383         (WebCore::blendFunc): Specify a box when blending.
384         * rendering/style/ShapeValue.h:
385         (WebCore::ShapeValue::createShapeValue): Add a box parameter.
386         (WebCore::ShapeValue::ShapeValue): Ditto.
387
388 2014-01-21  Daniel Bates  <dabates@apple.com>
389
390         Fix the iOS Simulator release build
391
392         Substitute ASSERT_UNUSED() for ASSERT() to resolve a compiler warning
393         that the argument platformLayer is unused. The argument platformLayer
394         is only used in the asserted condition, which isn't compiled in a
395         release build; => the argument is unused in a release build.
396
397         * html/HTMLMediaElement.cpp:
398         (WebCore::HTMLMediaElement::parseAttribute):
399
400 2014-01-21  Zoltan Horvath  <zoltan@webkit.org>
401
402         Since MidpointState is a class, it should behave like a class
403         https://bugs.webkit.org/show_bug.cgi?id=127154
404
405         Reviewed by David Hyatt.
406
407         I modified MidpointState to behave like a class, updated the call sites also.
408
409         No new tests, no behavior change.
410
411         * platform/text/BidiResolver.h:
412         (WebCore::MidpointState::reset):
413         (WebCore::MidpointState::startIgnoringSpaces):
414         (WebCore::MidpointState::stopIgnoringSpaces):
415         (WebCore::MidpointState::midpoints):
416         (WebCore::MidpointState::numMidpoints):
417         (WebCore::MidpointState::currentMidpoint):
418         (WebCore::MidpointState::incrementCurrentMidpoint):
419         (WebCore::MidpointState::decreaseNumMidpoints):
420         (WebCore::MidpointState::betweenMidpoints):
421         (WebCore::MidpointState::setBetweenMidpoints):
422         (WebCore::MidpointState::addMidpoint): Renamed from deprecatedAddMidpoint, since now
423         its private, we no longer need to discourage callers from using it.
424         * rendering/InlineIterator.h:
425         (WebCore::IsolateTracker::addFakeRunIfNecessary):
426         * rendering/RenderBlockLineLayout.cpp:
427         (WebCore::RenderBlockFlow::appendRunsForObject):
428         (WebCore::constructBidiRunsForLine):
429         * rendering/line/BreakingContextInlineHeaders.h:
430         (WebCore::checkMidpoints):
431         * rendering/line/TrailingObjects.cpp:
432         (WebCore::TrailingObjects::updateMidpointsForTrailingBoxes):
433
434 2014-01-21  Commit Queue  <commit-queue@webkit.org>
435
436         Unreviewed, rolling out r162452.
437         http://trac.webkit.org/changeset/162452
438         https://bugs.webkit.org/show_bug.cgi?id=127366
439
440         broke a few tests on all Mac WebKit1 bots (Requested by
441         thorton on #webkit).
442
443         * WebCore.exp.in:
444         * page/FocusController.cpp:
445         (WebCore::FocusController::FocusController):
446         (WebCore::FocusController::setFocused):
447         (WebCore::FocusController::setActive):
448         (WebCore::FocusController::setContentIsVisible):
449         * page/FocusController.h:
450         (WebCore::FocusController::isActive):
451         (WebCore::FocusController::isFocused):
452         * page/Page.cpp:
453         (WebCore::Page::Page):
454         (WebCore::Page::setIsInWindow):
455         (WebCore::Page::setIsVisuallyIdle):
456         (WebCore::Page::setIsVisible):
457         (WebCore::Page::visibilityState):
458         (WebCore::Page::hiddenPageCSSAnimationSuspensionStateChanged):
459         * page/Page.h:
460         (WebCore::Page::isVisible):
461         (WebCore::Page::isInWindow):
462
463 2014-01-21  Chris Fleizach  <cfleizach@apple.com>
464
465         AX: Mac: Expose the visible text of a password field to AX
466         https://bugs.webkit.org/show_bug.cgi?id=127353
467
468         Reviewed by Brent Fulgham.
469
470         The Mac platform should now expose the rendered value of password fields through AX.
471
472         Test: accessibility/password-field-value.html
473
474         * accessibility/AccessibilityRenderObject.cpp:
475         (WebCore::AccessibilityRenderObject::textLength):
476         (WebCore::AccessibilityRenderObject::passwordFieldValue):
477
478 2014-01-21  Robert Sipka  <sipka@inf.u-szeged.hu>
479
480         Support SSL error handling in case of synchronous job.
481         https://bugs.webkit.org/show_bug.cgi?id=125301
482
483         Reviewed by Brent Fulgham.
484
485         Set ssl error informations for the users.
486
487         * platform/network/curl/ResourceHandleManager.cpp:
488         (WebCore::ResourceHandleManager::dispatchSynchronousJob):
489
490 2014-01-21  Simon Fraser  <simon.fraser@apple.com>
491
492         Export systemTotalMemory() and systemMemoryLevel() for MobileSafari
493         https://bugs.webkit.org/show_bug.cgi?id=127360
494
495         Reviewed by Andy Estes.
496         
497         MobileSafari inappropriately calls these WebCore functions directly,
498         so export them.
499
500         * WebCore.exp.in:
501
502 2014-01-21  Simon Fraser  <simon.fraser@apple.com>
503
504         Clean up PLATFORM(IOS) code related to the custom fixed position layout rect
505         https://bugs.webkit.org/show_bug.cgi?id=127362
506
507         Reviewed by Dave Hyatt.
508
509         Various platforms customize the rect used to layout position:fixed elements,
510         and each modified RenderBox::availableLogicalHeight/WidthUsing() in different
511         ways.
512         
513         Clean this up by adding RenderView::clientLogicalWidth/HeightForFixedPosition(),
514         and moving the platform hacks into it.
515
516         * rendering/RenderBox.cpp:
517         (WebCore::RenderBox::availableLogicalHeightUsing):
518         (WebCore::RenderBox::containingBlockLogicalWidthForPositioned):
519         (WebCore::RenderBox::containingBlockLogicalHeightForPositioned):
520         * rendering/RenderView.cpp:
521         (WebCore::RenderView::clientLogicalWidthForFixedPosition):
522         (WebCore::RenderView::clientLogicalHeightForFixedPosition):
523         * rendering/RenderView.h:
524
525 2014-01-21  Tamas Gergely  <tgergely.u-szeged@partner.samsung.com>
526
527         ASSERT(time.isFinite()) in SVGSMILElement::createInstanceTimesFromSyncbase
528         <https://webkit.org/b/108184>
529
530         Reviewed by Philip Rogers.
531
532         In the case a SMILElement timing had a syncbase dependency on an indefinite value
533         the assert were raised. The assert has been removed and a check has been added
534         instead that prevents the addition of indefinite times to the time list.
535
536         Test: svg/animations/smil-syncbase-self-dependency.svg
537
538         * svg/animation/SVGSMILElement.cpp:
539         (WebCore::SVGSMILElement::createInstanceTimesFromSyncbase):
540           ASSERT removed.
541
542 2014-01-21  Tim Horton  <timothy_horton@apple.com>
543
544         Address late review naming comments after r162453.
545
546         * WebCore.xcodeproj/project.pbxproj:
547         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
548         * platform/graphics/mac/CALayerWebAdditions.h: Removed.
549         * platform/graphics/mac/CALayerWebAdditions.mm: Removed.
550         * platform/graphics/mac/WebCoreCALayerExtras.h: Added.
551         * platform/graphics/mac/WebCoreCALayerExtras.mm: Added.
552         (-[CALayer web_disableAllActions]):
553
554 2014-01-21  Tim Horton  <timothy_horton@apple.com>
555
556         Keep CALayer implicit animation disabling code in a single place
557         https://bugs.webkit.org/show_bug.cgi?id=127355
558
559         Reviewed by Simon Fraser.
560
561         * WebCore.xcodeproj/project.pbxproj:
562         Add CALayerWebAdditions.{h,mm}.
563
564         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
565         (PlatformCALayerMac::commonInit):
566         Remove nullActionsDictionary() and use [CALayer(WebAdditions) web_disableAllActions] instead.
567
568         * platform/graphics/mac/CALayerWebAdditions.h: Added.
569         * platform/graphics/mac/CALayerWebAdditions.mm: Added.
570         (-[CALayer web_disableAllActions]):
571         Added. Disable all implicit actions on the layer.
572
573 2014-01-21  Gavin Barraclough  <barraclough@apple.com>
574
575         Change Page, FocusController to use ViewState
576         https://bugs.webkit.org/show_bug.cgi?id=126533
577
578         Reviewed by Tim Horton.
579
580         These classes currently maintain a set of separate fields to represent the view state;
581         combine these into a single field, and allow WebPage to send the combined update rather
582         than individual changes.
583
584         Maintain existing interface for WebKit1 clients.
585
586         * WebCore.exp.in:
587             - Added WebCore::setViewState, removed WebCore::setIsVisuallyIdle.
588         * page/FocusController.cpp:
589         (WebCore::FocusController::FocusController):
590             - Initialize combined m_viewState.
591         (WebCore::FocusController::setFocused):
592             - Calls setViewState.
593         (WebCore::FocusController::setFocusedInternal):
594             - setFocused -> setFocusedInternal.
595         (WebCore::FocusController::setViewState):
596             - Added, update all ViewState flags.
597         (WebCore::FocusController::setActive):
598             - Calls setViewState.
599         (WebCore::FocusController::setActiveInternal):
600             - setActive -> setActiveInternal.
601         (WebCore::FocusController::setContentIsVisible):
602             - Calls setViewState.
603         (WebCore::FocusController::setContentIsVisibleInternal):
604             - setContentIsVisible -> setContentIsVisibleInternal.
605         * page/FocusController.h:
606         (WebCore::FocusController::isActive):
607         (WebCore::FocusController::isFocused):
608         (WebCore::FocusController::contentIsVisible):
609             - Implemented in terms of ViewState.
610         * page/Page.cpp:
611         (WebCore::Page::Page):
612             - Initialize using PageInitialViewState.
613         (WebCore::Page::setIsInWindow):
614             - Calls setViewState.
615         (WebCore::Page::setIsInWindowInternal):
616             - setIsInWindow -> setIsInWindowInternal.
617         (WebCore::Page::setIsVisuallyIdleInternal):
618             - setIsVisuallyIdle -> setIsVisuallyIdleInternal.
619         (WebCore::Page::setViewState):
620             - Added, update all ViewState flags, including FocusController.
621         (WebCore::Page::setIsVisible):
622             - Calls setViewState.
623         (WebCore::Page::setIsVisibleInternal):
624             - setIsVisible -> setIsVisibleInternal.
625         (WebCore::Page::visibilityState):
626             - m_isVisible -> isVisible()
627         (WebCore::Page::hiddenPageCSSAnimationSuspensionStateChanged):
628             - m_isVisible -> isVisible()
629         * page/Page.h:
630         (WebCore::Page::isVisible):
631         (WebCore::Page::isInWindow):
632             - Implemented in terms of ViewState.
633         (WebCore::Page::scriptedAnimationsSuspended):
634             - Combined member fields into ViewState::Flags.
635
636 2014-01-21  Lauro Neto  <lauro.neto@openbossa.org>
637
638         Remove PLATFORM(NIX) from WebCore
639         https://bugs.webkit.org/show_bug.cgi?id=127299
640
641         Reviewed by Anders Carlsson.
642
643         * editing/Editor.cpp:
644         (WebCore::Editor::cut):
645         (WebCore::Editor::copy):
646         (WebCore::Editor::copyImage):
647         * editing/Editor.h:
648         * html/HTMLCanvasElement.h:
649         * loader/EmptyClients.h:
650         * loader/FrameLoader.cpp:
651         (WebCore::FrameLoader::defaultObjectContentType):
652         * page/ChromeClient.h:
653         * page/DragController.cpp:
654         (WebCore::DragController::startDrag):
655         * platform/Cursor.h:
656         * platform/DragData.h:
657         * platform/DragImage.h:
658         * platform/FileSystem.h:
659         * platform/LocalizedStrings.h:
660         * platform/Widget.h:
661         * platform/audio/FFTFrame.h:
662         * platform/audio/HRTFElevation.cpp:
663         * platform/cairo/WidgetBackingStore.h:
664         * platform/graphics/ANGLEWebKitBridge.h:
665         * platform/graphics/FontPlatformData.h:
666         * platform/graphics/GLContext.cpp:
667         (WebCore::GLContext::createContextForWindow):
668         * platform/graphics/GLContext.h:
669         * platform/graphics/GraphicsContext3D.h:
670         * platform/graphics/GraphicsContext3DPrivate.cpp:
671         (WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
672         * platform/graphics/OpenGLESShims.h:
673         * platform/graphics/OpenGLShims.cpp:
674         (WebCore::getProcAddress):
675         * platform/graphics/OpenGLShims.h:
676         * platform/graphics/PlatformLayer.h:
677         * platform/graphics/freetype/FontPlatformDataFreeType.cpp:
678         * platform/graphics/opengl/Extensions3DOpenGL.cpp:
679         (WebCore::Extensions3DOpenGL::createVertexArrayOES):
680         (WebCore::Extensions3DOpenGL::deleteVertexArrayOES):
681         (WebCore::Extensions3DOpenGL::isVertexArrayOES):
682         (WebCore::Extensions3DOpenGL::bindVertexArrayOES):
683         (WebCore::Extensions3DOpenGL::supportsExtension):
684         * platform/graphics/opengl/Extensions3DOpenGL.h:
685         * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
686         * platform/graphics/opengl/Extensions3DOpenGLES.h:
687         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
688         * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
689         (WebCore::GraphicsContext3D::reshape):
690         * platform/graphics/opengl/TemporaryOpenGLSetting.cpp:
691         * platform/graphics/texmap/TextureMapper.h:
692         * platform/network/ResourceHandle.h:
693         * plugins/PluginPackage.cpp:
694         * plugins/PluginView.cpp:
695         (WebCore::PluginView::PluginView):
696         * plugins/PluginView.h:
697         * plugins/PluginViewNone.cpp:
698         * rendering/SimpleLineLayout.cpp:
699         (WebCore::SimpleLineLayout::canUseFor):
700
701 2014-01-21  Eric Carlson  <eric.carlson@apple.com>
702
703         Add &lrm; &rlm; and &nbsp; to WebVTT parser
704         https://bugs.webkit.org/show_bug.cgi?id=85112
705
706         Reviewed by Jer Noble.
707
708         No new tests, track-webvtt-tc022-entities.html was updated to test this.
709
710         * html/track/WebVTTTokenizer.cpp:
711         (WebCore::WebVTTTokenizer::nextToken): Support RLM, LRM, and NBSP entities.
712
713 2014-01-21  Commit Queue  <commit-queue@webkit.org>
714
715         Unreviewed, rolling out r162354.
716         http://trac.webkit.org/changeset/162354
717         https://bugs.webkit.org/show_bug.cgi?id=127354
718
719         Appears to have broken accessibility in a non-trivial way
720         (Requested by ap on #webkit).
721
722         * platform/ScrollView.cpp:
723         (WebCore::ScrollView::updateScrollbars):
724
725 2014-01-21  Commit Queue  <commit-queue@webkit.org>
726
727         Unreviewed, rolling out r162445.
728         http://trac.webkit.org/changeset/162445
729         https://bugs.webkit.org/show_bug.cgi?id=127351
730
731         It broke the 32 bit GTK build (Requested by Ossy on #webkit).
732
733         * rendering/style/StyleRareInheritedData.cpp:
734
735 2014-01-21  László Langó  <llango.u-szeged@partner.samsung.com>
736
737         Wrong struct size when CSS_IMAGE_ORIENTATION and CSS3_TEXT_DECORATION are enabled.
738         https://bugs.webkit.org/show_bug.cgi?id=127346
739
740         Efl build fix.
741
742         Reviewed by Csaba Osztrogonác.
743
744         * rendering/style/StyleRareInheritedData.cpp:
745
746 2014-01-21  Antti Koivisto  <antti@apple.com>
747
748         Delay initial layer flush during loading on all platforms
749         https://bugs.webkit.org/show_bug.cgi?id=127347
750
751         Reviewed by Andreas Kling.
752
753         To reduce unnecessary repaints enable the same behaviour as iOS already has.
754
755         * rendering/RenderLayerCompositor.cpp:
756         (WebCore::RenderLayerCompositor::RenderLayerCompositor):
757         
758             Set the initial state of m_layerFlushThrottlingEnabled correctly.
759
760         (WebCore::RenderLayerCompositor::scheduleLayerFlush):
761         (WebCore::RenderLayerCompositor::startInitialLayerFlushTimerIfNeeded):
762         * rendering/RenderLayerCompositor.h:
763         
764             Enable initial layer flush delay on all platforms.
765
766 2014-01-21  Mihai Tica  <mitica@adobe.com>
767
768         If you set a tiled cross-faded-image or a tiled gradient as
769         a background layer, -webkit-background-blend-mode doesn't work.
770         The problem consists in the blendMode parameter not being set
771         for these specific drawing paths.
772
773         https://bugs.webkit.org/show_bug.cgi?id=126888
774         Reviewed by Dirk Schulze.
775
776         Test: css3/compositing/background-blend-mode-tiled-layers.html
777
778         * platform/graphics/CrossfadeGeneratedImage.cpp:
779         (WebCore::CrossfadeGeneratedImage::drawPattern): Add the blendMode parameter and pass it to ImageBuffer::drawPattern.
780         * platform/graphics/GradientImage.cpp:
781         (WebCore::GradientImage::drawPattern): Add the blendMode parameter and pass it to ImageBuffer::drawPattern.
782         * platform/graphics/ImageBuffer.h: Add a BlendMode parameter to the drawPattern method.
783         * platform/graphics/cairo/ImageBufferCairo.cpp:
784         (WebCore::ImageBuffer::drawPattern): Add the default BlendMode parameter to the method declaration.
785         * platform/graphics/cg/ImageBufferCG.cpp:
786         (WebCore::ImageBuffer::drawPattern): Add and use the blendMode parameter for all the code paths.
787         * platform/graphics/wince/ImageBufferWinCE.cpp:
788         (WebCore::BufferedImage::drawPattern): Add the default BlendMode parameter to the method declaration.
789
790 2014-01-21  Gurpreet Kaur  <k.gurpreet@samsung.com>
791
792         The WebCore.vcxproj.filters doesnot apply
793         https://bugs.webkit.org/show_bug.cgi?id=127338
794
795         Reviewed by Csaba Osztrogonác.
796
797         * WebCore.vcxproj/WebCore.vcxproj.filters:
798         Modified the WebCore.vcxproj.filters so that it is applied when loading
799         WebCore.vcxproj file.
800
801 2014-01-21  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
802
803         Fix SVG animations which set rx or ry attributes
804         https://bugs.webkit.org/show_bug.cgi?id=127337
805
806         Reviewed by Dirk Schulze.
807
808         Test: svg/stroke/animated-non-scaling-rxry.html
809
810         Merged from Blink: https://src.chromium.org/viewvc/blink?revision=152376&view=revision
811
812         * rendering/svg/RenderSVGRect.cpp:
813         (WebCore::RenderSVGRect::updateShapeFromElement):
814         * rendering/svg/SVGPathData.cpp:
815         (WebCore::updatePathFromRectElement):
816
817 2014-01-21  Krzysztof Czech  <k.czech@samsung.com>
818
819         [ATK] Expose aria-flowto through ATK_RELATION_FLOWS_TO
820         https://bugs.webkit.org/show_bug.cgi?id=127291
821
822         Reviewed by Mario Sanchez Prada.
823
824         Test: accessibility/aria-flowto.html
825
826         Expose aria-flowto through ATK_RELATION_FLOWS_TO according to
827         http://www.w3.org/TR/wai-aria-implementation/#mapping_state-property
828
829         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
830         (setAtkRelationSetFromCoreObject):
831
832 2014-01-20  Ryuan Choi  <ryuan.choi@samsung.com>
833
834         [CMAKE] Remove Nix from CMake scripts
835         https://bugs.webkit.org/show_bug.cgi?id=127264
836
837         Reviewed by Anders Carlsson.
838
839         * CMakeLists.txt:
840
841 2014-01-20  Anders Carlsson  <andersca@apple.com>
842
843         Remove an unused PageGroup function
844         https://bugs.webkit.org/show_bug.cgi?id=127327
845
846         Reviewed by Andreas Kling.
847
848         * WebCore.exp.in:
849         * page/PageGroup.cpp:
850         * page/PageGroup.h:
851
852 2014-01-20  Anders Carlsson  <andersca@apple.com>
853
854         Move user style sheet handling to UserContentController
855         https://bugs.webkit.org/show_bug.cgi?id=127322
856         <rdar://problem/15861296>
857
858         Reviewed by Andreas Kling.
859
860         * dom/DocumentStyleSheetCollection.cpp:
861         (WebCore::DocumentStyleSheetCollection::updateInjectedStyleSheetCache):
862         * page/PageGroup.cpp:
863         (WebCore::PageGroup::addUserStyleSheetToWorld):
864         (WebCore::PageGroup::removeUserStyleSheetFromWorld):
865         (WebCore::PageGroup::removeUserStyleSheetsFromWorld):
866         (WebCore::PageGroup::removeAllUserContent):
867         * page/PageGroup.h:
868         * page/UserContentController.cpp:
869         (WebCore::UserContentController::addUserStyleSheet):
870         (WebCore::UserContentController::removeUserStyleSheet):
871         (WebCore::UserContentController::removeUserStyleSheets):
872         (WebCore::UserContentController::removeAllUserContent):
873         (WebCore::UserContentController::invalidateInjectedStyleSheetCacheInAllFrames):
874         * page/UserContentController.h:
875         (WebCore::UserContentController::userStyleSheets):
876
877 2014-01-20  Benjamin Poulain  <benjamin@webkit.org>
878
879         Add a nicer way to iterate over all the attributes of an element
880         https://bugs.webkit.org/show_bug.cgi?id=127266
881
882         Reviewed by Geoffrey Garen.
883
884         When using Element::attributeAt() in a loop, the compiler had to generate two kinds of
885         accessor:
886         -If the element data is unique, the length and data comes from the attribute Vector.
887         -If the element data is shared, the data comes from the tail of elementData itself.
888
889         The choice was done for every access, which caused the assembly to be a little
890         hard to follow.
891         This patch unify the data access by doing everything as a array pointer with offset (getting
892         that data from Vector when necessary).
893
894         To make it easier to do the right thing, a new iterator was added so that range-based loops
895         can replace all the faulty cases.
896
897         * css/SelectorChecker.cpp:
898         (WebCore::anyAttributeMatches):
899         * css/SelectorChecker.h:
900         (WebCore::SelectorChecker::checkExactAttribute):
901         * dom/DatasetDOMStringMap.cpp:
902         (WebCore::DatasetDOMStringMap::getNames):
903         (WebCore::DatasetDOMStringMap::item):
904         (WebCore::DatasetDOMStringMap::contains):
905         * dom/Element.cpp:
906         (WebCore::Element::normalizeAttributes):
907         (WebCore::Element::detachAllAttrNodesFromElement):
908         (WebCore::Element::cloneAttributesFromElement):
909         * dom/Element.h:
910         (WebCore::Element::attributesIterator):
911         * dom/ElementData.cpp:
912         (WebCore::ElementData::isEquivalent):
913         (WebCore::ElementData::findAttributeIndexByNameSlowCase):
914         * dom/ElementData.h:
915         (WebCore::AttributeConstIterator::AttributeConstIterator):
916         (WebCore::AttributeConstIterator::operator*):
917         (WebCore::AttributeConstIterator::operator->):
918         (WebCore::AttributeConstIterator::operator++):
919         (WebCore::AttributeConstIterator::operator==):
920         (WebCore::AttributeConstIterator::operator!=):
921         (WebCore::AttributeIteratorAccessor::AttributeIteratorAccessor):
922         (WebCore::AttributeIteratorAccessor::begin):
923         (WebCore::AttributeIteratorAccessor::end):
924         (WebCore::ElementData::attributesIterator):
925         * dom/Node.cpp:
926         (WebCore::Node::isDefaultNamespace):
927         (WebCore::Node::lookupNamespaceURI):
928         (WebCore::Node::lookupNamespacePrefix):
929         (WebCore::Node::compareDocumentPosition):
930         * dom/StyledElement.cpp:
931         (WebCore::StyledElement::makePresentationAttributeCacheKey):
932         (WebCore::StyledElement::rebuildPresentationAttributeStyle):
933         * editing/MarkupAccumulator.cpp:
934         (WebCore::MarkupAccumulator::appendElement):
935         * editing/markup.cpp:
936         (WebCore::completeURLs):
937         (WebCore::StyledMarkupAccumulator::appendElement):
938         * html/HTMLEmbedElement.cpp:
939         (WebCore::HTMLEmbedElement::parametersForPlugin):
940         * html/HTMLObjectElement.cpp:
941         (WebCore::HTMLObjectElement::parametersForPlugin):
942         * inspector/DOMPatchSupport.cpp:
943         (WebCore::DOMPatchSupport::innerPatchNode):
944         (WebCore::DOMPatchSupport::createDigest):
945         * inspector/InspectorDOMAgent.cpp:
946         (WebCore::InspectorDOMAgent::setAttributesAsText):
947         (WebCore::InspectorDOMAgent::buildArrayForElementAttributes):
948         * inspector/InspectorNodeFinder.cpp:
949         (WebCore::InspectorNodeFinder::matchesElement):
950         * page/PageSerializer.cpp:
951         (WebCore::isCharsetSpecifyingNode):
952         * xml/XPathNodeSet.cpp:
953         (WebCore::XPath::NodeSet::traversalSort):
954         * xml/XPathStep.cpp:
955         (WebCore::XPath::Step::nodesInAxis):
956         * xml/parser/XMLDocumentParserLibxml2.cpp:
957         (WebCore::XMLDocumentParser::XMLDocumentParser):
958
959 2014-01-20  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
960
961         Do refactor in collectGradientAttributes() and renderStyleForLengthResolve()
962         https://bugs.webkit.org/show_bug.cgi?id=126869
963
964         Reviewed by Dirk Schulze.
965
966         Some SVG functions have done a first iteration by using a boolean flag. This is
967         one of poor implementations. This patch fix it by extracting a logic into a new method.
968         Additionally it would be good to use do-while() loop instead of using while() in
969         renderStyleForLengthResolving() because a first condition is always true.
970
971         Merge r165358 from blink.
972
973         * svg/SVGLengthContext.cpp:
974         (WebCore::renderStyleForLengthResolving):
975         * svg/SVGLinearGradientElement.cpp:
976         (WebCore::setGradientAttributes):
977         (WebCore::SVGLinearGradientElement::collectGradientAttributes):
978         * svg/SVGRadialGradientElement.cpp:
979         (WebCore::setGradientAttributes):
980         (WebCore::SVGRadialGradientElement::collectGradientAttributes):
981
982 2014-01-20  Anders Carlsson  <andersca@apple.com>
983
984         UserContentController should keep track of user scripts
985         https://bugs.webkit.org/show_bug.cgi?id=127317
986         <rdar://problem/15861296>
987
988         Reviewed by Andreas Kling.
989
990         Move handling of user scripts from PageGroup to UserContentController.
991
992         * page/Frame.cpp:
993         (WebCore::Frame::injectUserScripts):
994         * page/PageGroup.cpp:
995         (WebCore::PageGroup::addUserScriptToWorld):
996         (WebCore::PageGroup::removeUserScriptFromWorld):
997         (WebCore::PageGroup::removeUserScriptsFromWorld):
998         (WebCore::PageGroup::removeAllUserContent):
999         * page/PageGroup.h:
1000         * page/UserContentController.cpp:
1001         (WebCore::UserContentController::addUserScript):
1002         (WebCore::UserContentController::removeUserScript):
1003         (WebCore::UserContentController::removeUserScripts):
1004         (WebCore::UserContentController::removeAllUserContent):
1005         * page/UserContentController.h:
1006         (WebCore::UserContentController::userScripts):
1007
1008 2014-01-20  Anders Carlsson  <andersca@apple.com>
1009
1010         Give each page a UserContentController
1011         https://bugs.webkit.org/show_bug.cgi?id=127315
1012         <rdar://problem/15861296>
1013
1014         Reviewed by Andreas Kling.
1015
1016         Add a UserContentController object to PageGroup and have the page group set it on any
1017         pages that are added to the page group.
1018
1019         This is another step towards moving handling of user content away from PageGroup and make it
1020         possible for each page to have different user content.
1021
1022         * page/Page.cpp:
1023         (WebCore::Page::~Page):
1024         (WebCore::Page::setUserContentController):
1025         * page/Page.h:
1026         (WebCore::Page::userContentController):
1027         * page/PageGroup.cpp:
1028         (WebCore::PageGroup::PageGroup):
1029         (WebCore::PageGroup::addPage):
1030         (WebCore::PageGroup::removePage):
1031         * page/PageGroup.h:
1032         * page/UserContentController.cpp:
1033         (WebCore::UserContentController::addPage):
1034         (WebCore::UserContentController::removePage):
1035         * page/UserContentController.h:
1036
1037 2014-01-20  Jeremy Jones  <jeremyj@apple.com>
1038
1039         Add AVKit fullscreen video interface.
1040         https://bugs.webkit.org/show_bug.cgi?id=126818
1041
1042         Reviewed by Eric Carlson.
1043
1044         No new tests, no observable change in functionality.
1045
1046         * WebCore.exp.in:
1047         * WebCore.xcodeproj/project.pbxproj:
1048         * html/HTMLMediaElement.cpp:
1049         (WebCore::HTMLMediaElement::parseAttribute):
1050         * html/HTMLMediaElement.h:
1051         Add ability for fullscreen to borrow the AVPlayerLayer.
1052         * page/Settings.cpp:
1053         * page/Settings.h:
1054         (WebCore::Settings::setMediaPlaybackFullscreenAVKit):
1055         (WebCore::Settings::mediaPlaybackFullscreenAVKit):
1056         Add a disabled setting.
1057         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
1058         (WebCore::MediaPlayerPrivateAVFoundation::supportsFullscreen):
1059         Enabled fullscreen for iOS.
1060         * platform/ios/WebVideoFullscreenControllerAVKit.h: Added.
1061         * platform/ios/WebVideoFullscreenControllerAVKit.mm: Added.
1062         (-[WebAVPlayerController init]):
1063         (-[WebAVPlayerController dealloc]):
1064         (-[WebAVPlayerController forwardingTargetForSelector:]):
1065         (-[WebAVPlayerController shouldDismissForDone]):
1066         (-[WebAVPlayerController play:]):
1067         (-[WebAVPlayerController pause:]):
1068         (-[WebAVPlayerController togglePlayback:]):
1069         (-[WebAVPlayerController isPlaying]):
1070         (-[WebAVPlayerController setPlaying:]):
1071         (+[WebAVPlayerController keyPathsForValuesAffectingPlaying]):
1072         (-[WebAVPlayerController seekToTime:]):
1073         (-[WebAVPlayerController updateTimingWithCurrentTime:]):
1074         (-[WebAVPlayerController effectiveRate]):
1075         (-[WebAVPlayerController setMediaElement:]):
1076         (-[WebAVPlayerController handleEvent:]):
1077         (-[WebVideoFullscreenController init]):
1078         (-[WebVideoFullscreenController dealloc]):
1079         (-[WebVideoFullscreenController setMediaElement:]):
1080         (-[WebVideoFullscreenController mediaElement]):
1081         (-[WebVideoFullscreenController enterFullscreen:]):
1082         (-[WebVideoFullscreenController exitFullscreen]):
1083         Add WebAVPlayerController for HTMLMediaElememt to interface with AVPlayerViewController.
1084
1085 2014-01-20  Zan Dobersek  <zdobersek@igalia.com>
1086
1087         Replace uses of std::forward<T>(), std::unique_ptr<T>::clear() that landed in r162368
1088         https://bugs.webkit.org/show_bug.cgi?id=127306
1089
1090         Reviewed by Darin Adler.
1091
1092         Address the post-landing reviews of the r162368 commit that moved WebAudio source code to using std::unique_ptr.
1093         std::move() should be used instead of std::forward<T>() in HRTFKernel::create().
1094         Instead of calling std::unique_ptr<T>::reset(), nullptr should be assigned to that smart pointer to reset it.
1095
1096         * Modules/webaudio/ConvolverNode.cpp:
1097         (WebCore::ConvolverNode::uninitialize):
1098         * Modules/webaudio/DynamicsCompressorNode.cpp:
1099         (WebCore::DynamicsCompressorNode::uninitialize):
1100         * Modules/webaudio/MediaElementAudioSourceNode.cpp:
1101         (WebCore::MediaElementAudioSourceNode::setFormat):
1102         * Modules/webaudio/PannerNode.cpp:
1103         (WebCore::PannerNode::uninitialize):
1104         * platform/audio/AudioChannel.h:
1105         (WebCore::AudioChannel::set):
1106         * platform/audio/HRTFDatabaseLoader.cpp:
1107         (WebCore::HRTFDatabaseLoader::~HRTFDatabaseLoader):
1108         * platform/audio/HRTFKernel.h:
1109         (WebCore::HRTFKernel::create):
1110
1111 2014-01-20  Joseph Pecoraro  <pecoraro@apple.com>
1112
1113         Modernize WebCore/inspector with nullptr
1114         https://bugs.webkit.org/show_bug.cgi?id=127303
1115
1116         Reviewed by Anders Carlsson.
1117
1118         Ran clang-modernize -use-nullptr over WebCore/inspector.
1119
1120         * inspector/ConsoleMessage.cpp:
1121         (WebCore::ConsoleMessage::ConsoleMessage):
1122         * inspector/ConsoleMessage.h:
1123         * inspector/ContentSearchUtils.cpp:
1124         (WebCore::ContentSearchUtils::findMagicComment):
1125         * inspector/DOMEditor.cpp:
1126         (WebCore::DOMEditor::SetOuterHTMLAction::SetOuterHTMLAction):
1127         * inspector/DOMPatchSupport.cpp:
1128         (WebCore::DOMPatchSupport::patchDocument):
1129         (WebCore::DOMPatchSupport::patchNode):
1130         (WebCore::DOMPatchSupport::diff):
1131         (WebCore::DOMPatchSupport::innerPatchChildren):
1132         * inspector/InspectorApplicationCacheAgent.cpp:
1133         (WebCore::InspectorApplicationCacheAgent::willDestroyFrontendAndBackend):
1134         (WebCore::InspectorApplicationCacheAgent::assertFrameWithDocumentLoader):
1135         * inspector/InspectorCanvasAgent.cpp:
1136         (WebCore::InspectorCanvasAgent::disable):
1137         (WebCore::InspectorCanvasAgent::notifyRenderingContextWasWrapped):
1138         (WebCore::InspectorCanvasAgent::frameNavigated):
1139         * inspector/InspectorConsoleAgent.cpp:
1140         (WebCore::InspectorConsoleAgent::InspectorConsoleAgent):
1141         (WebCore::InspectorConsoleAgent::~InspectorConsoleAgent):
1142         (WebCore::InspectorConsoleAgent::clearMessages):
1143         (WebCore::InspectorConsoleAgent::didFinishXHRLoading):
1144         (WebCore::InspectorConsoleAgent::didReceiveResponse):
1145         (WebCore::InspectorConsoleAgent::didFailLoading):
1146         * inspector/InspectorConsoleAgent.h:
1147         * inspector/InspectorController.cpp:
1148         (WebCore::InspectorController::inspectedPageDestroyed):
1149         * inspector/InspectorDOMDebuggerAgent.cpp:
1150         (WebCore::InspectorDOMDebuggerAgent::disable):
1151         (WebCore::InspectorDOMDebuggerAgent::discardAgent):
1152         * inspector/InspectorDOMStorageAgent.cpp:
1153         (WebCore::InspectorDOMStorageAgent::~InspectorDOMStorageAgent):
1154         (WebCore::InspectorDOMStorageAgent::setDOMStorageItem):
1155         (WebCore::InspectorDOMStorageAgent::removeDOMStorageItem):
1156         (WebCore::InspectorDOMStorageAgent::findStorageArea):
1157         * inspector/InspectorDatabaseAgent.cpp:
1158         (WebCore::InspectorDatabaseAgent::~InspectorDatabaseAgent):
1159         (WebCore::InspectorDatabaseAgent::findByFileName):
1160         (WebCore::InspectorDatabaseAgent::databaseForId):
1161         * inspector/InspectorDebuggerAgent.cpp:
1162         (WebCore::InspectorDebuggerAgent::addMessageToConsole):
1163         (WebCore::InspectorDebuggerAgent::resolveBreakpoint):
1164         (WebCore::InspectorDebuggerAgent::didParseSource):
1165         (WebCore::InspectorDebuggerAgent::didContinue):
1166         (WebCore::InspectorDebuggerAgent::clearBreakDetails):
1167         * inspector/InspectorFrontendHost.cpp:
1168         (WebCore::FrontendMenuProvider::disconnect):
1169         (WebCore::InspectorFrontendHost::InspectorFrontendHost):
1170         (WebCore::InspectorFrontendHost::disconnectClient):
1171         * inspector/InspectorHeapProfilerAgent.cpp:
1172         (WebCore::InspectorHeapProfilerAgent::~InspectorHeapProfilerAgent):
1173         * inspector/InspectorIndexedDBAgent.cpp:
1174         (WebCore::assertDocument):
1175         (WebCore::assertIDBFactory):
1176         (WebCore::InspectorIndexedDBAgent::requestData):
1177         * inspector/InspectorInstrumentation.cpp:
1178         (WebCore::frameForScriptExecutionContext):
1179         (WebCore::InspectorInstrumentation::willDispatchEventOnWindowImpl):
1180         (WebCore::InspectorInstrumentation::didReceiveResourceResponseButCanceledImpl):
1181         (WebCore::InspectorInstrumentation::consoleAgentEnabled):
1182         (WebCore::InspectorInstrumentation::unregisterInstrumentingAgents):
1183         (WebCore::InspectorInstrumentation::retrieveTimelineAgent):
1184         (WebCore::InspectorInstrumentation::instrumentingAgentsForPage):
1185         (WebCore::InspectorInstrumentation::instrumentingAgentsForWorkerGlobalScope):
1186         (WebCore::InspectorInstrumentation::instrumentingAgentsForNonDocumentContext):
1187         * inspector/InspectorInstrumentation.h:
1188         (WebCore::InspectorInstrumentation::instrumentingAgentsForContext):
1189         (WebCore::InspectorInstrumentation::instrumentingAgentsForFrame):
1190         (WebCore::InspectorInstrumentation::instrumentingAgentsForDocument):
1191         * inspector/InspectorLayerTreeAgent.cpp:
1192         (WebCore::InspectorLayerTreeAgent::disable):
1193         * inspector/InspectorNodeFinder.cpp:
1194         (WebCore::InspectorNodeFinder::searchUsingXPath):
1195         * inspector/InspectorOverlay.cpp:
1196         (WebCore::buildObjectForElementInfo):
1197         * inspector/InspectorPageAgent.cpp:
1198         (WebCore::InspectorPageAgent::cachedResourceContent):
1199         (WebCore::InspectorPageAgent::sharedBufferContent):
1200         (WebCore::InspectorPageAgent::disable):
1201         (WebCore::InspectorPageAgent::frameForId):
1202         (WebCore::InspectorPageAgent::findFrameWithSecurityOrigin):
1203         * inspector/InspectorProfilerAgent.cpp:
1204         (WebCore::InspectorProfilerAgent::~InspectorProfilerAgent):
1205         * inspector/InspectorProfilerAgent.h:
1206         * inspector/InspectorResourceAgent.cpp:
1207         (WebCore::buildObjectForResourceResponse):
1208         (WebCore::InspectorResourceAgent::willSendRequest):
1209         (WebCore::InspectorResourceAgent::didReceiveResponse):
1210         (WebCore::InspectorResourceAgent::didFinishLoading):
1211         (WebCore::InspectorResourceAgent::didFailLoading):
1212         (WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
1213         (WebCore::InspectorResourceAgent::disable):
1214         * inspector/InspectorRuntimeAgent.cpp:
1215         (WebCore::InspectorRuntimeAgent::InspectorRuntimeAgent):
1216         * inspector/InspectorStyleSheet.cpp:
1217         (ParsedStyleSheet::ruleSourceDataAt):
1218         (WebCore::buildSourceRangeObject):
1219         (WebCore::asCSSRuleList):
1220         (WebCore::fillMediaListChain):
1221         (WebCore::InspectorStyle::setPropertyText):
1222         (WebCore::InspectorStyle::populateAllProperties):
1223         (WebCore::InspectorStyle::extractSourceData):
1224         (WebCore::InspectorStyle::newLineAndWhitespaceDelimiters):
1225         (WebCore::InspectorStyleSheet::addRule):
1226         (WebCore::InspectorStyleSheet::ruleForId):
1227         (WebCore::InspectorStyleSheet::buildObjectForStyleSheet):
1228         (WebCore::InspectorStyleSheet::buildObjectForStyleSheetInfo):
1229         (WebCore::InspectorStyleSheet::buildObjectForRule):
1230         (WebCore::InspectorStyleSheet::styleForId):
1231         (WebCore::InspectorStyleSheet::inspectorStyleForId):
1232         (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):
1233         * inspector/InspectorStyleSheet.h:
1234         (WebCore::InspectorCSSId::asProtocolValue):
1235         * inspector/InspectorTimelineAgent.cpp:
1236         (WebCore::InspectorTimelineAgent::stop):
1237         (WebCore::InspectorTimelineAgent::willComposite):
1238         (WebCore::InspectorTimelineAgent::page):
1239         * inspector/InspectorWorkerAgent.cpp:
1240         (WebCore::InspectorWorkerAgent::~InspectorWorkerAgent):
1241         * inspector/InstrumentingAgents.cpp:
1242         (WebCore::InstrumentingAgents::InstrumentingAgents):
1243         (WebCore::InstrumentingAgents::reset):
1244         * inspector/NetworkResourcesData.cpp:
1245         (WebCore::NetworkResourcesData::ResourceData::ResourceData):
1246         (WebCore::NetworkResourcesData::xhrReplayData):
1247         (WebCore::NetworkResourcesData::removeCachedResource):
1248         (WebCore::NetworkResourcesData::resourceDataForRequestId):
1249         * inspector/PageConsoleAgent.cpp:
1250         (WebCore::PageConsoleAgent::~PageConsoleAgent):
1251         * inspector/PageDebuggerAgent.cpp:
1252         (WebCore::PageDebuggerAgent::disable):
1253         * inspector/PageRuntimeAgent.cpp:
1254         (WebCore::PageRuntimeAgent::~PageRuntimeAgent):
1255         (WebCore::PageRuntimeAgent::didCreateMainWorldContext):
1256         (WebCore::PageRuntimeAgent::reportExecutionContextCreation):
1257         * inspector/ScriptArguments.cpp:
1258         (WebCore::ScriptArguments::globalState):
1259         * inspector/WorkerRuntimeAgent.cpp:
1260         (WebCore::WorkerRuntimeAgent::~WorkerRuntimeAgent):
1261
1262 2014-01-20  Anders Carlsson  <andersca@apple.com>
1263
1264         Add empty UserContentController class
1265         https://bugs.webkit.org/show_bug.cgi?id=127300
1266         <rdar://problem/15861296>
1267
1268         Reviewed by Dan Bernstein.
1269
1270         This is the first step towards moving handling of user scripts and style sheets from
1271         the page group to a separate objects and ultimately make them be settable per page instead of per page group.
1272
1273         * CMakeLists.txt:
1274         * GNUmakefile.list.am:
1275         * WebCore.vcxproj/WebCore.vcxproj:
1276         * WebCore.vcxproj/WebCore.vcxproj.filters:
1277         * WebCore.xcodeproj/project.pbxproj:
1278         * page/UserContentController.cpp: Added.
1279         (WebCore::UserContentController::create):
1280         (WebCore::UserContentController::UserContentController):
1281         (WebCore::UserContentController::~UserContentController):
1282         * page/UserContentController.h: Added.
1283
1284 2014-01-20  Joseph Pecoraro  <pecoraro@apple.com>
1285
1286         Run clang-modernize and let it add a bunch of missing overrides in WebCore/inspector
1287         https://bugs.webkit.org/show_bug.cgi?id=127206
1288
1289         Reviewed by Anders Carlsson.
1290
1291         Let clang-modernize add overrides.
1292
1293         * inspector/DOMEditor.cpp:
1294         * inspector/InspectorApplicationCacheAgent.h:
1295         * inspector/InspectorCSSAgent.h:
1296         * inspector/InspectorCanvasAgent.h:
1297         * inspector/InspectorConsoleAgent.h:
1298         * inspector/InspectorDOMAgent.h:
1299         * inspector/InspectorDOMDebuggerAgent.h:
1300         * inspector/InspectorDOMStorageAgent.h:
1301         * inspector/InspectorDatabaseAgent.cpp:
1302         * inspector/InspectorDatabaseAgent.h:
1303         * inspector/InspectorDebuggerAgent.h:
1304         * inspector/InspectorFrontendHost.cpp:
1305         * inspector/InspectorHeapProfilerAgent.cpp:
1306         (WebCore::InspectorHeapProfilerAgent::getHeapSnapshot):
1307         (WebCore::InspectorHeapProfilerAgent::takeHeapSnapshot):
1308         * inspector/InspectorHeapProfilerAgent.h:
1309         * inspector/InspectorHistory.cpp:
1310         * inspector/InspectorIndexedDBAgent.cpp:
1311         * inspector/InspectorIndexedDBAgent.h:
1312         * inspector/InspectorInputAgent.h:
1313         * inspector/InspectorLayerTreeAgent.h:
1314         * inspector/InspectorMemoryAgent.h:
1315         * inspector/InspectorPageAgent.h:
1316         * inspector/InspectorProfilerAgent.cpp:
1317         * inspector/InspectorProfilerAgent.h:
1318         * inspector/InspectorResourceAgent.h:
1319         * inspector/InspectorRuntimeAgent.h:
1320         * inspector/InspectorStyleSheet.h:
1321         * inspector/InspectorTimelineAgent.h:
1322         * inspector/InspectorWorkerAgent.cpp:
1323         * inspector/InspectorWorkerAgent.h:
1324         * inspector/PageConsoleAgent.h:
1325         * inspector/PageDebuggerAgent.h:
1326         * inspector/PageRuntimeAgent.h:
1327         * inspector/WorkerConsoleAgent.h:
1328         * inspector/WorkerDebuggerAgent.cpp:
1329         * inspector/WorkerInspectorController.cpp:
1330         * inspector/WorkerRuntimeAgent.h:
1331
1332 2014-01-20  Zan Dobersek  <zdobersek@igalia.com>
1333
1334         Move WebAudio source code to std::unique_ptr
1335         https://bugs.webkit.org/show_bug.cgi?id=127274
1336
1337         Reviewed by Eric Carlson.
1338
1339         Move from using OwnPtr and PassOwnPtr to using std::unique_ptr and move semantics
1340         in the WebAudio module and the WebAudio code in the platform layer.
1341
1342         * Modules/webaudio/AsyncAudioDecoder.cpp:
1343         * Modules/webaudio/AsyncAudioDecoder.h:
1344         * Modules/webaudio/AudioBasicInspectorNode.cpp:
1345         (WebCore::AudioBasicInspectorNode::AudioBasicInspectorNode):
1346         * Modules/webaudio/AudioBasicProcessorNode.cpp:
1347         (WebCore::AudioBasicProcessorNode::AudioBasicProcessorNode):
1348         * Modules/webaudio/AudioBasicProcessorNode.h:
1349         * Modules/webaudio/AudioBufferSourceNode.cpp:
1350         (WebCore::AudioBufferSourceNode::AudioBufferSourceNode):
1351         * Modules/webaudio/AudioContext.cpp:
1352         * Modules/webaudio/AudioContext.h:
1353         * Modules/webaudio/AudioDestinationNode.cpp:
1354         (WebCore::AudioDestinationNode::AudioDestinationNode):
1355         * Modules/webaudio/AudioNode.cpp:
1356         (WebCore::AudioNode::addInput):
1357         (WebCore::AudioNode::addOutput):
1358         (WebCore::AudioNode::checkNumberOfChannelsForInput):
1359         * Modules/webaudio/AudioNode.h:
1360         * Modules/webaudio/BiquadFilterNode.cpp:
1361         (WebCore::BiquadFilterNode::BiquadFilterNode):
1362         * Modules/webaudio/BiquadProcessor.cpp:
1363         (WebCore::BiquadProcessor::createKernel):
1364         (WebCore::BiquadProcessor::getFrequencyResponse):
1365         * Modules/webaudio/BiquadProcessor.h:
1366         * Modules/webaudio/ChannelMergerNode.cpp:
1367         (WebCore::ChannelMergerNode::ChannelMergerNode):
1368         * Modules/webaudio/ChannelSplitterNode.cpp:
1369         (WebCore::ChannelSplitterNode::ChannelSplitterNode):
1370         * Modules/webaudio/ConvolverNode.cpp:
1371         (WebCore::ConvolverNode::ConvolverNode):
1372         (WebCore::ConvolverNode::uninitialize):
1373         (WebCore::ConvolverNode::setBuffer):
1374         * Modules/webaudio/ConvolverNode.h:
1375         * Modules/webaudio/DefaultAudioDestinationNode.h:
1376         * Modules/webaudio/DelayNode.cpp:
1377         (WebCore::DelayNode::DelayNode):
1378         * Modules/webaudio/DelayProcessor.cpp:
1379         (WebCore::DelayProcessor::createKernel):
1380         * Modules/webaudio/DelayProcessor.h:
1381         * Modules/webaudio/DynamicsCompressorNode.cpp:
1382         (WebCore::DynamicsCompressorNode::DynamicsCompressorNode):
1383         (WebCore::DynamicsCompressorNode::initialize):
1384         (WebCore::DynamicsCompressorNode::uninitialize):
1385         * Modules/webaudio/DynamicsCompressorNode.h:
1386         * Modules/webaudio/GainNode.cpp:
1387         (WebCore::GainNode::GainNode):
1388         * Modules/webaudio/MediaElementAudioSourceNode.cpp:
1389         (WebCore::MediaElementAudioSourceNode::MediaElementAudioSourceNode):
1390         (WebCore::MediaElementAudioSourceNode::setFormat):
1391         * Modules/webaudio/MediaElementAudioSourceNode.h:
1392         * Modules/webaudio/MediaStreamAudioDestinationNode.h:
1393         * Modules/webaudio/MediaStreamAudioSource.cpp:
1394         * Modules/webaudio/MediaStreamAudioSourceNode.cpp:
1395         (WebCore::MediaStreamAudioSourceNode::MediaStreamAudioSourceNode):
1396         * Modules/webaudio/MediaStreamAudioSourceNode.h:
1397         * Modules/webaudio/OscillatorNode.cpp:
1398         (WebCore::OscillatorNode::OscillatorNode):
1399         * Modules/webaudio/PannerNode.cpp:
1400         (WebCore::PannerNode::PannerNode):
1401         (WebCore::PannerNode::uninitialize):
1402         (WebCore::PannerNode::setPanningModel):
1403         * Modules/webaudio/PannerNode.h:
1404         * Modules/webaudio/PeriodicWave.cpp:
1405         (WebCore::PeriodicWave::createBandLimitedTables):
1406         * Modules/webaudio/PeriodicWave.h:
1407         * Modules/webaudio/RealtimeAnalyser.cpp:
1408         (WebCore::RealtimeAnalyser::RealtimeAnalyser):
1409         (WebCore::RealtimeAnalyser::setFftSize):
1410         * Modules/webaudio/RealtimeAnalyser.h:
1411         * Modules/webaudio/ScriptProcessorNode.cpp:
1412         (WebCore::ScriptProcessorNode::ScriptProcessorNode):
1413         * Modules/webaudio/WaveShaperDSPKernel.cpp:
1414         (WebCore::WaveShaperDSPKernel::lazyInitializeOversampling):
1415         * Modules/webaudio/WaveShaperDSPKernel.h:
1416         * Modules/webaudio/WaveShaperNode.cpp:
1417         (WebCore::WaveShaperNode::WaveShaperNode):
1418         * Modules/webaudio/WaveShaperProcessor.cpp:
1419         (WebCore::WaveShaperProcessor::createKernel):
1420         * Modules/webaudio/WaveShaperProcessor.h:
1421         * platform/audio/AudioBus.cpp:
1422         (WebCore::AudioBus::AudioBus):
1423         (WebCore::AudioBus::copyWithGainFrom):
1424         * platform/audio/AudioBus.h:
1425         * platform/audio/AudioChannel.cpp:
1426         * platform/audio/AudioChannel.h:
1427         (WebCore::AudioChannel::AudioChannel):
1428         (WebCore::AudioChannel::set):
1429         * platform/audio/AudioDSPKernelProcessor.h:
1430         * platform/audio/AudioDestination.h:
1431         * platform/audio/AudioResampler.cpp:
1432         (WebCore::AudioResampler::AudioResampler):
1433         (WebCore::AudioResampler::configureChannels):
1434         * platform/audio/AudioResampler.h:
1435         * platform/audio/AudioSession.h:
1436         * platform/audio/DynamicsCompressor.cpp:
1437         (WebCore::DynamicsCompressor::setNumberOfChannels):
1438         * platform/audio/DynamicsCompressor.h:
1439         * platform/audio/DynamicsCompressorKernel.cpp:
1440         (WebCore::DynamicsCompressorKernel::setNumberOfChannels):
1441         * platform/audio/DynamicsCompressorKernel.h:
1442         * platform/audio/FFTFrame.cpp:
1443         (WebCore::FFTFrame::createInterpolatedFrame):
1444         * platform/audio/FFTFrame.h:
1445         * platform/audio/HRTFDatabase.cpp:
1446         (WebCore::HRTFDatabase::HRTFDatabase):
1447         * platform/audio/HRTFDatabase.h:
1448         * platform/audio/HRTFDatabaseLoader.cpp:
1449         (WebCore::HRTFDatabaseLoader::~HRTFDatabaseLoader):
1450         (WebCore::HRTFDatabaseLoader::load):
1451         * platform/audio/HRTFDatabaseLoader.h:
1452         * platform/audio/HRTFElevation.cpp:
1453         (WebCore::HRTFElevation::createForSubject):
1454         (WebCore::HRTFElevation::createByInterpolatingSlices):
1455         * platform/audio/HRTFElevation.h:
1456         (WebCore::HRTFElevation::HRTFElevation):
1457         * platform/audio/HRTFKernel.cpp:
1458         (WebCore::HRTFKernel::HRTFKernel):
1459         (WebCore::HRTFKernel::createImpulseResponse):
1460         (WebCore::HRTFKernel::createInterpolatedKernel):
1461         * platform/audio/HRTFKernel.h:
1462         (WebCore::HRTFKernel::create):
1463         (WebCore::HRTFKernel::HRTFKernel):
1464         * platform/audio/MultiChannelResampler.cpp:
1465         (WebCore::MultiChannelResampler::MultiChannelResampler):
1466         * platform/audio/MultiChannelResampler.h:
1467         * platform/audio/Panner.cpp:
1468         (WebCore::Panner::create):
1469         * platform/audio/Panner.h:
1470         * platform/audio/Reverb.cpp:
1471         (WebCore::Reverb::initialize):
1472         * platform/audio/Reverb.h:
1473         * platform/audio/ReverbConvolver.h:
1474         * platform/audio/ReverbConvolverStage.cpp:
1475         (WebCore::ReverbConvolverStage::ReverbConvolverStage):
1476         * platform/audio/ReverbConvolverStage.h:
1477         * platform/audio/gstreamer/AudioDestinationGStreamer.cpp:
1478         (WebCore::AudioDestination::create):
1479         * platform/audio/gstreamer/AudioFileReaderGStreamer.cpp:
1480         * platform/audio/ios/AudioDestinationIOS.cpp:
1481         (WebCore::AudioDestination::create):
1482         * platform/audio/ios/AudioSessionIOS.mm:
1483         (WebCore::AudioSession::AudioSession):
1484         * platform/audio/mac/AudioDestinationMac.cpp:
1485         (WebCore::AudioDestination::create):
1486         * platform/audio/mac/AudioDestinationMac.h:
1487         * platform/audio/mac/AudioSessionMac.cpp:
1488         (WebCore::AudioSession::AudioSession):
1489
1490 2014-01-20  Morten Stenshorne  <mstensho@opera.com>
1491
1492         Region based multicol: support explicit column breaks
1493         https://bugs.webkit.org/show_bug.cgi?id=123993
1494
1495         Reviewed by David Hyatt.
1496
1497         Merely supporting insertion of explicit (forced) column breaks in
1498         the region based multicol implementation is really simple: just
1499         hook up with what the CSS regions code is already doing.
1500
1501         However, there is one complication: column balancing. In order to
1502         balance columns as nicely as possible when there are explicit
1503         breaks, we need to figure out between which explicit breaks the
1504         implicit breaks will occur (if there's room for any at all).
1505
1506         Tests: fast/multicol/newmulticol/break-after.html
1507                fast/multicol/newmulticol/break-before.html
1508                fast/multicol/newmulticol/breaks-2-columns-3-no-balancing.html
1509                fast/multicol/newmulticol/breaks-2-columns-3.html
1510                fast/multicol/newmulticol/breaks-3-columns-3.html
1511                fast/multicol/newmulticol/fixed-height-fill-balance-2.html
1512
1513         * rendering/RenderBlockFlow.cpp:
1514         (WebCore::RenderBlockFlow::applyBeforeBreak):
1515         (WebCore::RenderBlockFlow::applyAfterBreak): Use the already
1516         existing region breaking code when inserting breaks in region
1517         based multicol.
1518         * rendering/RenderFlowThread.h:
1519         * rendering/RenderMultiColumnBlock.cpp:
1520         (WebCore::RenderMultiColumnBlock::RenderMultiColumnBlock):
1521         (WebCore::RenderMultiColumnBlock::relayoutForPagination): Avoid
1522         re-balancing if the multicol's contents were not laid out. Apart
1523         from being good for performance, this is now necessary because of
1524         how explicit breaks are implemented.
1525         (WebCore::RenderMultiColumnBlock::layoutSpecialExcludedChild):
1526         Detect if the contents are going to be laid out, or skipped, so
1527         that we can tell if we need to (re-)balance the columns
1528         afterwards.
1529         * rendering/RenderMultiColumnBlock.h:
1530         * rendering/RenderMultiColumnFlowThread.cpp:
1531         (WebCore::RenderMultiColumnFlowThread::addForcedRegionBreak):
1532         Locate the appropriate multi-column set and call its
1533         addForcedBreak().
1534         * rendering/RenderMultiColumnFlowThread.h:
1535         * rendering/RenderMultiColumnSet.cpp:
1536         (WebCore::RenderMultiColumnSet::RenderMultiColumnSet):
1537         (WebCore::RenderMultiColumnSet::findRunWithTallestColumns):
1538         (WebCore::RenderMultiColumnSet::distributeImplicitBreaks): Figure
1539         out how many implicit breaks each single "content run" should
1540         contain. The taller the content run, the more implicit breaks.
1541         (WebCore::RenderMultiColumnSet::calculateBalancedHeight): This is
1542         now a const method that only does half of what the old
1543         calculateBalancedHeight() did. The rest (such as actually storing
1544         the new column height) is done by recalculateBalancedHeight().
1545         (WebCore::RenderMultiColumnSet::clearForcedBreaks): Needs to be
1546         called between each layout pass, to clear the list of "content
1547         runs".
1548         (WebCore::RenderMultiColumnSet::addForcedBreak): Only useful when
1549         columns are to be balanced. It receives explicit (forced) breaks
1550         and stores them as "content runs". When layout is done, we'll go
1551         through the list of content runs, and see where implicit breaks
1552         should be inserted (if there's room for any). The goal is to
1553         insert implicit breaks in such a way that the final columns become
1554         as short as possible.
1555         (WebCore::RenderMultiColumnSet::recalculateBalancedHeight):
1556         Calculates and sets a new balanced column height. This used to be
1557         done directly in calculateBalancedHeight(), but that method is now
1558         const and it now only calculates the new height and returns it.
1559         (WebCore::RenderMultiColumnSet::prepareForLayout):
1560         * rendering/RenderMultiColumnSet.h: Remove old data members
1561         intended for forced breaks (they were unused), and introduce a
1562         "content run" vector instead. A new content run is triggered by an
1563         explicit break. This is only used when column balancing is
1564         enabled. When not balanced, RenderMultiColumnSet doesn't need to
1565         do anything when explicit breaks are inserted.
1566
1567 2014-01-20  Eric Carlson  <eric.carlson@apple.com>
1568
1569         Allow MediaSessionManager to restrict 'preload' behavior
1570         https://bugs.webkit.org/show_bug.cgi?id=127297
1571
1572         Reviewed by Jer Noble.
1573
1574         Tests: media/video-restricted-no-preload-auto.html
1575                media/video-restricted-no-preload-metadata.html
1576
1577         * html/HTMLMediaElement.cpp:
1578         (WebCore::HTMLMediaElement::parseAttribute): Apply restrictions to preload attribute before
1579             passing to media engine.
1580         (WebCore::HTMLMediaElement::loadResource): Ditto.
1581
1582         * html/HTMLMediaSession.cpp:
1583         (WebCore::HTMLMediaSession::effectivePreloadForElement): New, limit preload according to restrictions.
1584         * html/HTMLMediaSession.h:
1585
1586         * platform/audio/MediaSessionManager.h:
1587         * platform/audio/ios/MediaSessionManagerIOS.mm:
1588         (WebCore::MediaSessionManageriOS::resetRestrictions): Limit preload to metadata only. Drive-by
1589             static deviceClass initialization cleanup.
1590
1591         * testing/Internals.cpp:
1592         (WebCore::Internals::setMediaSessionRestrictions): Support MetadataPreloadingNotPermitted and
1593             AutoPreloadingNotPermitted.
1594
1595 2014-01-20  Andreas Kling  <akling@apple.com>
1596
1597         Let RenderImage construct its RenderImageResource.
1598         <https://webkit.org/b/127290>
1599
1600         Everyone who creates a RenderImage immediately follows up with
1601         creating a RenderImageResource and assigning it to the image.
1602
1603         Let the RenderImage constructor do this instead, and make the
1604         imageResource() accessors return references. This exposed a
1605         number of unnecessary null checks.
1606
1607         Also modernized the touched code with std::unique_ptr.
1608
1609         Reviewed by Antti Koivisto.
1610
1611         * html/HTMLImageElement.cpp:
1612         (WebCore::HTMLImageElement::createElementRenderer):
1613         (WebCore::HTMLImageElement::didAttachRenderers):
1614         * html/HTMLPlugInImageElement.cpp:
1615         (WebCore::HTMLPlugInImageElement::createElementRenderer):
1616         * html/HTMLVideoElement.cpp:
1617         (WebCore::HTMLVideoElement::didAttachRenderers):
1618         (WebCore::HTMLVideoElement::parseAttribute):
1619         * html/ImageInputType.cpp:
1620         (WebCore::ImageInputType::createInputRenderer):
1621         (WebCore::ImageInputType::attach):
1622         * loader/ImageLoader.cpp:
1623         (WebCore::ImageLoader::renderImageResource):
1624         * rendering/RenderElement.cpp:
1625         (WebCore::RenderElement::createFor):
1626         * rendering/RenderImage.cpp:
1627         (WebCore::RenderImage::RenderImage):
1628         (WebCore::RenderImage::~RenderImage):
1629         (WebCore::RenderImage::styleDidChange):
1630         (WebCore::RenderImage::imageChanged):
1631         (WebCore::RenderImage::updateIntrinsicSizeIfNeeded):
1632         (WebCore::RenderImage::updateInnerContentRect):
1633         (WebCore::RenderImage::imageDimensionsChanged):
1634         (WebCore::RenderImage::notifyFinished):
1635         (WebCore::RenderImage::paintReplaced):
1636         (WebCore::RenderImage::paintIntoRect):
1637         (WebCore::RenderImage::foregroundIsKnownToBeOpaqueInRect):
1638         (WebCore::RenderImage::minimumReplacedHeight):
1639         (WebCore::RenderImage::computeIntrinsicRatioInformation):
1640         (WebCore::RenderImage::embeddedContentBox):
1641         * rendering/RenderImage.h:
1642         (WebCore::RenderImage::imageResource):
1643         (WebCore::RenderImage::cachedImage):
1644         * rendering/RenderImageResource.h:
1645         * rendering/RenderImageResourceStyleImage.h:
1646         * rendering/RenderMedia.cpp:
1647         (WebCore::RenderMedia::RenderMedia):
1648         * rendering/RenderSnapshottedPlugIn.cpp:
1649         (WebCore::RenderSnapshottedPlugIn::RenderSnapshottedPlugIn):
1650         * rendering/RenderSnapshottedPlugIn.h:
1651         * rendering/RenderVideo.cpp:
1652         (WebCore::RenderVideo::calculateIntrinsicSize):
1653         * rendering/style/ContentData.cpp:
1654         (WebCore::ImageContentData::createContentRenderer):
1655         * rendering/svg/RenderSVGImage.cpp:
1656         (WebCore::RenderSVGImage::RenderSVGImage):
1657         (WebCore::RenderSVGImage::~RenderSVGImage):
1658         (WebCore::RenderSVGImage::updateImageViewport):
1659         (WebCore::RenderSVGImage::paint):
1660         (WebCore::RenderSVGImage::paintForeground):
1661         * rendering/svg/RenderSVGImage.h:
1662         * svg/SVGImageElement.cpp:
1663         (WebCore::SVGImageElement::didAttachRenderers):
1664
1665 2014-01-20  Antti Koivisto  <antti@apple.com>
1666
1667         Update overlay scrollbars in single pass
1668         https://bugs.webkit.org/show_bug.cgi?id=127289
1669
1670         Reviewed by Anders Carlsson.
1671
1672         * platform/ScrollView.cpp:
1673         (WebCore::ScrollView::updateScrollbars):
1674         
1675             Multi-pass scrollbar resolution is only needed for traditional scrollbars. Overlay scrollbars don't affect layout.
1676
1677 2014-01-20  Jochen Eisinger  <jochen@chromium.org>
1678
1679         Never send a non-http(s) referrer header even with a referrer policy
1680         https://bugs.webkit.org/show_bug.cgi?id=127172
1681
1682         Reviewed by Alexey Proskuryakov.
1683
1684         This mirrors the code SecurityPolicy::shouldHideReferrer which is used
1685         for ReferrerPolicyDefault.
1686
1687         No new tests, only affects an embedder that registers other schemes,
1688         e.g. chrome://
1689
1690         * page/SecurityPolicy.cpp:
1691         (WebCore::SecurityPolicy::generateReferrerHeader):
1692
1693 2014-01-20  Mihai Tica  <mitica@adobe.com>
1694
1695         [CSS Background Blending] Background layer with -webkit-cross-fade doesn't blend
1696         when having -webkit-background-blending applied. Turns out the problem was
1697         the blending parameter not being passed to WebCore::CrossfadeGeneratedImage::draw
1698
1699         https://bugs.webkit.org/show_bug.cgi?id=126887
1700
1701         Reviewed by Dirk Schulze.
1702
1703         Test: css3/compositing/background-blend-mode-crossfade-image.html
1704
1705         * platform/graphics/CrossfadeGeneratedImage.cpp:
1706         (WebCore::CrossfadeGeneratedImage::draw): set blendMode on context.
1707
1708 2013-11-22  Sergio Villar Senin  <svillar@igalia.com>
1709
1710         Null-pointer dereference in WebCore::CSSValue::isPrimitiveValue
1711         https://bugs.webkit.org/show_bug.cgi?id=124769
1712
1713         Reviewed by Andreas Kling.
1714
1715         Test: fast/gradients/crash-on-no-position-separator.html
1716
1717         The function parseFillPosition() may not return valid values for
1718         centerX and centerY if the input data is malformed. We need to
1719         check that we get a valid pair of positions before checking that
1720         they're actually valid primitive values in the assertions.
1721
1722         * css/CSSParser.cpp:
1723         (WebCore::CSSParser::parseRadialGradient):
1724
1725 2014-01-20  Mihai Tica  <mitica@adobe.com>
1726
1727         Background-blend-mode doesn't work for an element with an
1728         SVG image as background and border-style or padding set.
1729         The problem consisted in the drawing path using the default
1730         blending parameter at all times.
1731         https://bugs.webkit.org/show_bug.cgi?id=118894
1732
1733         Reviewed by Dirk Schulze.
1734
1735         Test: css3/compositing/background-blend-mode-data-uri-svg-image.html
1736
1737         * svg/graphics/SVGImage.cpp:
1738         (WebCore::SVGImage::drawPatternForContainer): Pass blendMode to Image::drawPattern.
1739         * svg/graphics/SVGImage.h: Add a blendMode parameter to drawPatternForContainer.
1740         * svg/graphics/SVGImageForContainer.cpp:
1741         (WebCore::SVGImageForContainer::drawPattern): Pass blendMode to drawPatternForContainer call.
1742
1743 2014-01-20  Zalan Bujtas  <zalan@apple.com>
1744
1745         Subpixel layout: setSimpleLineLayoutEnabled() produces different layout when line position has CSS px fractions.
1746         https://bugs.webkit.org/show_bug.cgi?id=126892
1747
1748         Reviewed by Antti Koivisto.
1749
1750         SimpleLineLayout needs to copy normal linebox layout's subpixel rounding strategy to produce
1751         the same layout.
1752
1753         Covered by existing tests.
1754
1755         * rendering/SimpleLineLayoutFunctions.cpp:
1756         (WebCore::SimpleLineLayout::paintFlow):
1757
1758 2014-01-20  Gurpreet Kaur  <k.gurpreet@samsung.com>
1759
1760         Col width is not honored when dynamically updated and it would make table narrower
1761         https://bugs.webkit.org/show_bug.cgi?id=104711
1762
1763         Reviewed by Antti Koivisto.
1764
1765         Increasing the table width by increasing the colgroup width
1766         was working but decreasing the table width by decreasing the
1767         colgroup width is not working.
1768
1769         Test: fast/dom/HTMLTableColElement/resize-table-width-using-col-width.html
1770
1771         * rendering/RenderTableCol.cpp:
1772         (WebCore::RenderTableCol::styleDidChange):
1773         When colgroup width is defined table cell should adjust according to
1774         that. On decreasing colgroup width the cells maxPreferredLogicalWidth
1775         was still set to the earlier value. Setting the
1776         setPreferredLogicalWidthsDirty to true so that cells pref width is
1777         calculated again.
1778
1779 2014-01-20  Edit Balint  <edbalint@inf.u-szeged.hu>
1780
1781         [CoordinatedGraphics] Segmentation fault at  CoordinatedGraphicsScene::clearImageBackingContents
1782
1783         https://bugs.webkit.org/show_bug.cgi?id=125776
1784
1785         Reviewed by Csaba Osztrogonác.
1786
1787         Unexpected behavior occurs in some test cases which leads to segmentation fault.
1788
1789         * platform/graphics/texmap/coordinated/CompositingCoordinator.cpp:
1790         (WebCore::CompositingCoordinator::removeImageBacking):
1791
1792 2014-01-20  Morten Stenshorne  <mstensho@opera.com>
1793
1794         Region based multicol: tall line causes taller multicol container than necessary
1795         https://bugs.webkit.org/show_bug.cgi?id=122550
1796
1797         Detect and report all column breaks, also when there's no pagination strut involved.
1798
1799         This may end up becoming the overall smallest space shortage in some cases,
1800         so we need to report it, to avoid column height over-stretching.
1801
1802         Reviewed by David Hyatt.
1803
1804         Test: fast/multicol/newmulticol/balance10.html
1805
1806         * rendering/RenderBlockFlow.cpp:
1807         (WebCore::RenderBlockFlow::adjustLinePositionForPagination):
1808
1809 2014-01-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1810
1811         [GLIB] GVariant floating references are not correctly handled by GRefPtr
1812         https://bugs.webkit.org/show_bug.cgi?id=127246
1813
1814         Reviewed by Martin Robinson.
1815
1816         Do not adopt GVariant floating references, they will be converted
1817         to a full reference by GRefPtr.
1818
1819         * platform/gtk/PasteboardHelper.cpp:
1820         (WebCore::PasteboardHelper::fillSelectionData):
1821         (WebCore::PasteboardHelper::fillDataObjectFromDropData):
1822
1823 2014-01-19  Jinwoo Song  <jinwoo7.song@samsung.com>
1824
1825         Use unsigned type for the size of CSSParserValueList
1826         https://bugs.webkit.org/show_bug.cgi?id=127211
1827
1828         Reviewed by Andreas Kling.
1829
1830         * css/CSSParser.cpp: Changed variable type from int to unsigned.
1831         (WebCore::CSSParser::parseValue):
1832
1833 2014-01-19  Jaehun Lim  <ljaehun.lim@samsung.com>
1834
1835         Unreviewed build fix after r162293
1836
1837         Fix debug build.
1838
1839         [ 13%] Building CXX object Source/WebCore/CMakeFiles/WebCore.dir/html/parser/HTMLTreeBuilder.cpp.o
1840         /source/WebKit/Source/WebCore/html/parser/HTMLTreeBuilder.cpp: In member function ‘void WebCore::HTMLTreeBuilder::processStartTagForInTable(WebCore::AtomicHTMLToken*)’:
1841         /source/WebKit/Source/WebCore/html/parser/HTMLTreeBuilder.cpp:1037:40: error: no match for ‘operator!’ in ‘!(WebCore::HTMLTreeBuilder::InsertionMode)12’
1842         /source/WebKit/Source/WebCore/html/parser/HTMLTreeBuilder.cpp:1037:40: note: candidate is:
1843         /source/WebKit/Source/WebCore/html/parser/HTMLTreeBuilder.cpp:1037:40: note: operator!(bool) <built-in>
1844         /source/WebKit/Source/WebCore/html/parser/HTMLTreeBuilder.cpp:1037:40: note:   no known conversion for argument 1 from ‘WebCore::HTMLTreeBuilder::InsertionMode’ to ‘bool’
1845         make[2]: *** [Source/WebCore/CMakeFiles/WebCore.dir/html/parser/HTMLTreeBuilder.cpp.o] Error 1
1846         make[1]: *** [Source/WebCore/CMakeFiles/WebCore.dir/all] Error 2
1847         make: *** [all] Error 2
1848
1849         * html/parser/HTMLTreeBuilder.cpp:
1850         (WebCore::HTMLTreeBuilder::processStartTagForInTable): Fix ASSERT.
1851
1852 2014-01-19  Anders Carlsson  <andersca@apple.com>
1853
1854         Stop using MutexTryLocker in WebCore
1855         https://bugs.webkit.org/show_bug.cgi?id=127254
1856
1857         Reviewed by Andreas Kling.
1858
1859         Instead use std::mutex and std::unique_lock with the std::try_to_lock constructor.
1860
1861         * Modules/webaudio/AudioBufferSourceNode.cpp:
1862         (WebCore::AudioBufferSourceNode::process):
1863         (WebCore::AudioBufferSourceNode::setBuffer):
1864         * Modules/webaudio/AudioBufferSourceNode.h:
1865         * Modules/webaudio/AudioParamTimeline.cpp:
1866         (WebCore::AudioParamTimeline::insertEvent):
1867         (WebCore::AudioParamTimeline::cancelScheduledValues):
1868         (WebCore::AudioParamTimeline::valueForContextTime):
1869         (WebCore::AudioParamTimeline::valuesForTimeRange):
1870         (WebCore::AudioParamTimeline::valuesForTimeRangeImpl):
1871         * Modules/webaudio/AudioParamTimeline.h:
1872         * Modules/webaudio/ConvolverNode.cpp:
1873         (WebCore::ConvolverNode::process):
1874         (WebCore::ConvolverNode::reset):
1875         (WebCore::ConvolverNode::setBuffer):
1876         * Modules/webaudio/ConvolverNode.h:
1877         * Modules/webaudio/MediaElementAudioSourceNode.cpp:
1878         (WebCore::MediaElementAudioSourceNode::setFormat):
1879         (WebCore::MediaElementAudioSourceNode::process):
1880         (WebCore::MediaElementAudioSourceNode::lock):
1881         (WebCore::MediaElementAudioSourceNode::unlock):
1882         * Modules/webaudio/MediaElementAudioSourceNode.h:
1883         * Modules/webaudio/MediaStreamAudioSourceNode.cpp:
1884         (WebCore::MediaStreamAudioSourceNode::setFormat):
1885         (WebCore::MediaStreamAudioSourceNode::process):
1886         * Modules/webaudio/MediaStreamAudioSourceNode.h:
1887         * Modules/webaudio/OscillatorNode.cpp:
1888         (WebCore::OscillatorNode::process):
1889         (WebCore::OscillatorNode::setPeriodicWave):
1890         * Modules/webaudio/OscillatorNode.h:
1891         * Modules/webaudio/PannerNode.cpp:
1892         (WebCore::PannerNode::process):
1893         (WebCore::PannerNode::setPanningModel):
1894         * Modules/webaudio/PannerNode.h:
1895         * Modules/webaudio/WaveShaperProcessor.cpp:
1896         (WebCore::WaveShaperProcessor::setCurve):
1897         (WebCore::WaveShaperProcessor::setOversample):
1898         (WebCore::WaveShaperProcessor::process):
1899         * Modules/webaudio/WaveShaperProcessor.h:
1900
1901 2014-01-19  Alberto Garcia  <berto@igalia.com>
1902
1903         Does not build with SVG disabled
1904         https://bugs.webkit.org/show_bug.cgi?id=127248
1905
1906         Reviewed by Sam Weinig.
1907
1908         Add missing #if ENABLE(SVG) guard.
1909
1910         * dom/ElementData.h:
1911
1912 2014-01-19  Anders Carlsson  <andersca@apple.com>
1913
1914         Use a strong enum for HTMLTreeBuilder::InsertionMode
1915         https://bugs.webkit.org/show_bug.cgi?id=127252
1916
1917         Reviewed by Antti Koivisto.
1918
1919         * html/parser/HTMLTreeBuilder.cpp:
1920         (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
1921         (WebCore::HTMLTreeBuilder::constructTree):
1922         (WebCore::HTMLTreeBuilder::processDoctypeToken):
1923         (WebCore::HTMLTreeBuilder::processStartTagForInBody):
1924         (WebCore::HTMLTreeBuilder::processTemplateStartTag):
1925         (WebCore::HTMLTreeBuilder::processColgroupEndTagForInColumnGroup):
1926         (WebCore::HTMLTreeBuilder::closeTheCell):
1927         (WebCore::HTMLTreeBuilder::processStartTagForInTable):
1928         (WebCore::HTMLTreeBuilder::processStartTag):
1929         (WebCore::HTMLTreeBuilder::processBodyEndTagForInBody):
1930         (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
1931         (WebCore::HTMLTreeBuilder::processEndTagForInTableBody):
1932         (WebCore::HTMLTreeBuilder::processEndTagForInRow):
1933         (WebCore::HTMLTreeBuilder::processEndTagForInCell):
1934         (WebCore::HTMLTreeBuilder::processCaptionEndTagForInCaption):
1935         (WebCore::HTMLTreeBuilder::processTrEndTagForInRow):
1936         (WebCore::HTMLTreeBuilder::processEndTag):
1937         (WebCore::HTMLTreeBuilder::processComment):
1938         (WebCore::HTMLTreeBuilder::processCharacterBuffer):
1939         (WebCore::HTMLTreeBuilder::processEndOfFile):
1940         (WebCore::HTMLTreeBuilder::defaultForInitial):
1941         (WebCore::HTMLTreeBuilder::defaultForBeforeHTML):
1942         (WebCore::HTMLTreeBuilder::processStartTagForInHead):
1943         (WebCore::HTMLTreeBuilder::processGenericRCDATAStartTag):
1944         (WebCore::HTMLTreeBuilder::processGenericRawTextStartTag):
1945         (WebCore::HTMLTreeBuilder::processScriptStartTag):
1946         * html/parser/HTMLTreeBuilder.h:
1947
1948 2014-01-19  Anders Carlsson  <andersca@apple.com>
1949
1950         Convert LoaderRunLoopCF.cpp and WebCoreThreadRun.cpp over to modern threading primitives
1951         https://bugs.webkit.org/show_bug.cgi?id=127251
1952
1953         Reviewed by Antti Koivisto.
1954
1955         Also add a condition to the loaderRunLoop() function to protect against spurious wake-ups.
1956
1957         * platform/ios/wak/WebCoreThreadRun.cpp:
1958         * platform/network/cf/LoaderRunLoopCF.cpp:
1959         (WebCore::loaderRunLoopMutex):
1960         (WebCore::loaderRunLoopConditionVariable):
1961         (WebCore::runLoaderThread):
1962         (WebCore::loaderRunLoop):
1963
1964 2014-01-19  Anders Carlsson  <andersca@apple.com>
1965
1966         Modernize ReverbConvolver
1967         https://bugs.webkit.org/show_bug.cgi?id=127250
1968
1969         Reviewed by Andreas Kling.
1970
1971         Use std::unique_ptr instead of OwnPtr and the STL threading primitives instead of the WTF ones.
1972
1973         * platform/audio/ReverbConvolver.cpp:
1974         (WebCore::ReverbConvolver::ReverbConvolver):
1975         (WebCore::ReverbConvolver::~ReverbConvolver):
1976         (WebCore::ReverbConvolver::backgroundThreadEntry):
1977         (WebCore::ReverbConvolver::process):
1978         * platform/audio/ReverbConvolver.h:
1979
1980 2014-01-18  Andy Estes  <aestes@apple.com>
1981
1982         [iOS] Rename GestureEventIOS.{cpp,h} to GestureEvent.{cpp,h} to fix the build
1983
1984         InFilesCompiler.pm assumes that <interface name>.h exists for each
1985         interface it processes. We renamed GestureEvent.h to GestureEventIOS.h
1986         but kept the interface named GestureEvent, so a non-existant file was
1987         being referenced by InFilesCompiler.pm (this was hard to detect since
1988         GestureEvent.h still existed in the SDK due to not having submitted
1989         WebKitAdditions recently).
1990
1991         Since we cannot rename the GestureEvent interface, and since there is
1992         no conflicting GestureEvent in open source, we can just rename
1993         GestureEventIOS.{cpp,h} back to GestureEvent.{cpp,h}.
1994
1995         * dom/ios/TouchEvents.cpp: Updated to include GestureEvent.cpp.
1996
1997 2014-01-18  Alexey Proskuryakov  <ap@apple.com>
1998
1999         Memory leak in JSSubtleCrypto::wrapKey
2000         https://bugs.webkit.org/show_bug.cgi?id=127241
2001
2002         Reviewed by Sam Weinig.
2003
2004         * bindings/js/JSSubtleCryptoCustom.cpp: (WebCore::JSSubtleCrypto::wrapKey):
2005         Delete algorithmPtr and parametersPtr that aren't smart pointers because of lambdas.
2006
2007 2014-01-18  Andy Estes  <aestes@apple.com>
2008
2009         Fix the iOS Production build.
2010
2011         * Configurations/WebCore.xcconfig:
2012
2013 2014-01-18  Alberto Garcia  <berto@igalia.com>
2014
2015         [CodeGeneratorJS] Sort output of StructureFlags and function parameters
2016
2017         https://bugs.webkit.org/show_bug.cgi?id=127226
2018
2019         Reviewed by Alexey Proskuryakov.
2020
2021         The order of the keys in a hash is undefined and subject to change
2022         between different Perl versions, so we have to sort them to make
2023         sure that the output is always the same.
2024
2025         * bindings/scripts/CodeGeneratorJS.pm:
2026         (GenerateHeader):
2027         (GenerateParametersCheckExpression):
2028         * bindings/scripts/test/JS/JSTestActiveDOMObject.h:
2029         * bindings/scripts/test/JS/JSTestCustomNamedGetter.h:
2030         * bindings/scripts/test/JS/JSTestEventConstructor.h:
2031         * bindings/scripts/test/JS/JSTestEventTarget.h:
2032         * bindings/scripts/test/JS/JSTestException.h:
2033         * bindings/scripts/test/JS/JSTestGenerateIsReachable.h:
2034         * bindings/scripts/test/JS/JSTestInterface.h:
2035         * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
2036         * bindings/scripts/test/JS/JSTestNamedConstructor.h:
2037         * bindings/scripts/test/JS/JSTestNode.h:
2038         * bindings/scripts/test/JS/JSTestObj.cpp:
2039         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod):
2040         * bindings/scripts/test/JS/JSTestObj.h:
2041         * bindings/scripts/test/JS/JSTestOverloadedConstructors.h:
2042         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
2043         * bindings/scripts/test/JS/JSTestTypedefs.h:
2044         * bindings/scripts/test/JS/JSattribute.h:
2045         * bindings/scripts/test/JS/JSreadonly.h:
2046
2047 2014-01-18  Anders Carlsson  <andersca@apple.com>
2048
2049         Replace a couple of uses of WTF::Function with std::function
2050         https://bugs.webkit.org/show_bug.cgi?id=127218
2051
2052         Reviewed by Andreas Kling.
2053
2054         * WebCore.exp.in:
2055         * page/scrolling/ScrollingThread.cpp:
2056         (WebCore::ScrollingThread::dispatch):
2057         (WebCore::ScrollingThread::dispatchBarrier):
2058         (WebCore::ScrollingThread::shared):
2059         (WebCore::ScrollingThread::createThreadIfNeeded):
2060         (WebCore::ScrollingThread::dispatchFunctionsFromScrollingThread):
2061         * page/scrolling/ScrollingThread.h:
2062         * page/scrolling/mac/ScrollingThreadMac.mm:
2063         (WebCore::ScrollingThread::initializeRunLoop):
2064
2065 2014-01-18  Anders Carlsson  <andersca@apple.com>
2066
2067         Modernize HTML parser code
2068         https://bugs.webkit.org/show_bug.cgi?id=127236
2069
2070         Reviewed by Andreas Kling.
2071
2072         * html/parser/AtomicHTMLToken.h:
2073         * html/parser/CSSPreloadScanner.cpp:
2074         (WebCore::CSSPreloadScanner::emitRule):
2075         * html/parser/HTMLDocumentParser.cpp:
2076         (WebCore::HTMLDocumentParser::HTMLDocumentParser):
2077         (WebCore::HTMLDocumentParser::detach):
2078         (WebCore::HTMLDocumentParser::stopParsing):
2079         (WebCore::HTMLDocumentParser::pumpTokenizer):
2080         (WebCore::HTMLDocumentParser::insert):
2081         (WebCore::HTMLDocumentParser::append):
2082         (WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution):
2083         * html/parser/HTMLDocumentParser.h:
2084         * html/parser/HTMLElementStack.cpp:
2085         (WebCore::HTMLElementStack::ElementRecord::ElementRecord):
2086         (WebCore::HTMLElementStack::insertAbove):
2087         (WebCore::HTMLElementStack::pushCommon):
2088         * html/parser/HTMLElementStack.h:
2089         (WebCore::HTMLElementStack::ElementRecord::releaseNext):
2090         (WebCore::HTMLElementStack::ElementRecord::setNext):
2091         * html/parser/HTMLMetaCharsetParser.cpp:
2092         (WebCore::HTMLMetaCharsetParser::HTMLMetaCharsetParser):
2093         * html/parser/HTMLMetaCharsetParser.h:
2094         * html/parser/HTMLParserScheduler.h:
2095         * html/parser/HTMLPreloadScanner.cpp:
2096         (WebCore::TokenPreloadScanner::StartTagScanner::createPreloadRequest):
2097         (WebCore::TokenPreloadScanner::scan):
2098         (WebCore::HTMLPreloadScanner::HTMLPreloadScanner):
2099         * html/parser/HTMLPreloadScanner.h:
2100         * html/parser/HTMLResourcePreloader.cpp:
2101         (WebCore::HTMLResourcePreloader::takeAndPreload):
2102         (WebCore::HTMLResourcePreloader::preload):
2103         * html/parser/HTMLResourcePreloader.h:
2104         (WebCore::PreloadRequest::PreloadRequest):
2105         * html/parser/HTMLScriptRunner.h:
2106         * html/parser/HTMLToken.h:
2107         (WebCore::HTMLToken::beginDOCTYPE):
2108         (WebCore::HTMLToken::releaseDoctypeData):
2109         * html/parser/HTMLTokenizer.h:
2110         * html/parser/HTMLTreeBuilder.h:
2111         * html/parser/HTMLViewSourceParser.cpp:
2112         (WebCore::HTMLViewSourceParser::HTMLViewSourceParser):
2113         * html/parser/HTMLViewSourceParser.h:
2114         * html/parser/XSSAuditor.cpp:
2115         (WebCore::XSSAuditor::init):
2116         (WebCore::XSSAuditor::filterToken):
2117         * html/parser/XSSAuditor.h:
2118         * html/parser/XSSAuditorDelegate.h:
2119         (WebCore::XSSInfo::XSSInfo):
2120         * loader/TextResourceDecoder.cpp:
2121         (WebCore::TextResourceDecoder::checkForHeadCharset):
2122         (WebCore::TextResourceDecoder::checkForMetaCharset):
2123         * loader/TextResourceDecoder.h:
2124
2125 2014-01-18  Benjamin Poulain  <benjamin@webkit.org>
2126
2127         Make ElementData JIT friendly
2128         https://bugs.webkit.org/show_bug.cgi?id=127209
2129
2130         Reviewed by Geoffrey Garen.
2131
2132         The offsets of ElementData's flags were not accessible by the JIT. This patch
2133         refactor ElementData to use explicit flags so that they can be used from
2134         the code generators.
2135
2136         * dom/Element.cpp:
2137         (WebCore::Element::synchronizeAllAttributes):
2138         (WebCore::Element::synchronizeAttribute):
2139         (WebCore::Element::attributeChanged):
2140         (WebCore::Element::removeAttribute):
2141         * dom/ElementData.cpp:
2142         (WebCore::ElementData::destroy):
2143         (WebCore::ElementData::ElementData):
2144         (WebCore::ShareableElementData::ShareableElementData):
2145         (WebCore::ShareableElementData::~ShareableElementData):
2146         (WebCore::ElementData::arraySizeAndFlagsFromOther):
2147         * dom/ElementData.h:
2148         (WebCore::ElementData::hasName):
2149         (WebCore::ElementData::isUnique):
2150         (WebCore::ElementData::updateFlag):
2151         (WebCore::ElementData::arraySize):
2152         (WebCore::ElementData::setHasNameAttribute):
2153         (WebCore::ElementData::styleAttributeIsDirty):
2154         (WebCore::ElementData::setStyleAttributeIsDirty):
2155         (WebCore::ElementData::presentationAttributeStyleIsDirty):
2156         (WebCore::ElementData::setPresentationAttributeStyleIsDirty):
2157         (WebCore::ElementData::animatedSVGAttributesAreDirty):
2158         (WebCore::ElementData::setAnimatedSVGAttributesAreDirty):
2159         (WebCore::ElementData::length):
2160         (WebCore::ElementData::attributeBase):
2161         (WebCore::ElementData::presentationAttributeStyle):
2162         * dom/StyledElement.cpp:
2163         (WebCore::StyledElement::synchronizeStyleAttributeInternal):
2164         (WebCore::StyledElement::attributeChanged):
2165         (WebCore::StyledElement::styleAttributeChanged):
2166         (WebCore::StyledElement::inlineStyleChanged):
2167         (WebCore::StyledElement::rebuildPresentationAttributeStyle):
2168         * dom/StyledElement.h:
2169         (WebCore::StyledElement::invalidateStyleAttribute):
2170         (WebCore::StyledElement::presentationAttributeStyle):
2171         * svg/SVGElement.cpp:
2172         (WebCore::SVGElement::synchronizeAnimatedSVGAttribute):
2173         * svg/SVGElement.h:
2174         (WebCore::SVGElement::invalidateSVGAttributes):
2175
2176 2014-01-18  Zalan Bujtas  <zalan@apple.com>
2177
2178         Subpixel layout: IntRect::infiniteRect() overflows when subpixel layout is enabled.
2179         https://bugs.webkit.org/show_bug.cgi?id=126899
2180
2181         Reviewed by Tim Horton.
2182
2183         Use LayoutUnits when setting the infinite values on IntRect::infiniteRect() to ensure
2184         it won't overflow later when the IntRect gets converted to LayoutRect.
2185
2186         Covered by existing tests.
2187
2188         * platform/graphics/IntRect.h:
2189         (WebCore::IntRect::infiniteRect):
2190
2191 2014-01-18  Anders Carlsson  <andersca@apple.com>
2192
2193         Remove support for the viewsource attribute
2194         https://bugs.webkit.org/show_bug.cgi?id=127232
2195
2196         Reviewed by Andreas Kling.
2197
2198         The 'viewsource' attribute on frames is nonstandard, not used by anyone (the inspector has
2199         its own syntax highlighting) and not audited.
2200
2201         This patch removes parsing of the viewsource attribute and the associated tests. A subsequent
2202         patch will remove the code as well.
2203
2204         * html/HTMLFrameElementBase.cpp:
2205         (WebCore::HTMLFrameElementBase::parseAttribute):
2206
2207 2014-01-18  Anders Carlsson  <andersca@apple.com>
2208
2209         XMLTreeViewer shouldn't use the view source mode
2210         https://bugs.webkit.org/show_bug.cgi?id=127229
2211
2212         Reviewed by Andreas Kling.
2213
2214         Add the relevant styles from view-source.css to XMLViewer.css.
2215
2216         * xml/XMLTreeViewer.cpp:
2217         (WebCore::XMLTreeViewer::transformDocumentToTreeView):
2218         * xml/XMLViewer.css:
2219         (body):
2220         (.comment):
2221         (.tag):
2222         (.attribute-name):
2223         (.attribute-value):
2224         * xml/XMLViewer.js:
2225         (createComment):
2226         (createTag):
2227         (createAttribute):
2228
2229 2014-01-18  Andreas Kling  <akling@apple.com>
2230
2231         Remove unused "touchDragDropEnabled" setting.
2232         <https://webkit.org/b/127227>
2233
2234         Reviewed by Sam Weinig.
2235
2236         * page/Settings.in:
2237
2238 2014-01-18  Brian Burg  <bburg@apple.com>
2239
2240         Web Inspector: Page should use std::unique_ptr for InspectorController
2241         https://bugs.webkit.org/show_bug.cgi?id=127068
2242
2243         Reviewed by Joseph Pecoraro.
2244
2245         Make Page and WorkerGlobalScope keep a std::unique_ptr to InspectorController
2246         and WorkerInspectorController. Store page references and return controller
2247         references where possible.
2248
2249         Convert call sites to use an InspectorController reference.
2250         Convert instantiations of InspectorFrontendClient to use std::unique_ptr.
2251         Convert InspectorOverlay to keep Page references.
2252
2253         * WebCore.exp.in:
2254         * bindings/js/JSDOMWindowBase.cpp:
2255         (WebCore::JSDOMWindowBase::supportsProfiling):
2256         (WebCore::JSDOMWindowBase::supportsRichSourceInfo):
2257         * dom/Node.cpp:
2258         (WebCore::Node::inspect):
2259         * inspector/InspectorController.cpp:
2260         (WebCore::InspectorController::InspectorController):
2261         (WebCore::InspectorController::inspectedPageDestroyed):
2262         (WebCore::InspectorController::setInspectorFrontendClient):
2263         (WebCore::InspectorController::hasInspectorFrontendClient):
2264         (WebCore::InspectorController::connectFrontend):
2265         (WebCore::InspectorController::disconnectFrontend):
2266         (WebCore::InspectorController::inspectedPage):
2267         (WebCore::InspectorController::developerExtrasEnabled):
2268         * inspector/InspectorController.h:
2269         * inspector/InspectorFrontendClientLocal.cpp:
2270         (WebCore::InspectorFrontendClientLocal::canAttachWindow):
2271         (WebCore::InspectorFrontendClientLocal::changeAttachedWindowHeight):
2272         (WebCore::InspectorFrontendClientLocal::changeAttachedWindowWidth):
2273         (WebCore::InspectorFrontendClientLocal::openInNewTab):
2274         (WebCore::InspectorFrontendClientLocal::restoreAttachedWindowHeight):
2275         * inspector/InspectorOverlay.cpp:
2276         (WebCore::InspectorOverlay::InspectorOverlay):
2277         (WebCore::InspectorOverlay::getHighlight):
2278         (WebCore::InspectorOverlay::highlightQuad):
2279         (WebCore::InspectorOverlay::update):
2280         (WebCore::InspectorOverlay::buildObjectForHighlightedNode):
2281         (WebCore::InspectorOverlay::drawQuadHighlight):
2282         (WebCore::InspectorOverlay::overlayPage):
2283         (WebCore::InspectorOverlay::reset):
2284         * inspector/InspectorOverlay.h:
2285         * inspector/InstrumentingAgents.cpp:
2286         (WebCore::instrumentationForPage): remove null checks.
2287         (WebCore::instrumentationForWorkerGlobalScope): remove null checks.
2288         * inspector/WorkerInspectorController.cpp:
2289         (WebCore::WorkerInspectorController::WorkerInspectorController):
2290         (WebCore::WorkerInspectorController::connectFrontend):
2291         (WebCore::WorkerInspectorController::disconnectFrontend):
2292         * inspector/WorkerInspectorController.h:
2293         * loader/FrameLoader.cpp:
2294         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
2295         (WebCore::FrameLoader::dispatchDidClearWindowObjectInWorld):
2296         * page/ContextMenuController.cpp:
2297         (WebCore::ContextMenuController::showContextMenu):
2298         (WebCore::ContextMenuController::contextMenuItemSelected):
2299         (WebCore::ContextMenuController::populate):
2300         (WebCore::ContextMenuController::addInspectElementItem):
2301         * page/FrameView.cpp:
2302         (WebCore::FrameView::sendResizeEventIfNeeded):
2303         * page/Page.cpp:
2304         (WebCore::Page::Page):
2305         * page/Page.h:
2306         (WebCore::Page::inspectorController):
2307         * page/PageDebuggable.cpp:
2308         (WebCore::PageDebuggable::hasLocalDebugger):
2309         (WebCore::PageDebuggable::parentProcessIdentifier):
2310         (WebCore::PageDebuggable::connect):
2311         (WebCore::PageDebuggable::disconnect):
2312         (WebCore::PageDebuggable::dispatchMessageFromRemoteFrontend):
2313         (WebCore::PageDebuggable::setIndicating):
2314         * platform/graphics/texmap/coordinated/CompositingCoordinator.cpp:
2315         (WebCore::CompositingCoordinator::syncDisplayState):
2316         * testing/Internals.cpp:
2317         (WebCore::Internals::resetToConsistentState):
2318         (WebCore::Internals::inspectorHighlightRects):
2319         (WebCore::Internals::inspectorHighlightObject):
2320         (WebCore::Internals::emitInspectorDidBeginFrame):
2321         (WebCore::Internals::emitInspectorDidCancelFrame):
2322         (WebCore::Internals::openDummyInspectorFrontend):
2323         (WebCore::Internals::closeDummyInspectorFrontend):
2324         (WebCore::Internals::setInspectorResourcesDataSizeLimits):
2325         (WebCore::Internals::setJavaScriptProfilingEnabled):
2326         * workers/WorkerGlobalScope.cpp:
2327         (WebCore::WorkerGlobalScope::WorkerGlobalScope):
2328         * workers/WorkerGlobalScope.h: remove clearInspector(). 
2329         (WebCore::WorkerGlobalScope::workerInspectorController):
2330         * workers/WorkerMessagingProxy.cpp:
2331         (WebCore::connectToWorkerGlobalScopeInspectorTask):
2332         (WebCore::disconnectFromWorkerGlobalScopeInspectorTask):
2333         (WebCore::dispatchOnInspectorBackendTask):
2334         * workers/WorkerThread.cpp:
2335         (WebCore::WorkerThreadShutdownFinishTask::performTask):
2336
2337 2014-01-18  Anders Carlsson  <andersca@apple.com>
2338
2339         Remove ENABLE_THREADED_HTML_PARSER defines everywhere
2340         https://bugs.webkit.org/show_bug.cgi?id=127225
2341
2342         Reviewed by Andreas Kling.
2343
2344         This concludes the removal of over 8.8 million lines of threaded parser code.
2345
2346         * Configurations/FeatureDefines.xcconfig:
2347
2348 2014-01-18  Anders Carlsson  <andersca@apple.com>
2349
2350         Remove the remaining threaded parser code
2351         https://bugs.webkit.org/show_bug.cgi?id=127224
2352
2353         Reviewed by Andreas Kling.
2354
2355         * dom/Document.cpp:
2356         (WebCore::Document::decrementActiveParserCount):
2357         * html/parser/AtomicHTMLToken.h:
2358         * html/parser/HTMLDocumentParser.cpp:
2359         (WebCore::HTMLDocumentParser::HTMLDocumentParser):
2360         (WebCore::HTMLDocumentParser::detach):
2361         (WebCore::HTMLDocumentParser::stopParsing):
2362         (WebCore::HTMLDocumentParser::prepareToStopParsing):
2363         (WebCore::HTMLDocumentParser::resumeParsingAfterYield):
2364         (WebCore::HTMLDocumentParser::forcePlaintextForTextDocument):
2365         (WebCore::HTMLDocumentParser::insert):
2366         (WebCore::HTMLDocumentParser::append):
2367         (WebCore::HTMLDocumentParser::end):
2368         (WebCore::HTMLDocumentParser::finish):
2369         (WebCore::HTMLDocumentParser::textPosition):
2370         (WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution):
2371         * html/parser/HTMLDocumentParser.h:
2372         * html/parser/HTMLParserIdioms.cpp:
2373         * html/parser/HTMLParserIdioms.h:
2374         * html/parser/HTMLTokenizer.cpp:
2375         * html/parser/HTMLTokenizer.h:
2376         * loader/DocumentLoader.cpp:
2377         (WebCore::DocumentLoader::isLoading):
2378         (WebCore::DocumentLoader::checkLoadComplete):
2379         * page/Settings.in:
2380
2381 2014-01-18  Anders Carlsson  <andersca@apple.com>
2382
2383         Remove threaded parser code from the preload scanners
2384         https://bugs.webkit.org/show_bug.cgi?id=127222
2385
2386         Reviewed by Andreas Kling.
2387
2388         * html/parser/CSSPreloadScanner.cpp:
2389         (WebCore::CSSPreloadScanner::CSSPreloadScanner):
2390         Use nullptr.
2391
2392         (WebCore::CSSPreloadScanner::scan):
2393         Move scanCommon here and simplify the code.
2394
2395         * html/parser/CSSPreloadScanner.h:
2396         Remove scanCommon.
2397
2398         * html/parser/HTMLPreloadScanner.cpp:
2399         (WebCore::TokenPreloadScanner::tagIdFor):
2400         TagId is a strong enum now, update enum values.
2401
2402         (WebCore::TokenPreloadScanner::initiatorFor):
2403         Ditto.
2404
2405         (WebCore::TokenPreloadScanner::StartTagScanner::processAttributes):
2406         Ditto.
2407
2408         (WebCore::TokenPreloadScanner::StartTagScanner::match):
2409         Indent this.
2410
2411         (WebCore::TokenPreloadScanner::StartTagScanner::processAttribute):
2412         TagId is a strong enum now, update enum values.
2413
2414         (WebCore::TokenPreloadScanner::StartTagScanner::charset):
2415         Ditto.
2416
2417         (WebCore::TokenPreloadScanner::StartTagScanner::resourceType):
2418         Ditto.
2419
2420         (WebCore::TokenPreloadScanner::StartTagScanner::shouldPreload):
2421         Ditto.
2422
2423         (WebCore::TokenPreloadScanner::scan):
2424         Merge scan and scanCommon.
2425
2426         * html/parser/HTMLPreloadScanner.h:
2427
2428 2014-01-18  Lauro Neto  <lauro.neto@openbossa.org>
2429
2430         Remove Nix files from WebCore
2431         https://bugs.webkit.org/show_bug.cgi?id=127176
2432
2433         Reviewed by Anders Carlsson.
2434
2435         * PlatformNix.cmake: Removed.
2436         * css/mediaControlsNix.css: Removed.
2437         * css/mediaControlsNixFullscreen.css: Removed.
2438         * editing/nix/EditorNix.cpp: Removed.
2439         * page/nix/EventHandlerNix.cpp: Removed.
2440         * platform/audio/nix/AudioBusNix.cpp: Removed.
2441         * platform/audio/nix/AudioDestinationNix.cpp: Removed.
2442         * platform/audio/nix/AudioDestinationNix.h: Removed.
2443         * platform/audio/nix/FFTFrameNix.cpp: Removed.
2444         * platform/graphics/nix/IconNix.cpp: Removed.
2445         * platform/graphics/nix/ImageNix.cpp: Removed.
2446         * platform/nix/CursorNix.cpp: Removed.
2447         * platform/nix/DragDataNix.cpp: Removed.
2448         * platform/nix/DragImageNix.cpp: Removed.
2449         * platform/nix/ErrorsNix.cpp: Removed.
2450         * platform/nix/ErrorsNix.h: Removed.
2451         * platform/nix/FileSystemNix.cpp: Removed.
2452         * platform/nix/GamepadsNix.cpp: Removed.
2453         * platform/nix/LanguageNix.cpp: Removed.
2454         * platform/nix/LocalizedStringsNix.cpp: Removed.
2455         * platform/nix/MIMETypeRegistryNix.cpp: Removed.
2456         * platform/nix/NixKeyboardUtilities.cpp: Removed.
2457         * platform/nix/NixKeyboardUtilities.h: Removed.
2458         * platform/nix/PasteboardNix.cpp: Removed.
2459         * platform/nix/PlatformKeyboardEventNix.cpp: Removed.
2460         * platform/nix/PlatformScreenNix.cpp: Removed.
2461         * platform/nix/RenderThemeNix.cpp: Removed.
2462         * platform/nix/RenderThemeNix.h: Removed.
2463         * platform/nix/ScrollbarThemeNix.cpp: Removed.
2464         * platform/nix/ScrollbarThemeNix.h: Removed.
2465         * platform/nix/SharedTimerNix.cpp: Removed.
2466         * platform/nix/SoundNix.cpp: Removed.
2467         * platform/nix/TemporaryLinkStubs.cpp: Removed.
2468         * platform/nix/WidgetNix.cpp: Removed.
2469         * platform/nix/support/MultiChannelPCMData.cpp: Removed.
2470         * platform/text/nix/TextBreakIteratorInternalICUNix.cpp: Removed.
2471
2472 2014-01-18  Anders Carlsson  <andersca@apple.com>
2473
2474         Remove DocumentParser::pinToMainThread() and related code
2475         https://bugs.webkit.org/show_bug.cgi?id=127221
2476
2477         Reviewed by Andreas Kling.
2478
2479         * dom/Document.cpp:
2480         (WebCore::Document::setContent):
2481         * dom/DocumentParser.h:
2482         * html/parser/HTMLDocumentParser.cpp:
2483         (WebCore::HTMLDocumentParser::HTMLDocumentParser):
2484         * html/parser/HTMLDocumentParser.h:
2485         * html/parser/HTMLParserOptions.cpp:
2486         (WebCore::HTMLParserOptions::HTMLParserOptions):
2487         * html/parser/HTMLParserOptions.h:
2488         * html/parser/HTMLTreeBuilder.cpp:
2489         (WebCore::HTMLTreeBuilder::processEndTag):
2490         * loader/DocumentWriter.cpp:
2491         (WebCore::DocumentWriter::replaceDocument):
2492
2493 2014-01-18  Anders Carlsson  <andersca@apple.com>
2494
2495         Remove HTMLParserThread
2496         https://bugs.webkit.org/show_bug.cgi?id=127220
2497
2498         Reviewed by Andreas Kling.
2499
2500         * CMakeLists.txt:
2501         * GNUmakefile.list.am:
2502         * WebCore.vcxproj/WebCore.vcxproj:
2503         * WebCore.vcxproj/WebCore.vcxproj.filters:
2504         * WebCore.xcodeproj/project.pbxproj:
2505         * html/parser/HTMLDocumentParser.cpp:
2506         * html/parser/HTMLParserThread.cpp: Removed.
2507         * html/parser/HTMLParserThread.h: Removed.
2508
2509 2014-01-17  Andreas Kling  <akling@apple.com>
2510
2511         GC soon after responding to fake memory pressure.
2512         <https://webkit.org/b/127210>
2513
2514         Ask JSC to garbage collect "soon" after handling the fake memory
2515         pressure signal on Mac. This seems to stabilize the post-pressure
2516         numbers on Membuster3 a bit on my laptop. The difference is mostly
2517         made up of JSC::CodeBlock objects.
2518
2519         Reviewed by Geoffrey Garen.
2520
2521         * platform/mac/MemoryPressureHandlerMac.mm:
2522         (WebCore::MemoryPressureHandler::install):
2523
2524 2014-01-18  Anders Carlsson  <andersca@apple.com>
2525
2526         Remove files only used by the threaded HTML parser
2527         https://bugs.webkit.org/show_bug.cgi?id=127219
2528         <rdar://problem/13331277>
2529
2530         Reviewed by Andreas Kling.
2531
2532         * CMakeLists.txt:
2533         * GNUmakefile.list.am:
2534         * WebCore.vcxproj/WebCore.vcxproj:
2535         * WebCore.vcxproj/WebCore.vcxproj.filters:
2536         * WebCore.xcodeproj/project.pbxproj:
2537         * html/parser/AtomicHTMLToken.h:
2538         * html/parser/BackgroundHTMLInputStream.cpp: Removed.
2539         * html/parser/BackgroundHTMLInputStream.h: Removed.
2540         * html/parser/BackgroundHTMLParser.cpp: Removed.
2541         * html/parser/BackgroundHTMLParser.h: Removed.
2542         * html/parser/CompactHTMLToken.cpp: Removed.
2543         * html/parser/CompactHTMLToken.h: Removed.
2544         * html/parser/HTMLDocumentParser.cpp:
2545         * html/parser/HTMLDocumentParser.h:
2546         * html/parser/HTMLIdentifier.cpp: Removed.
2547         * html/parser/HTMLIdentifier.h: Removed.
2548         * html/parser/HTMLParserIdioms.h:
2549         * html/parser/HTMLPreloadScanner.h:
2550         * html/parser/HTMLTreeBuilderSimulator.cpp: Removed.
2551         * html/parser/HTMLTreeBuilderSimulator.h: Removed.
2552
2553 2014-01-17  Andreas Kling  <akling@apple.com>
2554
2555         Micro-optimize RenderBoxModelObject::computedCSSPadding().
2556         <https://webkit.org/b/127208>
2557
2558         Make computedCSSPadding() take the Length as a const reference
2559         to avoid creating a temporary copy. This was showing up (0.2%)
2560         on DoYouEvenBench.
2561
2562         Reviewed by Anders Carlsson.
2563
2564         * rendering/RenderBoxModelObject.h:
2565         * rendering/RenderBoxModelObject.cpp:
2566         (WebCore::RenderBoxModelObject::computedCSSPadding):
2567
2568 2014-01-17  Anders Carlsson  <andersca@apple.com>
2569
2570         Add a callOnMainThreadAndWait variant in SocketStreamHandle
2571         https://bugs.webkit.org/show_bug.cgi?id=127180
2572
2573         Reviewed by Geoffrey Garen.
2574
2575         WTF::callOnMainThreadAndWait was only used inside SocketStreamHandleCFNet.cpp, 
2576         so add an improved version there which is implemented in terms of callOnMainThread and
2577         with the bonus of handling spurious wake-ups correctly (the old version didn't).
2578
2579         * platform/network/cf/SocketStreamHandle.h:
2580         * platform/network/cf/SocketStreamHandleCFNet.cpp:
2581         (WebCore::callOnMainThreadAndWait):
2582         (WebCore::SocketStreamHandle::pacExecutionCallback):
2583         (WebCore::SocketStreamHandle::readStreamCallback):
2584         (WebCore::SocketStreamHandle::writeStreamCallback):
2585
2586 2014-01-17  Anders Carlsson  <andersca@apple.com>
2587
2588         Clean up PageCache classes
2589         https://bugs.webkit.org/show_bug.cgi?id=127202
2590
2591         Reviewed by Andreas Kling.
2592
2593         * WebCore.exp.in:
2594         * history/CachedFrame.cpp:
2595         (WebCore::CachedFrameBase::~CachedFrameBase):
2596         (WebCore::CachedFrame::CachedFrame):
2597         (WebCore::CachedFrame::clear):
2598         (WebCore::CachedFrame::setCachedFramePlatformData):
2599         * history/CachedFrame.h:
2600         * history/CachedPage.cpp:
2601         (WebCore::CachedPage::CachedPage):
2602         * history/CachedPage.h:
2603         * history/HistoryItem.h:
2604         (WebCore::HistoryItem::isInPageCache):
2605         * history/PageCache.cpp:
2606         (WebCore::PageCache::add):
2607         (WebCore::PageCache::take):
2608         (WebCore::PageCache::remove):
2609         * history/PageCache.h:
2610         * loader/FrameLoader.cpp:
2611         (WebCore::FrameLoader::commitProvisionalLoad):
2612         * loader/HistoryController.cpp:
2613         (WebCore::HistoryController::invalidateCurrentItemCachedPage):
2614
2615 2014-01-17  Andy Estes  <aestes@apple.com>
2616
2617         Work around a preprocessor warning in mediaControlsApple.js
2618         https://bugs.webkit.org/show_bug.cgi?id=127204
2619
2620         Reviewed by Dan Bernstein.
2621
2622         * Modules/mediacontrols/mediaControlsApple.js: Changed '' to String().
2623
2624 2014-01-17  Daniel Bates  <dabates@apple.com>
2625
2626         Fix the iOS build after <http://trac.webkit.org/changeset/162184>
2627         (https://bugs.webkit.org/show_bug.cgi?id=126856)
2628
2629         Remove symbol for WebCore::NonSharedCharacterBreakIterator::NonSharedCharacterBreakIterator(unsigned short const*, int).
2630         Add symbol for WebCore::NonSharedCharacterBreakIterator::NonSharedCharacterBreakIterator(WTF::StringView).
2631
2632         * WebCore.exp.in:
2633
2634 2014-01-17  Andreas Kling  <akling@apple.com>
2635
2636         Remove unused TOUCH_ADJUSTMENT code.
2637         <https://webkit.org/b/127181>
2638
2639         There are no ports using the ENABLE(TOUCH_ADJUSTMENT) feature
2640         anymore, so nuke it from orbit.
2641
2642         Reviewed by Anders Carlsson.
2643
2644         * page/EventHandler.cpp:
2645         * page/EventHandler.h:
2646         * page/Settings.in:
2647         * page/TouchAdjustment.cpp: Removed.
2648         * page/TouchAdjustment.h: Removed.
2649         * testing/Internals.cpp:
2650         * testing/Internals.h:
2651         * testing/Internals.idl:
2652
2653 2014-01-17  Beth Dakin  <bdakin@apple.com>
2654
2655         Need a way to test the tile cache with margins enabled
2656         https://bugs.webkit.org/show_bug.cgi?id=127194
2657         -and corresponding-
2658         <rdar://problem/15571327>
2659
2660         Reviewed by Tim Horton.
2661
2662         This patch adds a new function to InternalSettings that will allow layout tests to 
2663         flip the setting Settings::setBackgroundShouldExtendBeyondPage(). This patch also         
2664         makes changing that setting take effect immediately. 
2665
2666         To make this setting dynamic, we can no longer generate the Setting function, so 
2667         we have to export the symbol manually.
2668         * WebCore.exp.in:
2669
2670         This new function on FrameView will call into RenderLayerBacking to add or remove 
2671         margins.
2672         * page/FrameView.cpp:
2673         (WebCore::FrameView::setBackgroundExtendsBeyondPage):
2674         * page/FrameView.h:
2675
2676         Again, we’re no longer using the boiler-plate generated Setting functions, so now 
2677         we can call into FrameView to make the background extend.
2678         * page/Settings.cpp:
2679         (WebCore::Settings::Settings):
2680         (WebCore::Settings::setBackgroundShouldExtendBeyondPage):
2681         * page/Settings.h:
2682         (WebCore::Settings::backgroundShouldExtendBeyondPage):
2683         * page/Settings.in:
2684
2685         Whenever tile margins are set, call setNeedsRevalidateTiles() to make the change 
2686         dynamic.
2687         * platform/graphics/ca/mac/TileController.mm:
2688         (WebCore::TileController::setTileMargins):
2689
2690         Move the call to TiledBacking::setTileMargins() into a helper function so that the 
2691         same code can be used for FrameView.
2692         * rendering/RenderLayerBacking.cpp:
2693         (WebCore::RenderLayerBacking::RenderLayerBacking):
2694         (WebCore::RenderLayerBacking::setTiledBackingHasMargins):
2695         * rendering/RenderLayerBacking.h:
2696
2697         New InternalSetting.
2698         * testing/InternalSettings.cpp:
2699         (WebCore::InternalSettings::setBackgroundShouldExtendBeyondPage):
2700         * testing/InternalSettings.h:
2701         * testing/InternalSettings.idl:
2702
2703 2014-01-17  Anders Carlsson  <andersca@apple.com>
2704
2705         Remove another unused FrameLoaderClient callback
2706         https://bugs.webkit.org/show_bug.cgi?id=127192
2707
2708         Reviewed by Dan Bernstein.
2709
2710         FrameLoaderClient::dispatchDocumentElementAvailable() was only used by the Chromium port, so remove it.
2711
2712         * html/ImageDocument.cpp:
2713         (WebCore::ImageDocument::createDocumentStructure):
2714         * html/MediaDocument.cpp:
2715         (WebCore::MediaDocumentParser::createDocumentStructure):
2716         * html/PluginDocument.cpp:
2717         (WebCore::PluginDocumentParser::createDocumentStructure):
2718         * html/parser/HTMLConstructionSite.cpp:
2719         (WebCore::HTMLConstructionSite::dispatchDocumentElementAvailableIfNeeded):
2720         * loader/EmptyClients.h:
2721         * loader/FrameLoader.cpp:
2722         * loader/FrameLoader.h:
2723         * loader/FrameLoaderClient.h:
2724         * xml/parser/XMLDocumentParserLibxml2.cpp:
2725         (WebCore::XMLDocumentParser::startElementNs):
2726
2727 2014-01-17  Anders Carlsson  <andersca@apple.com>
2728
2729         Remove FrameLoaderClient::didPerformFirstNavigation()
2730         https://bugs.webkit.org/show_bug.cgi?id=127191
2731
2732         Reviewed by Dan Bernstein.
2733
2734         * loader/EmptyClients.h:
2735         * loader/FrameLoader.cpp:
2736         (WebCore::FrameLoader::FrameLoader):
2737         * loader/FrameLoader.h:
2738         * loader/FrameLoaderClient.h:
2739         * loader/HistoryController.cpp:
2740         (WebCore::HistoryController::updateBackForwardListClippedAtTarget):
2741
2742 2014-01-17  Anders Carlsson  <andersca@apple.com>
2743
2744         Move didPerformFirstNavigation() logic to -[WebView _didCommitLoadForFrame:]
2745         https://bugs.webkit.org/show_bug.cgi?id=127189
2746
2747         Reviewed by Dan Bernstein.
2748
2749         * loader/FrameLoaderClient.h:
2750         (WebCore::FrameLoaderClient::didPerformFirstNavigation):
2751         Add an empty implementation of didPerformFirstNavigation() to make it easier to remove it from subclasses.
2752
2753 2014-01-17  Eric Carlson  <eric.carlson@apple.com>
2754
2755         [iOS] HTMLMediaSession should set AudioSession category
2756         https://bugs.webkit.org/show_bug.cgi?id=127137
2757
2758         Reviewed by Sam Weinig.
2759
2760         * html/HTMLMediaSession.cpp:
2761         (WebCore::initializeAudioSession): New, set the audio session to "media" on iOS.
2762         (WebCore::HTMLMediaSession::HTMLMediaSession): Call initializeAudioSession.
2763
2764 2014-01-17  Daniel Bates  <dabates@apple.com>
2765
2766         Fix the iOS build after <http://trac.webkit.org/changeset/162178>
2767         (https://bugs.webkit.org/show_bug.cgi?id=127147)
2768
2769         Declare WebMediaSessionHelper outside of namespace WebCore to resolve error that
2770         "Objective-C declarations may only appear in global scope".
2771
2772         * platform/audio/ios/MediaSessionManagerIOS.mm:
2773
2774 2014-01-17  Bem Jones-Bey  <bjonesbe@adobe.com>
2775
2776         [CSS Shapes] Stacked floats with shape-outside should allow inline content to interact with the non-outermost float
2777         https://bugs.webkit.org/show_bug.cgi?id=122576
2778
2779         Reviewed by David Hyatt.
2780
2781         Make inline content interact with stacked floats with shape-outside
2782         per the spec. This means that content can interact with floats on the
2783         line that are not the outermost float.
2784
2785         This refactors ComputeFloatOffsetAdapter into a superclass and two
2786         subclasses: one adaptor for determining the offset for float layout,
2787         and one for determining the offset for inline layout.
2788
2789         The logic in LineWidth::shrinkAvailableWidthForNewFloatIfNeeded has
2790         been updated to handle stacked floats with shape-outside properly and
2791         has been considerably simplified in the process. It was previously
2792         doing a whole bunch of unnecessary work.
2793
2794         Tests: fast/shapes/shape-outside-floats/shape-outside-floats-stacked-000.html
2795                fast/shapes/shape-outside-floats/shape-outside-floats-stacked-001.html
2796                fast/shapes/shape-outside-floats/shape-outside-floats-stacked-002.html
2797
2798         * rendering/FloatingObjects.cpp:
2799         (WebCore::ComputeFloatOffsetAdapter::~ComputeFloatOffsetAdapter):
2800         (WebCore::ComputeFloatOffsetForFloatLayoutAdapter::ComputeFloatOffsetForFloatLayoutAdapter):
2801         (WebCore::ComputeFloatOffsetForFloatLayoutAdapter::~ComputeFloatOffsetForFloatLayoutAdapter):
2802         (WebCore::ComputeFloatOffsetForLineLayoutAdapter::ComputeFloatOffsetForLineLayoutAdapter):
2803         (WebCore::ComputeFloatOffsetForLineLayoutAdapter::~ComputeFloatOffsetForLineLayoutAdapter):
2804         (WebCore::FloatingObjects::logicalLeftOffsetForPositioningFloat):
2805         (WebCore::FloatingObjects::logicalRightOffsetForPositioningFloat):
2806         (WebCore::FloatingObjects::logicalLeftOffset):
2807         (WebCore::FloatingObjects::logicalRightOffset):
2808         (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatingObject::FloatLeft>::updateOffsetIfNeeded):
2809         (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatingObject::FloatRight>::updateOffsetIfNeeded):
2810         (WebCore::ComputeFloatOffsetForFloatLayoutAdapter<FloatTypeValue>::heightRemaining):
2811         (WebCore::shapeInfoForFloat):
2812         (WebCore::ComputeFloatOffsetForLineLayoutAdapter<FloatingObject::FloatLeft>::updateOffsetIfNeeded):
2813         (WebCore::ComputeFloatOffsetForLineLayoutAdapter<FloatingObject::FloatRight>::updateOffsetIfNeeded):
2814         * rendering/line/LineWidth.cpp:
2815         (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded):
2816         * rendering/shapes/ShapeOutsideInfo.cpp:
2817         (WebCore::ShapeOutsideInfo::updateDeltasForContainingBlockLine):
2818         * rendering/shapes/ShapeOutsideInfo.h:
2819
2820 2014-01-17  Zoltan Horvath  <zoltan@webkit.org>
2821
2822         [CSS3] Add rendering support for -webkit-text-align-last
2823         https://bugs.webkit.org/show_bug.cgi?id=99584
2824
2825         Reviewed by David Hyatt.
2826
2827         Add support for the text-align-last CSS3 property, according to the latest specification:
2828         http://dev.w3.org/csswg/css-text-3/#text-align-last-property
2829
2830         Tests: fast/css3-text/css3-text-align-last/text-align-last-with-text-align-justify.html
2831                fast/css3-text/css3-text-align-last/text-align-last-with-text-align-non-justify.html
2832
2833         * rendering/RenderBlockLineLayout.cpp:
2834         (WebCore::RenderBlockFlow::textAlignmentForLine):
2835         * rendering/style/RenderStyle.cpp:
2836         (WebCore::RenderStyle::changeRequiresLayout):
2837
2838 2014-01-17  Daniel Bates  <dabates@apple.com>
2839
2840         Fix the iOS build after <http://trac.webkit.org/changeset/162208>
2841         (https://bugs.webkit.org/show_bug.cgi?id=127139)
2842
2843         __MAC_OS_X_VERSION_MIN_REQUIRED isn't defined when building for iOS. Instead, explicitly
2844         check that we're not PLATFORM(IOS) to avoid defining the enum value CFHTTPCookieStorageAcceptPolicyExclusivelyFromMainDocumentDomain.
2845
2846         * platform/network/cf/CookieJarCFNet.cpp:
2847
2848 2014-01-17  Bear Travis  <betravis@adobe.com>
2849
2850         [CSS Shapes] Basic shapes' computed position should be a horizontal and vertical offset
2851         https://bugs.webkit.org/show_bug.cgi?id=127010
2852
2853         Reviewed by Rob Buis.
2854
2855         This patch updates the computed position values used for blending to be a horizontal
2856         left offset and a vertical top offset. When positions include a center, bottom, or
2857         right position offset, it is converted to the appropriate top/left coordinate as
2858         a calc expression. Serialized values still use the original bottom/right directions
2859         when present, and also omit the top/left keywords where possible.
2860
2861         Updated parsing and animation tests.
2862
2863         * css/BasicShapeFunctions.cpp:
2864         (WebCore::valueForCenterCoordinate): Use the simplified BasicShapeCenterCoordinate,
2865         which includes an offset and whether the direction is from the top/left or bottom/right.
2866         (WebCore::valueForBasicShape): Ditto.
2867         (WebCore::convertToCenterCoordinate): Ditto.
2868         (WebCore::basicShapeForValue): Ditto.
2869         (WebCore::floatValueForCenterCoordinate): Ditto.
2870         * page/animation/CSSPropertyAnimation.cpp:
2871         (WebCore::blendFunc): Remove the RenderBox parameter, which is no longer needed.
2872         * rendering/style/BasicShapes.cpp:
2873         (WebCore::BasicShapeCenterCoordinate::updateComputedLength): Calculate the computed
2874         position offset for this center coordinate.
2875         (WebCore::BasicShapeRectangle::blend): Remove the RenderBox parameter.
2876         (WebCore::DeprecatedBasicShapeCircle::blend): Ditto.
2877         (WebCore::BasicShapeCircle::blend): Ditto.
2878         (WebCore::DeprecatedBasicShapeEllipse::blend): Ditto.
2879         (WebCore::BasicShapeEllipse::blend): Ditto.
2880         (WebCore::BasicShapePolygon::blend): Ditto.
2881         (WebCore::BasicShapeInsetRectangle::blend): Ditto.
2882         (WebCore::BasicShapeInset::blend): Ditto.
2883         * rendering/style/BasicShapes.h:
2884         (WebCore::BasicShapeCenterCoordinate::BasicShapeCenterCoordinate): Simplify
2885         BasicShapeCenterCoordinate to contain an offset and a direction. Also add a
2886         computed length, which is an offset from the top/left direction.
2887         (WebCore::BasicShapeCenterCoordinate::direction):
2888         (WebCore::BasicShapeCenterCoordinate::computedLength):
2889         (WebCore::BasicShapeCenterCoordinate::blend):
2890
2891 2014-01-17  Alexey Proskuryakov  <ap@apple.com>
2892
2893         More non-Mac build fix.
2894
2895         * platform/network/cf/CookieJarCFNet.cpp:
2896
2897 2014-01-16  Myles C. Maxfield  <mmaxfield@apple.com>
2898
2899         Unprefix text-emphasis CSS properties
2900         https://bugs.webkit.org/show_bug.cgi?id=127160
2901
2902         Reviewed by Sam Weinig.
2903
2904         Add synonym CSS properties. We don't want to delete the old ones because
2905         we've shipped with them included.
2906
2907         Test: fast/css3-text/css3-text-decoration/text-decoration-unprefix.html
2908
2909         * css/CSSPropertyNames.in:
2910
2911 2014-01-17  Alberto Garcia  <berto@igalia.com>
2912
2913         [GTK] WebKitGtk/testcopyandpaste fails in debug builds
2914         https://bugs.webkit.org/show_bug.cgi?id=127173
2915
2916         Reviewed by Carlos Garcia Campos.
2917
2918         Remove duplicate "PasteGlobalSelection" entry.
2919
2920         * editing/EditorCommand.cpp:
2921         (WebCore::createCommandMap):
2922
2923 2014-01-14  Andreas Kling  <akling@apple.com>
2924
2925         Pack ResourceRequest harder.
2926         <https://webkit.org/b/126982>
2927
2928         Re-arrange the members of ResourceRequest to reduce padding,
2929         shrinking it by 8 bytes.
2930
2931         Reviewed by Anders Carlsson.
2932
2933         * platform/network/ResourceRequestBase.h:
2934         (WebCore::ResourceRequestBase::ResourceRequestBase):
2935
2936 2014-01-17  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
2937
2938         Remove workaround for compilers not supporting deleted functions
2939         https://bugs.webkit.org/show_bug.cgi?id=127166
2940
2941         Reviewed by Andreas Kling.
2942
2943         * bindings/js/JSLazyEventListener.h:
2944         * dom/ContainerNode.h:
2945         * dom/Document.h:
2946         * dom/Element.h:
2947         * rendering/InlineFlowBox.h:
2948         * rendering/InlineTextBox.h:
2949         * rendering/RenderButton.h:
2950         * rendering/RenderCombineText.h:
2951         * rendering/RenderElement.h:
2952         * rendering/RenderFieldset.h:
2953         * rendering/RenderFileUploadControl.h:
2954         * rendering/RenderFrame.h:
2955         * rendering/RenderFrameBase.h:
2956         * rendering/RenderFrameSet.h:
2957         * rendering/RenderHTMLCanvas.h:
2958         * rendering/RenderIFrame.h:
2959         * rendering/RenderLineBreak.h:
2960         * rendering/RenderListBox.h:
2961         * rendering/RenderListMarker.h:
2962         * rendering/RenderMedia.h:
2963         * rendering/RenderMenuList.h:
2964         * rendering/RenderSnapshottedPlugIn.h:
2965         * rendering/RenderTableCell.h:
2966         * rendering/RenderTableRow.h:
2967         * rendering/RenderTableSection.h:
2968         * rendering/RenderText.h:
2969         * rendering/RenderTextControl.h:
2970         * rendering/RenderTextControlMultiLine.h:
2971         * rendering/RenderTextControlSingleLine.h:
2972         * rendering/RenderVideo.h:
2973         * rendering/RenderWidget.h:
2974         * rendering/svg/RenderSVGBlock.h:
2975         * rendering/svg/RenderSVGForeignObject.h:
2976         * rendering/svg/RenderSVGImage.h:
2977         * rendering/svg/RenderSVGInline.h:
2978         * rendering/svg/RenderSVGRect.h:
2979         * rendering/svg/RenderSVGResourceClipper.h:
2980         * rendering/svg/RenderSVGResourceFilter.h:
2981         * rendering/svg/RenderSVGResourceFilterPrimitive.h:
2982         * rendering/svg/RenderSVGResourceGradient.h:
2983         * rendering/svg/RenderSVGResourceLinearGradient.h:
2984         * rendering/svg/RenderSVGResourceMarker.h:
2985         * rendering/svg/RenderSVGResourceMasker.h:
2986         * rendering/svg/RenderSVGResourcePattern.h:
2987         * rendering/svg/RenderSVGResourceRadialGradient.h:
2988         * rendering/svg/RenderSVGRoot.h:
2989         * rendering/svg/RenderSVGShape.h:
2990         * rendering/svg/RenderSVGTSpan.h:
2991         * rendering/svg/RenderSVGText.h:
2992         * rendering/svg/RenderSVGTextPath.h:
2993         * rendering/svg/RenderSVGTransformableContainer.h:
2994         * rendering/svg/RenderSVGViewportContainer.h:
2995         * xml/XPathValue.h:
2996
2997 2014-01-17  Zan Dobersek  <zdobersek@igalia.com>
2998
2999         [ATK] Modernize the for loops in ATK AX code
3000         https://bugs.webkit.org/show_bug.cgi?id=127120
3001
3002         Reviewed by Mario Sanchez Prada.
3003
3004         Update the for loops to be range-based in ATK accessibility code.
3005         This work is complementary to r161979.
3006
3007         * accessibility/atk/WebKitAccessibleInterfaceHypertext.cpp:
3008         (webkitAccessibleHypertextGetLink):
3009         * accessibility/atk/WebKitAccessibleInterfaceTable.cpp:
3010         (webkitAccessibleTableGetColumnHeader):
3011         (webkitAccessibleTableGetRowHeader):
3012         * accessibility/atk/WebKitAccessibleUtil.cpp:
3013         (accessibilityTitle):
3014         (accessibilityDescription):
3015         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
3016         (getNChildrenForTable):
3017         (getChildForTable):
3018         (getIndexInParentForCellInRow):
3019
3020 2014-01-17  Zan Dobersek  <zdobersek@igalia.com>
3021
3022         [Soup] Remove unnecessary using-directives for the std namespace
3023         https://bugs.webkit.org/show_bug.cgi?id=127122
3024
3025         Reviewed by Martin Robinson.
3026
3027         * platform/network/soup/ResourceRequestSoup.cpp: Remove the unnecessary using-directive for the std namespace
3028         as no symbols from that namespace are in use in this implementation file.
3029         * platform/network/soup/ResourceResponseSoup.cpp: Ditto.
3030
3031 2014-01-16  Tim Horton  <timothy_horton@apple.com>
3032
3033         On iOS, zooming in with a TileController-backed main frame makes hundreds of tiles
3034         https://bugs.webkit.org/show_bug.cgi?id=126531
3035         <rdar://problem/15745862>
3036
3037         Reviewed by Anders Carlsson.
3038
3039         * platform/graphics/ca/mac/TileController.h:
3040         * platform/graphics/ca/mac/TileController.mm:
3041         (WebCore::TileController::tilesWouldChangeForVisibleRect):
3042         (WebCore::TileController::scaledExposedRect):
3043         (WebCore::TileController::computeTileCoverageRect):
3044         (WebCore::TileController::revalidateTiles):
3045         (WebCore::TileController::updateTileCoverageMap):
3046         Scale the FrameView-space exposedRect into document space, to match the visibleRect.
3047
3048         Flipping on WKView's clipsToExposedRect now works correctly even in Safari
3049         or MiniBrowser with zooming.
3050
3051 2014-01-15  Sam Weinig  <sam@webkit.org>
3052
3053         TextBreakIterator's should support Latin-1 for all iterator types (Part 3)
3054         https://bugs.webkit.org/show_bug.cgi?id=126856
3055
3056         Reviewed by Ryosuke Niwa.
3057
3058         Change all the TextBreakIterator creation functions to take StringViews. Remove a few
3059         now unnecessary up-conversions to UTF-16 in the process.
3060
3061         * dom/CharacterData.cpp:
3062         * editing/TextCheckingHelper.cpp:
3063         * editing/VisibleUnits.cpp:
3064         * platform/graphics/StringTruncator.cpp:
3065         * platform/graphics/mac/ComplexTextController.cpp:
3066         * platform/text/TextBoundaries.cpp:
3067         * platform/text/TextBreakIterator.cpp:
3068         * platform/text/TextBreakIterator.h:
3069         * rendering/RenderText.cpp:
3070
3071 2014-01-16  Anders Carlsson  <andersca@apple.com>
3072
3073         Run clang-modernize and let it add a bunch of missing overrides.
3074
3075         Rubber-stamped by Sam Weinig.
3076
3077         * dom/BeforeLoadEvent.h:
3078         * dom/ClassNodeList.h:
3079         * dom/Comment.h:
3080         * dom/CompositionEvent.h:
3081         * dom/DecodedDataDocumentParser.h:
3082         * dom/DeviceMotionEvent.h:
3083         * dom/DeviceOrientationEvent.h:
3084         * dom/DocumentMarker.cpp:
3085         * dom/DocumentType.h:
3086         * dom/EntityReference.h:
3087         * dom/FocusEvent.h:
3088         * dom/HashChangeEvent.h:
3089         * dom/MessageEvent.h:
3090         * dom/MouseEvent.h:
3091         * dom/MouseRelatedEvent.h:
3092         * dom/MutationEvent.h:
3093         * dom/NameNodeList.h:
3094         * dom/Notation.h:
3095         * dom/OverflowEvent.h:
3096         * dom/PendingScript.h:
3097         * dom/PopStateEvent.h:
3098         * dom/ProcessingInstruction.h:
3099         * dom/ScriptElement.h:
3100         * dom/ScriptExecutionContext.cpp:
3101         * dom/ScriptableDocumentParser.h:
3102         * dom/ScriptedAnimationController.h:
3103         * dom/StringCallback.cpp:
3104         * dom/WheelEvent.h:
3105         * html/FTPDirectoryDocument.h:
3106         * html/FileInputType.cpp:
3107         * html/HTMLAppletElement.h:
3108         * html/HTMLBRElement.h:
3109         * html/HTMLBaseElement.h:
3110         * html/HTMLBodyElement.h:
3111         * html/HTMLButtonElement.h:
3112         * html/HTMLDocument.h:
3113         * html/HTMLEmbedElement.h:
3114         * html/HTMLFormControlsCollection.h:
3115         * html/HTMLFrameElement.h:
3116         * html/HTMLFrameSetElement.h:
3117         * html/HTMLHRElement.h:
3118         * html/HTMLIFrameElement.h:
3119         * html/HTMLKeygenElement.cpp:
3120         * html/HTMLKeygenElement.h:
3121         * html/HTMLLinkElement.h:
3122         * html/HTMLMarqueeElement.h:
3123         * html/HTMLObjectElement.h:
3124         * html/HTMLOutputElement.h:
3125         * html/HTMLParamElement.h:
3126         * html/HTMLScriptElement.h:
3127         * html/HTMLStyleElement.h:
3128         * html/HTMLSummaryElement.h:
3129         * html/HTMLTrackElement.h:
3130         * html/HTMLViewSourceDocument.h:
3131         * html/ImageDocument.cpp:
3132         * html/ImageDocument.h:
3133         * html/MediaDocument.cpp:
3134         * html/MediaDocument.h:
3135         * html/MediaKeyEvent.h:
3136         * html/PluginDocument.cpp:
3137         * html/RadioNodeList.h:
3138         * html/TextDocument.h:
3139         * html/canvas/EXTDrawBuffers.h:
3140         * html/canvas/EXTTextureFilterAnisotropic.h:
3141         * html/canvas/OESElementIndexUint.h:
3142         * html/canvas/OESStandardDerivatives.h:
3143         * html/canvas/OESTextureFloat.h:
3144         * html/canvas/OESTextureFloatLinear.h:
3145         * html/canvas/OESTextureHalfFloat.h:
3146         * html/canvas/OESTextureHalfFloatLinear.h:
3147         * html/canvas/OESVertexArrayObject.h:
3148         * html/canvas/WebGLBuffer.h:
3149         * html/canvas/WebGLCompressedTextureATC.h:
3150         * html/canvas/WebGLCompressedTexturePVRTC.h:
3151         * html/canvas/WebGLCompressedTextureS3TC.h:
3152         * html/canvas/WebGLContextEvent.h:
3153         * html/canvas/WebGLContextObject.h:
3154         * html/canvas/WebGLDebugRendererInfo.h:
3155         * html/canvas/WebGLDebugShaders.h:
3156         * html/canvas/WebGLDepthTexture.h:
3157         * html/canvas/WebGLFramebuffer.cpp:
3158         * html/canvas/WebGLFramebuffer.h:
3159         * html/canvas/WebGLLoseContext.h:
3160         * html/canvas/WebGLProgram.h:
3161         * html/canvas/WebGLRenderbuffer.h:
3162         * html/canvas/WebGLRenderingContext.cpp:
3163         * html/canvas/WebGLRenderingContext.h:
3164         * html/canvas/WebGLShader.h:
3165         * html/canvas/WebGLSharedObject.h:
3166         * html/canvas/WebGLTexture.h:
3167         * html/canvas/WebGLVertexArrayObjectOES.h:
3168         * html/parser/HTMLDocumentParser.h:
3169         * html/parser/HTMLViewSourceParser.h:
3170         * html/shadow/DetailsMarkerControl.h:
3171         * html/shadow/MediaControls.h:
3172         * html/shadow/MediaControlsApple.h:
3173         * html/shadow/MeterShadowElement.h:
3174         * html/shadow/ProgressShadowElement.h:
3175         * html/shadow/SliderThumbElement.h:
3176         * html/track/LoadableTextTrack.h:
3177         * html/track/TrackEvent.h:
3178         * svg/SVGAElement.h:
3179         * svg/SVGAnimateColorElement.h:
3180         * svg/SVGAnimateElement.h:
3181         * svg/SVGAnimateMotionElement.h:
3182         * svg/SVGAnimateTransformElement.h:
3183         * svg/SVGAnimationElement.h:
3184         * svg/SVGCircleElement.h:
3185         * svg/SVGClipPathElement.h:
3186         * svg/SVGComponentTransferFunctionElement.h:
3187         * svg/SVGCursorElement.h:
3188         * svg/SVGDefsElement.h:
3189         * svg/SVGDescElement.h:
3190         * svg/SVGEllipseElement.h:
3191         * svg/SVGFEBlendElement.h:
3192         * svg/SVGFEColorMatrixElement.h:
3193         * svg/SVGFEComponentTransferElement.h:
3194         * svg/SVGFECompositeElement.h:
3195         * svg/SVGFEConvolveMatrixElement.h:
3196         * svg/SVGFEDiffuseLightingElement.h:
3197         * svg/SVGFEDisplacementMapElement.h:
3198         * svg/SVGFEDistantLightElement.h:
3199         * svg/SVGFEDropShadowElement.h:
3200         * svg/SVGFEFloodElement.h:
3201         * svg/SVGFEGaussianBlurElement.h:
3202         * svg/SVGFEImageElement.h:
3203         * svg/SVGFELightElement.h:
3204         * svg/SVGFEMergeElement.h:
3205         * svg/SVGFEMergeNodeElement.h:
3206         * svg/SVGFEMorphologyElement.h:
3207         * svg/SVGFEOffsetElement.h:
3208         * svg/SVGFEPointLightElement.h:
3209         * svg/SVGFESpecularLightingElement.h:
3210         * svg/SVGFESpotLightElement.h:
3211         * svg/SVGFETileElement.h:
3212         * svg/SVGFETurbulenceElement.h:
3213         * svg/SVGFilterElement.h:
3214         * svg/SVGFilterPrimitiveStandardAttributes.h:
3215         * svg/SVGFontData.h:
3216         * svg/SVGForeignObjectElement.h:
3217         * svg/SVGGlyphElement.h:
3218         * svg/SVGGlyphRefElement.h:
3219         * svg/SVGGradientElement.h:
3220         * svg/SVGHKernElement.h:
3221         * svg/SVGImageElement.h:
3222         * svg/SVGImageLoader.h:
3223         * svg/SVGLineElement.h:
3224         * svg/SVGLinearGradientElement.h:
3225         * svg/SVGMPathElement.h:
3226         * svg/SVGMarkerElement.h:
3227         * svg/SVGMaskElement.h:
3228         * svg/SVGMissingGlyphElement.h:
3229         * svg/SVGPathBuilder.h:
3230         * svg/SVGPathByteStreamBuilder.h:
3231         * svg/SVGPathByteStreamSource.h:
3232         * svg/SVGPathElement.h:
3233         * svg/SVGPathSegArcAbs.h:
3234         * svg/SVGPathSegArcRel.h:
3235         * svg/SVGPathSegClosePath.h:
3236         * svg/SVGPathSegCurvetoCubicAbs.h:
3237         * svg/SVGPathSegCurvetoCubicRel.h:
3238         * svg/SVGPathSegCurvetoCubicSmoothAbs.h:
3239         * svg/SVGPathSegCurvetoCubicSmoothRel.h:
3240         * svg/SVGPathSegCurvetoQuadraticAbs.h:
3241         * svg/SVGPathSegCurvetoQuadraticRel.h:
3242         * svg/SVGPathSegCurvetoQuadraticSmoothAbs.h:
3243         * svg/SVGPathSegCurvetoQuadraticSmoothRel.h:
3244         * svg/SVGPathSegLinetoAbs.h:
3245         * svg/SVGPathSegLinetoHorizontalAbs.h:
3246         * svg/SVGPathSegLinetoHorizontalRel.h:
3247         * svg/SVGPathSegLinetoRel.h:
3248         * svg/SVGPathSegLinetoVerticalAbs.h:
3249         * svg/SVGPathSegLinetoVerticalRel.h:
3250         * svg/SVGPathSegListBuilder.h:
3251         * svg/SVGPathSegListSource.h:
3252         * svg/SVGPathSegMovetoAbs.h:
3253         * svg/SVGPathSegMovetoRel.h:
3254         * svg/SVGPathStringSource.h:
3255         * svg/SVGPathTraversalStateBuilder.h:
3256         * svg/SVGPatternElement.h:
3257         * svg/SVGPolyElement.h:
3258         * svg/SVGRadialGradientElement.h:
3259         * svg/SVGRectElement.h:
3260         * svg/SVGSVGElement.h:
3261         * svg/SVGScriptElement.h:
3262         * svg/SVGStopElement.h:
3263         * svg/SVGStyleElement.h:
3264         * svg/SVGSwitchElement.h:
3265         * svg/SVGSymbolElement.h:
3266         * svg/SVGTRefElement.h:
3267         * svg/SVGTSpanElement.h:
3268         * svg/SVGTextContentElement.h:
3269         * svg/SVGTextElement.h:
3270         * svg/SVGTextPathElement.h:
3271         * svg/SVGTextPositioningElement.h:
3272         * svg/SVGTitleElement.h:
3273         * svg/SVGUseElement.h:
3274         * svg/SVGVKernElement.h:
3275         * svg/SVGViewElement.h:
3276         * svg/SVGZoomEvent.h:
3277         * svg/animation/SVGSMILElement.cpp:
3278         * svg/animation/SVGSMILElement.h:
3279         * svg/graphics/SVGImageChromeClient.h:
3280         * svg/graphics/filters/SVGFEImage.h:
3281         * svg/graphics/filters/SVGFilter.h:
3282         * svg/properties/SVGAnimatedEnumerationPropertyTearOff.h:
3283         * svg/properties/SVGAnimatedPathSegListPropertyTearOff.h:
3284         * svg/properties/SVGPathSegListPropertyTearOff.h:
3285
3286 2014-01-16  Jer Noble  <jer.noble@apple.com>
3287
3288         REGRESSION(r162145): media/video-controls-visible-audio-only.html fails
3289         https://bugs.webkit.org/show_bug.cgi?id=127147
3290
3291         Reviewed by Eric Carlson.
3292
3293         Reset the MediaSessionManager's restrictions to their default values before
3294         each run.
3295
3296         Add a new virtual method "resetRestrictions()" so that each port-specific
3297         MediaSessionManager can reset the restrictions to their default values.
3298         Call this from Internals::resetToConsistentState() so that tests which change
3299         the restrictions don't affect later tests.
3300
3301         * platform/audio/MediaSessionManager.cpp:
3302         (WebCore::MediaSessionManager::MediaSessionManager):
3303         (WebCore::MediaSessionManager::resetRestrictions):
3304         * platform/audio/MediaSessionManager.h:
3305         (WebCore::MediaSessionManager::~MediaSessionManager):
3306         * platform/audio/ios/MediaSessionManagerIOS.h:
3307         * platform/audio/ios/MediaSessionManagerIOS.mm:
3308         (WebCore::MediaSessionManageriOS::resetRestrictions):
3309         * testing/Internals.cpp:
3310         (WebCore::Internals::resetToConsistentState):
3311
3312 2014-01-16  Alex Christensen  <achristensen@webkit.org>
3313
3314         Compile fix for WinCairo after r162138.
3315         https://bugs.webkit.org/show_bug.cgi?id=127140
3316
3317         Reviewed by Beth Dakin.
3318
3319         * page/FrameView.cpp:
3320         (WebCore::FrameView::extendedBackgroundRect):
3321         Use unscaledDocumentRect for extendedBackgroundRect without accelerated compositing.
3322
3323 2014-01-16  Brady Eidson  <beidson@apple.com>
3324
3325         IDB: delete object store support
3326         <rdar://problem/15779641> and https://bugs.webkit.org/show_bug.cgi?id=127123
3327
3328         Reviewed by Alexey Proskuryakov.
3329
3330         * Modules/indexeddb/IDBTransactionBackendOperations.h:
3331         (WebCore::DeleteObjectStoreOperation::transaction):
3332
3333 2014-01-16  Alexey Proskuryakov  <ap@apple.com>
3334
3335         More non-Mac build fix.
3336
3337         * platform/network/cf/CookieJarCFNet.cpp:
3338         (WebCore::copyCookiesForURLWithFirstPartyURL):
3339
3340 2014-01-16  Alexey Proskuryakov  <ap@apple.com>
3341
3342         Build fix.
3343
3344         * platform/network/cf/CookieJarCFNet.cpp: Remove a spurious semicolon.
3345
3346 2014-01-16  Andy Estes  <aestes@apple.com>
3347
3348         Another iOS build fix.
3349
3350         * platform/audio/ios/MediaSessionManagerIOS.mm:
3351         (WebCore::m_objcObserver):
3352
3353 2014-01-16  Alexey Proskuryakov  <ap@apple.com>
3354
3355         [Mac] [iOS] Add support for CFHTTPCookieStorageAcceptPolicyExclusivelyFromMainDocumentDomain
3356         https://bugs.webkit.org/show_bug.cgi?id=127139
3357
3358         Reviewed by Brady Eidson.
3359
3360         * platform/ios/WebCoreSystemInterfaceIOS.mm:
3361         * platform/mac/WebCoreSystemInterface.h:
3362         * platform/mac/WebCoreSystemInterface.mm:
3363         Pass first party URL down, because reading cookies depends on it when this policy
3364         in in action.
3365
3366         * platform/network/cf/CookieJarCFNet.cpp:
3367         (WebCore::copyCookiesForURLWithFirstPartyURL):
3368         (WebCore::cookiesForDOM):
3369         (WebCore::cookieRequestHeaderFieldValue):
3370         (WebCore::cookiesEnabled):
3371         (WebCore::getRawCookies):
3372         Use a new CFNetwork API that takes first party URL.
3373
3374         * platform/network/mac/CookieJarMac.mm:
3375         (WebCore::cookiesForDOM):
3376         (WebCore::cookieRequestHeaderFieldValue):
3377         (WebCore::cookiesEnabled):
3378         (WebCore::getRawCookies):
3379         (WebCore::deleteCookie):
3380         Pass first party URL (and null in deleteCookie, as there is none).
3381
3382         * platform/network/mac/ResourceHandleMac.mm:
3383         (WebCore::ResourceHandle::platformLoadResourceSynchronously):
3384         Removed a call to shouldRelaxThirdPartyCookiePolicy(), which no longer exists
3385         in trunk.
3386
3387 2014-01-16  Andy Estes  <aestes@apple.com>
3388
3389         Fix the iOS build after r162150.
3390
3391         * platform/graphics/cg/GraphicsContextCG.cpp:
3392         (WebCore::GraphicsContext::platformInit):
3393
3394 2014-01-16  Dean Jackson  <dino@apple.com>
3395
3396         glReadPixels should use UNSIGNED_BYTE on iOS
3397         https://bugs.webkit.org/show_bug.cgi?id=127148
3398
3399         Reviewed by Benjamin Poulain.
3400
3401         We were incorrectly mapping GL_UNSIGNED_INT_8_8_8_8_REV to
3402         GL_RGBA on iOS. It's only used in glReadPixels, so should
3403         be GL_UNSIGNED_BYTE.
3404
3405         This is covered by lots of tests in the Khronos test suite,
3406         that now pass on iOS.
3407
3408         * platform/graphics/ios/GraphicsContext3DIOS.h:
3409
3410 2014-01-16  Anders Carlsson  <andersca@apple.com>
3411
3412         Change all uses of FINAL to final now that all our compilers support it
3413         https://bugs.webkit.org/show_bug.cgi?id=127142
3414
3415         Reviewed by Benjamin Poulain.
3416
3417         * Modules/encryptedmedia/MediaKeySession.h:
3418         * Modules/indexeddb/IDBCursorBackendOperations.h:
3419         * Modules/indexeddb/IDBDatabase.h:
3420         * Modules/indexeddb/IDBDatabaseCallbacksImpl.h:
3421         * Modules/indexeddb/IDBRequest.h:
3422         * Modules/indexeddb/IDBTransaction.h:
3423         * Modules/indexeddb/IDBTransactionBackendOperations.h:
3424         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
3425         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h:
3426         * Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.h:
3427         * Modules/mediasource/MediaSource.h:
3428         * Modules/mediasource/MediaSourceRegistry.h:
3429         * Modules/mediasource/SourceBuffer.h:
3430         * Modules/mediasource/SourceBufferList.h:
3431         * Modules/mediastream/AudioStreamTrack.h:
3432         * Modules/mediastream/MediaStream.h:
3433         * Modules/mediastream/MediaStreamRegistry.h:
3434         * Modules/mediastream/MediaStreamTrack.h:
3435         * Modules/mediastream/RTCDTMFSender.h:
3436         * Modules/mediastream/RTCDataChannel.h:
3437         * Modules/mediastream/RTCPeerConnection.h:
3438         * Modules/mediastream/UserMediaRequest.h:
3439         * Modules/mediastream/VideoStreamTrack.h:
3440         * Modules/notifications/Notification.h:
3441         * Modules/speech/SpeechSynthesisUtterance.h:
3442         * Modules/webaudio/AudioContext.h:
3443         * Modules/webaudio/AudioNode.h:
3444         * Modules/websockets/WebSocket.h:
3445         * accessibility/AccessibilityList.h:
3446         * accessibility/AccessibilityListBoxOption.h:
3447         * accessibility/AccessibilityNodeObject.h:
3448         * accessibility/AccessibilitySearchFieldButtons.h:
3449         * accessibility/AccessibilitySlider.h:
3450         * bindings/js/JSCryptoAlgorithmBuilder.h:
3451         * bindings/js/JSCryptoKeySerializationJWK.h:
3452         * bindings/js/JSDOMGlobalObjectTask.cpp:
3453         * bindings/js/JSDOMGlobalObjectTask.h:
3454         * bindings/js/JSLazyEventListener.h:
3455         * bindings/js/ScriptDebugServer.h:
3456         * bindings/js/WorkerScriptDebugServer.h:
3457         * crypto/algorithms/CryptoAlgorithmAES_CBC.h:
3458         * crypto/algorithms/CryptoAlgorithmAES_KW.h:
3459         * crypto/algorithms/CryptoAlgorithmHMAC.h:
3460         * crypto/algorithms/CryptoAlgorithmRSAES_PKCS1_v1_5.h:
3461         * crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.h:
3462         * crypto/algorithms/CryptoAlgorithmRSA_OAEP.h:
3463         * crypto/algorithms/CryptoAlgorithmSHA1.h:
3464         * crypto/algorithms/CryptoAlgorithmSHA224.h:
3465         * crypto/algorithms/CryptoAlgorithmSHA256.h:
3466         * crypto/algorithms/CryptoAlgorithmSHA384.h:
3467         * crypto/algorithms/CryptoAlgorithmSHA512.h:
3468         * crypto/keys/CryptoKeyAES.h:
3469         * crypto/keys/CryptoKeyDataOctetSequence.h:
3470         * crypto/keys/CryptoKeyDataRSAComponents.h:
3471         * crypto/keys/CryptoKeyHMAC.h:
3472         * crypto/keys/CryptoKeyRSA.h:
3473         * crypto/keys/CryptoKeySerializationRaw.h:
3474         * crypto/parameters/CryptoAlgorithmAesCbcParams.h:
3475         * crypto/parameters/CryptoAlgorithmAesKeyGenParams.h:
3476         * crypto/parameters/CryptoAlgorithmHmacKeyParams.h:
3477         * crypto/parameters/CryptoAlgorithmHmacParams.h:
3478         * crypto/parameters/CryptoAlgorithmRsaKeyGenParams.h:
3479         * crypto/parameters/CryptoAlgorithmRsaKeyParamsWithHash.h:
3480         * crypto/parameters/CryptoAlgorithmRsaOaepParams.h:
3481         * crypto/parameters/CryptoAlgorithmRsaSsaParams.h:
3482         * css/CSSCanvasValue.h:
3483         * css/CSSFontSelector.h:
3484         * css/CSSStyleSheet.h:
3485         * dom/Attr.h:
3486         * dom/BeforeUnloadEvent.h:
3487         * dom/CDATASection.h:
3488         * dom/CharacterData.h:
3489         * dom/ChildNodeList.h:
3490         * dom/Clipboard.cpp:
3491         * dom/Comment.h:
3492         * dom/DatasetDOMStringMap.h:
3493         * dom/Document.h:
3494         * dom/DocumentEventQueue.cpp:
3495         * dom/DocumentEventQueue.h:
3496         * dom/DocumentType.h:
3497         * dom/Element.h:
3498         * dom/EntityReference.h:
3499         * dom/EventContext.h:
3500         * dom/EventTarget.h:
3501         * dom/FocusEvent.h:
3502         * dom/LiveNodeList.h:
3503         * dom/MessagePort.h:
3504         * dom/MouseEvent.h:
3505         * dom/Node.h:
3506         * dom/Notation.h:
3507         * dom/ProcessingInstruction.h:
3508         * dom/PseudoElement.h:
3509         * dom/ShadowRoot.h:
3510         * dom/StaticNodeList.h:
3511         * dom/StyledElement.h:
3512         * dom/TemplateContentDocumentFragment.h:
3513         * dom/Text.h:
3514         * dom/WebKitNamedFlow.h:
3515         * editing/ios/EditorIOS.mm:
3516         * editing/mac/EditorMac.mm:
3517         * editing/markup.cpp:
3518         * fileapi/Blob.cpp:
3519         * fileapi/FileReader.h:
3520         * html/ClassList.h:
3521         * html/DOMSettableTokenList.h:
3522         * html/FTPDirectoryDocument.cpp:
3523         * html/FormAssociatedElement.cpp:
3524         * html/FormAssociatedElement.h:
3525         * html/HTMLAllCollection.h:
3526         * html/HTMLAnchorElement.h:
3527         * html/HTMLAppletElement.h:
3528         * html/HTMLAreaElement.h:
3529         * html/HTMLAudioElement.h:
3530         * html/HTMLBDIElement.h:
3531         * html/HTMLBRElement.h:
3532         * html/HTMLBaseElement.h:
3533         * html/HTMLBaseFontElement.h:
3534         * html/HTMLBodyElement.h:
3535         * html/HTMLButtonElement.h:
3536         * html/HTMLCanvasElement.h:
3537         * html/HTMLDListElement.h:
3538         * html/HTMLDataListElement.h:
3539         * html/HTMLDetailsElement.h:
3540         * html/HTMLDirectoryElement.h:
3541         * html/HTMLDocument.h:
3542         * html/HTMLElement.h:
3543         * html/HTMLEmbedElement.h:
3544         * html/HTMLFieldSetElement.h:
3545         * html/HTMLFontElement.h:
3546         * html/HTMLFormControlElement.h:
3547         * html/HTMLFormElement.h:
3548         * html/HTMLFrameElement.h:
3549         * html/HTMLFrameSetElement.h:
3550         * html/HTMLHRElement.h:
3551         * html/HTMLHeadElement.h:
3552         * html/HTMLHeadingElement.h:
3553         * html/HTMLHtmlElement.h:
3554         * html/HTMLIFrameElement.h:
3555         * html/HTMLImageElement.h:
3556         * html/HTMLInputElement.h:
3557         * html/HTMLKeygenElement.cpp:
3558         * html/HTMLKeygenElement.h:
3559         * html/HTMLLIElement.h:
3560         * html/HTMLLabelElement.h:
3561         * html/HTMLLegendElement.h:
3562         * html/HTMLLinkElement.h:
3563         * html/HTMLMapElement.h:
3564         * html/HTMLMarqueeElement.h:
3565         * html/HTMLMenuElement.h:
3566         * html/HTMLMetaElement.h:
3567         * html/HTMLMeterElement.h:
3568         * html/HTMLModElement.h:
3569         * html/HTMLNameCollection.h:
3570         * html/HTMLOListElement.h:
3571         * html/HTMLObjectElement.h:
3572         * html/HTMLOptGroupElement.h:
3573         * html/HTMLOptionElement.h:
3574         * html/HTMLOptionsCollection.h:
3575         * html/HTMLOutputElement.h:
3576         * html/HTMLParagraphElement.h:
3577         * html/HTMLParamElement.h:
3578         * html/HTMLPlugInElement.h:
3579         * html/HTMLPreElement.h:
3580         * html/HTMLProgressElement.h:
3581         * html/HTMLQuoteElement.h:
3582         * html/HTMLScriptElement.h:
3583         * html/HTMLSelectElement.h:
3584         * html/HTMLSourceElement.h:
3585         * html/HTMLStyleElement.h:
3586         * html/HTMLSummaryElement.h:
3587         * html/HTMLTableCaptionElement.h:
3588         * html/HTMLTableCellElement.h:
3589         * html/HTMLTableColElement.h:
3590         * html/HTMLTableElement.h:
3591         * html/HTMLTableRowElement.h:
3592         * html/HTMLTableRowsCollection.h:
3593         * html/HTMLTableSectionElement.h:
3594         * html/HTMLTemplateElement.h:
3595         * html/HTMLTextAreaElement.h:
3596         * html/HTMLTextFormControlElement.h:
3597         * html/HTMLTitleElement.h:
3598         * html/HTMLTrackElement.h:
3599         * html/HTMLUListElement.h:
3600         * html/HTMLUnknownElement.h:
3601         * html/HTMLVideoElement.h:
3602         * html/HTMLViewSourceDocument.h:
3603         * html/ImageDocument.cpp:
3604         * html/ImageDocument.h:
3605         * html/LabelableElement.h:
3606         * html/LabelsNodeList.h:
3607         * html/MediaController.h:
3608         * html/MediaDocument.cpp:
3609         * html/MediaDocument.h:
3610         * html/MediaFragmentURIParser.h:
3611         * html/PluginDocument.cpp:
3612         * html/PluginDocument.h:
3613         * html/RangeInputType.h:
3614         * html/TextDocument.h:
3615         * html/parser/TextDocumentParser.h:
3616         * html/parser/TextViewSourceParser.h:
3617         * html/shadow/DetailsMarkerControl.h:
3618         * html/shadow/MediaControlElementTypes.h:
3619         * html/shadow/MediaControlElements.h:
3620         * html/shadow/MeterShadowElement.h:
3621         * html/shadow/ProgressShadowElement.h:
3622         * html/shadow/SliderThumbElement.h:
3623         * html/shadow/SpinButtonElement.h:
3624         * html/shadow/TextControlInnerElements.h:
3625         * html/shadow/YouTubeEmbedShadowElement.h:
3626         * html/track/TextTrack.h:
3627         * html/track/TextTrackCue.h:
3628         * html/track/TextTrackCueGeneric.cpp:
3629         * html/track/TextTrackCueGeneric.h:
3630         * html/track/TrackListBase.h:
3631         * html/track/WebVTTElement.h:
3632         * inspector/CommandLineAPIModule.h:
3633         * inspector/InjectedScriptCanvasModule.h:
3634         * inspector/InspectorConsoleAgent.cpp:
3635         * inspector/InspectorController.h:
3636         * inspector/InspectorDebuggerAgent.h:
3637         * inspector/PageConsoleAgent.cpp:
3638         * inspector/PageInjectedScriptHost.h:
3639         * inspector/PageInjectedScriptManager.h:
3640         * inspector/WorkerInspectorController.h:
3641         * loader/SinkDocument.cpp:
3642         * loader/SinkDocument.h:
3643         * loader/appcache/DOMApplicationCache.h:
3644         * loader/cache/CachedCSSStyleSheet.h:
3645         * loader/cache/CachedFont.h:
3646         * loader/cache/CachedRawResource.h:
3647         * loader/cache/CachedSVGDocument.h:
3648         * loader/cache/CachedScript.h:
3649         * loader/cache/CachedShader.h:
3650         * loader/cache/CachedTextTrack.h:
3651         * loader/cache/CachedXSLStyleSheet.h:
3652         * loader/icon/IconLoader.h:
3653         * mathml/MathMLSelectElement.h:
3654         * page/DOMTimer.h:
3655         * page/DOMWindow.h:
3656         * page/EventSource.h:
3657         * page/Frame.h:
3658         * page/FrameView.h:
3659         * page/MainFrame.h:
3660         * page/PageDebuggable.h:
3661         * page/PageSerializer.cpp:
3662         * page/Performance.h:
3663         * page/SuspendableTimer.h:
3664         * page/animation/KeyframeAnimation.h:
3665         * page/scrolling/ScrollingStateFixedNode.h:
3666         * page/scrolling/ScrollingStateScrollingNode.h:
3667         * page/scrolling/ScrollingStateStickyNode.h:
3668         * platform/ClockGeneric.h:
3669         * platform/efl/ScrollbarThemeEfl.h:
3670         * platform/graphics/BitmapImage.h:
3671         * platform/graphics/CrossfadeGeneratedImage.h:
3672         * platform/graphics/GradientImage.h:
3673         * platform/graphics/SimpleFontData.h:
3674         * platform/graphics/avfoundation/objc/AudioTrackPrivateMediaSourceAVFObjC.h:
3675         * platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.h:
3676         * platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.h:
3677         * platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
3678         * platform/graphics/avfoundation/objc/VideoTrackPrivateAVFObjC.h:
3679         * platform/graphics/avfoundation/objc/VideoTrackPrivateMediaSourceAVFObjC.h:
3680         * platform/graphics/ca/mac/PlatformCALayerMac.h:
3681         * platform/graphics/ca/win/PlatformCALayerWin.h:
3682         * platform/graphics/cg/PDFDocumentImage.h:
3683         * platform/graphics/gstreamer/AudioTrackPrivateGStreamer.h:
3684         * platform/graphics/gstreamer/MediaSourceGStreamer.h:
3685         * platform/graphics/gstreamer/SourceBufferPrivateGStreamer.h:
3686         * platform/graphics/gstreamer/VideoTrackPrivateGStreamer.h:
3687         * platform/ios/WebSafeGCActivityCallbackIOS.h:
3688         * platform/ios/WebSafeIncrementalSweeperIOS.h:
3689         * platform/mac/PlatformClockCA.h:
3690         * platform/mac/PlatformClockCM.h:
3691         * platform/mac/ScrollAnimatorMac.h:
3692         * platform/mediastream/MediaStreamTrackPrivate.h:
3693         * platform/mediastream/mac/MediaStreamCenterMac.h:
3694         * platform/mock/MockMediaStreamCenter.h:
3695         * platform/mock/RTCDataChannelHandlerMock.h:
3696         * platform/mock/RTCPeerConnectionHandlerMock.h:
3697         * platform/mock/mediasource/MockBox.h:
3698         * platform/mock/mediasource/MockMediaSourcePrivate.h:
3699         * platform/mock/mediasource/MockSourceBufferPrivate.cpp:
3700         * platform/network/cf/ResourceHandleCFURLConnectionDelegateWithOperationQueue.h:
3701         * platform/network/cf/SynchronousResourceHandleCFURLConnectionDelegate.h:
3702         * platform/text/LocaleNone.cpp:
3703         * platform/text/PlatformLocale.cpp:
3704         * rendering/EllipsisBox.h:
3705         * rendering/FilterEffectRenderer.h:
3706         * rendering/InlineElementBox.h:
3707         * rendering/InlineFlowBox.h:
3708         * rendering/InlineTextBox.h:
3709         * rendering/RenderBlock.h:
3710         * rendering/RenderBlockFlow.h:
3711         * rendering/RenderBox.cpp:
3712         (WebCore::RenderBox::computePositionedLogicalWidthReplaced):
3713         (WebCore::RenderBox::computePositionedLogicalHeightReplaced):
3714         * rendering/RenderBox.h:
3715         * rendering/RenderButton.h:
3716         * rendering/RenderCombineText.h:
3717         * rendering/RenderCounter.h:
3718         * rendering/RenderDeprecatedFlexibleBox.h:
3719         * rendering/RenderDetailsMarker.h:
3720         * rendering/RenderElement.h:
3721         * rendering/RenderEmbeddedObject.h:
3722         * rendering/RenderFieldset.h:
3723         * rendering/RenderFileUploadControl.h:
3724         * rendering/RenderFlexibleBox.h:
3725         * rendering/RenderFlowThread.h:
3726         * rendering/RenderFrame.h:
3727         * rendering/RenderFrameSet.h:
3728         * rendering/RenderFullScreen.cpp:
3729         * rendering/RenderFullScreen.h:
3730         * rendering/RenderGrid.h:
3731         * rendering/RenderHTMLCanvas.h:
3732         * rendering/RenderIFrame.h:
3733         * rendering/RenderImage.h:
3734         * rendering/RenderInline.h:
3735         * rendering/RenderLayer.h:
3736         * rendering/RenderLayerFilterInfo.h:
3737         * rendering/RenderLineBreak.h:
3738         * rendering/RenderListBox.h:
3739         * rendering/RenderListItem.h:
3740         * rendering/RenderListMarker.h:
3741         * rendering/RenderMedia.h:
3742         * rendering/RenderMediaControlElements.h:
3743         * rendering/RenderMenuList.h:
3744         * rendering/RenderMeter.h:
3745         * rendering/RenderMultiColumnBlock.h:
3746         * rendering/RenderMultiColumnFlowThread.h:
3747         * rendering/RenderMultiColumnSet.h:
3748         * rendering/RenderNamedFlowFragment.h:
3749         * rendering/RenderNamedFlowThread.h:
3750         * rendering/RenderProgress.h:
3751         * rendering/RenderQuote.h:
3752         * rendering/RenderRegion.h:
3753         * rendering/RenderRegionSet.h:
3754         * rendering/RenderReplaced.h:
3755         * rendering/RenderReplica.h:
3756         * rendering/RenderRuby.h:
3757         * rendering/RenderRubyBase.h:
3758         * rendering/RenderRubyRun.h:
3759         * rendering/RenderRubyText.h:
3760         * rendering/RenderScrollbar.h:
3761         * rendering/RenderScrollbarPart.h:
3762         * rendering/RenderSearchField.h:
3763         * rendering/RenderSlider.h:
3764         * rendering/RenderSnapshottedPlugIn.h:
3765         * rendering/RenderTable.h:
3766         * rendering/RenderTableCaption.h:
3767         * rendering/RenderTableCell.h:
3768         * rendering/RenderTableCol.h:
3769         * rendering/RenderTableRow.h:
3770         * rendering/RenderTableSection.h:
3771         * rendering/RenderText.h:
3772         * rendering/RenderTextControl.h:
3773         * rendering/RenderTextControlMultiLine.h:
3774         * rendering/RenderTextControlSingleLine.h:
3775         * rendering/RenderTextFragment.h:
3776         * rendering/RenderTextTrackCue.h:
3777         * rendering/RenderVideo.h:
3778         * rendering/RenderView.h:
3779         * rendering/RenderWidget.h:
3780         * rendering/RootInlineBox.h:
3781         * rendering/TrailingFloatsRootInlineBox.h:
3782         * rendering/mathml/RenderMathMLBlock.h:
3783         * rendering/mathml/RenderMathMLFenced.h:
3784         * rendering/mathml/RenderMathMLFraction.h:
3785         * rendering/mathml/RenderMathMLMath.h:
3786         * rendering/mathml/RenderMathMLOperator.h:
3787         * rendering/mathml/RenderMathMLRoot.h:
3788         * rendering/mathml/RenderMathMLRow.h:
3789         * rendering/mathml/RenderMathMLScripts.h:
3790         * rendering/mathml/RenderMathMLSpace.h:
3791         * rendering/mathml/RenderMathMLSquareRoot.h:
3792         * rendering/shapes/ShapeInsideInfo.h:
3793         * rendering/shapes/ShapeOutsideInfo.h:
3794         * rendering/style/ContentData.h:
3795         * rendering/style/StyleCachedImage.h:
3796         * rendering/style/StyleCachedImageSet.h:
3797         * rendering/style/StyleGeneratedImage.h:
3798         * rendering/svg/RenderSVGBlock.h:
3799         * rendering/svg/RenderSVGContainer.h:
3800         * rendering/svg/RenderSVGEllipse.h:
3801         * rendering/svg/RenderSVGForeignObject.h:
3802         * rendering/svg/RenderSVGGradientStop.h:
3803         * rendering/svg/RenderSVGHiddenContainer.h:
3804         * rendering/svg/RenderSVGImage.h:
3805         * rendering/svg/RenderSVGInline.h:
3806         * rendering/svg/RenderSVGInlineText.h:
3807         * rendering/svg/RenderSVGModelObject.h:
3808         * rendering/svg/RenderSVGPath.h:
3809         * rendering/svg/RenderSVGRect.h:
3810         * rendering/svg/RenderSVGResourceClipper.h:
3811         * rendering/svg/RenderSVGResourceContainer.h:
3812         * rendering/svg/RenderSVGResourceFilter.h:
3813         * rendering/svg/RenderSVGResourceFilterPrimitive.h:
3814         * rendering/svg/RenderSVGResourceGradient.h:
3815         * rendering/svg/RenderSVGResourceLinearGradient.h:
3816         * rendering/svg/RenderSVGResourceMarker.h:
3817         * rendering/svg/RenderSVGResourceMasker.h:
3818         * rendering/svg/RenderSVGResourcePattern.h:
3819         * rendering/svg/RenderSVGResourceRadialGradient.h:
3820         * rendering/svg/RenderSVGRoot.h:
3821         * rendering/svg/RenderSVGShape.cpp:
3822         * rendering/svg/RenderSVGShape.h:
3823         * rendering/svg/RenderSVGTSpan.h:
3824         * rendering/svg/RenderSVGText.h:
3825         * rendering/svg/RenderSVGTextPath.h:
3826         * rendering/svg/RenderSVGTransformableContainer.h:
3827         * rendering/svg/RenderSVGViewportContainer.h:
3828         * rendering/svg/SVGInlineFlowBox.h:
3829         * rendering/svg/SVGInlineTextBox.h:
3830         * rendering/svg/SVGRootInlineBox.h:
3831         * rendering/svg/SVGTextRunRenderingContext.h:
3832         * svg/SVGAElement.h:
3833         * svg/SVGAltGlyphDefElement.h:
3834         * svg/SVGAltGlyphElement.h:
3835         * svg/SVGAltGlyphItemElement.h:
3836         * svg/SVGAnimateColorElement.h:
3837         * svg/SVGAnimateMotionElement.h:
3838         * svg/SVGAnimateTransformElement.h:
3839         * svg/SVGAnimatedAngle.h:
3840         * svg/SVGAnimatedBoolean.h:
3841         * svg/SVGAnimatedColor.h:
3842         * svg/SVGAnimatedEnumeration.h:
3843         * svg/SVGAnimatedInteger.h:
3844         * svg/SVGAnimatedIntegerOptionalInteger.h:
3845         * svg/SVGAnimatedLength.h:
3846         * svg/SVGAnimatedLengthList.h:
3847         * svg/SVGAnimatedNumber.h:
3848         * svg/SVGAnimatedNumberList.h:
3849         * svg/SVGAnimatedNumberOptionalNumber.h:
3850         * svg/SVGAnimatedPath.h:
3851         * svg/SVGAnimatedPointList.h:
3852         * svg/SVGAnimatedPreserveAspectRatio.h:
3853         * svg/SVGAnimatedRect.h:
3854         * svg/SVGAnimatedString.h:
3855         * svg/SVGAnimatedTransformList.h:
3856         * svg/SVGCircleElement.h:
3857         * svg/SVGClipPathElement.h:
3858         * svg/SVGCursorElement.h:
3859         * svg/SVGDefsElement.h:
3860         * svg/SVGDescElement.h:
3861         * svg/SVGDocument.h:
3862         * svg/SVGElement.h:
3863         * svg/SVGEllipseElement.h:
3864         * svg/SVGFEBlendElement.h:
3865         * svg/SVGFEColorMatrixElement.h:
3866         * svg/SVGFEComponentTransferElement.h:
3867         * svg/SVGFECompositeElement.h:
3868         * svg/SVGFEConvolveMatrixElement.h:
3869         * svg/SVGFEDiffuseLightingElement.h:
3870         * svg/SVGFEDisplacementMapElement.h:
3871         * svg/SVGFEDistantLightElement.h:
3872         * svg/SVGFEDropShadowElement.h:
3873         * svg/SVGFEFloodElement.h:
3874         * svg/SVGFEFuncAElement.h:
3875         * svg/SVGFEFuncBElement.h:
3876         * svg/SVGFEFuncGElement.h:
3877         * svg/SVGFEFuncRElement.h:
3878         * svg/SVGFEGaussianBlurElement.h:
3879         * svg/SVGFEImageElement.h:
3880         * svg/SVGFEMergeElement.h:
3881         * svg/SVGFEMergeNodeElement.h:
3882         * svg/SVGFEMorphologyElement.h:
3883         * svg/SVGFEOffsetElement.h:
3884         * svg/SVGFEPointLightElement.h:
3885         * svg/SVGFESpecularLightingElement.h:
3886         * svg/SVGFESpotLightElement.h:
3887         * svg/SVGFETileElement.h:
3888         * svg/SVGFETurbulenceElement.h:
3889         * svg/SVGFilterElement.h:
3890         * svg/SVGFontElement.h:
3891         * svg/SVGFontFaceElement.h:
3892         * svg/SVGFontFaceFormatElement.h:
3893         * svg/SVGFontFaceNameElement.h:
3894         * svg/SVGFontFaceSrcElement.h:
3895         * svg/SVGFontFaceUriElement.h:
3896         * svg/SVGForeignObjectElement.h:
3897         * svg/SVGGElement.h:
3898         * svg/SVGGlyphElement.h:
3899         * svg/SVGGlyphRefElement.h:
3900         * svg/SVGHKernElement.h:
3901         * svg/SVGImageElement.h:
3902         * svg/SVGLineElement.h:
3903         * svg/SVGLinearGradientElement.h:
3904         * svg/SVGMPathElement.h:
3905         * svg/SVGMarkerElement.h:
3906         * svg/SVGMaskElement.h:
3907         * svg/SVGMetadataElement.h:
3908         * svg/SVGMissingGlyphElement.h:
3909         * svg/SVGPathElement.h:
3910         * svg/SVGPathStringBuilder.h:
3911         * svg/SVGPatternElement.h:
3912         * svg/SVGPolygonElement.h:
3913         * svg/SVGPolylineElement.h:
3914         * svg/SVGRadialGradientElement.h:
3915         * svg/SVGRectElement.h:
3916         * svg/SVGSVGElement.h:
3917         * svg/SVGScriptElement.h:
3918         * svg/SVGSetElement.h:
3919         * svg/SVGStopElement.h:
3920         * svg/SVGStyleElement.h:
3921         * svg/SVGSwitchElement.h:
3922         * svg/SVGSymbolElement.h:
3923         * svg/SVGTRefElement.h:
3924         * svg/SVGTSpanElement.h:
3925         * svg/SVGTextContentElement.h:
3926         * svg/SVGTextElement.h:
3927         * svg/SVGTextPathElement.h:
3928         * svg/SVGTitleElement.h:
3929         * svg/SVGUnknownElement.h:
3930         * svg/SVGUseElement.h:
3931         * svg/SVGVKernElement.h:
3932         * svg/SVGViewElement.h:
3933         * svg/animation/SVGSMILElement.h:
3934         * svg/graphics/SVGImage.h:
3935         * svg/graphics/SVGImageForContainer.h:
3936         * svg/graphics/filters/SVGFilter.h:
3937         * workers/AbstractWorker.h:
3938         * workers/SharedWorker.h:
3939         * workers/Worker.h:
3940         * workers/WorkerEventQueue.cpp:
3941         * workers/WorkerEventQueue.h:
3942         * workers/WorkerGlobalScope.h:
3943         * xml/XMLHttpRequest.h:
3944         * xml/XMLHttpRequestUpload.h:
3945         * xml/XPathFunctions.cpp:
3946         * xml/XPathPath.h:
3947         * xml/XPathPredicate.h:
3948         * xml/XSLStyleSheet.h:
3949
3950 2014-01-15  Myles C. Maxfield  <mmaxfield@apple.com>
3951
3952         Draw all underline segments in a particular run in the same call
3953         https://bugs.webkit.org/show_bug.cgi?id=127082
3954
3955         Reviewed by Simon Fraser.
3956
3957         Instead of running CGContextFillRect() in a loop, we can instead call CGContextFillRects()
3958
3959         In my tests, this seems to have about 0.5% speedup.
3960
3961         This patch creates some redundant code, but I think that refactoring would make the code
3962         much less readable. I also am hesitant to make drawLineForText call drawLinesForText because
3963         of the overhead of the vector that would be needed.
3964
3965         As there is no behavior change, no new tests are necessary
3966
3967         * platform/graphics/GraphicsContext.h:
3968         * platform/graphics/cairo/GraphicsContextCairo.cpp:
3969         (WebCore::GraphicsContext::drawLinesForText):
3970         * platform/graphics/cg/GraphicsContextCG.cpp:
3971         (WebCore::GraphicsContext::platformInit):
3972         * platform/graphics/wince/GraphicsContextWinCE.cpp:
3973         (WebCore::GraphicsContext::drawLinesForText):
3974         * rendering/InlineTextBox.cpp:
3975         (WebCore::drawSkipInkUnderline):
3976
3977 2014-01-16  Brady Eidson  <beidson@apple.com>
3978
3979         Use KeyedCoding as a persistent storage mechanism for blobs
3980         https://bugs.webkit.org/show_bug.cgi?id=127012
3981
3982         Reviewed by Anders Carlsson.
3983
3984         Add basic KeyedDecoder interface that is the inverse of KeyedEncoder:
3985         * platform/KeyedCoding.h:
3986         (WebCore::KeyedDecoder::decodeVerifiedEnum):
3987         (WebCore::KeyedDecoder::decodeObject):
3988         (WebCore::KeyedDecoder::decodeObjects):
3989
3990         Use KeyedEncoder/Decoder to encode/decode IDBKeyPath:
3991         * Modules/indexeddb/IDBKeyPath.cpp:
3992         (WebCore::IDBKeyPath::encode):
3993         (WebCore::IDBKeyPath::decode):
3994         * Modules/indexeddb/IDBKeyPath.h:
3995
3996         * WebCore.exp.in:
3997
3998 2014-01-16  Eric Carlson  <eric.carlson@apple.com>
3999
4000         Allow MediaSessionManager to restrict inline <video> playback
4001         https://bugs.webkit.org/show_bug.cgi?id=127113
4002
4003         Reviewed by Jer Noble.
4004
4005         Test: media/video-fullscreeen-only-playback.html
4006
4007         * html/HTMLMediaElement.cpp:
4008         (WebCore::HTMLMediaElement::updatePlayState): Drive-by change to not tell the media session that
4009             playback is starting if the media player is already playing. Enter fullscreen if the media
4010             session says it is required.
4011
4012         * html/HTMLMediaSession.cpp:
4013         (WebCore::HTMLMediaSession::clientWillBeginPlayback): Make it const.
4014         (WebCore::HTMLMediaSession::requiresFullscreenForVideoPlayback): New, see if the specified
4015             media element must be played in fullscreen based on the media session settings, document
4016             settings, and attributes.
4017         * html/HTMLMediaSession.h:
4018
4019         * platform/audio/MediaSession.h: pauseSession shouldn't be virtual.
4020
4021         * platform/audio/MediaSessionManager.cpp:
4022         (WebCore::MediaSessionManager::sessionWillBeginPlayback): Return immediately if ConcurrentPlaybackNotPermitted
4023             is not set.
4024         (WebCore::MediaSessionManager::sessionRestrictsInlineVideoPlayback): New.
4025         * platform/audio/MediaSessionManager.h:
4026
4027         * platform/audio/ios/MediaSessionManagerIOS.mm:
4028         (WebCore::MediaSessionManageriOS::MediaSessionManageriOS): Set InlineVideoPlaybackRestricted if
4029             running on an iPhone or iPod class device.
4030
4031         * testing/Internals.cpp:
4032         (WebCore::Internals::setMediaSessionRestrictions): Support InlineVideoPlaybackRestricted.
4033
4034 2014-01-16  Roger Fong  <roger_fong@apple.com>
4035
4036         Add support for handling WebGL load policies.
4037         https://bugs.webkit.org/show_bug.cgi?id=126935
4038         <rdar://problem/15790448>.
4039
4040         Reviewed by Timothy Horton.
4041
4042         Rename webGLPolicyForSite to webGLPolicyForURL.
4043
4044         * html/HTMLCanvasElement.cpp:
4045         (WebCore::HTMLCanvasElement::getContext):
4046         * loader/FrameLoaderClient.h:
4047         (WebCore::FrameLoaderClient::webGLPolicyForURL):
4048
4049 2014-01-16  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
4050
4051         Guarding HTMLMediaSession with ENABLE(VIDEO)
4052         https://bugs.webkit.org/show_bug.cgi?id=127126
4053
4054         Reviewed by Eric Carlson.
4055
4056         No new tests needed.
4057
4058         * html/HTMLMediaSession.cpp:
4059         * html/HTMLMediaSession.h:
4060
4061 2014-01-16  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
4062
4063         Remove workaround for compilers not supporting explicit override control
4064         https://bugs.webkit.org/show_bug.cgi?id=127111
4065
4066         Reviewed by Anders Carlsson.
4067
4068         Now all compilers support explicit override control, this workaround can be removed.
4069
4070         * Modules/airplay/WebKitPlaybackTargetAvailabilityEvent.h:
4071         * Modules/encryptedmedia/CDMPrivateAVFoundation.h:
4072         * Modules/encryptedmedia/CDMPrivateAVFoundation.mm:
4073         * Modules/encryptedmedia/MediaKeyMessageEvent.h:
4074         * Modules/encryptedmedia/MediaKeyNeededEvent.h:
4075         * Modules/encryptedmedia/MediaKeySession.h:
4076         * Modules/encryptedmedia/MediaKeys.h:
4077         * Modules/geolocation/Geolocation.h:
4078         * Modules/indexeddb/DOMWindowIndexedDatabase.h:
4079         * Modules/indexeddb/IDBCursorBackendOperations.h:
4080         * Modules/indexeddb/IDBCursorWithValue.h:
4081         * Modules/indexeddb/IDBDatabase.h:
4082         * Modules/indexeddb/IDBDatabaseCallbacksImpl.h:
4083         * Modules/indexeddb/IDBOpenDBRequest.h:
4084         * Modules/indexeddb/IDBRequest.h:
4085         * Modules/indexeddb/IDBTransaction.h: