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