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