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