5e5baf748d0947ed840cfc41ffc959c62fff4c5f
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2018-06-28  Chris Dumez  <cdumez@apple.com>
2
3         Fix encoding / decoding issues in ResourceLoadStatistics
4         https://bugs.webkit.org/show_bug.cgi?id=186890
5
6         Reviewed by Brent Fulgham.
7
8         * loader/ResourceLoadStatistics.cpp:
9         (WebCore::encodeHashCountedSet):
10         (WebCore::encodeHashSet):
11         Do not return early if the container we're trying to encode is empty. Instead,
12         have the encoder encode an empty array. This is important for encoding / decoding
13         to be fully symmetric. Otherwise, when trying to decode one of these empty containers,
14         the decoder would fail (silently since we were ignoring decoding errors). Worse, the
15         decoder might succeed but actually be decoding the *next* container in the file, since
16         we have several HashCountedSets / HashSets encoded one after another.
17
18         (WebCore::decodeHashCountedSet):
19         (WebCore::decodeHashSet):
20         Return a boolean to indicate if the decoding suceeded or not.
21
22         (WebCore::ResourceLoadStatistics::decode):
23         Check for container decoding errors and return false when decoding fails.
24         Otherwise, we would just silently keep going.
25
26 2018-06-28  Sihui Liu  <sihui_liu@apple.com>
27
28         Cookie API: cookie creation time is wrong
29         https://bugs.webkit.org/show_bug.cgi?id=187101
30
31         Reviewed by Geoffrey Garen.
32
33         Covered by API test: WebKit.WKHTTPCookieStoreCreationTime.
34
35         * platform/network/cocoa/CookieCocoa.mm:
36         (WebCore::Cookie::operator NSHTTPCookie * _Nullable  const):
37
38 2018-06-28  Zalan Bujtas  <zalan@apple.com>
39
40         [LFC] Add Display::Box::nonCollapsedMarginBox for verification purposes.
41         https://bugs.webkit.org/show_bug.cgi?id=187140
42
43         Reviewed by Antti Koivisto.
44
45         * layout/FormattingContext.cpp:
46         (WebCore::Layout::FormattingContext::computeFloatingHeightAndMargin const):
47         (WebCore::Layout::FormattingContext::computeOutOfFlowHorizontalGeometry const):
48         * layout/Verification.cpp:
49         (WebCore::Layout::outputMismatchingBoxInformationIfNeeded):
50         * layout/blockformatting/BlockFormattingContext.cpp:
51         (WebCore::Layout::BlockFormattingContext::computeInFlowHeightAndMargin const):
52         * layout/displaytree/DisplayBox.cpp:
53         (WebCore::Display::Box::nonCollapsedMarginBox const):
54         * layout/displaytree/DisplayBox.h:
55         (WebCore::Display::Box::setVerticalNonCollapsedMargin):
56
57 2018-06-28  Zalan Bujtas  <zalan@apple.com>
58
59         [LFC] The margin bottom of the document element does not collapse with its last inflow child's bottom margin.
60         https://bugs.webkit.org/show_bug.cgi?id=187135
61
62         Reviewed by Antti Koivisto.
63
64         * layout/blockformatting/BlockFormattingContext.h:
65         * layout/blockformatting/BlockFormattingContextGeometry.cpp:
66         (WebCore::Layout::BlockFormattingContext::Geometry::inFlowNonReplacedHeightAndMargin):
67         * layout/blockformatting/BlockMarginCollapse.cpp:
68         (WebCore::Layout::BlockFormattingContext::MarginCollapse::marginBottom):
69         (WebCore::Layout::BlockFormattingContext::MarginCollapse::isMarginBottomCollapsedWithParent):
70         (WebCore::Layout::BlockFormattingContext::MarginCollapse::collapsedMarginBottomFromLastChild):
71
72 2018-06-28  Dirk Schulze  <krit@webkit.org>
73
74         [css-masking] Update clip-path box mapping to unified box
75         https://bugs.webkit.org/show_bug.cgi?id=185797
76
77         Reviewed by Simon Fraser.
78
79         The box mapping for fill-box, stroke-box, view-box on HTML elements
80         and content-box, padding-box, margin-box, border-box for SVG elements
81         was aligned with the transform-box CSS property.
82
83         Furthermore, the keywords fill changed to fill-box and stroke changed
84         to stroke-box.
85
86         https://drafts.fxtf.org/css-masking-1/#typedef-geometry-box
87
88         Update the -webkit-clip-path property.
89
90         Tests: svg/clip-path/clip-path-shape-border-box-expected.svg
91                svg/clip-path/clip-path-shape-border-box.svg
92                svg/clip-path/clip-path-shape-content-box-expected.svg
93                svg/clip-path/clip-path-shape-content-box.svg
94                svg/clip-path/clip-path-shape-margin-box-expected.svg
95                svg/clip-path/clip-path-shape-margin-box.svg
96                svg/clip-path/clip-path-shape-padding-box-expected.svg
97                svg/clip-path/clip-path-shape-padding-box.svg
98
99         * css/CSSPrimitiveValueMappings.h:
100         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
101         (WebCore::CSSPrimitiveValue::operator CSSBoxType const):
102         * css/CSSValueKeywords.in:
103         * css/StyleBuilderConverter.h:
104         (WebCore::StyleBuilderConverter::convertClipPath):
105         * css/parser/CSSPropertyParser.cpp:
106         (WebCore::consumeBasicShapeOrBox):
107         * rendering/RenderBlock.cpp:
108         (WebCore::RenderBlock::nodeAtPoint):
109         * rendering/RenderLayer.cpp:
110         (WebCore::computeReferenceBox):
111         * rendering/shapes/BoxShape.cpp:
112         (WebCore::computeRoundedRectForBoxShape):
113         * rendering/shapes/ShapeOutsideInfo.cpp:
114         (WebCore::ShapeOutsideInfo::setReferenceBoxLogicalSize):
115         (WebCore::ShapeOutsideInfo::logicalTopOffset const):
116         (WebCore::ShapeOutsideInfo::logicalLeftOffset const):
117         * rendering/style/RenderStyleConstants.h:
118         * rendering/svg/SVGRenderingContext.cpp:
119         (WebCore::SVGRenderingContext::prepareToRenderSVGContent):
120
121 2018-06-27  Timothy Hatcher  <timothy@apple.com>
122
123         Don't expose new semantic -apple-system color keywords on iOS.
124         https://bugs.webkit.org/show_bug.cgi?id=187080
125         rdar://problem/41505699
126
127         Reviewed by Tim Horton.
128
129         * DerivedSources.make: Use gnu++14, since gnu++17 is giving errors on macOS 10.12.
130         * css/CSSValueKeywords.in: Define new semantic colors only on macOS.
131
132 2018-06-27  Zalan Bujtas  <zalan@apple.com>
133
134         [LFC] Compute both the collapsed and the non-collapsed margin values.
135         https://bugs.webkit.org/show_bug.cgi?id=187129
136
137         Reviewed by Antti Koivisto.
138
139         For validation purposes only at this point.
140
141         * layout/FormattingContext.cpp:
142         (WebCore::Layout::FormattingContext::computeFloatingHeightAndMargin const):
143         (WebCore::Layout::FormattingContext::computeOutOfFlowVerticalGeometry const):
144         * layout/FormattingContext.h:
145         * layout/FormattingContextGeometry.cpp:
146         (WebCore::Layout::FormattingContext::Geometry::outOfFlowNonReplacedVerticalGeometry):
147         (WebCore::Layout::FormattingContext::Geometry::outOfFlowReplacedVerticalGeometry):
148         (WebCore::Layout::FormattingContext::Geometry::floatingNonReplacedHeightAndMargin):
149         (WebCore::Layout::FormattingContext::Geometry::inlineReplacedHeightAndMargin):
150         * layout/blockformatting/BlockFormattingContext.cpp:
151         (WebCore::Layout::BlockFormattingContext::computeInFlowHeightAndMargin const):
152         * layout/blockformatting/BlockFormattingContextGeometry.cpp:
153         (WebCore::Layout::BlockFormattingContext::Geometry::inFlowNonReplacedHeightAndMargin):
154         * layout/blockformatting/BlockMarginCollapse.cpp:
155         (WebCore::Layout::isMarginTopCollapsedWithParent):
156         (WebCore::Layout::BlockFormattingContext::MarginCollapse::collapsedMarginTopFromFirstChild):
157         (WebCore::Layout::BlockFormattingContext::MarginCollapse::marginTop):
158
159 2018-06-27  Zalan Bujtas  <zalan@apple.com>
160
161         [LFC] Align inFlowNonReplacedHeightAndMargin() style with the rest of the compute functions.
162         https://bugs.webkit.org/show_bug.cgi?id=187126
163
164         Reviewed by Antti Koivisto.
165
166         * layout/blockformatting/BlockFormattingContextGeometry.cpp:
167         (WebCore::Layout::BlockFormattingContext::Geometry::inFlowNonReplacedHeightAndMargin):
168
169 2018-06-27  Yusuke Suzuki  <utatane.tea@gmail.com>
170
171         [GTK][WPE] Use LazyNeverDestroyed<XErrorTrapper> to remove static initializers
172         https://bugs.webkit.org/show_bug.cgi?id=187089
173
174         Reviewed by Michael Catanzaro.
175
176         Do not allow copying since XErrorTrapper's logic relies on the address of XErrorTrapper.
177
178         * platform/graphics/x11/XErrorTrapper.h:
179
180 2018-06-27  Zalan Bujtas  <zalan@apple.com>
181
182         [LFC] Align inFlowNonReplacedWidthAndMargin() style with the rest of the compute functions.
183         https://bugs.webkit.org/show_bug.cgi?id=187124
184
185         Reviewed by Antti Koivisto.
186
187         * layout/blockformatting/BlockFormattingContextGeometry.cpp:
188         (WebCore::Layout::BlockFormattingContext::Geometry::inFlowNonReplacedWidthAndMargin):
189
190 2018-06-27  Dirk Schulze  <krit@webkit.org>
191
192         -webkit-clip-path wrong offset for clipPath references
193         https://bugs.webkit.org/show_bug.cgi?id=129246
194
195         Reviewed by Simon Fraser.
196
197         Compute the correct offset for reference clip-paths by reusing
198         some of the logic from basic shapes.
199         Makes reference based clip-path interoperable and follows the
200         spec.
201
202         Test: css3/masking/clip-path-reference-2.html
203
204         * rendering/RenderLayer.cpp:
205         (WebCore::computeReferenceBox):
206         (WebCore::RenderLayer::computeClipPath const):
207         (WebCore::RenderLayer::setupClipPath):
208
209 2018-06-27  Antti Koivisto  <antti@apple.com>
210
211         Don't invoke post resolution callbacks when resolving computed style
212         https://bugs.webkit.org/show_bug.cgi?id=187113
213         <rdar://problem/41365766>
214
215         Reviewed by Geoff Garen.
216
217         Post-resolution callbacks should only be invoked when we resolve the full document style,
218         not when resolving computed style for a single element.
219
220         Tests: fast/dom/object-computed-style-event.html
221
222         * dom/Document.cpp:
223         (WebCore::Document::styleForElementIgnoringPendingStylesheets):
224         * dom/Element.cpp:
225         (WebCore::Element::resolveComputedStyle):
226
227         Also ref the ancestor stack to be safe.
228
229         * style/StyleTreeResolver.cpp:
230         (WebCore::Style::PostResolutionCallbackDisabler::PostResolutionCallbackDisabler):
231         (WebCore::Style::PostResolutionCallbackDisabler::~PostResolutionCallbackDisabler):
232
233         Add an option to not drain the callback queue on destruction. In this mode we
234         just block network loads.
235
236         * style/StyleTreeResolver.h:
237
238 2018-06-27  Timothy Hatcher  <timothy@apple.com>
239
240         Find on page selection color isn't adapted for dark mode.
241         https://bugs.webkit.org/show_bug.cgi?id=187072
242         rdar://problem/40354841
243
244         Reviewed by Tim Horton.
245
246         * page/mac/TextIndicatorWindow.mm:
247         (-[WebTextIndicatorView initWithFrame:textIndicator:margin:offset:]): Use [NSColor findHighlightColor].
248         * platform/mac/LocalDefaultSystemAppearance.h:
249         (WebCore::LocalDefaultSystemAppearance::usingDarkAppearance const): Added.
250         * platform/mac/LocalDefaultSystemAppearance.mm:
251         (WebCore::LocalDefaultSystemAppearance::LocalDefaultSystemAppearance): Set m_usingDarkAppearance.
252         * rendering/InlineTextBox.cpp:
253         (WebCore::InlineTextBox::paintPlatformDocumentMarkers): Use TextPaintPhase::Decoration since this
254         matches step three of InlineTextBox::paint ("Paint fancy decorations"). This allows TextMatch to
255         paint a forground and not end up painting during this "fancy decorations" phase.
256         (WebCore::InlineTextBox::resolveStyleForMarkedText): Set the fillColor for TextMarker to force a
257         dark text color which will draw over the yellow highlight.
258         (WebCore::InlineTextBox::collectMarkedTextsForDocumentMarkers): Added support for TextPaintPhase::Decoration.
259         Seperate DocumentMarker::TelephoneNumber and DocumentMarker::TextMatch. Have DocumentMarker::TextMatch
260         support Forground and Background phases.
261         * rendering/RenderTheme.cpp:
262         (WebCore::RenderTheme::platformColorsDidChange):
263         (WebCore::RenderTheme::activeTextSearchHighlightColor const): Added. Call the platfrom version.
264         (WebCore::RenderTheme::inactiveTextSearchHighlightColor const): Added. Ditto.
265         (WebCore::RenderTheme::platformActiveTextSearchHighlightColor const): Added StyleColor::Options.
266         (WebCore::RenderTheme::platformInactiveTextSearchHighlightColor const): Ditto.
267         * rendering/RenderTheme.h:
268         * rendering/RenderThemeMac.h:
269         * rendering/RenderThemeMac.mm:
270         (WebCore::RenderThemeMac::platformActiveTextSearchHighlightColor const): Added.
271         (WebCore::RenderThemeMac::platformInactiveTextSearchHighlightColor const): Added.
272         (WebCore::RenderThemeMac::platformColorsDidChange): Clear new color caches.
273         (WebCore::RenderThemeMac::systemColor const): Cache system colors by light and dark mode.
274
275 2018-06-27  Chris Dumez  <cdumez@apple.com>
276
277         Crash under SWServer::unregisterServiceWorkerClient()
278         https://bugs.webkit.org/show_bug.cgi?id=187115
279         <rdar://problem/41539197>
280
281         Reviewed by Youenn Fablet.
282
283         Connections are usually destroyed before their SWServer. However, as per crash traces, it is possible
284         for SWServers to get destroyed while they still have connections. When this happens, the connections
285         (which are owned by the SWServer) get destroyed with other SWServer data members. In turn, the
286         connection destructor tries to unregister its clients from the server that is currently being destroyed.
287
288         To address the issue, the SWServer destructor now destroys remaining connections early, before SWServer's
289         other data members get destroyed.
290
291         * workers/service/server/SWServer.cpp:
292         (WebCore::SWServer::~SWServer):
293
294 2018-06-27  Youenn Fablet  <youenn@apple.com>
295
296         NetworkLoadChecker should not need to hard ref NetworkConnectionToWebProcess
297         https://bugs.webkit.org/show_bug.cgi?id=186551
298
299         Reviewed by Daniel Bates.
300
301         No change of behavior.
302         Add a way to set the client receiving any CSP warning/error notification.
303
304         * page/csp/ContentSecurityPolicy.h:
305         (WebCore::ContentSecurityPolicy::setClient):
306
307 2018-06-27  Zalan Bujtas  <zalan@apple.com>
308
309         [LFC] Do not collapse margin with the parent when element has border/padding.
310         https://bugs.webkit.org/show_bug.cgi?id=187114
311
312         Reviewed by Antti Koivisto.
313
314         * layout/blockformatting/BlockFormattingContext.cpp:
315         (WebCore::Layout::BlockFormattingContext::layout const):
316         * layout/blockformatting/BlockMarginCollapse.cpp:
317         (WebCore::Layout::isMarginTopCollapsedWithParent):
318         (WebCore::Layout::BlockFormattingContext::MarginCollapse::collapsedMarginTopFromFirstChild):
319         (WebCore::Layout::BlockFormattingContext::MarginCollapse::marginTop):
320
321 2018-06-27  Simon Fraser  <simon.fraser@apple.com>
322
323         Fix Windows build after r233268.
324
325         * platform/graphics/ca/win/PlatformCALayerWin.cpp:
326         (PlatformCALayerWin::hasContents const):
327         * platform/graphics/ca/win/PlatformCALayerWin.h:
328
329 2018-06-27  Zalan Bujtas  <zalan@apple.com>
330
331         [LFC] Out-of-flow positioned element's height depends on its containing block's height.
332         https://bugs.webkit.org/show_bug.cgi?id=187082
333
334         Reviewed by Antti Koivisto.
335
336         We can't really compute the final height of an out-of-flow element until after its containing block's height is computed.
337
338         * layout/FormattingContext.cpp:
339         (WebCore::Layout::FormattingContext::layoutOutOfFlowDescendants const):
340         * layout/FormattingContext.h:
341         * layout/LayoutContext.cpp:
342         (WebCore::Layout::LayoutContext::updateLayout):
343         (WebCore::Layout::LayoutContext::layoutFormattingContextSubtree):
344         * layout/LayoutContext.h:
345         * layout/blockformatting/BlockFormattingContext.cpp:
346         (WebCore::Layout::BlockFormattingContext::layout const):
347         * layout/layouttree/LayoutContainer.h:
348         (WebCore::Layout::Container::outOfFlowDescendants const):
349         (WebCore::Layout::Container::outOfFlowDescendants): Deleted.
350
351 2018-06-27  Youenn Fablet  <youenn@apple.com>
352
353         Disable content blockers in NetworkLoadChecker except for ping loads
354         https://bugs.webkit.org/show_bug.cgi?id=187083
355         <rdar://problem/41440083>
356
357         Reviewed by Chris Dumez.
358
359         Add internals API to reload a frame without content extensions.
360
361         Test: http/tests/contentextensions/reload-without-contentextensions.html
362
363         * testing/Internals.cpp:
364         (WebCore::Internals::reloadWithoutContentExtensions):
365         * testing/Internals.h:
366         * testing/Internals.idl:
367
368 2018-06-27  Simon Fraser  <simon.fraser@apple.com>
369
370         https://hackernoon.com/ uses lots of layer backing store
371         https://bugs.webkit.org/show_bug.cgi?id=186909
372         rdar://problem/40257540
373
374         Reviewed by Tim Horton.
375         
376         The existing "backing store detached" logic, which was used to eliminate backing store
377         for compositing layers outside the viewport, had a number of bugs that allowed layers
378         to have backing store when they should not.
379         
380         Specifically, any code path that ended up in setNeedsDisplay{InRect}() in PlatformCALayer
381         could trigger backing store creation on layers that should have never had any.
382         
383         Rather than monkeypatch all the GraphicsLayerCA call sites that call setNeedsDisplay{InRect}(),
384         just bail early from the PlatformCALayer* methods that trigger repaints.
385         
386         Tests didn't catch this because they just dumped the state of the backingStoreAttached flag. To fix this,
387         create backingStoreAttachedForTesting() which also tests whether the layer has contents.
388
389         Test: compositing/backing/backing-store-attachment-outside-viewport.html
390
391         * platform/graphics/GraphicsLayer.cpp:
392         (WebCore::GraphicsLayer::dumpProperties const):
393         (showGraphicsLayerTree):
394         * platform/graphics/GraphicsLayer.h:
395         (WebCore::GraphicsLayer::backingStoreAttachedForTesting const):
396         * platform/graphics/GraphicsLayerClient.h:
397         * platform/graphics/ca/GraphicsLayerCA.cpp:
398         (WebCore::GraphicsLayerCA::backingStoreAttachedForTesting const):
399         (WebCore::GraphicsLayerCA::setNeedsDisplay):
400         * platform/graphics/ca/GraphicsLayerCA.h:
401         * platform/graphics/ca/PlatformCALayer.h:
402         * platform/graphics/ca/cocoa/PlatformCALayerCocoa.h:
403         * platform/graphics/ca/cocoa/PlatformCALayerCocoa.mm:
404         (PlatformCALayerCocoa::setNeedsDisplay):
405         (PlatformCALayerCocoa::setNeedsDisplayInRect):
406         (PlatformCALayerCocoa::hasContents const):
407
408 2018-06-27  David Kilzer  <ddkilzer@apple.com>
409
410         Fix clang static analyzer warnings: Branch condition evaluates to a garbage value
411         <https://webkit.org/b/186968>
412
413         Reviewed by Zalan Bujtas.
414
415         This patch changes two stack-allocated `bool` variables into
416         `std::optional<bool>` since the functions that set the variable
417         may return early without setting it.  It also changes one
418         stack-allocated pointer to be initialized to `nullptr`.
419
420         * animation/AnimationTimeline.cpp:
421         (WebCore::AnimationTimeline::updateCSSTransitionsForElement):
422         Update for change to CSSPropertyAnimation::getPropertyAtIndex()
423         argument type.
424
425         * editing/ios/EditorIOS.mm:
426         (WebCore::Editor::writeImageToPasteboard): Initialize
427         `cachedImage` stack pointer to nullptr since getImage() has an
428         early return that doesn't set `cachedImage`.
429         * editing/mac/EditorMac.mm:
430         (WebCore::Editor::writeImageToPasteboard): Ditto.
431
432         * page/animation/CSSPropertyAnimation.cpp:
433         (WebCore::CSSPropertyAnimation::getPropertyAtIndex):
434         * page/animation/CSSPropertyAnimation.h:
435         (WebCore::CSSPropertyAnimation::getPropertyAtIndex):
436         - Change method to take `std::optional<bool>` instead of `bool`
437           as second argument since the method may return early without
438           setting `isShorthand`.
439
440         * page/animation/CompositeAnimation.cpp:
441         (WebCore::CompositeAnimation::updateTransitions): Update for
442         change to CSSPropertyAnimation::getPropertyAtIndex() argument
443         type.
444
445         * rendering/InlineFlowBox.cpp:
446         (WebCore::InlineFlowBox::placeBoxesInBlockDirection): Also
447         rename local `emphasisMarkIsOver` to `emphasisMarkIsAbove` to
448         match other call sites.
449         (WebCore::InlineFlowBox::addTextBoxVisualOverflow):
450         (WebCore::InlineFlowBox::computeOverAnnotationAdjustment const):
451         (WebCore::InlineFlowBox::computeUnderAnnotationAdjustment const):
452         - Update for change to InlineTextBox::emphasisMarkExistsAndIsAbove()
453           argument type.
454         * rendering/InlineTextBox.cpp:
455         (WebCore::InlineTextBox::emphasisMarkExistsAndIsAbove const):
456         - Change method to take `std::optional<bool>` instead of `bool`
457           as second argument since the method may return early without
458           setting `above`.
459         (WebCore::InlineTextBox::paintMarkedTextForeground):
460         - Update for change to InlineTextBox::emphasisMarkExistsAndIsAbove()
461           argument type.
462         * rendering/InlineTextBox.h:
463         (WebCore::InlineTextBox::emphasisMarkExistsAndIsAbove const):
464         - Change method to take `std::optional<bool>` instead of `bool`.
465
466 2018-06-27  Zalan Bujtas  <zalan@apple.com>
467
468         [LFC] Move formatting context root layout logic to a dedicated function.
469         https://bugs.webkit.org/show_bug.cgi?id=187097
470
471         Reviewed by Antti Koivisto.
472
473         * layout/blockformatting/BlockFormattingContext.cpp:
474         (WebCore::Layout::BlockFormattingContext::layout const):
475         (WebCore::Layout::BlockFormattingContext::layoutFormattingContextRoot const):
476         * layout/blockformatting/BlockFormattingContext.h:
477
478 2018-06-27  Zalan Bujtas  <zalan@apple.com>
479
480         [LFC] Compute static position for out-of-flow elements only when required.
481         https://bugs.webkit.org/show_bug.cgi?id=187096
482
483         Reviewed by Antti Koivisto.
484
485         Computing static position for out-of-flow elements could be somewhat expensive, so let's not do it unless we actually need it.
486
487         * layout/FormattingContextGeometry.cpp:
488         (WebCore::Layout::staticVerticalPositionForOutOfFlowPositioned):
489         (WebCore::Layout::staticHorizontalPositionForOutOfFlowPositioned):
490         (WebCore::Layout::FormattingContext::Geometry::outOfFlowNonReplacedVerticalGeometry):
491         (WebCore::Layout::FormattingContext::Geometry::outOfFlowNonReplacedHorizontalGeometry):
492         (WebCore::Layout::FormattingContext::Geometry::outOfFlowReplacedVerticalGeometry):
493         (WebCore::Layout::FormattingContext::Geometry::outOfFlowReplacedHorizontalGeometry):
494         * layout/blockformatting/BlockFormattingContextGeometry.cpp:
495         (WebCore::Layout::BlockFormattingContext::Geometry::staticPosition):
496         (WebCore::Layout::BlockFormattingContext::Geometry::staticPositionForOutOfFlowPositioned): Deleted.
497
498 2018-06-27  Nan Wang  <n_wang@apple.com>
499
500         AX: [iOS] Remove the ability to set keyboard focus when VoiceOver takes focus
501         https://bugs.webkit.org/show_bug.cgi?id=187076
502
503         Reviewed by Chris Fleizach.
504
505         We shouldn't set keyboard focus when assistive technology takes focus since
506         this is causing website incompatibility issues by causing focus to be lost.
507
508         Test: accessibility/ios-simulator/accessibility-focus-do-not-set-focus.html
509
510         * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
511         (-[WebAccessibilityObjectWrapper accessibilityElementDidBecomeFocused]):
512
513 2018-06-21  Emilio Cobos Álvarez  <emilio@crisal.io>
514
515         Move clearChildNeedsStyleRecalc into resetStyleForNonRenderedDescendants.
516         https://bugs.webkit.org/show_bug.cgi?id=186881
517
518         Reviewed by Antti Koivisto.
519
520         Every caller does this already.
521
522         No new tests, no change in behavior.
523
524         * style/StyleTreeResolver.cpp:
525         (WebCore::Style::resetStyleForNonRenderedDescendants):
526         (WebCore::Style::TreeResolver::resolveComposedTree):
527
528 2018-06-27  Tomas Popela  <tpopela@redhat.com>
529
530         [GStreamer] Coverity scan issues
531         https://bugs.webkit.org/show_bug.cgi?id=187087
532
533         Reviewed by Xabier Rodriguez-Calvar.
534
535         Fix uninitialized members.
536
537         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
538         * platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
539         * platform/graphics/gstreamer/mse/SourceBufferPrivateGStreamer.h:
540
541 2018-06-27  Zan Dobersek  <zdobersek@igalia.com>
542
543         [GCrypt] Move definitions of GCryptUtilities helpers into a separate source file
544         https://bugs.webkit.org/show_bug.cgi?id=187033
545
546         Reviewed by Michael Catanzaro.
547
548         Move the GCryptUtilities helpers that operate on libgcrypt values and
549         constants into a separate source file. This limits a bit the amount of
550         inlining the compiler might feel compelled to do, and the resulting
551         shared library is 8kB smaller in size.
552
553         * crypto/gcrypt/GCryptUtilities.cpp: Copied from Source/WebCore/crypto/gcrypt/GCryptUtilities.h.
554         (WebCore::hmacAlgorithm):
555         (WebCore::digestAlgorithm):
556         (WebCore::hashCryptoDigestAlgorithm):
557         (WebCore::mpiLength):
558         (WebCore::mpiData):
559         (WebCore::mpiZeroPrefixedData):
560         (WebCore::mpiSignedData):
561         * crypto/gcrypt/GCryptUtilities.h:
562         (WebCore::hmacAlgorithm): Deleted.
563         (WebCore::digestAlgorithm): Deleted.
564         (WebCore::hashCryptoDigestAlgorithm): Deleted.
565         (WebCore::mpiLength): Deleted.
566         (WebCore::mpiData): Deleted.
567         (WebCore::mpiZeroPrefixedData): Deleted.
568         (WebCore::mpiSignedData): Deleted.
569         * platform/SourcesGCrypt.txt:
570
571 2018-06-26  Yusuke Suzuki  <utatane.tea@gmail.com>
572
573         [JSC] Pass VM& to functions more
574         https://bugs.webkit.org/show_bug.cgi?id=186241
575
576         Reviewed by Mark Lam.
577
578         * bindings/js/JSCustomElementRegistryCustom.cpp:
579         (WebCore::JSCustomElementRegistry::define):
580
581 2018-06-26  Simon Fraser  <simon.fraser@apple.com>
582
583         CSSGradientValue's color stops vector wastes 12KB on theverge.com
584         https://bugs.webkit.org/show_bug.cgi?id=186988
585
586         Reviewed by Sam Weinig.
587
588         Shrink the color stops vector when we're done parsing the stops.
589
590         * css/CSSGradientValue.h:
591         (WebCore::CSSGradientValue::doneAddingStops):
592         * css/parser/CSSPropertyParserHelpers.cpp:
593         (WebCore::CSSPropertyParserHelpers::consumeDeprecatedGradient):
594         (WebCore::CSSPropertyParserHelpers::consumeGradientColorStops):
595         (WebCore::CSSPropertyParserHelpers::consumeAngularGradientColorStops):
596
597 2018-06-25  Yusuke Suzuki  <utatane.tea@gmail.com>
598
599         Remove static initializers more
600         https://bugs.webkit.org/show_bug.cgi?id=186969
601
602         Reviewed by Michael Catanzaro.
603
604         This patch removes static initializers more. They typically exists in GTK port.
605
606         No behavior change.
607
608         * Sources.txt:
609         * WebCore.xcodeproj/project.pbxproj:
610         * page/ResourceUsageData.cpp: Removed.
611         * page/ResourceUsageData.h:
612         Remove ResourceUsageData constructors since default constructors are enough.
613
614         (WebCore::MemoryCategoryInfo::MemoryCategoryInfo):
615         * platform/gtk/PasteboardHelper.cpp:
616         (WebCore::markupPrefix):
617         (WebCore::removeMarkupPrefix):
618         (WebCore::PasteboardHelper::fillSelectionData):
619         Use NeverDestroyed<> and static functions.
620
621         * platform/mediastream/gstreamer/GStreamerAudioCaptureSource.cpp:
622         (WebCore::defaultVolumeCapability):
623         (WebCore::GStreamerAudioCaptureSource::capabilities const):
624         CapabilityValueOrRange's constructor is not constexpr.
625
626         * platform/network/soup/SoupNetworkSession.cpp:
627         (WebCore::initialAcceptLanguages):
628         (WebCore::proxySettings):
629         (WebCore::SoupNetworkSession::SoupNetworkSession):
630         (WebCore::SoupNetworkSession::setupProxy):
631         (WebCore::SoupNetworkSession::setProxySettings):
632         (WebCore::SoupNetworkSession::setInitialAcceptLanguages):
633         Use NeverDestroyed<> and static functions.
634
635 2018-06-26  Daniel Bates  <dabates@apple.com>
636
637         REGRESSION (r231479): Unable to buy Odeon cinema tickets in STP (bogus 'X-Frame-Options' to 'SAMEORIGIN')
638         https://bugs.webkit.org/show_bug.cgi?id=186090
639         <rdar://problem/40692595>
640
641         Reviewed by Andy Estes.
642
643         Fix up Content Security Policy logic for checking the frame ancestors now that we
644         exclude the frame that initiated the load request.
645
646         Test: http/tests/security/XFrameOptions/cross-origin-iframe-post-form-to-parent-same-origin-x-frame-options-page-allow.html
647
648         * page/csp/ContentSecurityPolicy.cpp:
649         (WebCore::ContentSecurityPolicy::allowFrameAncestors const): 
650         * page/csp/ContentSecurityPolicyDirectiveList.cpp:
651         (WebCore::checkFrameAncestors):
652
653 2018-06-26  Chris Dumez  <cdumez@apple.com>
654
655         Simplify NetworkStorageSession::getAllStorageAccessEntries()
656         https://bugs.webkit.org/show_bug.cgi?id=187016
657
658         Reviewed by Youenn Fablet.
659
660         Iterate over the HashMaps' values instead of iterating over their keys and then looking them
661         up in the HashMap.
662
663         * platform/network/cf/NetworkStorageSessionCFNet.cpp:
664         (WebCore::NetworkStorageSession::getAllStorageAccessEntries const):
665
666 2018-06-26  Eric Carlson  <eric.carlson@apple.com>
667
668         [Mac] AirPlay picker uses incorrect theme in Dark mode
669         https://bugs.webkit.org/show_bug.cgi?id=187054
670         <rdar://problem/41291093>
671
672         Reviewed by Timothy Hatcher.
673
674         * Modules/mediasession/WebMediaSessionManager.cpp:
675         (WebCore::WebMediaSessionManager::showPlaybackTargetPicker): Add useDefaultAppearance parameter.
676         * Modules/mediasession/WebMediaSessionManager.h:
677
678         * platform/graphics/MediaPlaybackTargetPicker.cpp:
679         (WebCore::MediaPlaybackTargetPicker::showPlaybackTargetPicker): Ditto.
680         * platform/graphics/MediaPlaybackTargetPicker.h:
681
682         * platform/graphics/avfoundation/objc/MediaPlaybackTargetPickerMac.h:
683         * platform/graphics/avfoundation/objc/MediaPlaybackTargetPickerMac.mm:
684         (WebCore::MediaPlaybackTargetPickerMac::showPlaybackTargetPicker): Choose theme based on
685         useDefaultAppearance parameter.
686
687         * platform/mock/MediaPlaybackTargetPickerMock.cpp:
688         (WebCore::MediaPlaybackTargetPickerMock::showPlaybackTargetPicker): Log parameter.
689         * platform/mock/MediaPlaybackTargetPickerMock.h:
690
691 2018-06-26  Thibault Saunier  <tsaunier@igalia.com>
692
693         [GStreamer] Do not forget to set stream on track switching
694         https://bugs.webkit.org/show_bug.cgi?id=187049
695
696         Reviewed by Philippe Normand.
697
698         This was an overlooked issue introduced in Bug #186678
699
700         This is already tested, but we currently run only tests against playbin2
701
702         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
703         (WebCore::MediaPlayerPrivateGStreamer::enableTrack):
704
705 2018-06-26  Zalan Bujtas  <zalan@apple.com>
706
707         [LFC] Fixed positioning is a subcategory of absolute positioning.
708         https://bugs.webkit.org/show_bug.cgi?id=187043
709
710         Reviewed by Antti Koivisto.
711
712         https://www.w3.org/TR/CSS22/visuren.html#absolute-positioning
713         References in this specification to an absolutely positioned element (or its box) imply that the element's 'position'
714         property has the value 'absolute' or 'fixed'.
715
716         * layout/layouttree/LayoutBox.cpp:
717         (WebCore::Layout::Box::isAbsolutelyPositioned const):
718         * layout/layouttree/LayoutBox.h:
719         (WebCore::Layout::Box::isOutOfFlowPositioned const):
720
721 2018-06-26  Commit Queue  <commit-queue@webkit.org>
722
723         Unreviewed, rolling out r233143.
724         https://bugs.webkit.org/show_bug.cgi?id=187046
725
726         broke media/video-ended-event-negative-playback.html
727         (Requested by philn on #webkit).
728
729         Reverted changeset:
730
731         "[GStreamer] Remove useless workaround"
732         https://bugs.webkit.org/show_bug.cgi?id=186921
733         https://trac.webkit.org/changeset/233143
734
735 2018-06-25  Zalan Bujtas  <zalan@apple.com>
736
737         [LFC] Computed height for in-flow non-replaced should not include padding and border.
738         https://bugs.webkit.org/show_bug.cgi?id=187031
739
740         Reviewed by Antti Koivisto.
741
742         In certain cases the height of a non-replaced in-flow box is computed using the bottom position of its last in-flow child.
743         The in-flow child's bottom position is in the coordinate system of the containing block's border box (border box's top left is 0, 0) ->
744         it includes both the (top) border and the padding of the containing block.
745
746         * layout/blockformatting/BlockFormattingContextGeometry.cpp:
747         (WebCore::Layout::BlockFormattingContext::Geometry::inFlowNonReplacedHeightAndMargin):
748
749 2018-06-26  Zan Dobersek  <zdobersek@igalia.com>
750
751         Crash in WebAnimation::runPendingPlayTask
752         https://bugs.webkit.org/show_bug.cgi?id=186189
753
754         Reviewed by Carlos Garcia Campos.
755
756         Avoid crashes on nullopt std::optional dereference in the
757         runPendingPlayTask() and runPendingPauseTask() methods of the
758         WebAnimation class by defaulting to a Seconds(0) value.
759
760         In both cases the std::optional value is the current time retrieved from
761         the associated DocumentTimeline object. But there's no guarantee that
762         the timeline is active and the resulting time value is resolved (i.e.
763         not nullopt). Dereferencing the nullopt Seconds value doesn't cause a
764         problem on configurations still building as C++14 and the fallback
765         std::optional implementation provided by WTF -- no signal is raised, and
766         a 0 value is returned. Configurations building as C++17 on the other
767         hand use the stdlib-provided std::optional that does raise a signal on
768         invalid access, leading to crashes.
769
770         The default-to-Seconds(0) solution avoids crashes on configurations
771         that build with C++17 support enabled, and thus match configurations
772         that are still using WTF's std::optional. This still doesn't address the
773         underlying problem of retrieving current time from an inactive document
774         timeline and using it as ready time for the pending play/pause task
775         execution.
776
777         runPendingPlayTask() change addresses crashes in the following tests:
778         - fast/animation/css-animation-resuming-when-visible.html
779         - fast/animation/css-animation-resuming-when-visible-with-style-change.html
780         - imported/w3c/web-platform-tests/web-animations/interfaces/Animatable/animate-no-browsing-context.html
781         - imported/w3c/web-platform-tests/web-animations/interfaces/Animatable/getAnimations.html
782
783         runPendingPauseTask() change addresses crashes in the following tests:
784         - animations/multiple-animations-timing-function.html
785
786         * animation/WebAnimation.cpp:
787         (WebCore::WebAnimation::runPendingPlayTask):
788         (WebCore::WebAnimation::runPendingPauseTask):
789
790 2018-06-26  Antoine Quint  <graouts@apple.com>
791
792         [Web Animations] Show the feature as "Supported in Preview"
793         https://bugs.webkit.org/show_bug.cgi?id=187037
794
795         Reviewed by Dean Jackson.
796
797         Web Animations are enabled by default in STP.
798
799         * features.json:
800
801 2018-06-26  Miguel Gomez  <magomez@igalia.com>
802
803         [GTK] Many webpages can crash the browser in WebCore::CoordinatedGraphicsLayer::transformedVisibleRect
804         https://bugs.webkit.org/show_bug.cgi?id=179304
805
806         Reviewed by Michael Catanzaro.
807
808         When adding new CoordinatedGraphicsLayers to the tree, check that they have the appropriate
809         CompositingCoordinator. If that's not the case, set the appropriate one to the layer and its
810         children and set the state of those layers so they are rendered properly.
811
812         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
813         (WebCore::CoordinatedGraphicsLayer::addChild):
814         (WebCore::CoordinatedGraphicsLayer::addChildAtIndex):
815         (WebCore::CoordinatedGraphicsLayer::addChildAbove):
816         (WebCore::CoordinatedGraphicsLayer::addChildBelow):
817         (WebCore::CoordinatedGraphicsLayer::replaceChild):
818         (WebCore::CoordinatedGraphicsLayer::setCoordinatorIncludingSubLayersIfNeeded):
819         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:
820
821 2018-06-25  Keith Rollin  <krollin@apple.com>
822
823         Adjust WEBCORE_EXPORT annotations for LTO
824         https://bugs.webkit.org/show_bug.cgi?id=186944
825         <rdar://problem/41384880>
826
827         Reviewed by David Kilzer.
828
829         Adjust a number of places that result in WebKit's
830         'check-for-weak-vtables-and-externals' script reporting weak external
831         symbols:
832
833             ERROR: WebCore has a weak external symbol in it (/Volumes/Data/dev/webkit/OpenSource/WebKitBuild/Release/WebCore.framework/Versions/A/WebCore)
834             ERROR: A weak external symbol is generated when a symbol is defined in multiple compilation units and is also marked as being exported from the library.
835             ERROR: A common cause of weak external symbols is when an inline function is listed in the linker export file.
836             ...
837
838         These cases are caused by inline methods being marked with WTF_EXPORT
839         (or related macro) or with an inline function being in a class marked
840         as such, and when enabling LTO builds.
841
842         For the most part, address these by removing the WEBCORE_EXPORT
843         annotation from inline methods. In some cases, move the implementation
844         out-of-line because it's the class that has the WEBCORE_EXPORT on it
845         and removing the annotation from the class would be too disruptive.
846         Finally, in other cases, move the implementation out-of-line because
847         check-for-weak-vtables-and-externals still complains when keeping the
848         implementation inline and removing the annotation; this seems to
849         typically (but not always) happen with destructors.
850
851         No new tests. There is no changed functionality. Only the annotation
852         and treatment of inline methods are altered.
853
854         * animation/AnimationTimeline.h:
855         (WebCore::AnimationTimeline::pause):
856         * page/CacheStorageProvider.h:
857         (): Deleted.
858         * page/scrolling/ScrollingTree.h:
859         (WebCore::ScrollingTree::reportSynchronousScrollingReasonsChanged):
860         (WebCore::ScrollingTree::reportExposedUnfilledArea):
861         * platform/audio/PlatformMediaSessionManager.h:
862         (WebCore::PlatformMediaSessionManager::hasActiveNowPlayingSession const):
863         (WebCore::PlatformMediaSessionManager::lastUpdatedNowPlayingTitle const):
864         (WebCore::PlatformMediaSessionManager::lastUpdatedNowPlayingDuration const):
865         (WebCore::PlatformMediaSessionManager::lastUpdatedNowPlayingElapsedTime const):
866         (WebCore::PlatformMediaSessionManager::lastUpdatedNowPlayingInfoUniqueIdentifier const):
867         (WebCore::PlatformMediaSessionManager::registeredAsNowPlayingApplication const):
868         * platform/audio/mac/CARingBuffer.cpp:
869         (WebCore::CARingBuffer::~CARingBuffer):
870         * platform/audio/mac/CARingBuffer.h:
871         (WebCore::CARingBuffer::~CARingBuffer): Deleted.
872         * platform/cocoa/VideoFullscreenModelVideoElement.h:
873         * platform/gamepad/GamepadProvider.h:
874         * platform/graphics/GraphicsLayer.h:
875         (WebCore::GraphicsLayer::displayListAsText const):
876         (WebCore::GraphicsLayer::setIsTrackingDisplayListReplay):
877         (WebCore::GraphicsLayer::isTrackingDisplayListReplay const):
878         (WebCore::GraphicsLayer::replayDisplayListAsText const):
879         * platform/mac/PlaybackSessionInterfaceMac.h:
880         * platform/mediastream/RealtimeMediaSourceCenter.h:
881         (WebCore::RealtimeMediaSourceCenter::setAudioFactory):
882         (WebCore::RealtimeMediaSourceCenter::unsetAudioFactory):
883         * platform/mediastream/libwebrtc/LibWebRTCProvider.cpp:
884         (WebCore::LibWebRTCProvider::setActive):
885         (WebCore::LibWebRTCProvider::createDecoderFactory):
886         (WebCore::LibWebRTCProvider::createEncoderFactory):
887         (WebCore::LibWebRTCProvider::disableEnumeratingAllNetworkInterfaces):
888         (WebCore::LibWebRTCProvider::enableEnumeratingAllNetworkInterfaces):
889         * platform/mediastream/libwebrtc/LibWebRTCProvider.h:
890         * platform/network/ResourceHandleClient.h:
891         (WebCore::ResourceHandleClient::willCacheResponseAsync):
892         * testing/MockGamepadProvider.h:
893         * workers/service/server/SWServer.h:
894         (WebCore::SWServer::Connection::~Connection):
895
896 2018-06-25  Zalan Bujtas  <zalan@apple.com>
897
898         [LFC] Adjust static position for out-of-flow positioned boxes.
899         https://bugs.webkit.org/show_bug.cgi?id=187000
900
901         Reviewed by Antti Koivisto.
902
903         The static position of an out-of-flow positioned box is the the position where box would go
904         if it was in-flow positioned. This position needs to the resolved in the containing block's coordinate system.
905
906         * layout/blockformatting/BlockFormattingContext.h:
907         * layout/blockformatting/BlockFormattingContextGeometry.cpp:
908         (WebCore::Layout::BlockFormattingContext::Geometry::inFlowReplacedWidthAndMargin):
909         (WebCore::Layout::BlockFormattingContext::Geometry::staticPositionForOutOfFlowPositioned):
910         (WebCore::Layout::BlockFormattingContext::Geometry::staticPosition):
911
912 2018-06-25  Brady Eidson  <beidson@apple.com>
913
914         Remove RELEASE_ASSERT added in r230875.
915         <rdar://problem/40860061> and https://bugs.webkit.org/show_bug.cgi?id=187022
916
917         Reviewed by Brent Fulgham.
918
919         There's actually more than one way for a network session to be destroyed, and that can happen
920         asynchronously and unpredictably.
921
922         And the request to start up a WebSocket and do its handshake is also asynchronous and unpredictable
923  
924         It's an expected race.
925
926         If the NetworkStorageSession cannot be found then the WebSocket handshake should just fail.
927
928         * platform/network/SocketStreamHandleImpl.cpp:
929         (WebCore::cookieDataForHandshake): If the NetworkStorageSession cannot be found, return std::nullopt.
930         (WebCore::SocketStreamHandleImpl::platformSendHandshake): If the cookieData is null, fail the handshake.
931
932 2018-06-25  Wenson Hsieh  <wenson_hsieh@apple.com>
933
934         [iPad apps on macOS] Web process crashes when attempting to play embedded YouTube video in News
935         https://bugs.webkit.org/show_bug.cgi?id=187011
936         <rdar://problem/40906808>
937
938         Reviewed by Tim Horton.
939
940         Disable remote media commands when running iOS WebKit on macOS. The iOS flavor of RemoteCommandListener
941         currently throws an exception when attempting to soft-link the MediaPlayer framework, which prevents video from
942         being played altogether. For a followup tracking touch bar integration in iOS WebKit on macOS, see:
943         <rdar://problem/39164732>.
944
945         Manually tested by playing a YouTube video in News.
946
947         * platform/RemoteCommandListener.cpp:
948         * platform/ios/RemoteCommandListenerIOS.h:
949         * platform/ios/RemoteCommandListenerIOS.mm:
950
951 2018-06-25  Keith Rollin  <krollin@apple.com>
952         Unreviewed, rolling out r233087.
953
954         Causes 5% Mac PLT regression.
955
956         Reverted changeset:
957
958         "Recalc styles every time defaultAppearance changes."
959         https://bugs.webkit.org/show_bug.cgi?id=186866
960         https://trac.webkit.org/changeset/233087
961
962 2018-06-25  Brent Fulgham  <bfulgham@apple.com>
963
964         REGRESSION(r229722): WebKitLegacy clients can crash when loading alternate page
965         https://bugs.webkit.org/show_bug.cgi?id=187008
966         
967         Reviewed by Chris Dumez.
968
969         The new call to 'clearProvisionalLoadForPolicyCheck' added in r229722 broke loading
970         behavior in WebKitLegacy.
971
972         1. We can now enter 'cancelPolicyCheckIfNeeded' without a Frame loader, in what appears
973            to be a recursive call during the load cancellation (the 'm_waitingForContentPolicy'
974            and 'm_waitingForNavigationPolicy' have already been nulled). It seems like we should
975            return early here, or perhaps just move the RELEASE_ASSERT inside the case where we
976            have an active policy check happening.
977
978         2. We also enter FrameLoader::checkContentPolicy without an active document loader. We
979            should recognize this case and handle it, rather than trying to dereference a nullptr
980            document loader.
981
982         * loader/DocumentLoader.cpp:
983         (WebCore::DocumentLoader::cancelPolicyCheckIfNeeded): Move the RELEASE_ASSERT inside the
984         conditional where the frameLoader is actually used.
985         * loader/FrameLoader.cpp:
986         (WebCore::FrameLoader::checkContentPolicy): Recognize that the activeDocumentLoader may
987         be nullptr at this point, and take appropriate action (rather than crashing).
988
989 2018-06-25  Simon Fraser  <simon.fraser@apple.com>
990
991         MatchedPropertiesCacheItem wastes 388KB of vector capacity on nytimes.com
992         https://bugs.webkit.org/show_bug.cgi?id=186990
993
994         Reviewed by Antti Koivisto.
995
996         MatchedPropertiesCacheItem.matchedProperties was appended to, so it allocated capacity
997         in 16-size chunks. Instead, assign to it so it only allocates as much capacity as is needed.
998         Copy-constructing is more wasteful, since it copies the 64-chunk size from the right-hand side.
999
1000         * css/StyleResolver.cpp:
1001         (WebCore::StyleResolver::addToMatchedPropertiesCache):
1002         * css/StyleResolver.h:
1003         (WebCore::StyleResolver::MatchedPropertiesCacheItem::MatchedPropertiesCacheItem):
1004
1005 2018-06-25  Chris Dumez  <cdumez@apple.com>
1006
1007         Null dereference crash un ApplicationCacheGroup::startLoadingEntry()
1008         https://bugs.webkit.org/show_bug.cgi?id=187012
1009         <rdar://problem/40793716>
1010
1011         Reviewed by Youenn Fablet.
1012
1013         m_entryLoader can be null because ApplicationCacheResourceLoader::create() return null when
1014         CachedResourceLoader::requestRawResource() fails synchronously. In such case, the completion
1015         handler gets called with a ApplicationCacheResourceLoader::Error::CannotRequestResource error.
1016
1017         To address the issue, we capture the request's URL in the lambda and use it instead of trying
1018         to get the URL from the loader's resource.
1019
1020         * loader/appcache/ApplicationCacheGroup.cpp:
1021         (WebCore::ApplicationCacheGroup::startLoadingEntry):
1022
1023 2018-06-25  Ross Kirsling  <ross.kirsling@sony.com>
1024
1025         REGRESSION (r233140): Windows build failure due to incomplete FrameView and RenderBox types
1026         https://bugs.webkit.org/show_bug.cgi?id=186997
1027
1028         * animation/KeyframeEffectReadOnly.cpp:
1029
1030 2018-06-25  Antoine Quint  <graouts@apple.com>
1031
1032         REGRESSION: hardware-accelerated animation fails on inline element
1033         https://bugs.webkit.org/show_bug.cgi?id=186981
1034         <rdar://problem/41418697>
1035
1036         Reviewed by Dean Jackson.
1037
1038         Ensure we only queue accelerated actions when we have a renderer so we don't attempt
1039         to start an accelerated animation too soon.
1040
1041         Test: webanimations/opacity-animation-yields-compositing-span.html
1042
1043         * animation/KeyframeEffectReadOnly.cpp:
1044         (WebCore::KeyframeEffectReadOnly::updateAcceleratedAnimationState):
1045
1046 2018-06-25  David Kilzer  <ddkilzer@apple.com>
1047
1048         REGRESSION (r233140): v2: Windows build failure due to incomplete DocumentAnimationScheduler type
1049         <https://webkit.org/b/186997>
1050
1051         * dom/Document.cpp:
1052         (WebCore::Document::prepareForDestruction):
1053         (WebCore::Document::windowScreenDidChange):
1054         * dom/Document.h:
1055         - DocumentAnimationScheduler is behind the
1056           USE(REQUEST_ANIMATION_FRAME_DISPLAY_MONITOR) macro, which
1057           is disabled on Windows.
1058         - This also reverts my fix in r233144 since it didn't work.
1059
1060 2018-06-25  Youenn Fablet  <youenn@apple.com>
1061
1062         Add API to control mock media devices
1063         https://bugs.webkit.org/show_bug.cgi?id=186958
1064
1065         Reviewed by Eric Carlson.
1066
1067         Refactor code to introduce a MockDevice structure that can be used in multiple processes.
1068         Update mock sources and center to use MockDevice.
1069         Add API to update mock media devices.
1070
1071         Make MediaDevices an ActiveDOMObject so that it does not get collected when ondevicechange is set.
1072
1073          Test: fast/mediastream/device-change-event-2.html
1074
1075         * Modules/mediastream/MediaDevices.cpp:
1076         (WebCore::MediaDevices::MediaDevices):
1077         (WebCore::MediaDevices::stop):
1078         (WebCore::MediaDevices::scheduledEventTimerFired):
1079         (WebCore::MediaDevices::hasPendingActivity const):
1080         (WebCore::MediaDevices::activeDOMObjectName const):
1081         (WebCore::MediaDevices::canSuspendForDocumentSuspension const):
1082         * Modules/mediastream/MediaDevices.h:
1083         * Modules/mediastream/MediaDevices.idl:
1084         * WebCore.xcodeproj/project.pbxproj:
1085         * platform/mediastream/RealtimeMediaSourceCenter.h:
1086         * platform/mock/MockMediaDevice.h: Added.
1087         (WebCore::MockMicrophoneProperties::encode const):
1088         (WebCore::MockMicrophoneProperties::decode):
1089         (WebCore::MockCameraProperties::encode const):
1090         (WebCore::MockCameraProperties::decode):
1091         (WebCore::MockDisplayProperties::encode const):
1092         (WebCore::MockDisplayProperties::decode):
1093         (WebCore::MockMediaDevice::isMicrophone const):
1094         (WebCore::MockMediaDevice::isCamera const):
1095         (WebCore::MockMediaDevice::isDisplay const):
1096         (WebCore::MockMediaDevice::type const):
1097         (WebCore::MockMediaDevice::encode const):
1098         (WebCore::MockMediaDevice::decodeMockMediaDevice):
1099         (WebCore::MockMediaDevice::decode):
1100         * platform/mock/MockRealtimeAudioSource.cpp:
1101         (WebCore::MockRealtimeAudioSource::startProducingData):
1102         * platform/mock/MockRealtimeMediaSource.cpp:
1103         (WebCore::defaultDevices):
1104         (WebCore::devices):
1105         (WebCore::deviceMap):
1106         (WebCore::deviceListForDevice):
1107         (WebCore::MockRealtimeMediaSource::createCaptureDevice):
1108         (WebCore::MockRealtimeMediaSource::resetDevices):
1109         (WebCore::MockRealtimeMediaSource::setDevices):
1110         (WebCore::MockRealtimeMediaSource::addDevice):
1111         (WebCore::MockRealtimeMediaSource::removeDevice):
1112         (WebCore::MockRealtimeMediaSource::captureDeviceWithPersistentID):
1113         (WebCore::MockRealtimeMediaSource::audioDevices):
1114         (WebCore::MockRealtimeMediaSource::videoDevices):
1115         (WebCore::MockRealtimeMediaSource::displayDevices):
1116         (WebCore::MockRealtimeMediaSource::MockRealtimeMediaSource):
1117         (WebCore::MockRealtimeMediaSource::initializeCapabilities):
1118         (WebCore::MockRealtimeMediaSource::initializeSettings):
1119         (WebCore::MockRealtimeMediaSource::settings const):
1120         (WebCore::MockRealtimeMediaSource::supportedConstraints):
1121         * platform/mock/MockRealtimeMediaSource.h:
1122         (WebCore::MockRealtimeMediaSource::device const):
1123         * platform/mock/MockRealtimeMediaSourceCenter.cpp:
1124         (WebCore::MockRealtimeMediaSourceCenter::singleton):
1125         (WebCore::MockRealtimeMediaSourceCenter::setMockRealtimeMediaSourceCenterEnabled):
1126         (WebCore::MockRealtimeMediaSourceCenter::setDevices):
1127         (WebCore::MockRealtimeMediaSourceCenter::addDevice):
1128         (WebCore::MockRealtimeMediaSourceCenter::removeDevice):
1129         * platform/mock/MockRealtimeMediaSourceCenter.h:
1130         * platform/mock/MockRealtimeVideoSource.cpp:
1131         (WebCore::MockRealtimeVideoSource::MockRealtimeVideoSource):
1132         (WebCore::MockRealtimeVideoSource::initializeCapabilities):
1133         (WebCore::MockRealtimeVideoSource::drawText):
1134         (WebCore::MockRealtimeVideoSource::generateFrame):
1135         * platform/mock/MockRealtimeVideoSource.h:
1136         (WebCore::MockRealtimeVideoSource::mockCamera const):
1137         (WebCore::MockRealtimeVideoSource::mockScreen const):
1138
1139 2018-06-25  Simon Fraser  <simon.fraser@apple.com>
1140
1141         AutoTableLayout wastes 52KB of Vector capacity on nytimes.com
1142         https://bugs.webkit.org/show_bug.cgi?id=186710
1143
1144         Reviewed by Zalan Bujtas.
1145         
1146         Call resizeToFit() to only allocate enough capacity for the number of columns.
1147
1148         * rendering/AutoTableLayout.cpp:
1149         (WebCore::AutoTableLayout::fullRecalc):
1150         (WebCore::AutoTableLayout::insertSpanCell): Whitespace fix.
1151         * rendering/AutoTableLayout.h:
1152
1153 2018-06-25  Zalan Bujtas  <zalan@apple.com>
1154
1155         [LFC] Adjust static position with containing block's content box top/left
1156         https://bugs.webkit.org/show_bug.cgi?id=186999
1157
1158         Reviewed by Antti Koivisto.
1159
1160         * layout/blockformatting/BlockFormattingContextGeometry.cpp:
1161         (WebCore::Layout::BlockFormattingContext::Geometry::staticPosition):
1162         * layout/displaytree/DisplayBox.cpp:
1163         (WebCore::Display::Box::contentBox const):
1164         * layout/displaytree/DisplayBox.h:
1165         (WebCore::Display::Box::contentBoxTop const):
1166         (WebCore::Display::Box::contentBoxLeft const):
1167
1168 2018-06-25  David Kilzer  <ddkilzer@apple.com>
1169
1170         REGRESSION (r233140): Windows build failure due to incomplete DocumentAnimationScheduler type
1171         <https://webkit.org/b/186997>
1172
1173         * dom/Document.cpp:
1174         * dom/Document.h:
1175         - Attempt to fix Windows build failure by moving include of
1176           DocumentAnimationScheduler.h from Document.cpp to Document.h.
1177
1178 2018-06-25  Philippe Normand  <pnormand@igalia.com>
1179
1180         [GStreamer] Remove useless workaround
1181         https://bugs.webkit.org/show_bug.cgi?id=186921
1182
1183         Reviewed by Xabier Rodriguez-Calvar.
1184
1185         In bug 67407 a workaround was added for GStreamer 0.10. With 1.x
1186         the media/video-reverse-play-duration.html test passes without any
1187         workaround needed. The other test mentioned in that bug was
1188         removed, it seems.
1189
1190         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1191         (WebCore::MediaPlayerPrivateGStreamer::currentMediaTime const):
1192
1193 2018-06-24  Tomas Popela  <tpopela@redhat.com>
1194
1195         Unreviewed, address Darin's comment
1196         https://bugs.webkit.org/show_bug.cgi?id=186757
1197
1198         * page/linux/ResourceUsageThreadLinux.cpp:
1199         (WebCore::cpuPeriod):
1200
1201 2018-06-25  Antoine Quint  <graouts@apple.com>
1202
1203         [Web Animations] Make imported/mozilla/css-animations/test_animation-pausing.html pass reliably
1204         https://bugs.webkit.org/show_bug.cgi?id=183826
1205         <rdar://problem/40997412>
1206
1207         Reviewed by Dean Jackson.
1208
1209         The CSS Animations Level 2 specification defines that calling pause() on a CSSAnimation object is "sticky"
1210         until a call to play() is made, meaning that any changes to the running state via the CSS animation-play-state
1211         property is overridden by the stickiness of the pause() call. In this patch we add an m_stickyPaused flag which
1212         is set in API calls to pause() and play(). While this flag is true, changes to the animation-play-state property
1213         to the "running" value are ignored.
1214
1215         * animation/CSSAnimation.cpp:
1216         (WebCore::CSSAnimation::syncPropertiesWithBackingAnimation):
1217         (WebCore::CSSAnimation::bindingsPlay):
1218         (WebCore::CSSAnimation::bindingsPause):
1219         * animation/CSSAnimation.h:
1220
1221 2018-06-25  Antoine Quint  <graouts@apple.com>
1222
1223         [Web Animations] Ensure animations are updated prior to requestAnimationFrame callbacks
1224         https://bugs.webkit.org/show_bug.cgi?id=186997
1225         <rdar://problem/41419414>
1226
1227         Reviewed by Dean Jackson.
1228
1229         Some sub-tests of imported/mozilla/css-animations/test_animation-pausing.html clearly expect that animations
1230         would be resolved prior to firing a requestAnimationFrame() callback, as the HTML5 event loop mandates. But until
1231         now, both DocumentTimeline and ScriptedAnimationController would make calls to DisplayRefreshMonitorManager::scheduleAnimation()
1232         that were not coordinated and so the order in which the DocumentTimeline and ScriptedAnimationController callbacks
1233         were performed was not guaranteed.
1234
1235         In this patch we add a new DocumentAnimationScheduler class which is created by a Document to manage this specific
1236         situation. Now DocumentTimeline and ScriptedAnimationController use this supporting object instead of being their
1237         own DisplayRefreshMonitorClient and call scheduleWebAnimationsResolution() and scheduleScriptedAnimationResolution()
1238         respectively to indicate the need to schedule an animation through the DisplayRefreshMonitorManager to serve the specific
1239         needs of either, or both, classes. Then DocumentAnimationScheduler ensures that Web Animations resolution happens
1240         prior to requestAnimationFrame callbacks when both are scheduled.
1241
1242         In the future we should be able to move more code from DocumentTimeline and ScriptedAnimationController over to
1243         DocumentAnimationScheduler, such as support for throttling and using a timer-based fallback, but this patch provides
1244         the minimal functionality required to provide a sounder foundation.
1245
1246         * Modules/webvr/VRDisplay.cpp:
1247         (WebCore::VRDisplay::requestAnimationFrame):
1248         * Sources.txt:
1249         * WebCore.xcodeproj/project.pbxproj:
1250         * animation/DocumentAnimationScheduler.cpp: Added.
1251         (WebCore::DocumentAnimationScheduler::create):
1252         (WebCore::DocumentAnimationScheduler::DocumentAnimationScheduler):
1253         (WebCore::DocumentAnimationScheduler::detachFromDocument):
1254         (WebCore::DocumentAnimationScheduler::scheduleWebAnimationsResolution):
1255         (WebCore::DocumentAnimationScheduler::scheduleScriptedAnimationResolution):
1256         (WebCore::DocumentAnimationScheduler::displayRefreshFired):
1257         (WebCore::DocumentAnimationScheduler::windowScreenDidChange):
1258         (WebCore::DocumentAnimationScheduler::createDisplayRefreshMonitor const):
1259         * animation/DocumentAnimationScheduler.h: Copied from Source/WebCore/animation/CSSAnimation.h.
1260         * animation/DocumentTimeline.cpp:
1261         (WebCore::DocumentTimeline::create):
1262         (WebCore::DocumentTimeline::DocumentTimeline):
1263         (WebCore::DocumentTimeline::scheduleAnimationResolution):
1264         (WebCore::DocumentTimeline::windowScreenDidChange): Deleted.
1265         (WebCore::DocumentTimeline::createDisplayRefreshMonitor const): Deleted.
1266         * animation/DocumentTimeline.h:
1267         * dom/Document.cpp:
1268         (WebCore::Document::prepareForDestruction):
1269         (WebCore::Document::windowScreenDidChange):
1270         (WebCore::Document::requestAnimationFrame):
1271         (WebCore::Document::animationScheduler):
1272         (WebCore::Document::timeline):
1273         * dom/Document.h:
1274         * dom/ScriptedAnimationController.cpp:
1275         (WebCore::ScriptedAnimationController::ScriptedAnimationController):
1276         (WebCore::ScriptedAnimationController::scheduleAnimation):
1277         (WebCore::ScriptedAnimationController::documentAnimationSchedulerDidFire):
1278         (WebCore::ScriptedAnimationController::windowScreenDidChange): Deleted.
1279         (WebCore::ScriptedAnimationController::displayRefreshFired): Deleted.
1280         (WebCore::ScriptedAnimationController::createDisplayRefreshMonitor const): Deleted.
1281         * dom/ScriptedAnimationController.h:
1282         (WebCore::ScriptedAnimationController::create):
1283
1284 2018-06-25  Zan Dobersek  <zdobersek@igalia.com>
1285
1286         [GCrypt] Zero-prefix (if necessary) output of RSA-based encryption and signing operations
1287         https://bugs.webkit.org/show_bug.cgi?id=186967
1288
1289         Reviewed by Michael Catanzaro.
1290
1291         Output for RSA-based encryption and signing operations should match the
1292         length of the RSA key. The way we retrieve the MPI data means libgcrypt
1293         can ignore the high-bit zero values and leave us with a valid result
1294         that's shorter in length compared to the RSA key. For instance, if the
1295         output MPI fits into 2040 bits while a 2048-bit key was used we'll end
1296         up with MPI data that will be fitted into a 255-byte Vector, one byte
1297         short of the expected output length.
1298
1299         To avoid this, mpiZeroPrefixedData() is now used when retrieving output
1300         of these RSA operations, and the value of the key size in bytes is
1301         passed to it. This efficiently prepares the output Vector and then
1302         copies the MPI data into it, respecting the MPI data length as well as
1303         the desired length of the output.
1304
1305         No new tests -- relevant tests are now stable (i.e. not sporadically
1306         failing anymore), associated expectations are removed.
1307
1308         * crypto/gcrypt/CryptoAlgorithmECDHGCrypt.cpp:
1309         (WebCore::gcryptDerive): Also use mpiZeroPrefixedData().
1310         * crypto/gcrypt/CryptoAlgorithmRSAES_PKCS1_v1_5GCrypt.cpp:
1311         (WebCore::gcryptEncrypt):
1312         (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformEncrypt):
1313         * crypto/gcrypt/CryptoAlgorithmRSASSA_PKCS1_v1_5GCrypt.cpp:
1314         (WebCore::gcryptSign):
1315         (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::platformSign):
1316         * crypto/gcrypt/CryptoAlgorithmRSA_OAEPGCrypt.cpp:
1317         (WebCore::gcryptEncrypt):
1318         (WebCore::CryptoAlgorithmRSA_OAEP::platformEncrypt):
1319         * crypto/gcrypt/CryptoAlgorithmRSA_PSSGCrypt.cpp:
1320         (WebCore::gcryptSign):
1321         (WebCore::CryptoAlgorithmRSA_PSS::platformSign):
1322         * crypto/gcrypt/GCryptUtilities.h:
1323         (WebCore::mpiZeroPrefixedData):
1324
1325 2018-06-24  Simon Fraser  <simon.fraser@apple.com>
1326
1327         Fix the DUMP_NODE_STATISTICS code so that it compiles
1328         https://bugs.webkit.org/show_bug.cgi?id=186982
1329
1330         Reviewed by Anders Carlsson.
1331
1332         The DUMP_NODE_STATISTICS code had bitrotted. ENTITY_NODE no longer exists.
1333         liveNodeSet needs to be a static function with a NeverDestroyed<>.
1334
1335         * dom/Node.cpp:
1336         (WebCore::Node::dumpStatistics):
1337         (WebCore::Node::trackForDebugging):
1338         (WebCore::Node::~Node):
1339
1340 2018-06-24  Simon Fraser  <simon.fraser@apple.com>
1341
1342         Fix the composition underline to be transformed by -apple-color-filter
1343         https://bugs.webkit.org/show_bug.cgi?id=186983
1344         rdar://problem/40515558
1345
1346         Reviewed by Zalan Bujtas.
1347         
1348         Transform the composition underline color with the color filter.
1349
1350         Test: css3/color-filters/color-filter-composition-underline-color.html
1351
1352         * rendering/InlineTextBox.cpp:
1353         (WebCore::InlineTextBox::paintCompositionUnderline const):
1354
1355 2018-06-23  Zalan Bujtas  <zalan@apple.com>
1356
1357         [Mail] Use the Mail Viewer width as the base for resolving horizontal viewport units
1358         https://bugs.webkit.org/show_bug.cgi?id=186585
1359         <rdar://problem/30685325>
1360
1361         Reviewed by Tim Horton.
1362
1363         Use the existing "override viewport size for viewport units" mechanism to compute the preferred
1364         viewport unit values for the Mail Viewer html content. 
1365
1366         Test: fast/dynamic/mail-autosize-viewport-unit.html
1367
1368         * page/FrameView.cpp:
1369         (WebCore::FrameView::FrameView):
1370         (WebCore::FrameView::enableAutoSizeMode):
1371         (WebCore::FrameView::clearViewportSizeOverrideForCSSViewportUnits):
1372         (WebCore::FrameView::setViewportSizeForCSSViewportUnits):
1373         (WebCore::FrameView::overrideViewportSizeForCSSViewportUnits):
1374         (WebCore::FrameView::viewportSizeForCSSViewportUnits const):
1375         * page/FrameView.h:
1376
1377 2018-06-23  Zalan Bujtas  <zalan@apple.com>
1378
1379         [LFC] Relatively positioned renderer needs offsetting for validation
1380         https://bugs.webkit.org/show_bug.cgi?id=186959
1381
1382         Reviewed by Antti Koivisto.
1383
1384         * layout/FormattingContextGeometry.cpp:
1385         (WebCore::Layout::FormattingContext::Geometry::outOfFlowNonReplacedVerticalGeometry):
1386         * layout/Verification.cpp:
1387         (WebCore::Layout::outputMismatchingBoxInformationIfNeeded):
1388
1389 2018-06-23  Zalan Bujtas  <zalan@apple.com>
1390
1391         [LFC] Miscellaneous fixes to fix simple absolute positioning.
1392         https://bugs.webkit.org/show_bug.cgi?id=186962
1393
1394         Reviewed by Antti Koivisto.
1395
1396         1. Collect out-of-flow formatting root descendants.
1397         2. Remove invalid and redundant ASSERTs
1398           invalid because the assertion is missing border, padding etc.
1399           redundant becasue we assert on geometry correctness in validateGeometryConstraintsAfterLayout.  
1400
1401         * layout/FormattingContext.cpp:
1402         (WebCore::Layout::FormattingContext::computeOutOfFlowHorizontalGeometry const):
1403         (WebCore::Layout::FormattingContext::computeOutOfFlowVerticalGeometry const):
1404         (WebCore::Layout::FormattingContext::layoutOutOfFlowDescendants const):
1405         * layout/layouttree/LayoutContainer.cpp:
1406         (WebCore::Layout::Container::addOutOfFlowDescendant):
1407         (WebCore::Layout::Container::setOutOfFlowDescendants): Deleted.
1408         * layout/layouttree/LayoutContainer.h:
1409         * layout/layouttree/LayoutTreeBuilder.cpp:
1410         (WebCore::Layout::TreeBuilder::createSubTree):
1411
1412 2018-06-23  Yusuke Suzuki  <utatane.tea@gmail.com>
1413
1414         [WTF] Add user-defined literal for ASCIILiteral
1415         https://bugs.webkit.org/show_bug.cgi?id=186839
1416
1417         Reviewed by Darin Adler.
1418
1419         No behavior change.
1420
1421         * Modules/applicationmanifest/ApplicationManifestParser.cpp:
1422         (WebCore::ApplicationManifestParser::parseManifest):
1423         (WebCore::ApplicationManifestParser::logManifestPropertyNotAString):
1424         (WebCore::ApplicationManifestParser::logManifestPropertyInvalidURL):
1425         (WebCore::ApplicationManifestParser::logDeveloperWarning):
1426         (WebCore::ApplicationManifestParser::parseStartURL):
1427         (WebCore::ApplicationManifestParser::parseDisplay):
1428         (WebCore::ApplicationManifestParser::parseName):
1429         (WebCore::ApplicationManifestParser::parseDescription):
1430         (WebCore::ApplicationManifestParser::parseShortName):
1431         (WebCore::ApplicationManifestParser::parseScope):
1432         * Modules/beacon/NavigatorBeacon.cpp:
1433         (WebCore::NavigatorBeacon::logError):
1434         (WebCore::NavigatorBeacon::sendBeacon):
1435         * Modules/cache/DOMCache.cpp:
1436         (WebCore::DOMCache::requestFromInfo):
1437         (WebCore::DOMCache::addAll):
1438         (WebCore::DOMCache::put):
1439         * Modules/cache/DOMCacheEngine.cpp:
1440         (WebCore::DOMCacheEngine::errorToException):
1441         * Modules/credentialmanagement/BasicCredential.cpp:
1442         (WebCore::BasicCredential::type const):
1443         * Modules/credentialmanagement/CredentialsContainer.cpp:
1444         (WebCore::CredentialsContainer::get):
1445         (WebCore::CredentialsContainer::store):
1446         (WebCore::CredentialsContainer::isCreate):
1447         (WebCore::CredentialsContainer::preventSilentAccess const):
1448         * Modules/entriesapi/DOMFileSystem.cpp:
1449         (WebCore::DOMFileSystem::root):
1450         (WebCore::validatePathIsExpectedType):
1451         (WebCore::resolveRelativeVirtualPath):
1452         (WebCore::DOMFileSystem::getEntry):
1453         * Modules/entriesapi/FileSystemDirectoryEntry.cpp:
1454         (WebCore::FileSystemDirectoryEntry::getEntry):
1455         * Modules/entriesapi/FileSystemDirectoryReader.cpp:
1456         (WebCore::FileSystemDirectoryReader::readEntries):
1457         * Modules/fetch/FetchBody.cpp:
1458         (WebCore::FetchBody::consumeAsStream):
1459         * Modules/fetch/FetchBodyConsumer.cpp:
1460         (WebCore::FetchBodyConsumer::loadingFailed):
1461         * Modules/fetch/FetchBodyOwner.cpp:
1462         (WebCore::FetchBodyOwner::arrayBuffer):
1463         (WebCore::FetchBodyOwner::blob):
1464         (WebCore::FetchBodyOwner::consumeOnceLoadingFinished):
1465         (WebCore::FetchBodyOwner::formData):
1466         (WebCore::FetchBodyOwner::json):
1467         (WebCore::FetchBodyOwner::text):
1468         (WebCore::FetchBodyOwner::blobLoadingFailed):
1469         (WebCore::FetchBodyOwner::consumeBodyAsStream):
1470         * Modules/fetch/FetchHeaders.cpp:
1471         (WebCore::canWriteHeader):
1472         * Modules/fetch/FetchLoader.cpp:
1473         (WebCore::FetchLoader::startLoadingBlobURL):
1474         (WebCore::FetchLoader::start):
1475         * Modules/fetch/FetchRequest.cpp:
1476         (WebCore::setMethod):
1477         (WebCore::computeReferrer):
1478         (WebCore::buildOptions):
1479         (WebCore::FetchRequest::initializeOptions):
1480         (WebCore::FetchRequest::initializeWith):
1481         (WebCore::FetchRequest::setBody):
1482         (WebCore::FetchRequest::referrer const):
1483         (WebCore::FetchRequest::clone):
1484         * Modules/fetch/FetchResponse.cpp:
1485         (WebCore::FetchResponse::create):
1486         (WebCore::FetchResponse::redirect):
1487         (WebCore::FetchResponse::clone):
1488         (WebCore::FetchResponse::BodyLoader::didFail):
1489         * Modules/fetch/FetchResponse.h:
1490         * Modules/geolocation/GeoNotifier.cpp:
1491         (WebCore::GeoNotifier::timerFired):
1492         * Modules/geolocation/Geolocation.cpp:
1493         (WebCore::Geolocation::startRequest):
1494         (WebCore::Geolocation::requestUsesCachedPosition):
1495         (WebCore::Geolocation::makeCachedPositionCallbacks):
1496         (WebCore::Geolocation::setIsAllowed):
1497         (WebCore::Geolocation::cancelRequests):
1498         (WebCore::Geolocation::handlePendingPermissionNotifiers):
1499         * Modules/indexeddb/IDBCursor.cpp:
1500         (WebCore::IDBCursor::update):
1501         (WebCore::IDBCursor::advance):
1502         (WebCore::IDBCursor::continuePrimaryKey):
1503         (WebCore::IDBCursor::continueFunction):
1504         (WebCore::IDBCursor::deleteFunction):
1505         * Modules/indexeddb/IDBDatabase.cpp:
1506         (WebCore::IDBDatabase::createObjectStore):
1507         (WebCore::IDBDatabase::transaction):
1508         (WebCore::IDBDatabase::deleteObjectStore):
1509         * Modules/indexeddb/IDBFactory.cpp:
1510         (WebCore::IDBFactory::open):
1511         (WebCore::IDBFactory::openInternal):
1512         (WebCore::IDBFactory::deleteDatabase):
1513         (WebCore::IDBFactory::cmp):
1514         * Modules/indexeddb/IDBIndex.cpp:
1515         (WebCore::IDBIndex::setName):
1516         (WebCore::IDBIndex::openCursor):
1517         (WebCore::IDBIndex::openKeyCursor):
1518         (WebCore::IDBIndex::count):
1519         (WebCore::IDBIndex::doCount):
1520         (WebCore::IDBIndex::get):
1521         (WebCore::IDBIndex::doGet):
1522         (WebCore::IDBIndex::getKey):
1523         (WebCore::IDBIndex::doGetKey):
1524         (WebCore::IDBIndex::getAll):
1525         (WebCore::IDBIndex::getAllKeys):
1526         * Modules/indexeddb/IDBKeyData.cpp:
1527         (WebCore::IDBKeyData::loggingString const):
1528         * Modules/indexeddb/IDBKeyRangeData.cpp:
1529         (WebCore::IDBKeyRangeData::loggingString const):
1530         * Modules/indexeddb/IDBObjectStore.cpp:
1531         (WebCore::IDBObjectStore::setName):
1532         (WebCore::IDBObjectStore::openCursor):
1533         (WebCore::IDBObjectStore::openKeyCursor):
1534         (WebCore::IDBObjectStore::get):
1535         (WebCore::IDBObjectStore::getKey):
1536         (WebCore::IDBObjectStore::putOrAdd):
1537         (WebCore::IDBObjectStore::doDelete):
1538         (WebCore::IDBObjectStore::deleteFunction):
1539         (WebCore::IDBObjectStore::clear):
1540         (WebCore::IDBObjectStore::createIndex):
1541         (WebCore::IDBObjectStore::index):
1542         (WebCore::IDBObjectStore::deleteIndex):
1543         (WebCore::IDBObjectStore::count):
1544         (WebCore::IDBObjectStore::doCount):
1545         (WebCore::IDBObjectStore::getAll):
1546         (WebCore::IDBObjectStore::getAllKeys):
1547         * Modules/indexeddb/IDBRequest.cpp:
1548         (WebCore::IDBRequest::result const):
1549         (WebCore:: const):
1550         (WebCore::IDBRequest::uncaughtExceptionInEventHandler):
1551         * Modules/indexeddb/IDBTransaction.cpp:
1552         (WebCore::IDBTransaction::objectStore):
1553         (WebCore::IDBTransaction::abort):
1554         (WebCore::IDBTransaction::putOrAddOnServer):
1555         * Modules/indexeddb/server/IDBServer.cpp:
1556         (WebCore::IDBServer::IDBServer::performGetAllDatabaseNames):
1557         * Modules/indexeddb/server/MemoryIDBBackingStore.cpp:
1558         (WebCore::IDBServer::MemoryIDBBackingStore::deleteRange):
1559         (WebCore::IDBServer::MemoryIDBBackingStore::addRecord):
1560         (WebCore::IDBServer::MemoryIDBBackingStore::getRecord):
1561         (WebCore::IDBServer::MemoryIDBBackingStore::getAllRecords):
1562         (WebCore::IDBServer::MemoryIDBBackingStore::getIndexRecord):
1563         (WebCore::IDBServer::MemoryIDBBackingStore::getCount):
1564         (WebCore::IDBServer::MemoryIDBBackingStore::openCursor):
1565         (WebCore::IDBServer::MemoryIDBBackingStore::iterateCursor):
1566         * Modules/indexeddb/server/SQLiteIDBBackingStore.cpp:
1567         (WebCore::IDBServer::SQLiteIDBBackingStore::createAndPopulateInitialDatabaseInfo):
1568         (WebCore::IDBServer::SQLiteIDBBackingStore::extractExistingDatabaseInfo):
1569         (WebCore::IDBServer::SQLiteIDBBackingStore::databaseNameFromEncodedFilename):
1570         (WebCore::IDBServer::SQLiteIDBBackingStore::getOrEstablishDatabaseInfo):
1571         (WebCore::IDBServer::SQLiteIDBBackingStore::beginTransaction):
1572         (WebCore::IDBServer::SQLiteIDBBackingStore::abortTransaction):
1573         (WebCore::IDBServer::SQLiteIDBBackingStore::commitTransaction):
1574         (WebCore::IDBServer::SQLiteIDBBackingStore::createObjectStore):
1575         (WebCore::IDBServer::SQLiteIDBBackingStore::deleteObjectStore):
1576         (WebCore::IDBServer::SQLiteIDBBackingStore::renameObjectStore):
1577         (WebCore::IDBServer::SQLiteIDBBackingStore::clearObjectStore):
1578         (WebCore::IDBServer::SQLiteIDBBackingStore::createIndex):
1579         (WebCore::IDBServer::SQLiteIDBBackingStore::uncheckedHasIndexRecord):
1580         (WebCore::IDBServer::SQLiteIDBBackingStore::uncheckedPutIndexRecord):
1581         (WebCore::IDBServer::SQLiteIDBBackingStore::deleteIndex):
1582         (WebCore::IDBServer::SQLiteIDBBackingStore::renameIndex):
1583         (WebCore::IDBServer::SQLiteIDBBackingStore::keyExistsInObjectStore):
1584         (WebCore::IDBServer::SQLiteIDBBackingStore::deleteUnusedBlobFileRecords):
1585         (WebCore::IDBServer::SQLiteIDBBackingStore::deleteRecord):
1586         (WebCore::IDBServer::SQLiteIDBBackingStore::deleteRange):
1587         (WebCore::IDBServer::SQLiteIDBBackingStore::updateAllIndexesForAddRecord):
1588         (WebCore::IDBServer::SQLiteIDBBackingStore::addRecord):
1589         (WebCore::IDBServer::SQLiteIDBBackingStore::getBlobRecordsForObjectStoreRecord):
1590         (WebCore::IDBServer::SQLiteIDBBackingStore::getRecord):
1591         (WebCore::IDBServer::SQLiteIDBBackingStore::getAllObjectStoreRecords):
1592         (WebCore::IDBServer::SQLiteIDBBackingStore::getAllIndexRecords):
1593         (WebCore::IDBServer::SQLiteIDBBackingStore::getIndexRecord):
1594         (WebCore::IDBServer::SQLiteIDBBackingStore::uncheckedGetIndexRecordForOneKey):
1595         (WebCore::IDBServer::SQLiteIDBBackingStore::getCount):
1596         (WebCore::IDBServer::SQLiteIDBBackingStore::uncheckedGetKeyGeneratorValue):
1597         (WebCore::IDBServer::SQLiteIDBBackingStore::uncheckedSetKeyGeneratorValue):
1598         (WebCore::IDBServer::SQLiteIDBBackingStore::generateKeyNumber):
1599         (WebCore::IDBServer::SQLiteIDBBackingStore::revertGeneratedKeyNumber):
1600         (WebCore::IDBServer::SQLiteIDBBackingStore::maybeUpdateKeyGeneratorNumber):
1601         (WebCore::IDBServer::SQLiteIDBBackingStore::openCursor):
1602         (WebCore::IDBServer::SQLiteIDBBackingStore::iterateCursor):
1603         (WebCore::IDBServer::SQLiteIDBBackingStore::deleteBackingStore):
1604         * Modules/indexeddb/server/SQLiteIDBTransaction.cpp:
1605         (WebCore::IDBServer::SQLiteIDBTransaction::begin):
1606         (WebCore::IDBServer::SQLiteIDBTransaction::commit):
1607         (WebCore::IDBServer::SQLiteIDBTransaction::abort):
1608         * Modules/indexeddb/server/UniqueIDBDatabase.cpp:
1609         (WebCore::IDBServer::UniqueIDBDatabase::deleteObjectStore):
1610         (WebCore::IDBServer::UniqueIDBDatabase::renameObjectStore):
1611         (WebCore::IDBServer::UniqueIDBDatabase::deleteIndex):
1612         (WebCore::IDBServer::UniqueIDBDatabase::renameIndex):
1613         (WebCore::IDBServer::UniqueIDBDatabase::performPutOrAdd):
1614         (WebCore::IDBServer::UniqueIDBDatabase::commitTransaction):
1615         (WebCore::IDBServer::UniqueIDBDatabase::abortTransaction):
1616         * Modules/indexeddb/shared/IDBError.h:
1617         (WebCore::IDBError::userDeleteError):
1618         * Modules/indexeddb/shared/IDBTransactionInfo.cpp:
1619         (WebCore::IDBTransactionInfo::loggingString const):
1620         * Modules/mediastream/CanvasCaptureMediaStreamTrack.cpp:
1621         (WebCore::CanvasCaptureMediaStreamTrack::Source::canvasChanged):
1622         * Modules/mediastream/PeerConnectionBackend.cpp:
1623         (WebCore::PeerConnectionBackend::addIceCandidate):
1624         * Modules/mediastream/UserMediaRequest.cpp:
1625         (WebCore::UserMediaRequest::deny):
1626         * Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:
1627         (WebCore::LibWebRTCMediaEndpoint::doSetLocalDescription):
1628         * Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.cpp:
1629         (WebCore::LibWebRTCPeerConnectionBackend::doAddIceCandidate):
1630         * Modules/paymentrequest/PaymentRequest.cpp:
1631         (WebCore::checkAndCanonicalizeTotal):
1632         (WebCore::PaymentRequest::create):
1633         * Modules/quota/DOMWindowQuota.cpp:
1634         (WebCore::DOMWindowQuota::webkitStorageInfo const):
1635         * Modules/webaudio/AudioBufferSourceNode.cpp:
1636         (WebCore::AudioBufferSourceNode::looping):
1637         (WebCore::AudioBufferSourceNode::setLooping):
1638         * Modules/webaudio/AudioNode.cpp:
1639         (WebCore::AudioNode::channelCountMode):
1640         (WebCore::AudioNode::channelInterpretation):
1641         * Modules/webaudio/MediaStreamAudioSource.cpp:
1642         (WebCore::MediaStreamAudioSource::MediaStreamAudioSource):
1643         * Modules/webauthn/AuthenticatorManager.cpp:
1644         (WebCore::AuthenticatorManagerInternal::produceClientDataJson):
1645         (WebCore::AuthenticatorManagerInternal::initTimeoutTimer):
1646         (WebCore::AuthenticatorManager::create const):
1647         (WebCore::AuthenticatorManager::discoverFromExternalSource const):
1648         (WebCore::AuthenticatorManager::isUserVerifyingPlatformAuthenticatorAvailable const):
1649         * Modules/webauthn/cocoa/LocalAuthenticator.mm:
1650         (WebCore::LocalAuthenticator::makeCredential):
1651         (WebCore::LocalAuthenticator::getAssertion):
1652         * Modules/webdatabase/DatabaseTracker.cpp:
1653         (WebCore::DatabaseTracker::usage):
1654         * Modules/websockets/WebSocket.cpp:
1655         (WebCore::WebSocket::connect):
1656         (WebCore::WebSocket::close):
1657         (WebCore::WebSocket::binaryType const):
1658         * Modules/websockets/WebSocketHandshake.cpp:
1659         (WebCore::WebSocketHandshake::readStatusLine):
1660         (WebCore::WebSocketHandshake::readHTTPHeaders):
1661         (WebCore::WebSocketHandshake::checkResponseHeaders):
1662         * Modules/webvr/VRDisplay.cpp:
1663         (WebCore::VRDisplay::requestPresent):
1664         (WebCore::VRDisplay::exitPresent):
1665         * accessibility/AccessibilityObject.cpp:
1666         (WebCore::AccessibilityObject::defaultLiveRegionStatusForRole):
1667         (WebCore::AccessibilityObject::invalidStatus const):
1668         * accessibility/AccessibilityRenderObject.cpp:
1669         (WebCore::AccessibilityRenderObject::textUnderElement const):
1670         * bindings/js/JSCustomElementInterface.cpp:
1671         (WebCore::constructCustomElementSynchronously):
1672         * bindings/js/JSCustomElementRegistryCustom.cpp:
1673         (WebCore::getCustomElementCallback):
1674         (WebCore::validateCustomElementNameAndThrowIfNeeded):
1675         (WebCore::JSCustomElementRegistry::define):
1676         * bindings/js/JSCustomXPathNSResolver.cpp:
1677         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
1678         * bindings/js/JSDOMConstructorBase.cpp:
1679         (WebCore::callThrowTypeError):
1680         * bindings/js/JSDOMConstructorBase.h:
1681         (WebCore::JSDOMConstructorBase::className):
1682         * bindings/js/JSDOMConstructorNotConstructable.h:
1683         (WebCore::JSDOMConstructorNotConstructable::callThrowTypeError):
1684         * bindings/js/JSDOMExceptionHandling.cpp:
1685         (WebCore::createDOMException):
1686         (WebCore::throwSequenceTypeError):
1687         (WebCore::throwNonFiniteTypeError):
1688         * bindings/js/JSDOMIterator.h:
1689         (WebCore::iteratorForEach):
1690         (WebCore::IteratorTraits>::next):
1691         * bindings/js/JSDOMWindowBase.cpp:
1692         (WebCore::isResponseCorrect):
1693         (WebCore::handleResponseOnStreamingAction):
1694         (WebCore::JSDOMWindowBase::compileStreaming):
1695         (WebCore::JSDOMWindowBase::instantiateStreaming):
1696         * bindings/js/JSDOMWindowCustom.cpp:
1697         (WebCore::JSDOMWindow::preventExtensions):
1698         (WebCore::JSDOMWindow::toStringName):
1699         * bindings/js/JSHTMLElementCustom.cpp:
1700         (WebCore::constructJSHTMLElement):
1701         * bindings/js/JSLocationCustom.cpp:
1702         (WebCore::JSLocation::preventExtensions):
1703         (WebCore::JSLocation::toStringName):
1704         * bindings/js/JSReadableStreamPrivateConstructors.cpp:
1705         (WebCore::constructJSReadableStreamDefaultController):
1706         (WebCore::constructJSReadableByteStreamController):
1707         (WebCore::constructJSReadableStreamBYOBRequest):
1708         * bindings/js/JSRemoteDOMWindowCustom.cpp:
1709         (WebCore::JSRemoteDOMWindow::preventExtensions):
1710         (WebCore::JSRemoteDOMWindow::toStringName):
1711         * bindings/js/ReadableStreamDefaultController.cpp:
1712         (WebCore::ReadableStreamDefaultController::invoke):
1713         * bindings/js/ScriptModuleLoader.cpp:
1714         (WebCore::resolveModuleSpecifier):
1715         (WebCore::ScriptModuleLoader::resolve):
1716         (WebCore::ScriptModuleLoader::fetch):
1717         (WebCore::ScriptModuleLoader::evaluate):
1718         (WebCore::ScriptModuleLoader::importModule):
1719         (WebCore::ScriptModuleLoader::notifyFinished):
1720         * bindings/js/SerializedScriptValue.cpp:
1721         (WebCore::maybeThrowExceptionIfSerializationFailed):
1722         * bindings/js/WorkerScriptController.cpp:
1723         (WebCore::WorkerScriptController::evaluate):
1724         * bindings/scripts/CodeGeneratorJS.pm:
1725         (GenerateDefaultValue):
1726         (GenerateConstructorHelperMethods):
1727         (GenerateCallTracer):
1728         * bindings/scripts/test/JS/JSInterfaceName.cpp:
1729         (WebCore::JSInterfaceNameConstructor::initializeProperties):
1730         * bindings/scripts/test/JS/JSMapLike.cpp:
1731         (WebCore::JSMapLikeConstructor::initializeProperties):
1732         * bindings/scripts/test/JS/JSReadOnlyMapLike.cpp:
1733         (WebCore::JSReadOnlyMapLikeConstructor::initializeProperties):
1734         * bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
1735         (WebCore::JSTestActiveDOMObjectConstructor::initializeProperties):
1736         * bindings/scripts/test/JS/JSTestCEReactions.cpp:
1737         (WebCore::JSTestCEReactionsConstructor::initializeProperties):
1738         * bindings/scripts/test/JS/JSTestCEReactionsStringifier.cpp:
1739         (WebCore::JSTestCEReactionsStringifierConstructor::initializeProperties):
1740         * bindings/scripts/test/JS/JSTestCallTracer.cpp:
1741         (WebCore::JSTestCallTracerConstructor::initializeProperties):
1742         (WebCore::jsTestCallTracerTestAttributeInterfaceGetter):
1743         (WebCore::setJSTestCallTracerTestAttributeInterfaceSetter):
1744         (WebCore::jsTestCallTracerTestAttributeSpecifiedGetter):
1745         (WebCore::setJSTestCallTracerTestAttributeSpecifiedSetter):
1746         (WebCore::jsTestCallTracerTestAttributeWithVariantGetter):
1747         (WebCore::setJSTestCallTracerTestAttributeWithVariantSetter):
1748         (WebCore::jsTestCallTracerPrototypeFunctionTestOperationInterfaceBody):
1749         (WebCore::jsTestCallTracerPrototypeFunctionTestOperationSpecifiedBody):
1750         (WebCore::jsTestCallTracerPrototypeFunctionTestOperationWithArgumentsBody):
1751         (WebCore::jsTestCallTracerPrototypeFunctionTestOperationWithNullableArgumentBody):
1752         (WebCore::jsTestCallTracerPrototypeFunctionTestOperationWithVariantArgumentBody):
1753         (WebCore::jsTestCallTracerPrototypeFunctionTestOperationWithNullableVariantArgumentBody):
1754         (WebCore::jsTestCallTracerPrototypeFunctionTestOperationWithOptionalVariantArgumentBody):
1755         (WebCore::jsTestCallTracerPrototypeFunctionTestOperationWithDefaultVariantArgumentBody):
1756         * bindings/scripts/test/JS/JSTestCallbackInterface.cpp:
1757         (WebCore::JSTestCallbackInterfaceConstructor::initializeProperties):
1758         * bindings/scripts/test/JS/JSTestClassWithJSBuiltinConstructor.cpp:
1759         (WebCore::JSTestClassWithJSBuiltinConstructorConstructor::initializeProperties):
1760         * bindings/scripts/test/JS/JSTestCustomConstructorWithNoInterfaceObject.cpp:
1761         (WebCore::JSTestCustomConstructorWithNoInterfaceObjectConstructor::initializeProperties):
1762         * bindings/scripts/test/JS/JSTestDOMJIT.cpp:
1763         (WebCore::JSTestDOMJITConstructor::initializeProperties):
1764         * bindings/scripts/test/JS/JSTestEnabledBySetting.cpp:
1765         (WebCore::JSTestEnabledBySettingConstructor::initializeProperties):
1766         * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
1767         (WebCore::JSTestEventConstructorConstructor::initializeProperties):
1768         * bindings/scripts/test/JS/JSTestEventTarget.cpp:
1769         (WebCore::JSTestEventTargetConstructor::initializeProperties):
1770         * bindings/scripts/test/JS/JSTestException.cpp:
1771         (WebCore::JSTestExceptionConstructor::initializeProperties):
1772         * bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
1773         (WebCore::JSTestGenerateIsReachableConstructor::initializeProperties):
1774         * bindings/scripts/test/JS/JSTestGlobalObject.cpp:
1775         (WebCore::JSTestGlobalObjectConstructor::initializeProperties):
1776         * bindings/scripts/test/JS/JSTestIndexedSetterNoIdentifier.cpp:
1777         (WebCore::JSTestIndexedSetterNoIdentifierConstructor::initializeProperties):
1778         * bindings/scripts/test/JS/JSTestIndexedSetterThrowingException.cpp:
1779         (WebCore::JSTestIndexedSetterThrowingExceptionConstructor::initializeProperties):
1780         * bindings/scripts/test/JS/JSTestIndexedSetterWithIdentifier.cpp:
1781         (WebCore::JSTestIndexedSetterWithIdentifierConstructor::initializeProperties):
1782         * bindings/scripts/test/JS/JSTestInterface.cpp:
1783         (WebCore::JSTestInterfaceConstructor::construct):
1784         (WebCore::JSTestInterfaceConstructor::initializeProperties):
1785         * bindings/scripts/test/JS/JSTestInterfaceLeadingUnderscore.cpp:
1786         (WebCore::JSTestInterfaceLeadingUnderscoreConstructor::initializeProperties):
1787         * bindings/scripts/test/JS/JSTestIterable.cpp:
1788         (WebCore::JSTestIterableConstructor::initializeProperties):
1789         * bindings/scripts/test/JS/JSTestJSBuiltinConstructor.cpp:
1790         (WebCore::JSTestJSBuiltinConstructorConstructor::initializeProperties):
1791         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
1792         (WebCore::JSTestMediaQueryListListenerConstructor::initializeProperties):
1793         * bindings/scripts/test/JS/JSTestNamedAndIndexedSetterNoIdentifier.cpp:
1794         (WebCore::JSTestNamedAndIndexedSetterNoIdentifierConstructor::initializeProperties):
1795         * bindings/scripts/test/JS/JSTestNamedAndIndexedSetterThrowingException.cpp:
1796         (WebCore::JSTestNamedAndIndexedSetterThrowingExceptionConstructor::initializeProperties):
1797         * bindings/scripts/test/JS/JSTestNamedAndIndexedSetterWithIdentifier.cpp:
1798         (WebCore::JSTestNamedAndIndexedSetterWithIdentifierConstructor::initializeProperties):
1799         * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
1800         (WebCore::JSTestNamedConstructorConstructor::initializeProperties):
1801         (WebCore::JSTestNamedConstructorNamedConstructor::construct):
1802         (WebCore::JSTestNamedConstructorNamedConstructor::initializeProperties):
1803         * bindings/scripts/test/JS/JSTestNamedDeleterNoIdentifier.cpp:
1804         (WebCore::JSTestNamedDeleterNoIdentifierConstructor::initializeProperties):
1805         * bindings/scripts/test/JS/JSTestNamedDeleterThrowingException.cpp:
1806         (WebCore::JSTestNamedDeleterThrowingExceptionConstructor::initializeProperties):
1807         * bindings/scripts/test/JS/JSTestNamedDeleterWithIdentifier.cpp:
1808         (WebCore::JSTestNamedDeleterWithIdentifierConstructor::initializeProperties):
1809         * bindings/scripts/test/JS/JSTestNamedDeleterWithIndexedGetter.cpp:
1810         (WebCore::JSTestNamedDeleterWithIndexedGetterConstructor::initializeProperties):
1811         * bindings/scripts/test/JS/JSTestNamedGetterCallWith.cpp:
1812         (WebCore::JSTestNamedGetterCallWithConstructor::initializeProperties):
1813         * bindings/scripts/test/JS/JSTestNamedGetterNoIdentifier.cpp:
1814         (WebCore::JSTestNamedGetterNoIdentifierConstructor::initializeProperties):
1815         * bindings/scripts/test/JS/JSTestNamedGetterWithIdentifier.cpp:
1816         (WebCore::JSTestNamedGetterWithIdentifierConstructor::initializeProperties):
1817         * bindings/scripts/test/JS/JSTestNamedSetterNoIdentifier.cpp:
1818         (WebCore::JSTestNamedSetterNoIdentifierConstructor::initializeProperties):
1819         * bindings/scripts/test/JS/JSTestNamedSetterThrowingException.cpp:
1820         (WebCore::JSTestNamedSetterThrowingExceptionConstructor::initializeProperties):
1821         * bindings/scripts/test/JS/JSTestNamedSetterWithIdentifier.cpp:
1822         (WebCore::JSTestNamedSetterWithIdentifierConstructor::initializeProperties):
1823         * bindings/scripts/test/JS/JSTestNamedSetterWithIndexedGetter.cpp:
1824         (WebCore::JSTestNamedSetterWithIndexedGetterConstructor::initializeProperties):
1825         * bindings/scripts/test/JS/JSTestNamedSetterWithIndexedGetterAndSetter.cpp:
1826         (WebCore::JSTestNamedSetterWithIndexedGetterAndSetterConstructor::initializeProperties):
1827         * bindings/scripts/test/JS/JSTestNamedSetterWithOverrideBuiltins.cpp:
1828         (WebCore::JSTestNamedSetterWithOverrideBuiltinsConstructor::initializeProperties):
1829         * bindings/scripts/test/JS/JSTestNamedSetterWithUnforgableProperties.cpp:
1830         (WebCore::JSTestNamedSetterWithUnforgablePropertiesConstructor::initializeProperties):
1831         * bindings/scripts/test/JS/JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltins.cpp:
1832         (WebCore::JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltinsConstructor::initializeProperties):
1833         * bindings/scripts/test/JS/JSTestNode.cpp:
1834         (WebCore::JSTestNodeConstructor::initializeProperties):
1835         * bindings/scripts/test/JS/JSTestObj.cpp:
1836         (WebCore::convertDictionary<TestObj::Dictionary>):
1837         (WebCore::JSTestObjConstructor::initializeProperties):
1838         (WebCore::jsTestObjPrototypeFunctionMethodWithOptionalStringAndDefaultValueBody):
1839         * bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
1840         (WebCore::JSTestOverloadedConstructorsConstructor::initializeProperties):
1841         * bindings/scripts/test/JS/JSTestOverloadedConstructorsWithSequence.cpp:
1842         (WebCore::JSTestOverloadedConstructorsWithSequenceConstructor::initializeProperties):
1843         * bindings/scripts/test/JS/JSTestOverrideBuiltins.cpp:
1844         (WebCore::JSTestOverrideBuiltinsConstructor::initializeProperties):
1845         * bindings/scripts/test/JS/JSTestPluginInterface.cpp:
1846         (WebCore::JSTestPluginInterfaceConstructor::initializeProperties):
1847         * bindings/scripts/test/JS/JSTestPromiseRejectionEvent.cpp:
1848         (WebCore::JSTestPromiseRejectionEventConstructor::initializeProperties):
1849         * bindings/scripts/test/JS/JSTestSerialization.cpp:
1850         (WebCore::JSTestSerializationConstructor::initializeProperties):
1851         * bindings/scripts/test/JS/JSTestSerializationIndirectInheritance.cpp:
1852         (WebCore::JSTestSerializationIndirectInheritanceConstructor::initializeProperties):
1853         * bindings/scripts/test/JS/JSTestSerializationInherit.cpp:
1854         (WebCore::JSTestSerializationInheritConstructor::initializeProperties):
1855         * bindings/scripts/test/JS/JSTestSerializationInheritFinal.cpp:
1856         (WebCore::JSTestSerializationInheritFinalConstructor::initializeProperties):
1857         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
1858         (WebCore::JSTestSerializedScriptValueInterfaceConstructor::initializeProperties):
1859         * bindings/scripts/test/JS/JSTestStringifier.cpp:
1860         (WebCore::JSTestStringifierConstructor::initializeProperties):
1861         * bindings/scripts/test/JS/JSTestStringifierAnonymousOperation.cpp:
1862         (WebCore::JSTestStringifierAnonymousOperationConstructor::initializeProperties):
1863         * bindings/scripts/test/JS/JSTestStringifierNamedOperation.cpp:
1864         (WebCore::JSTestStringifierNamedOperationConstructor::initializeProperties):
1865         * bindings/scripts/test/JS/JSTestStringifierOperationImplementedAs.cpp:
1866         (WebCore::JSTestStringifierOperationImplementedAsConstructor::initializeProperties):
1867         * bindings/scripts/test/JS/JSTestStringifierOperationNamedToString.cpp:
1868         (WebCore::JSTestStringifierOperationNamedToStringConstructor::initializeProperties):
1869         * bindings/scripts/test/JS/JSTestStringifierReadOnlyAttribute.cpp:
1870         (WebCore::JSTestStringifierReadOnlyAttributeConstructor::initializeProperties):
1871         * bindings/scripts/test/JS/JSTestStringifierReadWriteAttribute.cpp:
1872         (WebCore::JSTestStringifierReadWriteAttributeConstructor::initializeProperties):
1873         * bindings/scripts/test/JS/JSTestTypedefs.cpp:
1874         (WebCore::JSTestTypedefsConstructor::initializeProperties):
1875         * bridge/c/c_instance.cpp:
1876         (JSC::Bindings::CInstance::invokeMethod):
1877         (JSC::Bindings::CInstance::invokeDefaultMethod):
1878         (JSC::Bindings::CInstance::invokeConstruct):
1879         (JSC::Bindings::CInstance::stringValue const):
1880         (JSC::Bindings::CInstance::toJSPrimitive const):
1881         * bridge/objc/objc_instance.mm:
1882         (ObjcInstance::invokeMethod):
1883         * bridge/objc/objc_runtime.mm:
1884         (JSC::Bindings::ObjcArray::setValueAt const):
1885         * contentextensions/ContentExtensionsBackend.cpp:
1886         (WebCore::ContentExtensions::ContentExtensionsBackend::processContentExtensionRulesForLoad):
1887         * crypto/SubtleCrypto.cpp:
1888         (WebCore::rejectWithException):
1889         (WebCore::SubtleCrypto::encrypt):
1890         (WebCore::SubtleCrypto::decrypt):
1891         (WebCore::SubtleCrypto::sign):
1892         (WebCore::SubtleCrypto::verify):
1893         (WebCore::SubtleCrypto::deriveKey):
1894         (WebCore::SubtleCrypto::deriveBits):
1895         (WebCore::SubtleCrypto::exportKey):
1896         (WebCore::SubtleCrypto::wrapKey):
1897         (WebCore::SubtleCrypto::unwrapKey):
1898         * crypto/keys/CryptoKeyEC.cpp:
1899         (WebCore::CryptoKeyEC::algorithm const):
1900         * css/CSSInheritedValue.cpp:
1901         (WebCore::CSSInheritedValue::customCSSText const):
1902         * css/CSSInitialValue.cpp:
1903         (WebCore::CSSInitialValue::customCSSText const):
1904         * css/CSSKeyframesRule.cpp:
1905         (WebCore::CSSKeyframesRule::insertRule):
1906         * css/CSSRevertValue.cpp:
1907         (WebCore::CSSRevertValue::customCSSText const):
1908         * css/CSSStyleSheet.h:
1909         * css/CSSUnsetValue.cpp:
1910         (WebCore::CSSUnsetValue::customCSSText const):
1911         * css/CSSValueList.cpp:
1912         (WebCore::CSSValueList::customCSSText const):
1913         * css/DOMMatrixReadOnly.cpp:
1914         (WebCore::DOMMatrixReadOnly::validateAndFixup):
1915         (WebCore::DOMMatrixReadOnly::toFloat32Array const):
1916         (WebCore::DOMMatrixReadOnly::toFloat64Array const):
1917         (WebCore::DOMMatrixReadOnly::toString const):
1918         * css/DeprecatedCSSOMValueList.cpp:
1919         (WebCore::DeprecatedCSSOMValueList::cssText const):
1920         * css/FontFace.cpp:
1921         (WebCore::FontFace::create):
1922         (WebCore::FontFace::unicodeRange const):
1923         (WebCore::FontFace::featureSettings const):
1924         * css/MediaQuery.cpp:
1925         (WebCore::MediaQuery::serialize const):
1926         * css/PropertySetCSSStyleDeclaration.cpp:
1927         (WebCore::PropertySetCSSStyleDeclaration::getPropertyPriority):
1928         * css/WebKitCSSMatrix.cpp:
1929         (WebCore::WebKitCSSMatrix::toString const):
1930         * css/parser/MediaQueryParser.cpp:
1931         (WebCore::MediaQueryParser::commitMediaQuery):
1932         * dom/CDATASection.cpp:
1933         (WebCore::CDATASection::nodeName const):
1934         * dom/Comment.cpp:
1935         (WebCore::Comment::nodeName const):
1936         * dom/DOMException.cpp:
1937         (WebCore::DOMException::description const):
1938         (WebCore::DOMException::create):
1939         * dom/DOMException.h:
1940         (WebCore::DOMException::name):
1941         (WebCore::DOMException::message):
1942         * dom/DOMImplementation.cpp:
1943         (WebCore::DOMImplementation::createHTMLDocument):
1944         * dom/DataTransfer.cpp:
1945         (WebCore::DataTransfer::DataTransfer):
1946         (WebCore::DataTransfer::types const):
1947         (WebCore::DataTransfer::createForInputEvent):
1948         (WebCore::DataTransfer::dropEffect const):
1949         (WebCore::DataTransfer::effectAllowed const):
1950         * dom/DataTransferItem.cpp:
1951         (WebCore::DataTransferItem::kind const):
1952         * dom/Document.cpp:
1953         (WebCore::Document::suggestedMIMEType const):
1954         (WebCore::Document::contentType const):
1955         (WebCore::Document::nodeName const):
1956         (WebCore::Document::writeln):
1957         (WebCore::Document::canNavigate):
1958         (WebCore::Document::designMode const):
1959         (WebCore::Document::requestFullScreenForElement):
1960         * dom/DocumentFragment.cpp:
1961         (WebCore::DocumentFragment::nodeName const):
1962         * dom/InlineStyleSheetOwner.cpp:
1963         (WebCore::InlineStyleSheetOwner::createSheet):
1964         * dom/MouseEvent.cpp:
1965         (WebCore::MouseEvent::initMouseEventQuirk):
1966         * dom/ScriptElement.cpp:
1967         (WebCore::ScriptElement::requestModuleScript):
1968         * dom/ScriptElementCachedScriptFetcher.cpp:
1969         (WebCore::ScriptElementCachedScriptFetcher::requestModuleScript const):
1970         * dom/ScriptExecutionContext.cpp:
1971         (WebCore::ScriptExecutionContext::dispatchErrorEvent):
1972         * dom/ScriptedAnimationController.cpp:
1973         (WebCore::throttlingReasonsToString):
1974         * dom/Text.cpp:
1975         (WebCore::Text::nodeName const):
1976         * dom/TextEncoder.cpp:
1977         (WebCore::TextEncoder::encoding const):
1978         * dom/Traversal.cpp:
1979         (WebCore::NodeIteratorBase::acceptNode):
1980         * editing/EditCommand.cpp:
1981         (WebCore::inputTypeNameForEditingAction):
1982         * editing/Editing.cpp:
1983         (WebCore::createTabSpanElement):
1984         * editing/Editor.cpp:
1985         (WebCore::createDataTransferForClipboardEvent):
1986         * editing/EditorCommand.cpp:
1987         (WebCore::executeInsertBacktab):
1988         (WebCore::executeInsertLineBreak):
1989         (WebCore::executeInsertNewline):
1990         (WebCore::executeInsertTab):
1991         (WebCore::executeJustifyCenter):
1992         (WebCore::executeJustifyFull):
1993         (WebCore::executeJustifyLeft):
1994         (WebCore::executeJustifyRight):
1995         (WebCore::executeStrikethrough):
1996         (WebCore::executeSubscript):
1997         (WebCore::executeSuperscript):
1998         (WebCore::executeToggleBold):
1999         (WebCore::executeToggleItalic):
2000         (WebCore::executeUnderline):
2001         (WebCore::executeUnscript):
2002         (WebCore::stateBold):
2003         (WebCore::stateItalic):
2004         (WebCore::stateStrikethrough):
2005         (WebCore::stateSubscript):
2006         (WebCore::stateSuperscript):
2007         (WebCore::stateUnderline):
2008         (WebCore::stateJustifyCenter):
2009         (WebCore::stateJustifyFull):
2010         (WebCore::stateJustifyLeft):
2011         (WebCore::stateJustifyRight):
2012         (WebCore::Editor::Command::value const):
2013         * editing/SmartReplace.cpp:
2014         (WebCore::getSmartSet):
2015         * fileapi/FileCocoa.mm:
2016         (WebCore::File::computeNameAndContentTypeForReplacedFile):
2017         * html/BaseCheckableInputType.cpp:
2018         (WebCore::BaseCheckableInputType::saveFormControlState const):
2019         * html/BaseChooserOnlyDateAndTimeInputType.cpp:
2020         (WebCore::BaseChooserOnlyDateAndTimeInputType::updateInnerTextValue):
2021         * html/ColorInputType.cpp:
2022         (WebCore::ColorInputType::fallbackValue const):
2023         * html/DOMFormData.cpp:
2024         (WebCore::DOMFormData::createFileEntry):
2025         * html/FTPDirectoryDocument.cpp:
2026         (WebCore::processFilesizeString):
2027         (WebCore::FTPDirectoryDocumentParser::loadDocumentTemplate):
2028         * html/HTMLAnchorElement.cpp:
2029         (WebCore::HTMLAnchorElement::relList const):
2030         (WebCore::HTMLAnchorElement::isSystemPreviewLink const):
2031         * html/HTMLAppletElement.cpp:
2032         (WebCore::HTMLAppletElement::HTMLAppletElement):
2033         (WebCore::HTMLAppletElement::updateWidget):
2034         * html/HTMLCanvasElement.cpp:
2035         (WebCore::toEncodingMimeType):
2036         (WebCore::HTMLCanvasElement::toDataURL):
2037         (WebCore::HTMLCanvasElement::captureStream):
2038         * html/HTMLElement.cpp:
2039         (WebCore::HTMLElement::contentEditable const):
2040         * html/HTMLFormControlElement.cpp:
2041         (WebCore::shouldAutofocus):
2042         * html/HTMLHtmlElement.cpp:
2043         (WebCore::HTMLHtmlElement::insertedByParser):
2044         * html/HTMLKeygenElement.cpp:
2045         (WebCore::HTMLKeygenElement::keytype const):
2046         * html/HTMLMediaElement.cpp:
2047         (WebCore::HTMLMediaElement::canPlayType const):
2048         (WebCore::stringForNetworkState):
2049         (WebCore::HTMLMediaElement::preload const):
2050         (WebCore::HTMLMediaElement::ensureMediaControlsInjectedScript):
2051         * html/HTMLObjectElement.cpp:
2052         (WebCore::mapDataParamToSrc):
2053         * html/HTMLPlugInElement.cpp:
2054         (WebCore::HTMLPlugInElement::setReplacement):
2055         * html/ImageData.cpp:
2056         (WebCore::ImageData::create):
2057         * html/ImageDocument.cpp:
2058         (WebCore::ImageDocument::createDocumentStructure):
2059         * html/ImageInputType.cpp:
2060         (WebCore::ImageInputType::appendFormData const):
2061         * html/PluginDocument.cpp:
2062         (WebCore::PluginDocumentParser::createDocumentStructure):
2063         * html/canvas/WebGL2RenderingContext.cpp:
2064         (WebCore::WebGL2RenderingContext::getExtension):
2065         (WebCore::WebGL2RenderingContext::getSupportedExtensions):
2066         (WebCore::WebGL2RenderingContext::getParameter):
2067         * html/canvas/WebGLCompressedTextureASTC.cpp:
2068         (WebCore::WebGLCompressedTextureASTC::WebGLCompressedTextureASTC):
2069         (WebCore::WebGLCompressedTextureASTC::getSupportedProfiles):
2070         (WebCore::WebGLCompressedTextureASTC::supported):
2071         (WebCore::m_isLDRSupported): Deleted.
2072         * html/canvas/WebGLRenderingContext.cpp:
2073         (WebCore::WebGLRenderingContext::getExtension):
2074         (WebCore::WebGLRenderingContext::getSupportedExtensions):
2075         (WebCore::WebGLRenderingContext::getParameter):
2076         * html/canvas/WebGLRenderingContextBase.cpp:
2077         (WebCore::WebGLRenderingContextBase::create):
2078         (WebCore::WebGLRenderingContextBase::enableSupportedExtension):
2079         * html/canvas/WebGLRenderingContextBase.h:
2080         * html/canvas/WebGPUEnums.cpp:
2081         (WebCore::web3DCompareFunctionName):
2082         * html/parser/HTMLParserIdioms.cpp:
2083         (WebCore::parseCORSSettingsAttribute):
2084         * html/parser/HTMLPreloadScanner.cpp:
2085         (WebCore::TokenPreloadScanner::initiatorFor):
2086         * html/parser/HTMLResourcePreloader.cpp:
2087         (WebCore::PreloadRequest::resourceRequest):
2088         * html/parser/HTMLTreeBuilder.cpp:
2089         (WebCore::HTMLTreeBuilder::insertPhoneNumberLink):
2090         * html/track/DataCue.cpp:
2091         (WebCore::DataCue::toJSONString const):
2092         * html/track/InbandGenericTextTrack.cpp:
2093         (WebCore::InbandGenericTextTrack::updateCueFromCueData):
2094         * html/track/TextTrackCue.cpp:
2095         (WebCore::TextTrackCue::toJSON const):
2096         * html/track/TextTrackCueGeneric.cpp:
2097         (WebCore::TextTrackCueGeneric::toJSONString const):
2098         * html/track/TrackBase.cpp:
2099         (WebCore::TrackBase::setLanguage):
2100         * html/track/VTTCue.cpp:
2101         (WebCore::VTTCue::toJSON const):
2102         * inspector/CommandLineAPIModule.cpp:
2103         (WebCore::CommandLineAPIModule::CommandLineAPIModule):
2104         * inspector/InspectorCanvas.cpp:
2105         (WebCore::InspectorCanvas::getCanvasContentAsDataURL):
2106         (WebCore::InspectorCanvas::indexForData):
2107         (WebCore::InspectorCanvas::buildInitialState):
2108         (WebCore::InspectorCanvas::buildArrayForCanvasGradient):
2109         (WebCore::InspectorCanvas::buildArrayForCanvasPattern):
2110         * inspector/InspectorFrontendClient.h:
2111         (WebCore::InspectorFrontendClient::debuggableType):
2112         * inspector/InspectorFrontendClientLocal.cpp:
2113         (WebCore::InspectorFrontendClientLocal::openInNewTab):
2114         * inspector/InspectorFrontendHost.cpp:
2115         (WebCore::InspectorFrontendHost::userInterfaceLayoutDirection):
2116         (WebCore::InspectorFrontendHost::platform):
2117         (WebCore::InspectorFrontendHost::port):
2118         * inspector/InspectorOverlay.cpp:
2119         (WebCore::InspectorOverlay::setIndicating):
2120         (WebCore::InspectorOverlay::drawPaintRects):
2121         (WebCore::InspectorOverlay::drawRulers):
2122         (WebCore::appendPathSegment):
2123         * inspector/InspectorStyleSheet.h:
2124         (WebCore::InspectorCSSId::InspectorCSSId):
2125         * inspector/TimelineRecordFactory.cpp:
2126         (WebCore::TimelineRecordFactory::createGenericRecord):
2127         (WebCore::TimelineRecordFactory::createFunctionCallData):
2128         (WebCore::TimelineRecordFactory::createConsoleProfileData):
2129         (WebCore::TimelineRecordFactory::createProbeSampleData):
2130         (WebCore::TimelineRecordFactory::createEventDispatchData):
2131         (WebCore::TimelineRecordFactory::createGenericTimerData):
2132         (WebCore::TimelineRecordFactory::createTimerInstallData):
2133         (WebCore::TimelineRecordFactory::createEvaluateScriptData):
2134         (WebCore::TimelineRecordFactory::createTimeStampData):
2135         (WebCore::TimelineRecordFactory::createAnimationFrameData):
2136         (WebCore::TimelineRecordFactory::createPaintData):
2137         (WebCore::TimelineRecordFactory::appendLayoutRoot):
2138         * inspector/WebInjectedScriptHost.cpp:
2139         (WebCore::WebInjectedScriptHost::subtype):
2140         (WebCore::jsStringForPaymentRequestState):
2141         (WebCore::WebInjectedScriptHost::getInternalProperties):
2142         * inspector/agents/InspectorApplicationCacheAgent.cpp:
2143         (WebCore::InspectorApplicationCacheAgent::InspectorApplicationCacheAgent):
2144         * inspector/agents/InspectorCSSAgent.cpp:
2145         (WebCore::InspectorCSSAgent::InspectorCSSAgent):
2146         (WebCore::InspectorCSSAgent::getMatchedStylesForNode):
2147         (WebCore::InspectorCSSAgent::createStyleSheet):
2148         (WebCore::InspectorCSSAgent::addRule):
2149         (WebCore::InspectorCSSAgent::elementForId):
2150         (WebCore::InspectorCSSAgent::assertStyleSheetForId):
2151         * inspector/agents/InspectorCanvasAgent.cpp:
2152         (WebCore::InspectorCanvasAgent::InspectorCanvasAgent):
2153         (WebCore::InspectorCanvasAgent::requestNode):
2154         (WebCore::InspectorCanvasAgent::requestContent):
2155         (WebCore::InspectorCanvasAgent::resolveCanvasContext):
2156         (WebCore::InspectorCanvasAgent::startRecording):
2157         (WebCore::InspectorCanvasAgent::stopRecording):
2158         (WebCore::InspectorCanvasAgent::requestShaderSource):
2159         (WebCore::InspectorCanvasAgent::updateShader):
2160         (WebCore::InspectorCanvasAgent::setShaderProgramDisabled):
2161         (WebCore::InspectorCanvasAgent::setShaderProgramHighlighted):
2162         (WebCore::InspectorCanvasAgent::assertInspectorCanvas):
2163         (WebCore::InspectorCanvasAgent::assertInspectorProgram):
2164         * inspector/agents/InspectorDOMAgent.cpp:
2165         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
2166         (WebCore::InspectorDOMAgent::assertNode):
2167         (WebCore::InspectorDOMAgent::assertDocument):
2168         (WebCore::InspectorDOMAgent::assertElement):
2169         (WebCore::InspectorDOMAgent::assertEditableNode):
2170         (WebCore::InspectorDOMAgent::assertEditableElement):
2171         (WebCore::InspectorDOMAgent::getDocument):
2172         (WebCore::InspectorDOMAgent::pushNodeToFrontend):
2173         (WebCore::InspectorDOMAgent::requestChildNodes):
2174         (WebCore::InspectorDOMAgent::querySelector):
2175         (WebCore::InspectorDOMAgent::querySelectorAll):
2176         (WebCore::InspectorDOMAgent::releaseBackendNodeIds):
2177         (WebCore::InspectorDOMAgent::setAttributesAsText):
2178         (WebCore::InspectorDOMAgent::removeNode):
2179         (WebCore::InspectorDOMAgent::setOuterHTML):
2180         (WebCore::InspectorDOMAgent::insertAdjacentHTML):
2181         (WebCore::InspectorDOMAgent::setNodeValue):
2182         (WebCore::InspectorDOMAgent::setEventListenerDisabled):
2183         (WebCore::InspectorDOMAgent::performSearch):
2184         (WebCore::InspectorDOMAgent::getSearchResults):
2185         (WebCore::InspectorDOMAgent::highlightConfigFromInspectorObject):
2186         (WebCore::InspectorDOMAgent::highlightQuad):
2187         (WebCore::InspectorDOMAgent::highlightSelector):
2188         (WebCore::InspectorDOMAgent::highlightNode):
2189         (WebCore::InspectorDOMAgent::highlightNodeList):
2190         (WebCore::InspectorDOMAgent::moveTo):
2191         (WebCore::InspectorDOMAgent::focus):
2192         (WebCore::InspectorDOMAgent::setInspectedNode):
2193         (WebCore::InspectorDOMAgent::resolveNode):
2194         (WebCore::InspectorDOMAgent::pushNodeByPathToFrontend):
2195         (WebCore::InspectorDOMAgent::pushNodeByBackendIdToFrontend):
2196         * inspector/agents/InspectorDOMDebuggerAgent.cpp:
2197         (WebCore::InspectorDOMDebuggerAgent::InspectorDOMDebuggerAgent):
2198         (WebCore::InspectorDOMDebuggerAgent::setBreakpoint):
2199         (WebCore::InspectorDOMDebuggerAgent::removeBreakpoint):
2200         (WebCore::domTypeName):
2201         (WebCore::InspectorDOMDebuggerAgent::pauseOnNativeEventIfNeeded):
2202         * inspector/agents/InspectorDOMStorageAgent.cpp:
2203         (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
2204         (WebCore::InspectorDOMStorageAgent::getDOMStorageItems):
2205         (WebCore::InspectorDOMStorageAgent::setDOMStorageItem):
2206         (WebCore::InspectorDOMStorageAgent::removeDOMStorageItem):
2207         (WebCore::InspectorDOMStorageAgent::findStorageArea):
2208         * inspector/agents/InspectorDatabaseAgent.cpp:
2209         (WebCore::InspectorDatabaseAgent::InspectorDatabaseAgent):
2210         (WebCore::InspectorDatabaseAgent::getDatabaseTableNames):
2211         * inspector/agents/InspectorIndexedDBAgent.cpp:
2212         (WebCore::Inspector::idbKeyRangeFromKeyRange):
2213         (WebCore::InspectorIndexedDBAgent::InspectorIndexedDBAgent):
2214         (WebCore::InspectorIndexedDBAgent::requestData):
2215         * inspector/agents/InspectorLayerTreeAgent.cpp:
2216         (WebCore::InspectorLayerTreeAgent::InspectorLayerTreeAgent):
2217         (WebCore::InspectorLayerTreeAgent::layersForNode):
2218         (WebCore::InspectorLayerTreeAgent::reasonsForCompositingLayer):
2219         * inspector/agents/InspectorMemoryAgent.cpp:
2220         (WebCore::InspectorMemoryAgent::InspectorMemoryAgent):
2221         * inspector/agents/InspectorNetworkAgent.cpp:
2222         (WebCore::InspectorNetworkAgent::InspectorNetworkAgent):
2223         (WebCore::InspectorNetworkAgent::getResponseBody):
2224         (WebCore::InspectorNetworkAgent::loadResource):
2225         (WebCore::InspectorNetworkAgent::resolveWebSocket):
2226         (WebCore::InspectorNetworkAgent::createTextDecoder):
2227         (WebCore::InspectorNetworkAgent::searchInRequest):
2228         * inspector/agents/InspectorPageAgent.cpp:
2229         (WebCore::InspectorPageAgent::resourceContent):
2230         (WebCore::InspectorPageAgent::InspectorPageAgent):
2231         (WebCore::InspectorPageAgent::navigate):
2232         (WebCore::InspectorPageAgent::assertFrame):
2233         (WebCore::InspectorPageAgent::assertDocumentLoader):
2234         (WebCore::InspectorPageAgent::snapshotNode):
2235         (WebCore::InspectorPageAgent::snapshotRect):
2236         (WebCore::InspectorPageAgent::archive):
2237         * inspector/agents/InspectorTimelineAgent.cpp:
2238         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
2239         (WebCore::InspectorTimelineAgent::setInstruments):
2240         (WebCore::InspectorTimelineAgent::startFromConsole):
2241         (WebCore::InspectorTimelineAgent::stopFromConsole):
2242         (WebCore::InspectorTimelineAgent::didCompleteRecordEntry):
2243         * inspector/agents/InspectorWorkerAgent.cpp:
2244         (WebCore::InspectorWorkerAgent::InspectorWorkerAgent):
2245         (WebCore::InspectorWorkerAgent::initialized):
2246         (WebCore::InspectorWorkerAgent::sendMessageToWorker):
2247         * inspector/agents/WebConsoleAgent.cpp:
2248         (WebCore::WebConsoleAgent::setLoggingChannelLevel):
2249         * inspector/agents/page/PageDebuggerAgent.cpp:
2250         (WebCore::PageDebuggerAgent::injectedScriptForEval):
2251         * inspector/agents/page/PageNetworkAgent.cpp:
2252         (WebCore::PageNetworkAgent::scriptExecutionContext):
2253         * inspector/agents/page/PageRuntimeAgent.cpp:
2254         (WebCore::PageRuntimeAgent::injectedScriptForEval):
2255         * inspector/agents/worker/ServiceWorkerAgent.cpp:
2256         (WebCore::ServiceWorkerAgent::ServiceWorkerAgent):
2257         * inspector/agents/worker/WorkerDebuggerAgent.cpp:
2258         (WebCore::WorkerDebuggerAgent::injectedScriptForEval):
2259         * inspector/agents/worker/WorkerRuntimeAgent.cpp:
2260         (WebCore::WorkerRuntimeAgent::injectedScriptForEval):
2261         * loader/ContentFilter.cpp:
2262         (WebCore::ContentFilter::handleProvisionalLoadFailure):
2263         * loader/CrossOriginAccessControl.cpp:
2264         (WebCore::passesAccessControlCheck):
2265         (WebCore::validatePreflightResponse):
2266         * loader/CrossOriginPreflightChecker.cpp:
2267         (WebCore::CrossOriginPreflightChecker::notifyFinished):
2268         (WebCore::CrossOriginPreflightChecker::doPreflight):
2269         * loader/DocumentLoader.cpp:
2270         (WebCore::isRemoteWebArchive):
2271         (WebCore::DocumentLoader::startIconLoading):
2272         * loader/DocumentThreadableLoader.cpp:
2273         (WebCore::DocumentThreadableLoader::reportRedirectionWithBadScheme):
2274         (WebCore::DocumentThreadableLoader::reportContentSecurityPolicyError):
2275         (WebCore::DocumentThreadableLoader::reportCrossOriginResourceSharingError):
2276         (WebCore::DocumentThreadableLoader::reportIntegrityMetadataError):
2277         * loader/FormSubmission.cpp:
2278         (WebCore::FormSubmission::Attributes::parseEncodingType):
2279         * loader/FormSubmission.h:
2280         (WebCore::FormSubmission::Attributes::methodString):
2281         * loader/FrameLoader.cpp:
2282         (WebCore::FrameLoader::initForSynthesizedDocument):
2283         (WebCore::FrameLoader::loadURLIntoChildFrame):
2284         (WebCore::FrameLoader::defaultSubstituteDataForURL):
2285         (WebCore::FrameLoader::addHTTPUpgradeInsecureRequestsIfNeeded):
2286         (WebCore::FrameLoader::dispatchBeforeUnloadEvent):
2287         * loader/LinkLoader.cpp:
2288         (WebCore::LinkLoader::preconnectIfNeeded):
2289         * loader/NavigationScheduler.cpp:
2290         (WebCore::NavigationScheduler::scheduleLocationChange):
2291         * loader/PingLoader.cpp:
2292         (WebCore::PingLoader::sendViolationReport):
2293         * loader/ResourceLoadStatistics.cpp:
2294         (WebCore::ResourceLoadStatistics::primaryDomain):
2295         (WebCore::ResourceLoadStatistics::areDomainsAssociated):
2296         * loader/ResourceLoader.cpp:
2297         (WebCore::ResourceLoader::loadDataURL):
2298         (WebCore::ResourceLoader::didBlockAuthenticationChallenge):
2299         * loader/SubresourceLoader.cpp:
2300         (WebCore::SubresourceLoader::willSendRequestInternal):
2301         (WebCore::SubresourceLoader::checkRedirectionCrossOriginAccessControl):
2302         * loader/ThreadableLoader.cpp:
2303         (WebCore::ThreadableLoader::logError):
2304         * loader/appcache/ApplicationCacheGroup.cpp:
2305         (WebCore::ApplicationCacheGroup::abort):
2306         (WebCore::ApplicationCacheGroup::didFinishLoadingEntry):
2307         (WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
2308         (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
2309         * loader/appcache/ApplicationCacheHost.cpp:
2310         (WebCore::ApplicationCacheHost::createFileURL):
2311         * loader/appcache/ManifestParser.cpp:
2312         (WebCore::parseManifest):
2313         * loader/archive/ArchiveFactory.cpp:
2314         (WebCore::createArchiveMIMETypesMap):
2315         * loader/cache/CachedResource.cpp:
2316         (WebCore::CachedResource::load):
2317         * loader/cache/CachedResourceLoader.cpp:
2318         (WebCore::CachedResourceLoader::canRequest):
2319         (WebCore::CachedResourceLoader::requestResource):
2320         * loader/cache/CachedResourceRequest.cpp:
2321         (WebCore::acceptHeaderValueFromType):
2322         (WebCore::CachedResourceRequest::updateAcceptEncodingHeader):
2323         * loader/cache/CachedScript.cpp:
2324         (WebCore::CachedScript::CachedScript):
2325         * loader/cache/MemoryCache.cpp:
2326         (WebCore::MemoryCache::getOriginsWithCache):
2327         * loader/soup/ResourceLoaderSoup.cpp:
2328         (WebCore::ResourceLoader::loadGResource):
2329         * page/DOMSelection.cpp:
2330         (WebCore::DOMSelection::type const):
2331         * page/DOMWindow.cpp:
2332         (WebCore::DOMWindow::close):
2333         (WebCore::DOMWindow::addEventListener):
2334         (WebCore::DOMWindow::createWindow):
2335         * page/DebugPageOverlays.cpp:
2336         (WebCore::touchEventRegionColors):
2337         * page/DiagnosticLoggingKeys.cpp:
2338         (WebCore::DiagnosticLoggingKeys::mediaLoadedKey):
2339         (WebCore::DiagnosticLoggingKeys::mediaLoadingFailedKey):
2340         (WebCore::DiagnosticLoggingKeys::memoryCacheEntryDecisionKey):
2341         (WebCore::DiagnosticLoggingKeys::memoryCacheUsageKey):
2342         (WebCore::DiagnosticLoggingKeys::missingValidatorFieldsKey):
2343         (WebCore::DiagnosticLoggingKeys::pluginLoadedKey):
2344         (WebCore::DiagnosticLoggingKeys::pluginLoadingFailedKey):
2345         (WebCore::DiagnosticLoggingKeys::postPageBackgroundingCPUUsageKey):
2346         (WebCore::DiagnosticLoggingKeys::postPageBackgroundingMemoryUsageKey):
2347         (WebCore::DiagnosticLoggingKeys::pageHandlesWebGLContextLossKey):
2348         (WebCore::DiagnosticLoggingKeys::postPageLoadCPUUsageKey):
2349         (WebCore::DiagnosticLoggingKeys::postPageLoadMemoryUsageKey):
2350         (WebCore::DiagnosticLoggingKeys::provisionalLoadKey):
2351         (WebCore::DiagnosticLoggingKeys::pageContainsPluginKey):
2352         (WebCore::DiagnosticLoggingKeys::pageContainsAtLeastOnePluginKey):
2353         (WebCore::DiagnosticLoggingKeys::pageContainsMediaEngineKey):
2354         (WebCore::DiagnosticLoggingKeys::pageContainsAtLeastOneMediaEngineKey):
2355         (WebCore::DiagnosticLoggingKeys::pageLoadedKey):
2356         (WebCore::DiagnosticLoggingKeys::playedKey):
2357         (WebCore::DiagnosticLoggingKeys::engineFailedToLoadKey):
2358         (WebCore::DiagnosticLoggingKeys::entryRightlyNotWarmedUpKey):
2359         (WebCore::DiagnosticLoggingKeys::entryWronglyNotWarmedUpKey):
2360         (WebCore::DiagnosticLoggingKeys::navigationKey):
2361         (WebCore::DiagnosticLoggingKeys::needsRevalidationKey):
2362         (WebCore::DiagnosticLoggingKeys::networkCacheKey):
2363         (WebCore::DiagnosticLoggingKeys::networkCacheFailureReasonKey):
2364         (WebCore::DiagnosticLoggingKeys::networkCacheUnusedReasonKey):
2365         (WebCore::DiagnosticLoggingKeys::networkCacheReuseFailureKey):
2366         (WebCore::DiagnosticLoggingKeys::networkKey):
2367         (WebCore::DiagnosticLoggingKeys::networkProcessCrashedKey):
2368         (WebCore::DiagnosticLoggingKeys::neverSeenBeforeKey):
2369         (WebCore::DiagnosticLoggingKeys::noKey):
2370         (WebCore::DiagnosticLoggingKeys::noCacheKey):
2371         (WebCore::DiagnosticLoggingKeys::noStoreKey):
2372         (WebCore::DiagnosticLoggingKeys::nonVisibleStateKey):
2373         (WebCore::DiagnosticLoggingKeys::notInMemoryCacheKey):
2374         (WebCore::DiagnosticLoggingKeys::pageCacheKey):
2375         (WebCore::DiagnosticLoggingKeys::pageCacheFailureKey):
2376         (WebCore::DiagnosticLoggingKeys::noDocumentLoaderKey):
2377         (WebCore::DiagnosticLoggingKeys::noLongerInCacheKey):
2378         (WebCore::DiagnosticLoggingKeys::otherKey):
2379         (WebCore::DiagnosticLoggingKeys::mainDocumentErrorKey):
2380         (WebCore::DiagnosticLoggingKeys::mainResourceKey):
2381         (WebCore::DiagnosticLoggingKeys::isErrorPageKey):
2382         (WebCore::DiagnosticLoggingKeys::isExpiredKey):
2383         (WebCore::DiagnosticLoggingKeys::isReloadIgnoringCacheDataKey):
2384         (WebCore::DiagnosticLoggingKeys::loadingKey):
2385         (WebCore::DiagnosticLoggingKeys::hasPluginsKey):
2386         (WebCore::DiagnosticLoggingKeys::httpsNoStoreKey):
2387         (WebCore::DiagnosticLoggingKeys::imageKey):
2388         (WebCore::DiagnosticLoggingKeys::inMemoryCacheKey):
2389         (WebCore::DiagnosticLoggingKeys::inactiveKey):
2390         (WebCore::DiagnosticLoggingKeys::internalErrorKey):
2391         (WebCore::DiagnosticLoggingKeys::invalidSessionIDKey):
2392         (WebCore::DiagnosticLoggingKeys::isAttachmentKey):
2393         (WebCore::DiagnosticLoggingKeys::isConditionalRequestKey):
2394         (WebCore::DiagnosticLoggingKeys::isDisabledKey):
2395         (WebCore::DiagnosticLoggingKeys::noCurrentHistoryItemKey):
2396         (WebCore::DiagnosticLoggingKeys::quirkRedirectComingKey):
2397         (WebCore::DiagnosticLoggingKeys::rawKey):
2398         (WebCore::DiagnosticLoggingKeys::redirectKey):
2399         (WebCore::DiagnosticLoggingKeys::isLoadingKey):
2400         (WebCore::DiagnosticLoggingKeys::documentLoaderStoppingKey):
2401         (WebCore::DiagnosticLoggingKeys::domainCausingCrashKey):
2402         (WebCore::DiagnosticLoggingKeys::domainCausingEnergyDrainKey):
2403         (WebCore::DiagnosticLoggingKeys::domainCausingJetsamKey):
2404         (WebCore::DiagnosticLoggingKeys::simulatedPageCrashKey):
2405         (WebCore::DiagnosticLoggingKeys::exceededActiveMemoryLimitKey):
2406         (WebCore::DiagnosticLoggingKeys::exceededInactiveMemoryLimitKey):
2407         (WebCore::DiagnosticLoggingKeys::exceededBackgroundCPULimitKey):
2408         (WebCore::DiagnosticLoggingKeys::domainVisitedKey):
2409         (WebCore::DiagnosticLoggingKeys::cannotSuspendActiveDOMObjectsKey):
2410         (WebCore::DiagnosticLoggingKeys::cpuUsageKey):
2411         (WebCore::DiagnosticLoggingKeys::createSharedBufferFailedKey):
2412         (WebCore::DiagnosticLoggingKeys::activeInForegroundTabKey):
2413         (WebCore::DiagnosticLoggingKeys::activeInBackgroundTabOnlyKey):
2414         (WebCore::DiagnosticLoggingKeys::applicationCacheKey):
2415         (WebCore::DiagnosticLoggingKeys::applicationManifestKey):
2416         (WebCore::DiagnosticLoggingKeys::audioKey):
2417         (WebCore::DiagnosticLoggingKeys::backNavigationDeltaKey):
2418         (WebCore::DiagnosticLoggingKeys::canCacheKey):
2419         (WebCore::DiagnosticLoggingKeys::cacheControlNoStoreKey):
2420         (WebCore::DiagnosticLoggingKeys::cachedResourceRevalidationKey):
2421         (WebCore::DiagnosticLoggingKeys::cachedResourceRevalidationReasonKey):
2422         (WebCore::DiagnosticLoggingKeys::deniedByClientKey):
2423         (WebCore::DiagnosticLoggingKeys::deviceMotionKey):
2424         (WebCore::DiagnosticLoggingKeys::deviceOrientationKey):
2425         (WebCore::DiagnosticLoggingKeys::diskCacheKey):
2426         (WebCore::DiagnosticLoggingKeys::diskCacheAfterValidationKey):
2427         (WebCore::DiagnosticLoggingKeys::reloadKey):
2428         (WebCore::DiagnosticLoggingKeys::replaceKey):
2429         (WebCore::DiagnosticLoggingKeys::retrievalRequestKey):
2430         (WebCore::DiagnosticLoggingKeys::resourceLoadedKey):
2431         (WebCore::DiagnosticLoggingKeys::resourceResponseSourceKey):
2432         (WebCore::DiagnosticLoggingKeys::retrievalKey):
2433         (WebCore::DiagnosticLoggingKeys::revalidatingKey):
2434         (WebCore::DiagnosticLoggingKeys::reloadFromOriginKey):
2435         (WebCore::DiagnosticLoggingKeys::reloadRevalidatingExpiredKey):
2436         (WebCore::DiagnosticLoggingKeys::sameLoadKey):
2437         (WebCore::DiagnosticLoggingKeys::scriptKey):
2438         (WebCore::DiagnosticLoggingKeys::serviceWorkerKey):
2439         (WebCore::DiagnosticLoggingKeys::streamingMedia):
2440         (WebCore::DiagnosticLoggingKeys::styleSheetKey):
2441         (WebCore::DiagnosticLoggingKeys::successfulSpeculativeWarmupWithRevalidationKey):
2442         (WebCore::DiagnosticLoggingKeys::successfulSpeculativeWarmupWithoutRevalidationKey):
2443         (WebCore::DiagnosticLoggingKeys::svgDocumentKey):
2444         (WebCore::DiagnosticLoggingKeys::synchronousMessageFailedKey):
2445         (WebCore::DiagnosticLoggingKeys::telemetryPageLoadKey):
2446         (WebCore::DiagnosticLoggingKeys::timedOutKey):
2447         (WebCore::DiagnosticLoggingKeys::canceledLessThan2SecondsKey):
2448         (WebCore::DiagnosticLoggingKeys::canceledLessThan5SecondsKey):
2449         (WebCore::DiagnosticLoggingKeys::canceledLessThan20SecondsKey):
2450         (WebCore::DiagnosticLoggingKeys::canceledMoreThan20SecondsKey):
2451         (WebCore::DiagnosticLoggingKeys::failedLessThan2SecondsKey):
2452         (WebCore::DiagnosticLoggingKeys::failedLessThan5SecondsKey):
2453         (WebCore::DiagnosticLoggingKeys::failedLessThan20SecondsKey):
2454         (WebCore::DiagnosticLoggingKeys::failedMoreThan20SecondsKey):
2455         (WebCore::DiagnosticLoggingKeys::occurredKey):
2456         (WebCore::DiagnosticLoggingKeys::succeededLessThan2SecondsKey):
2457         (WebCore::DiagnosticLoggingKeys::succeededLessThan5SecondsKey):
2458         (WebCore::DiagnosticLoggingKeys::succeededLessThan20SecondsKey):
2459         (WebCore::DiagnosticLoggingKeys::succeededMoreThan20SecondsKey):
2460         (WebCore::DiagnosticLoggingKeys::uncacheableStatusCodeKey):
2461         (WebCore::DiagnosticLoggingKeys::underMemoryPressureKey):
2462         (WebCore::DiagnosticLoggingKeys::unknownEntryRequestKey):
2463         (WebCore::DiagnosticLoggingKeys::unlikelyToReuseKey):
2464         (WebCore::DiagnosticLoggingKeys::unsupportedHTTPMethodKey):
2465         (WebCore::DiagnosticLoggingKeys::unsuspendableDOMObjectKey):
2466         (WebCore::DiagnosticLoggingKeys::unusedKey):
2467         (WebCore::DiagnosticLoggingKeys::unusedReasonCredentialSettingsKey):
2468         (WebCore::DiagnosticLoggingKeys::unusedReasonErrorKey):
2469         (WebCore::DiagnosticLoggingKeys::unusedReasonMustRevalidateNoValidatorKey):
2470         (WebCore::DiagnosticLoggingKeys::unusedReasonNoStoreKey):
2471         (WebCore::DiagnosticLoggingKeys::unusedReasonRedirectChainKey):
2472         (WebCore::DiagnosticLoggingKeys::unusedReasonReloadKey):
2473         (WebCore::DiagnosticLoggingKeys::unusedReasonTypeMismatchKey):
2474         (WebCore::DiagnosticLoggingKeys::usedKey):
2475         (WebCore::DiagnosticLoggingKeys::userZoomActionKey):
2476         (WebCore::DiagnosticLoggingKeys::varyingHeaderMismatchKey):
2477         (WebCore::DiagnosticLoggingKeys::videoKey):
2478         (WebCore::DiagnosticLoggingKeys::visibleNonActiveStateKey):
2479         (WebCore::DiagnosticLoggingKeys::visibleAndActiveStateKey):
2480         (WebCore::DiagnosticLoggingKeys::wastedSpeculativeWarmupWithRevalidationKey):
2481         (WebCore::DiagnosticLoggingKeys::wastedSpeculativeWarmupWithoutRevalidationKey):
2482         (WebCore::DiagnosticLoggingKeys::webViewKey):
2483         (WebCore::DiagnosticLoggingKeys::yesKey):
2484         (WebCore::DiagnosticLoggingKeys::expiredKey):
2485         (WebCore::DiagnosticLoggingKeys::fontKey):
2486         (WebCore::DiagnosticLoggingKeys::prunedDueToMemoryPressureKey):
2487         (WebCore::DiagnosticLoggingKeys::prunedDueToMaxSizeReached):
2488         (WebCore::DiagnosticLoggingKeys::prunedDueToProcessSuspended):
2489         (WebCore::WebCore::DiagnosticLoggingKeys::notHTTPFamilyKey):
2490         (WebCore::WebCore::DiagnosticLoggingKeys::webGLStateKey):
2491         (WebCore::DiagnosticLoggingKeys::memoryUsageToDiagnosticLoggingKey):
2492         (WebCore::DiagnosticLoggingKeys::foregroundCPUUsageToDiagnosticLoggingKey):
2493         (WebCore::DiagnosticLoggingKeys::backgroundCPUUsageToDiagnosticLoggingKey):
2494         (WebCore::DiagnosticLoggingKeys::resourceLoadStatisticsTelemetryKey):
2495         * page/DisabledAdaptations.cpp:
2496         (WebCore::watchAdaptationName):
2497         * page/EventHandler.cpp:
2498         (WebCore::EventHandler::handlePasteGlobalSelection):
2499         (WebCore::convertDragOperationToDropZoneOperation):
2500         * page/EventSource.cpp:
2501         (WebCore::EventSource::EventSource):
2502         * page/History.cpp:
2503         (WebCore::History::stateObjectAdded):
2504         * page/NavigatorBase.cpp:
2505         (WebCore::NavigatorBase::appName):
2506         (WebCore::NavigatorBase::appCodeName):
2507         * page/Page.cpp:
2508         (WebCore::Page::logNavigation):
2509         * page/PageDebuggable.cpp:
2510         (WebCore::PageDebuggable::url const):
2511         * page/PageSerializer.cpp:
2512         (WebCore::PageSerializer::serializeCSSStyleSheet):
2513         * page/PerformanceMark.h:
2514         * page/PerformanceMeasure.h:
2515         * page/PerformanceObserver.cpp:
2516         (WebCore::PerformanceObserver::observe):
2517         * page/PerformanceResourceTiming.cpp:
2518         (WebCore::PerformanceResourceTiming::PerformanceResourceTiming):
2519         * page/PerformanceUserTiming.cpp:
2520         (WebCore::restrictedMarkFunction):
2521         * page/PointerLockController.cpp:
2522         (WebCore::PointerLockController::requestPointerLock):
2523         * page/PrintContext.cpp:
2524         (WebCore::PrintContext::pageProperty):
2525         * page/SecurityOrigin.cpp:
2526         (WebCore::SecurityOrigin::toString const):
2527         * page/SecurityOriginData.cpp:
2528         (WebCore::SecurityOriginData::toString const):
2529         (WebCore::SecurityOriginData::databaseIdentifier const):
2530         * page/cocoa/ResourceUsageOverlayCocoa.mm:
2531         (WebCore::gcTimerString):
2532         * page/csp/ContentSecurityPolicy.cpp:
2533         (WebCore::ContentSecurityPolicy::reportViolation const):
2534         (WebCore::ContentSecurityPolicy::reportUnsupportedDirective const):
2535         * page/linux/ResourceUsageOverlayLinux.cpp:
2536         (WebCore::cpuUsageString):
2537         (WebCore::gcTimerString):
2538         * platform/ContentType.cpp:
2539         (WebCore::ContentType::codecsParameter):
2540         (WebCore::ContentType::profilesParameter):
2541         * platform/Decimal.cpp:
2542         (WebCore::Decimal::toString const):
2543         * platform/MIMETypeRegistry.cpp:
2544         (WebCore::initializeSupportedImageMIMETypes):
2545         (WebCore::typesForCommonExtension):
2546         (WebCore::initializeUnsupportedTextMIMETypes):
2547         (WebCore::MIMETypeRegistry::getNormalizedMIMEType):
2548         * platform/SchemeRegistry.cpp:
2549         (WebCore::SchemeRegistry::canServiceWorkersHandleURLScheme):
2550         * platform/URL.cpp:
2551         (WebCore::mimeTypeFromDataURL):
2552         * platform/UserAgentQuirks.cpp:
2553         (WebCore::UserAgentQuirks::stringForQuirk):
2554         * platform/cocoa/KeyEventCocoa.mm:
2555         (WebCore::keyForCharCode):
2556         * platform/cocoa/NetworkExtensionContentFilter.mm:
2557         (WebCore::NetworkExtensionContentFilter::unblockHandler const):
2558         * platform/cocoa/ParentalControlsContentFilter.mm:
2559         (WebCore::ParentalControlsContentFilter::unblockHandler const):
2560         * platform/cocoa/PasteboardCocoa.mm:
2561         (WebCore::Pasteboard::fileContentState):
2562         * platform/cocoa/RuntimeApplicationChecksCocoa.mm:
2563         (WebCore::MacApplication::isSafari):
2564         (WebCore::MacApplication::isAppleMail):
2565         (WebCore::MacApplication::isIBooks):
2566         (WebCore::MacApplication::isITunes):
2567         (WebCore::MacApplication::isMicrosoftMessenger):
2568         (WebCore::MacApplication::isAdobeInstaller):
2569         (WebCore::MacApplication::isAOLInstantMessenger):
2570         (WebCore::MacApplication::isMicrosoftMyDay):
2571         (WebCore::MacApplication::isMicrosoftOutlook):
2572         (WebCore::MacApplication::isQuickenEssentials):
2573         (WebCore::MacApplication::isAperture):
2574         (WebCore::MacApplication::isVersions):
2575         (WebCore::MacApplication::isHRBlock):
2576         (WebCore::MacApplication::isIAdProducer):
2577         (WebCore::MacApplication::isSolidStateNetworksDownloader):
2578         (WebCore::IOSApplication::isMobileMail):
2579         (WebCore::IOSApplication::isMobileSafari):
2580         (WebCore::IOSApplication::isWebBookmarksD):
2581         (WebCore::IOSApplication::isDumpRenderTree):
2582         (WebCore::IOSApplication::isMobileStore):
2583         (WebCore::IOSApplication::isSpringBoard):
2584         (WebCore::IOSApplication::isWebApp):
2585         (WebCore::IOSApplication::isIBooks):
2586         (WebCore::IOSApplication::isIBooksStorytime):
2587         (WebCore::IOSApplication::isTheSecretSocietyHiddenMystery):
2588         (WebCore::IOSApplication::isCardiogram):
2589         (WebCore::IOSApplication::isNike):
2590         * platform/cocoa/UserAgentCocoa.mm:
2591         (WebCore::userAgentBundleVersion):
2592         * platform/gamepad/cocoa/GameControllerGamepad.mm:
2593         (WebCore::GameControllerGamepad::setupAsExtendedGamepad):
2594         (WebCore::GameControllerGamepad::setupAsGamepad):
2595         * platform/graphics/InbandTextTrackPrivateClient.h:
2596         (WebCore::GenericCueData::toJSONString const):
2597         * platform/graphics/avfoundation/CDMFairPlayStreaming.cpp:
2598         (WebCore::CDMFactoryFairPlayStreaming::supportsKeySystem):
2599         * platform/graphics/avfoundation/objc/CDMInstanceFairPlayStreamingAVFObjC.mm:
2600         (WebCore::isEqual):
2601         (WebCore::CDMInstanceFairPlayStreamingAVFObjC::updateLicense):
2602         (WebCore::CDMInstanceFairPlayStreamingAVFObjC::keySystem const):
2603         * platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.mm:
2604         (WebCore::CDMSessionAVContentKeySession::generateKeyRequest):
2605         * platform/graphics/avfoundation/objc/CDMSessionAVStreamSession.mm:
2606         (WebCore::CDMSessionAVStreamSession::generateKeyRequest):
2607         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
2608         (WebCore::MediaPlayerPrivateAVFoundationObjC::shouldWaitForLoadingOfResource):
2609         * platform/graphics/ca/GraphicsLayerCA.cpp:
2610         (WebCore::propertyIdToString):
2611         * platform/graphics/ca/TileController.cpp:
2612         (WebCore::TileController::tileGridContainerLayerName):
2613         (WebCore::TileController::zoomedOutTileGridContainerLayerName):
2614         * platform/graphics/cg/ImageBufferCG.cpp:
2615         (WebCore::ImageBuffer::toDataURL const):
2616         (WebCore::dataURL):
2617         * platform/graphics/cv/VideoTextureCopierCV.cpp:
2618         (WebCore::VideoTextureCopierCV::initializeContextObjects):
2619         (WebCore::VideoTextureCopierCV::initializeUVContextObjects):
2620         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
2621         (WebCore::MediaPlayerPrivateGStreamerBase::handleSyncMessage):
2622         (WebCore::MediaPlayerPrivateGStreamerBase::initializationDataEncountered):
2623         * platform/graphics/iso/ISOVTTCue.cpp:
2624         (WebCore::ISOWebVTTCue::toJSONString const):
2625         * platform/graphics/nicosia/NicosiaPaintingEngineThreaded.cpp:
2626         (Nicosia::PaintingEngineThreaded::PaintingEngineThreaded):
2627         * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
2628         (WebCore::Extensions3DOpenGLCommon::initializeAvailableExtensions):
2629         * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
2630         (WebCore::GraphicsContext3D::getUnmangledInfoLog):
2631         * platform/graphics/texmap/TextureMapperContextAttributes.cpp:
2632         (WebCore::TextureMapperContextAttributes::get):
2633         * platform/graphics/win/ImageBufferDirect2D.cpp:
2634         (WebCore::ImageBuffer::toDataURL const):
2635         (WebCore::ImageDataToDataURL):
2636         * platform/gtk/PasteboardGtk.cpp:
2637         (WebCore::Pasteboard::typesForLegacyUnsafeBindings):
2638         * platform/gtk/PasteboardHelper.cpp:
2639         * platform/gtk/PlatformKeyboardEventGtk.cpp:
2640         (WebCore::PlatformKeyboardEvent::keyValueForGdkKeyCode):
2641         (WebCore::PlatformKeyboardEvent::keyCodeForHardwareKeyCode):
2642         * platform/image-decoders/bmp/BMPImageDecoder.h:
2643         * platform/image-decoders/gif/GIFImageDecoder.h:
2644         * platform/image-decoders/ico/ICOImageDecoder.h:
2645         * platform/image-decoders/jpeg/JPEGImageDecoder.h:
2646         * platform/image-decoders/png/PNGImageDecoder.h:
2647         * platform/image-decoders/webp/WEBPImageDecoder.h:
2648         * platform/ios/Device.cpp:
2649         (WebCore::deviceName):
2650         * platform/ios/PasteboardIOS.mm:
2651         (WebCore::Pasteboard::addHTMLClipboardTypesForCocoaType):
2652         * platform/ios/PlatformEventFactoryIOS.mm:
2653         (WebCore::keyForKeyEvent):
2654         (WebCore::codeForKeyEvent):
2655         * platform/ios/PlatformPasteboardIOS.mm:
2656         (WebCore::safeTypeForDOMToReadAndWriteForPlatformType):
2657         * platform/mac/PasteboardMac.mm:
2658         (WebCore::Pasteboard::read):
2659         (WebCore::Pasteboard::addHTMLClipboardTypesForCocoaType):
2660         * platform/mac/PlatformEventFactoryMac.mm:
2661         (WebCore::keyForKeyEvent):
2662         (WebCore::codeForKeyEvent):
2663         * platform/mac/PlatformPasteboardMac.mm:
2664         (WebCore::safeTypeForDOMToReadAndWriteForPlatformType):
2665         * platform/mediastream/MediaConstraints.cpp:
2666         (WebCore::addDefaultVideoConstraints):
2667         * platform/mediastream/PeerMediaDescription.h:
2668         * platform/mediastream/RealtimeMediaSource.cpp:
2669         (WebCore::RealtimeMediaSource::applyConstraints):
2670         * platform/mediastream/mac/DisplayCaptureManagerCocoa.cpp:
2671         (WebCore::DisplayCaptureManagerCocoa::screenCaptureDeviceWithPersistentID):
2672         * platform/mock/MockRealtimeMediaSource.cpp:
2673         (WebCore::deviceMap):
2674         (WebCore::MockRealtimeMediaSource::audioDevices):
2675         (WebCore::MockRealtimeMediaSource::videoDevices):
2676         (WebCore::MockRealtimeMediaSource::displayDevices):
2677         * platform/mock/MockRealtimeVideoSource.cpp:
2678         (WebCore::MockRealtimeVideoSource::drawText):
2679         * platform/network/BlobRegistryImpl.cpp:
2680         (WebCore::BlobRegistryImpl::writeBlobsToTemporaryFiles):
2681         * platform/network/DataURLDecoder.cpp:
2682         (WebCore::DataURLDecoder::parseMediaType):
2683         * platform/network/FormData.cpp:
2684         (WebCore::FormData::appendMultiPartFileValue):
2685         * platform/network/HTTPParsers.cpp:
2686         (WebCore::parseHTTPRequestLine):
2687         (WebCore::parseHTTPHeader):
2688         (WebCore::normalizeHTTPMethod):
2689         * platform/network/ResourceRequestBase.cpp:
2690         (WebCore::ResourceRequestBase::redirectedRequest const):
2691         * platform/network/ResourceRequestBase.h:
2692         (WebCore::ResourceRequestBase::ResourceRequestBase):
2693         * platform/network/curl/ResourceHandleCurl.cpp:
2694         (WebCore::ResourceHandle::handleDataURL):
2695         * platform/network/curl/SynchronousLoaderClientCurl.cpp:
2696         (WebCore::SynchronousLoaderClient::platformBadResponseError):
2697         * platform/network/win/DownloadBundleWin.cpp:
2698         (WebCore::DownloadBundle::fileExtension):
2699         * platform/sql/SQLiteDatabase.cpp:
2700         (WebCore::SQLiteDatabase::open):
2701         (WebCore::SQLiteDatabase::setFullsync):
2702         (WebCore::SQLiteDatabase::maximumSize):
2703         (WebCore::SQLiteDatabase::pageSize):
2704         (WebCore::SQLiteDatabase::freeSpaceSize):
2705         (WebCore::SQLiteDatabase::totalSize):
2706         (WebCore::SQLiteDatabase::clearAllTables):
2707         (WebCore::SQLiteDatabase::runVacuumCommand):
2708         (WebCore::SQLiteDatabase::runIncrementalVacuumCommand):
2709         (WebCore::SQLiteDatabase::turnOnIncrementalAutoVacuum):
2710         * platform/sql/SQLiteFileSystem.cpp:
2711         (WebCore::SQLiteFileSystem::deleteDatabaseFile):
2712         * platform/text/LocaleICU.cpp:
2713         (WebCore::LocaleICU::dateFormat):
2714         (WebCore::getFormatForSkeleton):
2715         * platform/text/LocaleNone.cpp:
2716         (WebCore::LocaleNone::dateFormat):
2717         (WebCore::LocaleNone::monthFormat):
2718         (WebCore::LocaleNone::shortMonthFormat):
2719         (WebCore::LocaleNone::timeFormat):
2720         (WebCore::LocaleNone::shortTimeFormat):
2721         (WebCore::LocaleNone::dateTimeFormatWithSeconds):
2722         (WebCore::LocaleNone::dateTimeFormatWithoutSeconds):
2723         * platform/text/LocaleToScriptMappingDefault.cpp:
2724         (WebCore::scriptNameToCode):
2725         (WebCore::localeToScriptCodeForFontSelection):
2726         * platform/text/TextEncodingRegistry.cpp:
2727         (WebCore::defaultTextEncodingNameForSystemLanguage):
2728         * platform/win/FileSystemWin.cpp:
2729         (WebCore::FileSystem::bundleName):
2730         * platform/wpe/RenderThemeWPE.cpp:
2731         (WebCore::RenderThemeWPE::mediaControlsStyleSheet):
2732         * rendering/RenderMenuList.cpp:
2733         (RenderMenuList::setText):
2734         * rendering/RenderThemeIOS.mm:
2735         (WebCore::RenderThemeIOS::extraDefaultStyleSheet):
2736         * svg/SVGComponentTransferFunctionElement.h:
2737         (WebCore::SVGPropertyTraits<ComponentTransferType>::toString):
2738         * svg/SVGFEColorMatrixElement.h:
2739         (WebCore::SVGPropertyTraits<ColorMatrixType>::toString):
2740         * svg/SVGFECompositeElement.h:
2741         (WebCore::SVGPropertyTraits<CompositeOperationType>::toString):
2742         * svg/SVGFEConvolveMatrixElement.h:
2743         (WebCore::SVGPropertyTraits<EdgeModeType>::toString):
2744         * svg/SVGFEDisplacementMapElement.h:
2745         (WebCore::SVGPropertyTraits<ChannelSelectorType>::toString):
2746         * svg/SVGFEMorphologyElement.h:
2747         (WebCore::SVGPropertyTraits<MorphologyOperatorType>::toString):
2748         * svg/SVGFETurbulenceElement.h:
2749         (WebCore::SVGPropertyTraits<SVGStitchOptions>::toString):
2750         (WebCore::SVGPropertyTraits<TurbulenceType>::toString):
2751         * svg/SVGGradientElement.h:
2752         (WebCore::SVGPropertyTraits<SVGSpreadMethodType>::toString):
2753         * svg/SVGLocatable.cpp:
2754         (WebCore::SVGLocatable::getTransformToElement):
2755         * svg/SVGMarkerTypes.h:
2756         (WebCore::SVGPropertyTraits<SVGMarkerUnitsType>::toString):
2757         * svg/SVGMatrixValue.h:
2758         * svg/SVGSVGElement.cpp:
2759         (WebCore::SVGSVGElement::SVGSVGElement):
2760         (WebCore::SVGSVGElement::parseAttribute):
2761         * svg/SVGTextContentElement.h:
2762         (WebCore::SVGPropertyTraits<SVGLengthAdjustType>::toString):
2763         * svg/SVGTextPathElement.h:
2764         (WebCore::SVGPropertyTraits<SVGTextPathMethodType>::toString):
2765         (WebCore::SVGPropertyTraits<SVGTextPathSpacingType>::toString):
2766         * svg/SVGToOTFFontConversion.cpp:
2767         (WebCore::SVGToOTFFontConverter::appendCFFTable):
2768         * svg/SVGUnitTypes.h:
2769         (WebCore::SVGPropertyTraits<SVGUnitTypes::SVGUnitType>::toString):
2770         * svg/SVGUseElement.cpp:
2771         (WebCore::SVGUseElement::toClipPath):
2772         * svg/graphics/SVGImage.cpp:
2773         (WebCore::SVGImage::filenameExtension const):
2774         * testing/InternalSettings.cpp:
2775         (WebCore::InternalSettings::userInterfaceDirectionPolicy):
2776         (WebCore::InternalSettings::systemLayoutDirection):
2777         * testing/Internals.cpp:
2778         (WebCore::Internals::areSVGAnimationsPaused const):
2779         (WebCore::Internals::accessKeyModifiers const):
2780         (WebCore::Internals::setMediaDeviceState):
2781         (WebCore::Internals::audioSessionCategory const):
2782         (WebCore::Internals::systemPreviewRelType):
2783         * testing/MockCDMFactory.cpp:
2784         (WebCore::MockCDM::sanitizeResponse const):
2785         (WebCore::MockCDMInstance::updateLicense):
2786         * testing/MockContentFilter.cpp:
2787         (WebCore::MockContentFilter::unblockRequestDeniedScript const):
2788         * testing/MockCredentialsMessenger.cpp:
2789         (WebCore::MockCredentialsMessenger::~MockCredentialsMessenger):
2790         (WebCore::MockCredentialsMessenger::makeCredential):
2791         (WebCore::MockCredentialsMessenger::getAssertion):
2792         * testing/MockPaymentCoordinator.cpp:
2793         (WebCore::MockPaymentCoordinator::showPaymentUI):
2794         * workers/WorkerRunLoop.cpp:
2795         (WebCore::WorkerRunLoop::debuggerMode):
2796         * workers/WorkerScriptLoader.cpp:
2797         (WebCore::WorkerScriptLoader::loadSynchronously):
2798         (WebCore::WorkerScriptLoader::createResourceRequest):
2799         (WebCore::WorkerScriptLoader::didReceiveData):
2800         * workers/service/ExtendableEvent.cpp:
2801         (WebCore::ExtendableEvent::waitUntil):
2802         * workers/service/FetchEvent.cpp:
2803         (WebCore::FetchEvent::~FetchEvent):
2804         (WebCore::FetchEvent::respondWith):
2805         (WebCore::FetchEvent::promiseIsSettled):
2806         * workers/service/SWClientConnection.cpp:
2807         (WebCore::SWClientConnection::clearPendingJobs):
2808         * workers/service/ServiceWorker.cpp:
2809         (WebCore::ServiceWorker::postMessage):
2810         * workers/service/ServiceWorkerClients.cpp:
2811         (WebCore::ServiceWorkerClients::openWindow):
2812         (WebCore::ServiceWorkerClients::claim):
2813         * workers/service/ServiceWorkerContainer.cpp:
2814         (WebCore::ServiceWorkerContainer::addRegistration):
2815         (WebCore::ServiceWorkerContainer::getRegistration):
2816         (WebCore::ServiceWorkerContainer::startScriptFetchForJob):
2817         * workers/service/ServiceWorkerJob.cpp:
2818         (WebCore::ServiceWorkerJob::fetchScriptWithContext):
2819         (WebCore::ServiceWorkerJob::didReceiveResponse):
2820         * workers/service/ServiceWorkerRegistration.cpp:
2821         (WebCore::ServiceWorkerRegistration::update):
2822         * workers/service/ServiceWorkerWindowClient.cpp:
2823         (WebCore::ServiceWorkerWindowClient::focus):
2824         (WebCore::ServiceWorkerWindowClient::navigate):
2825         * workers/service/context/ServiceWorkerDebuggable.h:
2826         * workers/service/context/ServiceWorkerFetch.cpp:
2827         (WebCore::ServiceWorkerFetch::dispatchFetchEvent):
2828         * workers/service/server/RegistrationDatabase.cpp:
2829         (WebCore::RegistrationDatabase::doPushChanges):
2830         (WebCore::RegistrationDatabase::importRecords):
2831         * workers/service/server/SWServerJobQueue.cpp:
2832         (WebCore::SWServerJobQueue::runRegisterJob):
2833         (WebCore::SWServerJobQueue::runUnregisterJob):
2834         (WebCore::SWServerJobQueue::runUpdateJob):
2835         * xml/XMLErrors.cpp:
2836         (WebCore::createXHTMLParserErrorHeader):
2837         (WebCore::XMLErrors::insertErrorMessageBlock):
2838         * xml/XMLHttpRequest.cpp:
2839         (WebCore::XMLHttpRequest::send):
2840         (WebCore::XMLHttpRequest::responseMIMEType const):
2841         * xml/XMLTreeViewer.cpp:
2842         (WebCore::XMLTreeViewer::transformDocumentToTreeView):
2843         * xml/XPathPredicate.cpp:
2844         (WebCore::XPath::evaluatePredicate):
2845         * xml/XPathValue.cpp:
2846         (WebCore::XPath::Value::toString const):
2847         * xml/parser/CharacterReferenceParserInlines.h:
2848         (WebCore::consumeCharacterReference):
2849
2850 2018-06-22  Youenn Fablet  <youenn@apple.com>
2851
2852         Disable WebSocket in WatchOS
2853         https://bugs.webkit.org/show_bug.cgi?id=186931
2854         <rdar://problem/39584458>
2855
2856         Reviewed by Wenson Hsieh.
2857
2858         Add a runtime flag to enable/disable WebSocket.
2859         By default, flag is on for all platforms except for WatchOS.
2860
2861         Test: fast/dom/Window/watchos/websocket/watchos/no-websocket-in-watchos.html
2862
2863         * Modules/websockets/WebSocket.idl:
2864         * page/RuntimeEnabledFeatures.cpp:
2865         (WebCore::RuntimeEnabledFeatures::RuntimeEnabledFeatures):
2866         * page/RuntimeEnabledFeatures.h:
2867         (WebCore::RuntimeEnabledFeatures::setWebSocketEnabled):
2868         (WebCore::RuntimeEnabledFeatures::webSocketEnabled const):
2869
2870 2018-06-22  Woodrow Wang  <woodrow_wang@apple.com>
2871
2872         SubresourceLoader::didFail() should only log message if state is Initialized
2873         https://bugs.webkit.org/show_bug.cgi?id=185124
2874
2875         Reviewed by Daniel Bates.
2876
2877         Functionality does not change. Moved console logging to be 
2878         after checking state of subresource loader. We only need to 
2879         log if the state is initialized. This is consistent with other
2880         functions in the file. We can also remove a null check for the 
2881         frame pointer (m_frame). The superclass ResourceLoader constructor
2882         takes an lvalue reference and initializes m_frame, ensuring
2883         m_frame cannot be null. It is only set to null by 
2884         ResourceLoader::releaseResources(), which is only called after the 
2885         resource finishes loading or fails to load. Thus, in didFail(), 
2886         m_frame must be non-null when we're logging and up until the end of the function.  
2887
2888         * loader/SubresourceLoader.cpp:
2889         (WebCore::SubresourceLoader::didFail):
2890
2891 2018-06-22  Timothy Hatcher  <timothy@apple.com>
2892
2893         Corner of two scroll bars is white with dark mode enabled.
2894         https://bugs.webkit.org/show_bug.cgi?id=186819
2895         rdar://problem/40434350
2896
2897         Reviewed by Tim Horton.
2898
2899         * Configurations/WebCore.xcconfig:
2900         * WebCore.xcodeproj/project.pbxproj:
2901         * inspector/InspectorOverlay.cpp:
2902         (WebCore::InspectorOverlay::paint): Added LocalDefaultSystemAppearance.
2903         * page/Page.h:
2904         * platform/ScrollView.cpp:
2905         (WebCore::ScrollView::paintScrollCorner): Dropped ScrollView argument.
2906         * platform/ScrollbarTheme.h:
2907         (WebCore::ScrollbarTheme::paintScrollCorner): Ditto.
2908         * platform/ScrollbarThemeComposite.cpp:
2909         (WebCore::ScrollbarThemeComposite::paintScrollCorner): Deleted. Default is the same.
2910         * platform/ScrollbarThemeComposite.h:
2911         * platform/mac/LocalDefaultSystemAppearance.h:
2912         * platform/mac/LocalDefaultSystemAppearance.mm:
2913         (WebCore::LocalDefaultSystemAppearance::LocalDefaultSystemAppearance): Added recursion early return.
2914         (WebCore::LocalDefaultSystemAppearance::~LocalDefaultSystemAppearance): Ditto.
2915         * platform/mac/ScrollbarThemeMac.h:
2916         * platform/mac/ScrollbarThemeMac.mm:
2917         (WebCore::ScrollbarThemeMac::paintScrollCorner): Added.
2918         * rendering/RenderLayer.cpp:
2919         (WebCore::RenderLayer::paintScrollCorner): Call ScrollbarTheme::paintScrollCorner.
2920         * rendering/RenderLayerBacking.cpp:
2921         (WebCore::RenderLayerBacking::paintContents): Added LocalDefaultSystemAppearance.
2922         * rendering/RenderLayerCompositor.cpp:
2923         (WebCore::RenderLayerCompositor::paintContents): Added LocalDefaultSystemAppearance.
2924         * rendering/RenderScrollbarTheme.cpp:
2925         (WebCore::RenderScrollbarTheme::paintScrollCorner): Call ScrollbarTheme::paintScrollCorner.
2926         * rendering/RenderScrollbarTheme.h:
2927         * svg/graphics/SVGImage.cpp:
2928         (WebCore::SVGImage::draw): Added LocalDefaultSystemAppearance.
2929
2930 2018-06-22  Tim Horton  <timothy_horton@apple.com>
2931
2932         Make it possible to add a border around loading or failed-to-load images
2933         https://bugs.webkit.org/show_bug.cgi?id=186614
2934         <rdar://problem/39050152>
2935
2936         Reviewed by Zalan Bujtas.
2937
2938         Tests: http/tests/images/loading-image-border.html
2939                http/tests/images/loading-image-no-border.html
2940
2941         * rendering/RenderImage.cpp:
2942         (WebCore::RenderImage::paintIncompleteImageOutline):
2943         (WebCore::RenderImage::paintReplaced):
2944         * rendering/RenderImage.h:
2945         Factor the missing-image outline out, and - if desired - paint it in
2946         cases where the image is still loading or otherwise pending, not just
2947         when the image fails to load.
2948
2949         * page/Settings.yaml:
2950         * testing/InternalSettings.cpp:
2951         (WebCore::InternalSettings::Backup::Backup):
2952         (WebCore::InternalSettings::Backup::restoreTo):
2953         (WebCore::InternalSettings::setIncompleteImageBorderEnabled):
2954         * testing/InternalSettings.h:
2955         * testing/InternalSettings.idl:
2956         Add and expose a setting to enable the feature.
2957
2958 2018-06-22  Brady Eidson  <beidson@apple.com>
2959
2960         WKURLSchemeHandler doesn't handle sync XHR.
2961         <rdar://problem/40955884> and https://bugs.webkit.org/show_bug.cgi?id=186902
2962
2963         Reviewed by Chris Dumez.
2964
2965         * English.lproj/Localizable.strings:
2966
2967 2018-06-22  Jer Noble  <jer.noble@apple.com>
2968
2969         [Fullscreen] Restore ASSERT_NOT_REACHED() checks in exit fullscreen handler after r231924
2970         https://bugs.webkit.org/show_bug.cgi?id=186945
2971         <rdar://problem/37277469>
2972
2973         Reviewed by Simon Fraser.
2974
2975         * platform/ios/VideoFullscreenInterfaceAVKit.mm:
2976         (VideoFullscreenInterfaceAVKit::exitFullscreen):
2977         (VideoFullscreenInterfaceAVKit::exitFullscreenHandler):
2978         (VideoFullscreenInterfaceAVKit::cleanupFullscreen):
2979
2980 2018-06-22  Per Arne Vollan  <pvollan@apple.com>
2981
2982         Unreviewed build fix on Windows.
2983
2984         * testing/Internals.h:
2985
2986 2018-06-22  Youenn Fablet  <youenn@apple.com>
2987
2988         Incoming G722 doesn't work
2989         https://bugs.webkit.org/show_bug.cgi?id=186307
2990         <rdar://problem/40809745>
2991
2992         Reviewed by Eric Carlson.
2993
2994         WebRTC backends usually does the following:
2995         - Initially call RealtimeIncomingAudioSource with 16KHz data
2996         - Switch to 48KHz when actual data is decoded.
2997         We added a check that was discarding any 16KHz data, but in case of G722, the data remains as 16KHz and is then never read.
2998         The solution is to remove the check that discards 16KHz information.
2999         We then need to fix a bug in AudioTrackPrivateMediaStreamCocoa that was preventing proper handling of change of audio data configuration.
3000
3001         Test: webrtc/audio-peer-connection-g722.html
3002
3003         * platform/mediastream/mac/AudioTrackPrivateMediaStreamCocoa.cpp:
3004         (WebCore::AudioTrackPrivateMediaStreamCocoa::audioSamplesAvailable):
3005         * platform/mediastream/mac/RealtimeIncomingAudioSourceCocoa.cpp:
3006         (WebCore::RealtimeIncomingAudioSourceCocoa::OnData):
3007
3008 2018-06-22  Timothy Hatcher  <timothy@apple.com>
3009
3010         Recalc styles every time defaultAppearance changes.
3011         https://bugs.webkit.org/show_bug.cgi?id=186866
3012         rdar://problem/41309805
3013
3014         Reviewed by Tim Horton.
3015
3016         * page/Page.cpp:
3017         (WebCore::Page::setUseSystemAppearance): Added. Recalc styles and update system colors.
3018         (WebCore::Page::setDefaultAppearance): Added. Ditto.
3019         * page/Page.h:
3020         (WebCore::Page::setUseSystemAppearance): Deleted impl.
3021         (WebCore::Page::setDefaultAppearance): Deleted impl.
3022
3023 2018-06-22  Thibault Saunier  <tsaunier@igalia.com>
3024
3025         [GStreamer] Avoid sending SELECT_STREAM events when nothing changed
3026         https://bugs.webkit.org/show_bug.cgi?id=186678
3027
3028         Reviewed by Philippe Normand.
3029
3030         This avoid extra work in decodebin3 and should work around a crash
3031         in decodebin3 when we send spurious SELECT_STREAM in the mediastream
3032         layout tests.
3033
3034         GStreamer was also missing safe guards in the GstStream APIs which have been
3035         added in gstreamer core in 8833ca942ea21c58c0f63822f0e2b61695b39447
3036         "stream: Add some missing API safe guards".
3037
3038         Should fix following flakes:
3039           - fast/mediastream/MediaStream-video-element-track-stop.html
3040           - fast/mediastream/change-tracks-media-stream-being-played.html
3041
3042         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
3043         (WebCore::MediaPlayerPrivateGStreamer::enableTrack):
3044
3045 2018-06-22  Michael Catanzaro  <mcatanzaro@igalia.com>
3046
3047         REGRESSION(r230950): [GTK] WebKit::CoordinatedBackingStoreTile::setBackBuffer(): WebKitWebProcess killed by SIGSEGV (ASSERTION FAILED: it != m_tiles.end())
3048         https://bugs.webkit.org/show_bug.cgi?id=186206
3049
3050         Unreviewed manual rollout of r230950
3051
3052         * platform/graphics/texmap/TextureMapperLayer.h:
3053         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
3054         (WebCore::CoordinatedGraphicsLayer::shouldHaveBackingStore const):
3055
3056 2018-06-20  Darin Adler  <darin@apple.com>
3057
3058         [Cocoa] Use the isDirectory: variants of NSURL methods more to eliminate unnecessary file system activity
3059         https://bugs.webkit.org/show_bug.cgi?id=186875
3060
3061         Reviewed by Anders Carlsson.
3062
3063         * platform/cocoa/ThemeCocoa.mm:
3064         (WebCore::passKitBundle): Use isDirectory:YES when creating a URL pointing to a framework,
3065         since frameworks are directories.
3066
3067 2018-06-22  Miguel Gomez  <magomez@igalia.com>
3068
3069         [WPE][ThreadedRendering] WPE crashes rendering SVG content when using ThreadedRendering
3070         https://bugs.webkit.org/show_bug.cgi?id=186914
3071
3072         Reviewed by Carlos Garcia Campos.
3073
3074         Add GraphicsContextImpl::clipToImageBuffer() to the interface and the implementors. Forward
3075         the call to GraphicsContext::clipToImageBuffer() to the implementation if possible in the
3076         cairo case.
3077
3078         Covered by existent tests.
3079
3080         * platform/graphics/GraphicsContextImpl.h:
3081         * platform/graphics/cairo/GraphicsContextCairo.cpp:
3082         (WebCore::GraphicsContext::clipToImageBuffer):
3083         * platform/graphics/cairo/GraphicsContextImplCairo.cpp:
3084         (WebCore::GraphicsContextImplCairo::clipToImageBuffer):
3085         * platform/graphics/cairo/GraphicsContextImplCairo.h:
3086         * platform/graphics/displaylists/DisplayListRecorder.cpp:
3087         (WebCore::DisplayList::Recorder::clipToImageBuffer):
3088         * platform/graphics/displaylists/DisplayListRecorder.h:
3089         * platform/graphics/nicosia/cairo/NicosiaCairoOperationRecorder.cpp:
3090         (Nicosia::CairoOperationRecorder::clipToImageBuffer):
3091         * platform/graphics/nicosia/cairo/NicosiaCairoOperationRecorder.h:
3092
3093 2018-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
3094
3095         [CMake] Generated sources depending on SelectorPseudoClassAndCompatibilityElementMap.in are not regenerated
3096         https://bugs.webkit.org/show_bug.cgi?id=186911
3097
3098         Reviewed by Michael Catanzaro.
3099
3100         This is causing test fullscreen/fullscreen-env.html to fail since it was added in r233066 in the bots that
3101         didn't start a clean build. The problem is that the CMake command to generate
3102         SelectorPseudoClassAndCompatibilityElementMap.cpp doesn't depend on
3103         SelectorPseudoClassAndCompatibilityElementMap.in.
3104
3105         * CMakeLists.txt:
3106
3107 2018-06-22  Miguel Gomez  <magomez@igalia.com>
3108
3109         [WPE][ThreadedRendering] WPE crashes rendering some pieces of text when using ThreadedRendering
3110         https://bugs.webkit.org/show_bug.cgi?id=186886
3111
3112         Reviewed by Žan Doberšek.
3113
3114         Modify DisplayList DrawGlyphs element to use a GraphicsContext for replaying. To do so, modify
3115         GraphicsContext::drawGlyphs() API so it doesn't require a FontCascade, and update all the calls
3116         to it.
3117
3118         Covered by existent tests.
3119
3120         * platform/graphics/FontCascade.cpp:
3121         (WebCore::FontCascade::drawGlyphBuffer const):
3122         * platform/graphics/GraphicsContext.cpp:
3123         (WebCore::GraphicsContext::drawGlyphs):
3124         * platform/graphics/GraphicsContext.h:
3125         * platform/graphics/displaylists/DisplayListItems.cpp:
3126         (WebCore::DisplayList::DrawGlyphs::apply const):
3127         * rendering/mathml/MathOperator.cpp:
3128         (WebCore::MathOperator::paintGlyph):
3129         (WebCore::MathOperator::paint):
3130         * rendering/mathml/RenderMathMLToken.cpp:
3131         (WebCore::RenderMathMLToken::paint):
3132
3133 2018-06-15  Jer Noble  <jer.noble@apple.com>
3134
3135         Address fullscreen api CSS env feedback
3136         https://bugs.webkit.org/show_bug.cgi?id=186684
3137
3138         Reviewed by Simon Fraser.
3139
3140         Test: fullscreen/fullscreen-env.html
3141
3142         + Update the phishing alert text to be more explicit about the specific threats
3143           phishing sites represent.
3144         + Make the top inset static, rather than dynamic.
3145         + Add bottom, left, and right insets for completeness.
3146         + Set the fullscreen animation duration as well as delay.
3147         + Notify the page when the controls show and hide.
3148
3149         * English.lproj/Localizable.strings:
3150         * css/CSSSelector.cpp:
3151         (WebCore::CSSSelector::selectorText const):
3152         * css/CSSSelector.h:
3153         * css/SelectorChecker.cpp:
3154         (WebCore::SelectorChecker::checkOne const):
3155         * css/SelectorCheckerTestFunctions.h:
3156         (WebCore::matchesFullScreenControlsHiddenPseudoClass):
3157         * css/SelectorPseudoClassAndCompatibilityElementMap.in:
3158         * cssjit/SelectorCompiler.cpp:
3159         (WebCore::SelectorCompiler::addPseudoClassType):
3160         * dom/ConstantPropertyMap.cpp:
3161         (WebCore::ConstantPropertyMap::nameForProperty const):
3162         (WebCore::ConstantPropertyMap::updateConstantsForFullscreenInsets):
3163         (WebCore::ConstantPropertyMap::didChangeFullscreenInsets):
3164         (WebCore::ConstantPropertyMap::setFullscreenAutoHideDuration):
3165         (WebCore::ConstantPropertyMap::setFullscreenInsetTop): Deleted.
3166         * dom/ConstantPropertyMap.h:
3167         * dom/Document.cpp:
3168         (WebCore::Document::areFullscreenControlsHidden const):
3169         (WebCore::Document::setFullscreenControlsHidden):
3170         * dom/Document.h:
3171         * page/Page.cpp:
3172         (WebCore::Page::setFullscreenInsets):
3173         (WebCore::Page::setFullscreenAutoHideDuration):
3174         (WebCore::Page::setFullscreenControlsHidden):
3175         (WebCore::Page::setFullscreenInsetTop): Deleted.
3176         * page/Page.h:
3177         (WebCore::Page::fullscreenInsets const):
3178         * testing/Internals.cpp:
3179         (WebCore::Internals::resetToConsistentState):
3180         (WebCore::Internals::setFullscreenInsets):
3181         (WebCore::Internals::setFullscreenAutoHideDuration):
3182         (WebCore::Internals::setFullscreenControlsHidden):
3183         (WebCore::Internals::setFullscreenInsetTop): Deleted.
3184         * testing/Internals.h:
3185         * testing/Internals.idl:
3186
3187 2018-06-21  Jer Noble  <jer.noble@apple.com>
3188
3189         [Fullscreen] Page sometimes ends up with an incorrect zoom level after entering fullscreen
3190         https://bugs.webkit.org/show_bug.cgi?id=186822
3191
3192         Reviewed by Simon Fraser.
3193
3194         * dom/Document.cpp:
3195         (WebCore::Document::setOverrideViewportArguments):
3196         (WebCore::Document::updateViewportArguments):
3197         * dom/Document.h:
3198
3199 2018-06-20  Said Abou-Hallawa  <sabouhallawa@apple.com>
3200
3201         RenderSVGInline has to be inline always regardless of its css display value
3202         https://bugs.webkit.org/show_bug.cgi?id=186656
3203
3204         Reviewed by Zalan Bujtas.
3205
3206         According to https://www.w3.org/TR/SVG2/text.html#TextLayout, the <text>
3207         element has to be laid out as if it were a block element and any <tspan>,
3208         <textPath>, <a> and <tref> descendants were inline elements.
3209
3210         If a css rule, which contains the property "display: block;", is applied
3211         to any of children of a <text> element, this property has to be ignored.
3212
3213         We currently ignore this property in RenderSVGInline::updateFromStyle()
3214         by forcing setInline(true). But we do not do the same thing in 
3215         RenderTreeBuilder::normalizeTreeAfterStyleChange(). In fact we allow
3216         making the children of the <text> element to be non-inline. This puts
3217         the render tree in weired state and causes many assertions to fire while
3218         laying out RenderSVGText. 
3219
3220         Test: svg/dom/svg-inline-text-display-block-crash.html
3221
3222         * rendering/updating/RenderTreeBuilder.cpp:
3223         (WebCore::RenderTreeBuilder::normalizeTreeAfterStyleChange):
3224
3225 2018-06-20  Zalan Bujtas  <zalan@apple.com>
3226
3227         Do not reuse generated inline renderer for the first letter.
3228         https://bugs.webkit.org/show_bug.cgi?id=186657
3229         <rdar://problem/41157892>
3230
3231         Reviewed by Simon Fraser.
3232
3233         When the first letter pseudo element is present, we construct a dedicated subtree for its content like this:
3234
3235         <div><span>foobar</span></div> -> with ::first-letter on the <div>
3236         DIV RenderBlock
3237             SPAN RenderInline
3238                 RenderInline (generated wrapper for the first letter content)
3239                     RenderText (fist letter content)
3240                 RenderText (remaining text content)
3241
3242         "display: contents" on the <span> forces us not to construct a RenderInline for the <span> (or just come up with a wrapper at best).
3243         FirstLetter::createRenderers logic needs to check for such cases and pick the correct parent for the first letter subtree accordingly.
3244
3245         Test: fast/text/first-letter-with-display-contents-crash.html
3246               imported/w3c/web-platform-tests/css/css-display/display-contents-first-letter-002.html is not crashing anymore either.
3247
3248         * rendering/updating/RenderTreeBuilderFirstLetter.cpp:
3249         (WebCore::RenderTreeBuilder::FirstLetter::createRenderers):
3250
3251 2018-06-21  Chris Dumez  <cdumez@apple.com>
3252
3253         JSPerformanceObserverCallback creates a GC strongly-referenced Function that is never cleaned up
3254         https://bugs.webkit.org/show_bug.cgi?id=186873
3255         <rdar://problem/41271574>
3256
3257         Reviewed by Simon Fraser.
3258
3259         Add [IsWeakCallback] to PerformanceObserverCallback interface so that the generated
3260         JSPerformanceObserverCallback uses a JSC::Weak instead of a JSC::Strong to store the
3261         js function. To keep the function alive, add [JSCustomMarkFunction] to PerformanceObserver
3262         interface and have its visitAdditionalChildren() visit the callback's js function.
3263         Finally, because we want the callback to still be called even if the JS does not keep
3264         the PerformanceObserver wrapper alive, add [CustomIsReachable] to PerformanceObserver
3265         interface and have its isReachableFromOpaqueRoots() return true if the observer is
3266         registered (i.e. it may need to call the callback in the future).
3267
3268         I have confirmed locally, that the Performance / PerformanceObserver / Document
3269         objects properly get destroyed if I navigate away from a page that had a performance
3270         observer and trigger a memory pressure warning. Also,
3271         `notifyutil -p com.apple.WebKit.showAllDocuments` no longer shows the old document.
3272
3273         Tests: performance-api/performance-observer-callback-after-gc.html
3274                performance-api/performance-observer-no-document-leak.html
3275
3276         * Sources.txt:
3277         * WebCore.xcodeproj/project.pbxproj:
3278         * bindings/js/JSPerformanceObserverCustom.cpp: Added.
3279         (WebCore::JSPerformanceObserver::visitAdditionalChildren):
3280         (WebCore::JSPerformanceObserverOwner::isReachableFromOpaqueRoots):
3281         * bindings/js/ScriptController.cpp:
3282         * page/PerformanceObserver.cpp:
3283         (WebCore::PerformanceObserver::disassociate):
3284         * page/PerformanceObserver.h:
3285         (WebCore::PerformanceObserver::isRegistered const):
3286         (WebCore::PerformanceObserver::callback):
3287         * page/PerformanceObserver.idl:
3288         * page/PerformanceObserverCallback.h:
3289         * page/PerformanceObserverCallback.idl:
3290
3291 2018-06-20  Antoine Quint  <graouts@apple.com>
3292
3293         [Web Animations] Make imported/mozilla/css-animations/test_animation-ready.html pass reliably
3294         https://bugs.webkit.org/show_bug.cgi?id=183830
3295         <rdar://problem/40997539>
3296
3297         Reviewed by Dean Jackson.
3298
3299         The CSS Animations Level 2 spec explains how the Web Animations API and CSS Animations interact and requires
3300         pending styles changes on the target element of a CSS Animation to be flushed when using a Web Animations API
3301         on it in order to ensure that any animation- CSS property is accounted for.
3302
3303         * animation/CSSAnimation.cpp:
3304         (WebCore::CSSAnimation::bindingsStartTime const):
3305         (WebCore::CSSAnimation::setBindingsStartTime):
3306         (WebCore::CSSAnimation::bindingsCurrentTime const):
3307         (WebCore::CSSAnimation::setBindingsCurrentTime):
3308         (WebCore::CSSAnimation::bindingsPlayState const):
3309         (WebCore::CSSAnimation::bindingsPending const):
3310         (WebCore::CSSAnimation::bindingsReady):
3311         (WebCore::CSSAnimation::bindingsFinished):
3312         (WebCore::CSSAnimation::bindingsPlay):
3313         (WebCore::CSSAnimation::bindingsPause):
3314         (WebCore::CSSAnimation::flushPendingStyleChanges const):
3315         * animation/CSSAnimation.h:
3316         * animation/WebAnimation.h:
3317         (WebCore::WebAnimation::bindingsPlayState const):
3318         (WebCore::WebAnimation::bindingsPending const):
3319         (WebCore::WebAnimation::bindingsReady):
3320         (WebCore::WebAnimation::bindingsFinished):
3321         (WebCore::WebAnimation::bindingsPlay):
3322         (WebCore::WebAnimation::bindingsPause):
3323         * animation/WebAnimation.idl:
3324
3325 2018-06-21  Jer Noble  <jer.noble@apple.com>
3326
3327         [Fullscreen] Suspend page (and pause video) while phishing warning is presented
3328         https://bugs.webkit.org/show_bug.cgi?id=186856
3329         <rdar://problem/41212444>
3330
3331         Reviewed by Tim Horton.
3332
3333         Pause the media element when the page is suspended, and unpause when the page resumes.
3334
3335         * html/HTMLMediaElement.cpp:
3336         (WebCore::HTMLMediaElement::HTMLMediaElement):
3337         (WebCore::HTMLMediaElement::suspend):
3338         (WebCore::HTMLMediaElement::resume):
3339         * html/HTMLMediaElement.h:
3340
3341 2018-06-21  Michael Catanzaro  <mcatanzaro@igalia.com>
3342
3343         Bad optional access in WebCore::ContentSecurityPolicySource::portMatches
3344         https://bugs.webkit.org/show_bug.cgi?id=186535
3345
3346         Reviewed by Daniel Bates.
3347
3348         Make sure the ports have explicit values before dereferencing them.
3349
3350         This is hard to test. If the layout test script-src-parsing-implicit-and-explicit-port-number
3351         continues to pass for WebKitLegacy, then I have at least probably not broken anything. To
3352         reproduce the crash in a layout test that I can run, I think I would need to implement
3353         internals.registerDefaultPortForProtocol for modern WebKit, which is too much work for this
3354         crash. Otherwise, we'd need to run the test server on port 80, which would be unfriendly.
3355
3356         * page/csp/ContentSecurityPolicySource.cpp:
3357         (WebCore::ContentSecurityPolicySource::portMatches const):
3358
3359 2018-06-21  Fujii Hironori  <Hironori.Fujii@sony.com>
3360
3361         [GStreamer] ASSERTION FAILED: end.isValid() in PlatformTimeRanges::add
3362         https://bugs.webkit.org/show_bug.cgi?id=186880
3363
3364         Reviewed by Xabier Rodriguez-Calvar.
3365
3366         Bug 180253 has added assertions the arugments `start` and `end` is
3367         valid MediaTime in PlatformTimeRanges::add. Since then, some
3368         LayoutTests fail due to the assertion failure.
3369
3370         The invalid MediaTime is added into the PlatformTimeRanges in
3371         MediaPlayerPrivateGStreamer::buffered. Before adding MediaTime,
3372         original implementation checks MediaTime::operator bool() returns
3373         true. But, this method returns true if the time value is invalid.
3374         Then, PlatformTimeRanges::add is called with an invalid MediaTime.
3375
3376         No new tests (No behavior change).
3377
3378         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
3379         (WebCore::MediaPlayerPrivateGStreamer::buffered const): Check
3380         maxTimeLoaded() is valid before adding to `timeRanges`.
3381
3382 2018-06-20  David Kilzer  <ddkilzer@apple.com>
3383
3384         Fix leaks in WebCore found by clang static analyzer in deep mode
3385         <https://webkit.org/b/186865>
3386
3387         Reviewed by Joseph Pecoraro.
3388
3389         * platform/mac/WebCoreNSURLExtras.mm:
3390         (WebCore::mapHostNames): Fix leak of an empty NSMutableArray
3391         during an early return.  RetainPtr<> is not used here since
3392         a pointer to the NSMutableArray * is passed around.
3393         * platform/mediastream/mac/ScreenDisplayCaptureSourceMac.mm:
3394         (WebCore::ScreenDisplayCaptureSourceMac::createDisplayStream):
3395         Fix leak of a CGDisplayModeRef during an early return.
3396
3397 2018-06-20  Wenson Hsieh  <wenson_hsieh@apple.com>
3398
3399         Unreviewed, fix the watchOS build after r233016.
3400
3401         * page/EventHandler.cpp:
3402         (WebCore::EventHandler::selectionExtentRespectingEditingBoundary):
3403
3404         Move this helper out of the ENABLE(DRAG_SUPPORT) guard.
3405
3406         * page/EventHandler.h:
3407
3408 2018-06-20  Simon Fraser  <simon.fraser@apple.com>
3409
3410         AnimationList wastes 60KB of vector capacity
3411         https://bugs.webkit.org/show_bug.cgi?id=186701
3412
3413         Reviewed by Chris Dumez.
3414
3415         AnimationList was the second most wasteful call site for Vector capacity on theverge.com,
3416         wasting almost 60KB. Lists had between 1 and 3 entries, so give AnimationList's vector of
3417         Animations a min capacity of zero so it doesn't grow in increments of 16.
3418         
3419         Also shrink Animation from 88 bytes to 72 bytes by optimizing packing.
3420
3421         * platform/animation/Animation.cpp:
3422         (WebCore::Animation::Animation):
3423         (WebCore::Animation::operator=):
3424         (WebCore::Animation::animationsMatch const):
3425         * platform/animation/Animation.h:
3426         (WebCore::Animation::animationMode const):
3427         (WebCore::Animation::setAnimationMode):
3428         * platform/animation/AnimationList.h:
3429
3430 2018-06-20  Simon Fraser  <simon.fraser@apple.com>
3431
3432         ContentSecurityPolicySourceList wastes 51KB of Vector capacity on cnn.com
3433         https://bugs.webkit.org/show_bug.cgi?id=186706
3434
3435         Reviewed by Chris Dumez.
3436
3437         Make ContentSecurityPolicySourceList::parse() call shrinkToFit() on m_list
3438         after parsing to eliminate wasted vector capacity.
3439         
3440         Shrink ContentSecurityPolicySource down to 40 bytes by optimizing packing.
3441
3442         * page/csp/ContentSecurityPolicySource.cpp:
3443         (WebCore::ContentSecurityPolicySource::ContentSecurityPolicySource):
3444         * page/csp/ContentSecurityPolicySource.h:
3445         * page/csp/ContentSecurityPolicySourceList.cpp:
3446         (WebCore::ContentSecurityPolicySourceList::matches const):
3447         (WebCore::ContentSecurityPolicySourceList::parse):
3448         (WebCore::ContentSecurityPolicySourceList::matches): Deleted.
3449         * page/csp/ContentSecurityPolicySourceList.h:
3450
3451 2018-06-20  Megan Gardner  <megan_gardner@apple.com>
3452
3453         Restrict Selection in contenteditable the extent of that contenteditable
3454         https://bugs.webkit.org/show_bug.cgi?id=186792
3455
3456         Reviewed by Wenson Hsieh.
3457
3458         My system currently will not allow me to run tests. I will add one when I can update.
3459
3460         Expose the already existing funcitonality to restrict a selection to a single contentenditable
3461
3462         * page/EventHandler.cpp:
3463         (WebCore::EventHandler::selectionExtentRespectingEditingBoundary):
3464         (WebCore::selectionExtentRespectingEditingBoundary): Deleted.
3465         * page/EventHandler.h:
3466         * rendering/HitTestResult.h:
3467
3468 2018-06-20  Simon Fraser  <simon.fraser@apple.com>
3469
3470         CSSFontFace wastes 59KB of Vector capacity on nytimes.com
3471         https://bugs.webkit.org/show_bug.cgi?id=186708
3472
3473         Reviewed by Anders Carlsson.
3474
3475         Most CSSFontFace have one or two CSSFontFaceSource so don't allocate
3476         vector capacity in the default 16-size chunks.
3477
3478         * css/CSSFontFace.h:
3479
3480 2018-06-20  Antoine Quint  <graouts@apple.com>
3481
3482         [Web Animations] Make imported/mozilla/css-transitions/test_element-get-animations.html pass reliably
3483         https://bugs.webkit.org/show_bug.cgi?id=183841
3484         <rdar://problem/40998101>
3485
3486         Reviewed by Dean Jackson.
3487
3488         We must ignore CSS Animations with "animation-name: none".
3489
3490         * animation/AnimationTimeline.cpp:
3491         (WebCore::AnimationTimeline::updateCSSAnimationsForElement):
3492
3493 2018-06-20  Miguel Gomez  <magomez@igalia.com>
3494
3495         [GTK][ThreadedRendering][Nicosia] Themed elements cannot be rendered using threaded rendering
3496         https://bugs.webkit.org/show_bug.cgi?id=186840
3497
3498         Reviewed by Carlos Garcia Campos.
3499
3500         Disable threaded rendering for GTK port.
3501
3502         * platform/graphics/nicosia/NicosiaPaintingEngine.cpp:
3503         (Nicosia::PaintingEngine::create):
3504
3505 2018-06-20  Yusuke Suzuki  <utatane.tea@gmail.com>
3506
3507         [GTK][WPE][Nicosia] Add name for Nicosia Painting Threads
3508         https://bugs.webkit.org/show_bug.cgi?id=186836
3509
3510         Reviewed by Carlos Garcia Campos.
3511
3512         Use "PaintingThread" name.
3513
3514         * platform/graphics/nicosia/NicosiaPaintingEngineThreaded.cpp:
3515         (Nicosia::PaintingEngineThreaded::PaintingEngineThreaded):
3516
3517 2018-06-19  Antoine Quint  <graouts@apple.com>
3518
3519         [Web Animations] Make imported/mozilla/css-animations/test_pseudoElement-get-animations.html pass reliably
3520         https://bugs.webkit.org/show_bug.cgi?id=183818
3521         <rdar://problem/40997015>
3522
3523         Reviewed by Dean Jackson.
3524
3525         We add a new opt-in flag to return sorted animations when calling AnimationTimeline::animationsForElement() so that
3526         Element::getAnimations() can opt into returning animations sorted by the rules defined by the CSS Transitions spec.
3527         The rule is that CSS Transitions must be sorted prior to CSS Animations and regular Web Animations, and then sorted
3528         by the time they were generated and, if generated at the same time, sorted alphabetically based on the transitioned
3529         property. To be able to accomodate this, we add a new generationTime() method to CSSTransition.
3530
3531         * animation/AnimationTimeline.cpp:
3532         (WebCore::AnimationTimeline::animationsForElement const):
3533         (WebCore::AnimationTimeline::updateCSSTransitionsForElement):
3534         * animation/AnimationTimeline.h:
3535         * animation/CSSTransition.cpp:
3536         (WebCore::CSSTransition::create):
3537         (WebCore::CSSTransition::CSSTransition):
3538         * animation/CSSTransition.h:
3539         * dom/Element.cpp:
3540         (WebCore::Element::getAnimations):
3541
3542 2018-06-19  Basuke Suzuki  <Basuke.Suzuki@sony.com>
3543
3544         [Curl] Allow passing contents of Root CA data directly.
3545         https://bugs.webkit.org/show_bug.cgi?id=185782
3546
3547         Currently the data must be in a file and set by its path. This patch
3548         allow application to set root CA data by passing binary data directly.
3549
3550         Reviewed by Yusuke Suzuki.
3551
3552         No new tests. Tested internally.
3553
3554         * platform/network/curl/CurlRequest.cpp:
3555         (WebCore::CurlRequest::setupTransfer):
3556         * platform/network/curl/CurlSSLHandle.cpp:
3557         (WebCore::CurlSSLHandle::CurlSSLHandle):
3558         (WebCore::CurlSSLHandle::getCACertPathEnv):
3559         (WebCore::CurlSSLHandle::setCACertPath):
3560         (WebCore::CurlSSLHandle::setCACertData):
3561         (WebCore::CurlSSLHandle::clearCACertInfo):
3562         * platform/network/curl/CurlSSLHandle.h:
3563         (WebCore::CurlSSLHandle::getCipherList const):
3564         (WebCore::CurlSSLHandle::getSignatureAlgorithmsList const):
3565         (WebCore::CurlSSLHandle::getCurvesList const):
3566         (WebCore::CurlSSLHandle::setCipherList):
3567         (WebCore::CurlSSLHandle::setSignatureAlgorithmsList):
3568         (WebCore::CurlSSLHandle::setCurvesList):
3569         (WebCore::CurlSSLHandle::setIgnoreSSLErrors):
3570         (WebCore::CurlSSLHandle::getCACertInfo const):
3571         (WebCore::CurlSSLHandle::getCACertPath const): Deleted.
3572         (WebCore::CurlSSLHandle::setCACertPath): Deleted.
3573         * platform/network/curl/CurlSSLVerifier.cpp:
3574         (WebCore::CurlSSLVerifier::CurlSSLVerifier):
3575
3576 2018-06-19  Dean Jackson  <dino@apple.com>
3577
3578         ARKit badge drop shadow updates its blur radius based on page zoom
3579         https://bugs.webkit.org/show_bug.cgi?id=186829
3580         <rdar://problem/40738779>
3581
3582         Reviewed by Tim Horton.
3583
3584         We need to make sure the shadow blur radius takes into account the
3585         current zoom. Thankfully, the GraphicsContext platform code already
3586         does this, so just use it.
3587
3588         * rendering/RenderThemeIOS.mm:
3589         (WebCore::RenderThemeIOS::paintSystemPreviewBadge):
3590
3591 2018-06-19  Dean Jackson  <dino@apple.com>
3592
3593         Blank viewer comes up and then auto-dismisses when device is not connected to Internet
3594         https://bugs.webkit.org/show_bug.cgi?id=186825
3595         <rdar://problem/40294170>
3596
3597         Reviewed by Tim Horton.
3598
3599         Export isSuccessful() to WebKit.
3600
3601         * platform/network/ResourceResponseBase.h:
3602
3603 2018-06-19  Basuke Suzuki  <Basuke.Suzuki@sony.com>
3604
3605         [Curl] Enable Proxy Authentication.
3606         https://bugs.webkit.org/show_bug.cgi?id=185266
3607
3608         Add support for Proxy Authentication to curl network layer.
3609
3610         Reviewed by Alex Christensen.
3611
3612         No new tests in public. Tested internally.
3613
3614         * platform/network/curl/AuthenticationChallenge.h:
3615         * platform/network/curl/AuthenticationChallengeCurl.cpp:
3616         (WebCore::AuthenticationChallenge::protectionSpaceServerTypeFromURI):
3617         (WebCore::AuthenticationChallenge::protectionSpaceFromHandle):
3618         (WebCore::AuthenticationChallenge::determineProxyPort):
3619         (WebCore::AuthenticationChallenge::authenticationSchemeFromCurlAuth):
3620         (WebCore::AuthenticationChallenge::parseRealm):
3621         * platform/network/curl/CurlContext.cpp:
3622         (WebCore::CurlHandle::enableProxyIfExists):
3623         (WebCore::CurlHandle::getProxyUrl):
3624         (WebCore::CurlHandle::getProxyAuthAvail):
3625         (WebCore::CurlHandle::getPrimaryPort): Deleted.
3626         * platform/network/curl/CurlContext.h:
3627         (WebCore::CurlContext::setDefaultProxyAuthMethod):
3628         (WebCore::CurlContext::setProxyAuthMethod):
3629         * platform/network/curl/CurlProxySettings.cpp:
3630         (WebCore::determineAuthMethod):
3631         (WebCore::CurlProxySettings::setAuthMethod):
3632         (WebCore::protocolIsInSocksFamily):
3633         * platform/network/curl/CurlProxySettings.h:
3634         (WebCore::CurlProxySettings::setDefaultAuthMethod):
3635         (WebCore::CurlProxySettings::authMethod const):
3636         * platform/network/curl/CurlRequest.cpp:
3637         (WebCore::CurlRequest::didReceiveHeader):
3638         * platform/network/curl/CurlResponse.h:
3639         (WebCore::CurlResponse::isolatedCopy const):
3640         * platform/network/curl/ResourceResponse.h:
3641         * platform/network/curl/ResourceResponseCurl.cpp:
3642         (WebCore::ResourceResponse::isProxyAuthenticationRequired const):
3643
3644 2018-06-19  Tim Horton  <timothy_horton@apple.com>
3645
3646         Unpainted area while scrolling in Reader is white
3647         https://bugs.webkit.org/show_bug.cgi?id=186541
3648         <rdar://problem/40471363>
3649
3650         Reviewed by Timothy Hatcher.
3651
3652         New test: tiled-drawing/simple-document-with-dynamic-background-color.html
3653
3654         For platforms that do not use the overhang layer, we depend on
3655         RenderView's background color to fill unpainted space.
3656
3657         RenderView's background color is only updated inside updateRootLayerConfiguration,
3658         and it is possible with a simple enough page to change the document's
3659         background color without running that code.
3660
3661         * page/FrameView.cpp:
3662         (WebCore::FrameView::setTransparent):
3663         (WebCore::FrameView::setBaseBackgroundColor):
3664         Make use of the newly added rootBackgroundColorOrTransparencyChanged.
3665
3666         (WebCore::FrameView::calculateExtendedBackgroundMode const):
3667         Update a comment, since the function it mentioned is no longer.
3668
3669         (WebCore::FrameView::updateTilesForExtendedBackgroundMode):
3670         Remove this code that clears the root extended background color
3671         if using tiles to extend in both directions. Two reasons:
3672         1) it seems harmless to also have a root extended background color
3673         2) this just gets clobbered by the call in RenderView::paintBoxDecorations
3674
3675         * rendering/RenderLayerCompositor.cpp:
3676         (WebCore::RenderLayerCompositor::updateCompositingLayers):
3677         Add a bit that will do a updateConfiguration() on the root layer if no
3678         other work needs to be done, so that we can update the root layer's
3679         transparency or background color without doing a full layer rebuild.
3680
3681         (WebCore::RenderLayerCompositor::rootOrBodyStyleChanged):
3682         Make use of the newly added rootBackgroundColorOrTransparencyChanged.
3683
3684         (WebCore::RenderLayerCompositor::rootBackgroundColorOrTransparencyChanged):
3685         Change rootBackgroundTransparencyChanged to also cover color changes.
3686         Fold setRootExtendedBackgroundColor in here, and make use of
3687         setRootLayerConfigurationNeedsUpdate() instead of doing a full rebuild.
3688         Previously, we would bail if the transparency state hadn't changed;
3689         now, we'll also update the root layer's background color and the
3690         exposed-to-WebKit extended background color if they change too.
3691
3692         (WebCore::RenderLayerCompositor::rootBackgroundTransparencyChanged): Deleted.
3693         (WebCore::RenderLayerCompositor::setRootExtendedBackgroundColor): Deleted.
3694
3695         * rendering/RenderLayerCompositor.h:
3696         Add setRootLayerConfigurationNeedsUpdate, remove setRootExtendedBackgroundColor,
3697         and add both a bit indicating that the root layer configuration needs updating
3698         and the cached view background color to make the early return in
3699         rootBackgroundColorOrTransparencyChanged possible.
3700
3701         * rendering/RenderView.cpp:
3702         (WebCore::RenderView::paintBoxDecorations):
3703         Make use of the newly added rootBackgroundColorOrTransparencyChanged.
3704
3705 2018-06-19  Youenn Fablet  <youenn@apple.com>
3706
3707         Need to properly handle removal of worker in SWServer::unregisterServiceWorkerClient timer lambda
3708         https://bugs.webkit.org/show_bug.cgi?id=186674
3709         <rdar://problem/40974812>
3710
3711         Reviewed by Chris Dumez.
3712
3713         While looping over the running workers map and trying to terminate some of the workers,
3714         there is a chance that the map will be modified synchronously which may affect iterating the map.
3715         This patch removes that potential threat.
3716
3717         * workers/service/server/SWServer.cpp:
3718         (WebCore::SWServer::unregisterServiceWorkerClient):
3719
3720 2018-06-19  Antoine Quint  <graouts@apple.com>
3721
3722         [Web Animations] Make imported/mozilla/css-animations/test_animation-playstate.html pass reliably
3723         https://bugs.webkit.org/show_bug.cgi?id=183828
3724         <rdar://problem/40997469>
3725
3726         Reviewed by Dean Jackson.
3727
3728         We need to ensure pending styles have been resolved prior to returning the play state for a CSS Animation since
3729         it can be controlled by the animation-play-state CSS property. To that end we expose a specific bindings-only
3730         method which we override for CSSAnimation to force a style update.
3731
3732         * animation/CSSAnimation.cpp:
3733         (WebCore::CSSAnimation::bindingsPlayState const):
3734         * animation/CSSAnimation.h:
3735         * animation/WebAnimation.h:
3736         (WebCore::WebAnimation::bindingsPlayState const):
3737         * animation/WebAnimation.idl:
3738
3739 2018-06-19  David Kilzer  <ddkilzer@apple.com>
3740
3741         Revert: Add logging when splashboardd enables WebThread
3742         <https://webkit.org/b/186793>
3743         <rdar://problem/41213255>
3744
3745         Turns out this isn't needed, so reverting r232959.
3746
3747         * platform/RuntimeApplicationChecks.h:
3748         * platform/cocoa/RuntimeApplicationChecksCocoa.mm:
3749         (WebCore::IOSApplication::isSplashBoardd): Deleted.
3750         * platform/ios/wak/WebCoreThread.mm:
3751         (WebThreadEnable):
3752
3753 2018-06-19  Wenson Hsieh  <wenson_hsieh@apple.com>
3754
3755         [WebKit on watchOS] Vend username text content type when using scribble in login fields
3756         https://bugs.webkit.org/show_bug.cgi?id=186791
3757         <rdar://problem/41226935>
3758
3759         Reviewed by Beth Dakin.
3760
3761         Expose AutofillElements' autofillable username input element. See WebKit ChangeLog for more details.
3762
3763         * editing/ios/AutofillElements.h:
3764         (WebCore::AutofillElements::username const):
3765
3766 2018-06-19  Chris Dumez  <cdumez@apple.com>
3767
3768         WebCoreNSURLSessionDataTaskClient::redirectReceived() calls WebCore on non-main thread
3769         https://bugs.webkit.org/show_bug.cgi?id=186805
3770         <rdar://problem/36960714>
3771
3772         Reviewed by Youenn Fablet.
3773
3774         Make sure WebCoreNSURLSessionDataTaskClient::redirectReceived() dispatches to the main
3775         thread before calling its completion handler. Otherwise, we end up calling into WebCore
3776         on a NSOperationQueue background thread and we crash.
3777
3778         * platform/network/cocoa/WebCoreNSURLSession.mm:
3779         (WebCore::WebCoreNSURLSessionDataTaskClient::redirectReceived):
3780
3781 2018-06-19  Chris Dumez  <cdumez@apple.com>
3782
3783         HTTPHeaderMap wastes 226KB of HashTable capacity on cnn.com
3784         https://bugs.webkit.org/show_bug.cgi?id=186735
3785         <rdar://problem/41189164>
3786
3787         Reviewed by Geoffrey Garen.
3788
3789         Resource requests and responses normally do not have a large amount of HTTP headers
3790         (local testing shows 6 common headers on average and 0.3 uncommon ones).
3791         As a result, move the internal representation of HTTPHeaderMap from HashMaps to
3792         Vectors. Given the number of headers, the impact on performance should be negligible.
3793         However, the new implementation uses a lot less memory. In a follow-up, we can save
3794         even more memory by calling HTTPHeaderMap::shrinkToFit() when possible.
3795
3796         * loader/CrossOriginAccessControl.cpp:
3797         (WebCore::createAccessControlPreflightRequest):
3798         * loader/DocumentLoader.cpp:
3799         (WebCore::DocumentLoader::responseReceived):
3800         * loader/cache/CachedRawResource.cpp:
3801         (WebCore::CachedRawResource::canReuse const):
3802         * platform/network/HTTPHeaderMap.cpp:
3803         (WebCore::HTTPHeaderMap::isolatedCopy const):
3804         (WebCore::HTTPHeaderMap::get const):
3805         (WebCore::HTTPHeaderMap::set):
3806         (WebCore::HTTPHeaderMap::add):
3807         (WebCore::HTTPHeaderMap::append):
3808         (WebCore::HTTPHeaderMap::addIfNotPresent):
3809         (WebCore::HTTPHeaderMap::contains const):
3810         (WebCore::HTTPHeaderMap::remove):
3811         * platform/network/HTTPHeaderMap.h:
3812         (WebCore::HTTPHeaderMap::CommonHeader::isolatedCopy const):
3813         (WebCore::HTTPHeaderMap::CommonHeader::operator== const):
3814         (WebCore::HTTPHeaderMap::UncommonHeader::isolatedCopy const):
3815         (WebCore::HTTPHeaderMap::UncommonHeader::operator== const):
3816         (WebCore::HTTPHeaderMap::HTTPHeaderMapConstIterator::HTTPHeaderMapConstIterator):
3817         (WebCore::HTTPHeaderMap::HTTPHeaderMapConstIterator::updateKeyValue):
3818         (WebCore::HTTPHeaderMap::shrinkToFit):
3819         (WebCore::HTTPHeaderMap::commonHeaders const):
3820         (WebCore::HTTPHeaderMap::uncommonHeaders const):
3821         (WebCore::HTTPHeaderMap::commonHeaders):
3822         (WebCore::HTTPHeaderMap::uncommonHeaders):
3823         (WebCore::HTTPHeaderMap::CommonHeader::encode const):
3824         (WebCore::HTTPHeaderMap::CommonHeader::decode):
3825         (WebCore::HTTPHeaderMap::UncommonHeader::encode const):
3826         (WebCore::HTTPHeaderMap::UncommonHeader::decode):
3827         (WebCore::HTTPHeaderMap::encode const):
3828         (WebCore::HTTPHeaderMap::decode):
3829         * platform/network/ResourceResponseBase.cpp:
3830         (WebCore::ResourceResponseBase::filter):
3831         (WebCore::ResourceResponseBase::sanitizeHTTPHeaderFields):
3832
3833 2018-06-19  Youenn Fablet  <youenn@apple.com>
3834
3835         Network Preflights do not show in WebInspector after moving CORS checks to NetworkProcess
3836         https://bugs.webkit.org/show_bug.cgi?id=186312
3837         <rdar://problem/40495434>
3838
3839         Reviewed by Chris Dumez.
3840
3841         Test: http/wpt/fetch/inspect-preflight.html
3842
3843         No change of behavior in regular conditions.
3844         All intermediate requests/responses are now buffered in NetworkProcess if Web inspector shows up.
3845         Add NetworkLoadInformation and NetworkIntermediateLoadInformation for that purpose.
3846
3847         Add a new LoaderStrategy method to grab this information from NetworkProcess synchronously.
3848         Add Internals API for testing the storage by the Network Process and the sending to WebProcess.
3849
3850         * WebCore.xcodeproj/project.pbxproj:
3851         * loader/LoaderStrategy.cpp:
3852         (WebCore::LoaderStrategy::intermediateLoadInformationFromResourceLoadIdentifier):
3853         * loader/LoaderStrategy.h:
3854         * platform/network/NetworkLoadInformation.h: Added.
3855         (WebCore::NetworkTransactionInformation::encode const):
3856         (WebCore::NetworkTransactionInformation::decode):
3857         * testing/Internals.cpp:
3858         (WebCore::Internals::setCaptureExtraNetworkLoadMetricsEnabled):
3859         (WebCore::Internals::ongoingLoadDescriptions):
3860         * testing/Internals.h:
3861         * testing/Internals.idl:
3862
3863 2018-06-19  Antoine Quint  <graouts@apple.com>
3864
3865         [Web Animations] Make imported/mozilla/css-transitions/test_animation-cancel.html pass reliably
3866         https://bugs.webkit.org/show_bug.cgi?id=183821
3867         <rdar://problem/40997034>
3868
3869         Reviewed by Dean Jackson.
3870
3871         If an element gets a "display: none" style RenderTreeUpdater::tearDownRenderers() will be called with a RendererUpdateCancelingAnimations
3872         teardown type on all of its children. We need to ensure all declarative animations, and only those since regular Web Animations should be
3873         kept active regardless of their target's style, are canceled in this situation.
3874
3875         * animation/AnimationTimeline.cpp:
3876         (WebCore::AnimationTimeline::cancelDeclarativeAnimationsForElement):
3877         * animation/AnimationTimeline.h:
3878         * rendering/updating/RenderTreeUpdater.cpp:
3879         (WebCore::RenderTreeUpdater::tearDownRenderers):
3880
3881 2018-06-19  David Kilzer  <ddkilzer@apple.com>
3882
3883         Add logging when splashboardd enables WebThread
3884         <https://webkit.org/b/186793>
3885         <rdar://problem/41213255>
3886
3887         Reviewed by Daniel Bates.
3888
3889         * platform/RuntimeApplicationChecks.h:
3890         (WebCore::IOSApplication::isSplashBoardd): Add declaration.
3891         * platform/cocoa/RuntimeApplicationChecksCocoa.mm:
3892         (WebCore::IOSApplication::isSplashBoardd): Add implementation.
3893         * platform/ios/wak/WebCoreThread.mm:
3894         (WebThreadEnable): Call RELEASE_LOG_FAULT() if this is called by
3895         splashboardd.
3896
3897 2018-06-19  Miguel Gomez  <magomez@igalia.com>
3898
3899         [GTK][WPE][Nicosia] Add environment variable to enable threaded rendering and set the number of painting threads
3900         https://bugs.webkit.org/show_bug.cgi?id=186801
3901
3902         Reviewed by Carlos Garcia Campos.
3903
3904         Add and environment variable to enable the usage of the threaded renderer and define the number
3905         of painting threads.
3906
3907         No new tests.
3908
3909         * platform/graphics/nicosia/NicosiaPaintingEngine.cpp:
3910         (Nicosia::PaintingEngine::create):
3911         * platform/graphics/nicosia/NicosiaPaintingEngineThreaded.cpp:
3912         (Nicosia::PaintingEngineThreaded::PaintingEngineThreaded):
3913         * platform/graphics/nicosia/NicosiaPaintingEngineThreaded.h:
3914
3915 2018-06-19  Youenn Fablet  <youenn@apple.com>
3916
3917         RTCRtpSender.replaceTrack(null) ends current track
3918         https://bugs.webkit.org/show_bug.cgi?id=184911
3919         <rdar://problem/40758138>
3920
3921         Reviewed by Eric Carlson.
3922
3923         Before the patch, when replacing the sender track by null, the previous track was stopped.
3924         Instead of doing that, the track now stays alive and it is the realtime source that is stopped.
3925         This ensures that the data is no longer sent while the track can still be used elsewhere.
3926
3927         Covered by updated and rebased tests.
3928
3929         * Modules/mediastream/PeerConnectionBackend.h:
3930         * Modules/mediastream/RTCPeerConnection.cpp:
3931         (WebCore::RTCPeerConnection::addTransceiver):
3932         (WebCore::RTCPeerConnection::enqueueReplaceTrackTask):
3933         (WebCore::RTCPeerConnection::replaceTrack):
3934         * Modules/mediastream/RTCPeerConnection.h:
3935         * Modules/mediastream/RTCRtpSender.cpp:
3936         (WebCore::RTCRtpSender::replaceTrack):
3937         * Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.cpp:
3938         (WebCore::updateTrackSource):
3939         (WebCore::LibWebRTCPeerConnectionBackend::replaceTrack):
3940         * Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.h:
3941
3942 2018-06-18  Chris Dumez  <cdumez@apple.com>
3943
3944         Better pack ResourceRequest
3945         https://bugs.webkit.org/show_bug.cgi?id=186717
3946
3947         Reviewed by Darin Adler.
3948
3949         Better pack ResourceRequest to reduce its size from 240 to 232 bytes
3950         on Mac.
3951
3952         * platform/network/ResourceRequestBase.h:
3953
3954 2018-06-18  Antoine Quint  <graouts@apple.com>
3955
3956         [Web Animations] Implement "Starting of transitions" section from CSS Transitions
3957         https://bugs.webkit.org/show_bug.cgi?id=186517
3958         <rdar://problem/41000798>
3959
3960         Reviewed by Dean Jackson.
3961
3962         We implement the whole section at https://drafts.csswg.org/css-transitions-1/#starting so that we have spec-compliant starting of CSS Transitions.
3963         To correctly implement this we now maintain two maps of transitions for a given property, a set of running transitions (m_elementToRunningCSSTransitionByCSSPropertyID)
3964         and a set of completed transition (m_elementToCompletedCSSTransitionByCSSPropertyID).
3965
3966         * animation/AnimationTimeline.cpp:
3967         (WebCore::removeCSSTransitionFromMap): Add a utility to remove a CSSTransition from one of the two HashMap<Element*, HashMap<CSSPropertyID, RefPtr<CSSTransition>>>
3968         managed by AnimationTimeline (m_elementToRunningCSSTransitionByCSSPropertyID and m_elementToCompletedCSSTransitionByCSSPropertyID).
3969         (WebCore::AnimationTimeline::animationWasRemovedFromElement): Use the new removeCSSTransitionFromMap() utility.
3970         (WebCore::AnimationTimeline::updateCSSAnimationsForElement): We rename "oldStyle" to "currentStyle" to align with the naming used by updateCSSAnimationsForElement().
3971         We also remove an initial check that has been pushed up to Style::TreeResolver::createAnimatedElementUpdate().
3972         (WebCore::propertyInStyleMatchesValueForTransitionInMap): When running the steps mandated by the spec we often need to check whether a given property has a transition
3973         in an AnimationList that matches the value used in a given RenderStyle.
3974         (WebCore::transitionCombinedDuration): We need to compute the combined duration twice while running the steps mandated by the spec, so we have a dedicated utility.
3975         (WebCore::transitionMatchesProperty): New utility that indicates whether a WebCore::Animation matches a given property, by virtue of targeting it directly, targeting
3976         a shorthand for which this property is a longhand, or targeting "all".
3977 &nb