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