3009c9532094802bdf3efeca74a9bb7c9ab80ca3
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2019-08-26  Chris Dumez  <cdumez@apple.com>
2
3         Change default value of window.open()'s url argument
4         https://bugs.webkit.org/show_bug.cgi?id=200882
5
6         Reviewed by Ryosuke Niwa.
7
8         Update default URL parameter value for window.open() to be "" instead of "about:blank", as per:
9         - https://github.com/whatwg/html/issues/4762
10
11         This aligns our behavior with other Web browser engines.
12
13         No new tests, rebaselined existing test.
14
15         * page/DOMWindow.idl:
16
17 2019-08-26  Devin Rousso  <drousso@apple.com>
18
19         Web Inspector: unify agent command error messages
20         https://bugs.webkit.org/show_bug.cgi?id=200950
21
22         Reviewed by Joseph Pecoraro.
23
24         Different agents can sometimes have different error messages for commands that have a
25         similar intended effect.  We should make our error messages more similar.
26
27         * inspector/CommandLineAPIHost.cpp:
28         * inspector/agents/InspectorApplicationCacheAgent.cpp:
29         * inspector/agents/InspectorCSSAgent.cpp:
30         * inspector/agents/InspectorCanvasAgent.h:
31         * inspector/agents/InspectorCanvasAgent.cpp:
32         * inspector/agents/InspectorDOMAgent.cpp:
33         * inspector/agents/InspectorDOMDebuggerAgent.cpp:
34         * inspector/agents/InspectorDOMStorageAgent.cpp:
35         * inspector/agents/InspectorIndexedDBAgent.cpp:
36         * inspector/agents/InspectorLayerTreeAgent.cpp:
37         * inspector/agents/InspectorMemoryAgent.cpp:
38         * inspector/agents/InspectorNetworkAgent.cpp:
39         * inspector/agents/InspectorPageAgent.cpp:
40         * inspector/agents/InspectorTimelineAgent.cpp:
41         * inspector/agents/InspectorWorkerAgent.cpp:
42         * inspector/agents/page/PageAuditAgent.cpp:
43         * inspector/agents/page/PageConsoleAgent.cpp:
44         * inspector/agents/page/PageDebuggerAgent.cpp:
45         * inspector/agents/page/PageNetworkAgent.cpp:
46         * inspector/agents/page/PageRuntimeAgent.cpp:
47         * inspector/agents/worker/WorkerAuditAgent.cpp:
48         * inspector/agents/worker/WorkerDebuggerAgent.cpp:
49         * inspector/agents/worker/WorkerRuntimeAgent.cpp:
50         Elide function lists to avoid an extremely large ChangeLog entry.
51
52 2019-08-26  Chris Dumez  <cdumez@apple.com>
53
54         Regression: ITP started doing a lot more IPC after its logic was moved to the network process
55         https://bugs.webkit.org/show_bug.cgi?id=201155
56
57         Reviewed by John Wilander.
58
59         ITP started doing a lot more IPC after its logic was moved to the network process. Web processes used to
60         send their statistics to the UIProcess at most every 5 seconds. However, when the logic got moved to the network
61         process, we started notifying the network process via IPC after every sub resource load. This is bad for performance
62         and battery life. This patch restores the 5 second delay to address the issue.
63
64         * loader/ResourceLoadObserver.cpp:
65         (WebCore::ResourceLoadObserver::ResourceLoadObserver):
66         (WebCore::ResourceLoadObserver::setRequestStorageAccessUnderOpenerCallback):
67         (WebCore::ResourceLoadObserver::logSubresourceLoading):
68         (WebCore::ResourceLoadObserver::logWebSocketLoading):
69         (WebCore::ResourceLoadObserver::logUserInteractionWithReducedTimeResolution):
70         (WebCore::ResourceLoadObserver::scheduleNotificationIfNeeded):
71         (WebCore::ResourceLoadObserver::updateCentralStatisticsStore):
72         (WebCore::ResourceLoadObserver::clearState):
73         * loader/ResourceLoadObserver.h:
74
75 2019-08-26  Simon Fraser  <simon.fraser@apple.com>
76
77         Optimize computation of AbsoluteClipRects clip rects
78         https://bugs.webkit.org/show_bug.cgi?id=201148
79
80         Reviewed by Zalan Bujtas.
81
82         When adding layers to the compositing overlap map, we compute AbsoluteClipRects for every
83         layer which is expensive. This was more expensive than necessary because we converted them
84         to TemporaryClipRects when crossing painting boundaries, but AbsoluteClipRects don't
85         care about painting boundaries, so don't do this.
86
87         * rendering/RenderLayer.cpp:
88         (WebCore::RenderLayer::calculateClipRects const):
89
90 2019-08-26  Chris Dumez  <cdumez@apple.com>
91
92         Drop WEBCORE_EXPORT from ChromeClient class
93         https://bugs.webkit.org/show_bug.cgi?id=201146
94
95         Reviewed by Alex Christensen.
96
97         Drop WEBCORE_EXPORT from ChromeClient class. All its methods and either pure virtual or inlined in the header.
98
99         * page/ChromeClient.h:
100
101 2019-08-26  David Kilzer  <ddkilzer@apple.com>
102
103         Don't compute upconverted characters twice in buildQuery() in DataDetection.mm
104         <https://webkit.org/b/201144>
105         <rdar://problem/54689399>
106
107         Reviewed by Brent Fulgham.
108
109         * editing/cocoa/DataDetection.mm:
110         (WebCore::buildQuery): Extract common variables to prevent double
111         conversion for 8-bit strings.
112
113 2019-08-26  Brent Fulgham  <bfulgham@apple.com>
114
115         [FTW] Go back to ID2D1Bitmap as our NativeImage type
116         https://bugs.webkit.org/show_bug.cgi?id=201122
117
118         Reviewed by Alex Christensen.
119
120         In Bug 200093 I switched the OS type of NativeImagePtr from ID2D1Bitmap to IWICBitmap.
121         However, this was an ill-advised approach, because it dramatically harmed performance due
122         to the heavy use of software rendering.
123
124         I originally made this change because I thought this was the only way to get to the backing
125         bits of the bitmaps, but it turns out that a more recent Direct2D data type (ID2D1Bitmap1)
126         has the ability to map its memory to CPU-accessible memory, allowing software filter effects.
127
128         This patch switches back to the ID2D1Bitap data type, and hooks up the ID2D1Bitmap1 data type
129         to access the underlying memory of the bitmaps when software filter effects are used.
130
131         * platform/graphics/ImageBuffer.h:
132         * platform/graphics/NativeImage.h:
133         * platform/graphics/texmap/BitmapTextureGL.cpp:
134         * platform/graphics/win/Direct2DOperations.cpp:
135         * platform/graphics/win/Direct2DOperations.h:
136         * platform/graphics/win/Direct2DUtilities.cpp:
137         (WebCore::Direct2D::writeDiagnosticPNGToPath):
138         (WebCore::Direct2D::writeImageToDiskAsPNG): Deleted.
139         * platform/graphics/win/Direct2DUtilities.h:
140         * platform/graphics/win/GraphicsContextDirect2D.cpp:
141         * platform/graphics/win/ImageBufferDataDirect2D.cpp:
142         * platform/graphics/win/ImageBufferDataDirect2D.h:
143         * platform/graphics/win/ImageBufferDirect2D.cpp:
144         * platform/graphics/win/ImageDecoderDirect2D.cpp:
145         * platform/graphics/win/NativeImageDirect2D.cpp:
146         * platform/graphics/win/PatternDirect2D.cpp:
147         * svg/graphics/SVGImage.cpp:
148
149 2019-08-26  Sam Weinig  <weinig@apple.com>
150
151         [WHLSL] TypeNamer can be simplified by replacing BaseTypeNameNode with uniqued AST::UnnamedTypes
152         https://bugs.webkit.org/show_bug.cgi?id=200632
153
154         Reviewed by Saam Barati.
155
156         There is no longer a reason to keep a parallel tree of the UnnamedType-like objects
157         BaseTypeNameNodes. Instead, we can store a single HashMap mapping from UnnamedTypeKeys
158         to MangledTypeName, and use the the UnnamedType stored in the UnnamedTypeKey while 
159         emitting the metal code. This removes the parallel BaseTypeNameNode type hierarchy
160         and removes an extra allocation for each UnnamedType. 
161
162         * Modules/webgpu/WHLSL/AST/WHLSLUnnamedTypeHash.h:
163         Define HashTraits and DefaultHash specializations for UnnamedTypeKey to simplify
164         uses of UnnamedTypeKey as a key in HashMap/HashSet.
165
166         * Modules/webgpu/WHLSL/Metal/WHLSLTypeNamer.h:
167         * Modules/webgpu/WHLSL/Metal/WHLSLTypeNamer.cpp:
168         (WebCore::WHLSL::Metal::TypeNamer::insert): Deleted.
169         (WebCore::WHLSL::Metal::TypeNamer::generateUniquedTypeName):
170         Replace old insert function with generateUniquedTypeName, which uniques and generates
171         names for the UnnamedType and any 'parent' UnnamedTypes.
172
173         (WebCore::WHLSL::Metal::BaseTypeNameNode): Deleted.
174         Remove BaseTypeNameNode and subclasses.
175
176         (WebCore::WHLSL::Metal::TypeNamer::find): Deleted.
177         (WebCore::WHLSL::Metal::TypeNamer::createNameNode): Deleted.
178         We no longer need the find or createNameNode functions, as the UnnamedTypes can be now be
179         used directly everywhere.
180
181         (WebCore::WHLSL::Metal::TypeNamer::emitUnnamedTypeDefinition):
182         Switch to directly using the UnnamedType and always have the caller pass in the mangled
183         name, since in the main emit loop, we always have access to the them. Also, inline the
184         the recursive calls to emitNamedTypeDefinition for 'parent' types to avoid unnecessary
185         extra switch over the kind getting the parent, and avoid it entirely for TypeReference
186         which never has a parent.
187         
188         (WebCore::WHLSL::Metal::TypeNamer::emitNamedTypeDefinition):
189         Switches to now passing in the neighbors, since they are always available in the main 
190         emit loop. Also move to a switch statement rather than ifs for consistency. 
191         
192         (WebCore::WHLSL::Metal::TypeNamer::emitMetalTypeDefinitions):
193         Pass keys and values into the emit functions to avoid double lookups.
194
195         (WebCore::WHLSL::Metal::TypeNamer::mangledNameForType):
196         Update to hash lookup.
197
198         * Modules/webgpu/WHLSL/WHLSLSynthesizeConstructors.cpp:
199         Take advantage of default HashTraits and DefaultHash for UnnamedTypeKey.
200
201 2019-08-26  Peng Liu  <peng.liu6@apple.com>
202
203         REGRESSION (18E140): “return streaming movie to real time” suggesting “resume real time streaming”
204         https://bugs.webkit.org/show_bug.cgi?id=201108
205         <rdar://problem/46372525>
206
207         Reviewed by Eric Carlson.
208
209         Update Localizable.strings.
210
211         No new test.
212
213         * en.lproj/Localizable.strings:
214         * platform/LocalizedStrings.cpp:
215         (WebCore::localizedMediaControlElementHelpText):
216
217 2019-08-26  Youenn Fablet  <youenn@apple.com>
218
219         CacheStorageConnection::computeRealBodySize is not thread-safe
220         https://bugs.webkit.org/show_bug.cgi?id=201074
221
222         Reviewed by Chris Dumez.
223
224         In case of a form data, the size computation might require sync IPC to the network process which is not thread-safe
225         In that case, hop to the main thread to compute the size of the body.
226         Covered by existing service worker tests in Debug mode.
227
228         * Modules/cache/CacheStorageConnection.cpp:
229         (WebCore::formDataSize):
230         (WebCore::CacheStorageConnection::computeRealBodySize):
231
232 2019-08-26  Youenn Fablet  <youenn@apple.com>
233
234         MessagePort should be WeakPtrFactoryInitialization::Eager
235         https://bugs.webkit.org/show_bug.cgi?id=201073
236
237         Reviewed by Chris Dumez.
238
239         Covered by existing layout tests.
240
241         * dom/MessagePort.h:
242
243 2019-08-24  Simon Fraser  <simon.fraser@apple.com>
244
245         Have RenderLayer::calculateClipRects() use offsetFromAncestor() when possible
246         https://bugs.webkit.org/show_bug.cgi?id=201066
247
248         Reviewed by Dean Jackson.
249
250         offsetFromAncestor() is a layer tree walk, so faster than localToContainerPoint(),
251         but we can't use it when there are transforms on the layer and intermediates up
252         to the ancestor.
253         
254         canUseConvertToLayerCoords() was trying to answer the question about whether it's
255         OK to use offsetFromAncestor() (which calls convertToLayerCoords() internally), but
256         it has insufficient information to make a determination. Leave this issue alone, but
257         at least rename canUseConvertToLayerCoords().
258
259         * rendering/RenderLayer.cpp:
260         (WebCore::RenderLayer::updateLayerPositions):
261         (WebCore::RenderLayer::calculateClipRects const):
262         * rendering/RenderLayer.h:
263
264 2019-08-24  Simon Fraser  <simon.fraser@apple.com>
265
266         Page crashes under CGPathAddUnevenCornersRoundedRect
267         https://bugs.webkit.org/show_bug.cgi?id=201117
268
269         Reviewed by Dean Jackson.
270         
271         Fix crash on https://onehtmlpagechallenge.com/entries/pure-css-still-life-water-lemon.html
272         We were passing CG radius values where the sum of two radii was greater than the height or
273         width, caused by rounding when converting from floats to doubles.
274
275         Test: fast/borders/renderable-uneven-rounded-rects.html
276
277         * platform/graphics/cg/PathCG.cpp:
278         (WebCore::Path::platformAddPathForRoundedRect):
279
280 2019-08-23  Simon Fraser  <simon.fraser@apple.com>
281
282         RenderLayer::updateLayerPositions() doesn't propagate the ancestor flags correctly
283         https://bugs.webkit.org/show_bug.cgi?id=201115
284
285         Reviewed by Zalan Bujtas.
286
287         When an updateLayerPositions() traversal starts at a non-root layer, we failed to populate
288         the ancestor-related UpdateLayerPositionsFlag flags, leaving layers with missing flags
289         (e.g. the m_hasTransformedAncestor flag). This is detected by the patch in bug 201066.
290
291         Fix by having updateLayerPositionsAfterStyleChange() and updateLayerPositionsAfterLayout()
292         initialize the flags from the parent layer.
293
294         This is a behavior change not detected by any existing test, but will be exercised once
295         the patch from bug 201066 lands.
296
297         * rendering/RenderLayer.cpp:
298         (WebCore::RenderLayer::flagsForUpdateLayerPositions):
299         (WebCore::RenderLayer::updateLayerPositionsAfterStyleChange):
300         (WebCore::RenderLayer::updateLayerPositionsAfterLayout):
301         (WebCore::outputPaintOrderTreeLegend):
302         (WebCore::outputPaintOrderTreeRecursive): Log hasTransformedAncestor().
303         * rendering/RenderLayer.h:
304
305 2019-08-24  Zalan Bujtas  <zalan@apple.com>
306
307         [LFC][TFC] Add section renderers to the layout tree (THEAD/TBODY/TFOOT)
308         https://bugs.webkit.org/show_bug.cgi?id=201114
309         <rdar://problem/54664992>
310
311         Reviewed by Antti Koivisto.
312
313         Section renderers (THEAD/TBODY/TFOOT) are direct children of the RenderTable. Let's include them in the layout tree as well.
314
315         * layout/layouttree/LayoutTreeBuilder.cpp:
316         (WebCore::Layout::TreeBuilder::createTableStructure):
317         (WebCore::Layout::outputInlineRuns):
318
319 2019-08-24  Zalan Bujtas  <zalan@apple.com>
320
321         [LFC] Box::isAnonymous() can not rely on the lack of ElementType.
322         https://bugs.webkit.org/show_bug.cgi?id=201106
323         <rdar://problem/54660287>
324
325         Reviewed by Antti Koivisto.
326
327         Add bool m_isAnonymous member to mark anonymous layout boxes. Anonymous boxes are not rare enough to include this variable in RareData.
328
329         * layout/layouttree/LayoutBox.h:
330         (WebCore::Layout::Box::setIsAnonymous):
331         * layout/layouttree/LayoutTreeBuilder.cpp:
332         (WebCore::Layout::TreeBuilder::createLayoutBox):
333
334 2019-08-24  Antti Koivisto  <antti@apple.com>
335
336         Implement layout system independent text box iterator
337         https://bugs.webkit.org/show_bug.cgi?id=201076
338
339         Reviewed by Zalan Bujtas.
340
341         Add a generic way to traverse line layout without caring about the details of the underlying layout system.
342
343         This patch adds basic support for traversing text boxes and uses it to remove layout path specific branches in RenderTreeAsText.
344
345         * Sources.txt:
346         * WebCore.xcodeproj/project.pbxproj:
347         * rendering/RenderTreeAsText.cpp:
348         (WebCore::RenderTreeAsText::writeRenderObject):
349         (WebCore::writeTextBox):
350         (WebCore::write):
351         (WebCore::writeTextRun): Deleted.
352         (WebCore::writeSimpleLine): Deleted.
353         * rendering/line/LineLayoutInterfaceTextBoxes.cpp: Added.
354         (WebCore::LineLayoutInterface::TextBox::rect const):
355         (WebCore::LineLayoutInterface::TextBox::logicalRect const):
356         (WebCore::LineLayoutInterface::TextBox::hasHyphen const):
357         (WebCore::LineLayoutInterface::TextBox::isLeftToRightDirection const):
358         (WebCore::LineLayoutInterface::TextBox::dirOverride const):
359         (WebCore::LineLayoutInterface::TextBox::text const):
360         (WebCore::LineLayoutInterface::TextBoxIterator::TextBoxIterator):
361         (WebCore::LineLayoutInterface::TextBoxIterator::traverseNext):
362         (WebCore::LineLayoutInterface::TextBoxIterator::operator== const):
363         (WebCore::LineLayoutInterface::simpleLineRunResolverForText):
364         (WebCore::LineLayoutInterface::rangeForText):
365         (WebCore::LineLayoutInterface::TextBoxRange::TextBoxRange):
366         (WebCore::LineLayoutInterface::textBoxes):
367         * rendering/line/LineLayoutInterfaceTextBoxes.h: Added.
368         (WebCore::LineLayoutInterface::TextBox::TextBox):
369         (WebCore::LineLayoutInterface::TextBoxIterator::operator++):
370         (WebCore::LineLayoutInterface::TextBoxIterator::operator!= const):
371         (WebCore::LineLayoutInterface::TextBoxIterator::operator* const):
372         (WebCore::LineLayoutInterface::TextBoxRange::begin const):
373         (WebCore::LineLayoutInterface::TextBoxRange::end const):
374
375 2019-08-24  Zalan Bujtas  <zalan@apple.com>
376
377         [LFC][BFC] Non-inline formatting context(table, grid etc) root container should not collapse through.
378         https://bugs.webkit.org/show_bug.cgi?id=201099
379         <rdar://problem/54658946>
380
381         Reviewed by Antti Koivisto.
382
383         I didn't manage to find it in the spec, but surely formatting contexts like table, grid and flex should behave like
384         block so that their vertical margins are not adjoining, when they have at least one inflow child.
385
386         * layout/blockformatting/BlockMarginCollapse.cpp:
387         (WebCore::Layout::BlockFormattingContext::MarginCollapse::marginsCollapseThrough):
388
389 2019-08-24  Zalan Bujtas  <zalan@apple.com>
390
391         [LFC] Add THEAD/TBODY/TFOOT output to Layout::showLayoutTree
392         https://bugs.webkit.org/show_bug.cgi?id=201113
393         <rdar://problem/54664134>
394
395         Reviewed by Antti Koivisto.
396
397         * layout/layouttree/LayoutTreeBuilder.cpp:
398         (WebCore::Layout::outputLayoutBox):
399
400 2019-08-24  Zalan Bujtas  <zalan@apple.com>
401
402         [LFC] Remove redundant Layout::Box::ElementType::TableRowGroup
403         https://bugs.webkit.org/show_bug.cgi?id=201112
404         <rdar://problem/54663833>
405
406         Reviewed by Antti Koivisto.
407
408         Use Layout::Box::ElementType::TableBodyGroup instead.
409
410         * layout/layouttree/LayoutBox.cpp:
411         (WebCore::Layout::Box::isPaddingApplicable const):
412         * layout/layouttree/LayoutBox.h:
413         * layout/layouttree/LayoutTreeBuilder.cpp:
414         (WebCore::Layout::TreeBuilder::createLayoutBox):
415
416 2019-08-23  Simon Fraser  <simon.fraser@apple.com>
417
418         RenderLayerModelObject should not call private RenderLayer functions
419         https://bugs.webkit.org/show_bug.cgi?id=201111
420
421         Reviewed by Zalan Bujtas.
422
423         Make RenderLayerModelObject no longer a friend class of RenderLayer, giving it a public
424         willRemoveChildWithBlendMode() function to call. Also make the UpdateLayerPositionsFlag
425         enum private, providing a updateLayerPositionsAfterStyleChange() for RenderLayerModelObject,
426         and changing the arguments of updateLayerPositionsAfterLayout() for FrameView.
427
428         No behavior change.
429
430         * page/FrameView.cpp:
431         (WebCore::FrameView::didLayout):
432         (WebCore::updateLayerPositionFlags): Deleted.
433         * rendering/RenderLayer.cpp:
434         (WebCore::RenderLayer::updateLayerPositionsAfterStyleChange):
435         (WebCore::RenderLayer::updateLayerPositionsAfterLayout):
436         (WebCore::RenderLayer::willRemoveChildWithBlendMode):
437         * rendering/RenderLayer.h:
438         * rendering/RenderLayerModelObject.cpp:
439         (WebCore::RenderLayerModelObject::styleDidChange):
440
441 2019-08-22  Ryosuke Niwa  <rniwa@webkit.org>
442
443         Implement StaticRange constructor
444         https://bugs.webkit.org/show_bug.cgi?id=201055
445
446         Reviewed by Wenson Hsieh.
447
448         Added the constructor to StaticRange per https://github.com/whatwg/dom/pull/778.
449
450         Test: imported/w3c/web-platform-tests/dom/ranges/StaticRange-constructor.html
451
452         * dom/StaticRange.cpp:
453         (WebCore::isDocumentTypeOrAttr):
454         (WebCore::StaticRange::create):
455         * dom/StaticRange.h:
456         * dom/StaticRange.idl:
457
458 2019-08-23  Devin Rousso  <drousso@apple.com>
459
460         Web Inspector: create additional command line api functions for other console methods
461         https://bugs.webkit.org/show_bug.cgi?id=200971
462
463         Reviewed by Joseph Pecoraro.
464
465         Expose all `console.*` functions in the command line API, since they're all already able to
466         be referenced via the `console` object.
467
468         Provide a simpler interface for other injected scripts to modify the command line API.
469
470         * inspector/CommandLineAPIModuleSource.js:
471         (injectedScript._inspectObject): Added.
472         (normalizeEventTypes): Added.
473         (logEvent): Added.
474         (canQuerySelectorOnNode): Added.
475         (bind): Deleted.
476         (value): Deleted.
477         (this.method.toString): Deleted.
478         (CommandLineAPI): Deleted.
479         (CommandLineAPIImpl): Deleted.
480         (CommandLineAPIImpl.prototype): Deleted.
481         (CommandLineAPIImpl.prototype._canQuerySelectorOnNode): Deleted.
482         (CommandLineAPIImpl.prototype.x): Deleted.
483         (CommandLineAPIImpl.prototype.dir): Deleted.
484         (CommandLineAPIImpl.prototype.dirxml): Deleted.
485         (CommandLineAPIImpl.prototype.keys): Deleted.
486         (CommandLineAPIImpl.prototype.values): Deleted.
487         (CommandLineAPIImpl.prototype.profile): Deleted.
488         (CommandLineAPIImpl.prototype.profileEnd): Deleted.
489         (CommandLineAPIImpl.prototype.table): Deleted.
490         (CommandLineAPIImpl.prototype.screenshot): Deleted.
491         (CommandLineAPIImpl.prototype.monitorEvents): Deleted.
492         (CommandLineAPIImpl.prototype.unmonitorEvents): Deleted.
493         (CommandLineAPIImpl.prototype.inspect): Deleted.
494         (CommandLineAPIImpl.prototype.queryInstances): Deleted.
495         (CommandLineAPIImpl.prototype.queryObjects): Deleted.
496         (CommandLineAPIImpl.prototype.queryHolders): Deleted.
497         (CommandLineAPIImpl.prototype.copy): Deleted.
498         (CommandLineAPIImpl.prototype.clear): Deleted.
499         (CommandLineAPIImpl.prototype.getEventListeners): Deleted.
500         (CommandLineAPIImpl.prototype._inspectedObject): Deleted.
501         (CommandLineAPIImpl.prototype._normalizeEventTypes): Deleted.
502         (CommandLineAPIImpl.prototype._logEvent): Deleted.
503         (CommandLineAPIImpl.prototype._inspect): Deleted.
504
505 2019-08-23  Chris Dumez  <cdumez@apple.com>
506
507         Crash under TimerBase::setNextFireTime() in the NetworkProcess
508         https://bugs.webkit.org/show_bug.cgi?id=201097
509         <rdar://problem/54658339>
510
511         Reviewed by Ryosuke Niwa.
512
513         NetworkStateNotifier is a WebCore/platform class used by both WebKitLegacy and WebKit2 in the NetworkProcess.
514         On iOS, the lambda in the implementation of NetworkStateNotifier::startObserving() may get called by the
515         underlying framework on a non-main thread and we therefore want to go back to the main thread before calling
516         NetworkStateNotifier::singleton().updateStateSoon(). This is important because updateStateSoon() will schedule
517         a WebCore::Timer. The issue is that the code was using WebThreadRun() to go back the the main thread. While
518         this works fine in iOS WK1, it does not do what we want in WebKit2 in the network process. Indeed, before there
519         is no WebThread in the network process, WebThreadRun() will simply run the block on whatever thread we're one.
520         This would lead to crashes when trying to schedule the Timer in updateStateSoon(). To address the issue, we now
521         use callOnMainThread().
522
523         * platform/network/ios/NetworkStateNotifierIOS.mm:
524         (WebCore::NetworkStateNotifier::startObserving):
525
526 2019-08-23  Ryosuke Niwa  <rniwa@webkit.org>
527
528         REGRESSION (r248807): Objects stored in ElementRareData are leaked
529         https://bugs.webkit.org/show_bug.cgi?id=200954
530
531         Reviewed by David Kilzer.
532
533         NodeRareData didn't have a virtual destructor. As a result, member variables
534         of ElementRareData did not get destructed properly.
535
536         * dom/NodeRareData.cpp:
537         * dom/NodeRareData.h:
538         (WebCore::NodeRareData::~NodeRareData):
539
540 2019-08-23  Wenson Hsieh  <wenson_hsieh@apple.com>
541
542         [iOS] [WebKit2] Tapping on the “I’m” text suggestion after typing “i’” does nothing
543         https://bugs.webkit.org/show_bug.cgi?id=201085
544         <rdar://problem/53056118>
545
546         Reviewed by Tim Horton.
547
548         Exposes an existing quote folding function as a helper on TextIterator, and also adjusts foldQuoteMarks to take
549         a const String& rather than a String. See WebKit ChangeLog for more details.
550
551         * editing/TextIterator.cpp:
552         (WebCore::foldQuoteMarks):
553         (WebCore::SearchBuffer::SearchBuffer):
554         * editing/TextIterator.h:
555
556 2019-08-23  Youenn Fablet  <youenn@apple.com>
557
558         Remove IDBDatabaseIdentifier::m_mainFrameOrigin
559         https://bugs.webkit.org/show_bug.cgi?id=201078
560
561         Reviewed by Darin Adler.
562
563         No change of behavior.
564
565         * Modules/indexeddb/IDBDatabaseIdentifier.h:
566
567 2019-08-23  Chris Dumez  <cdumez@apple.com>
568
569         [geolocation] Rename interfaces and remove [NoInterfaceObject]
570         https://bugs.webkit.org/show_bug.cgi?id=200885
571
572         Reviewed by Alex Christensen.
573
574         Rename Geolocation interfaces and expose them on the global Window object to match the
575         latest specification:
576         - https://w3c.github.io/geolocation-api/#api_description
577
578         Test: fast/dom/Geolocation/exposed-geolocation-interfaces.html
579
580         * CMakeLists.txt:
581         * DerivedSources-input.xcfilelist:
582         * DerivedSources-output.xcfilelist:
583         * DerivedSources.make:
584         * Headers.cmake:
585         * Modules/geolocation/GeoNotifier.cpp:
586         (WebCore::GeoNotifier::setFatalError):
587         (WebCore::GeoNotifier::runSuccessCallback):
588         (WebCore::GeoNotifier::runErrorCallback):
589         (WebCore::GeoNotifier::timerFired):
590         * Modules/geolocation/GeoNotifier.h:
591         * Modules/geolocation/Geolocation.cpp:
592         (WebCore::createGeolocationPosition):
593         (WebCore::createGeolocationPositionError):
594         (WebCore::Geolocation::lastPosition):
595         (WebCore::Geolocation::startRequest):
596         (WebCore::Geolocation::requestUsesCachedPosition):
597         (WebCore::Geolocation::makeCachedPositionCallbacks):
598         (WebCore::Geolocation::haveSuitableCachedPosition):
599         (WebCore::Geolocation::setIsAllowed):
600         (WebCore::Geolocation::sendError):
601         (WebCore::Geolocation::sendPosition):
602         (WebCore::Geolocation::cancelRequests):
603         (WebCore::Geolocation::handleError):
604         (WebCore::Geolocation::makeSuccessCallbacks):
605         (WebCore::Geolocation::positionChanged):
606         (WebCore::Geolocation::setError):
607         (WebCore::Geolocation::handlePendingPermissionNotifiers):
608         * Modules/geolocation/Geolocation.h:
609         * Modules/geolocation/Geolocation.idl:
610         * Modules/geolocation/GeolocationClient.h:
611         * Modules/geolocation/GeolocationController.cpp:
612         (WebCore::GeolocationController::positionChanged):
613         (WebCore::GeolocationController::lastPosition):
614         * Modules/geolocation/GeolocationController.h:
615         * Modules/geolocation/GeolocationCoordinates.cpp: Renamed from Source/WebCore/Modules/geolocation/Coordinates.cpp.
616         (WebCore::GeolocationCoordinates::GeolocationCoordinates):
617         * Modules/geolocation/GeolocationCoordinates.h: Renamed from Source/WebCore/Modules/geolocation/Coordinates.h.
618         (WebCore::GeolocationCoordinates::create):
619         (WebCore::GeolocationCoordinates::isolatedCopy const):
620         * Modules/geolocation/GeolocationCoordinates.idl: Renamed from Source/WebCore/Modules/geolocation/Coordinates.idl.
621         * Modules/geolocation/GeolocationPosition.h:
622         (WebCore::GeolocationPosition::create):
623         (WebCore::GeolocationPosition::isolatedCopy const):
624         (WebCore::GeolocationPosition::timestamp const):
625         (WebCore::GeolocationPosition::coords const):
626         (WebCore::GeolocationPosition::GeolocationPosition):
627         * Modules/geolocation/GeolocationPosition.idl: Renamed from Source/WebCore/Modules/geolocation/Geoposition.idl.
628         * Modules/geolocation/GeolocationPositionData.h: Copied from Source/WebCore/Modules/geolocation/GeolocationPosition.h.
629         (WebCore::GeolocationPositionData::GeolocationPositionData):
630         (WebCore::GeolocationPositionData::encode const):
631         (WebCore::GeolocationPositionData::decode):
632         (WebCore::GeolocationPositionData::isValid const):
633         * Modules/geolocation/GeolocationPositionError.h: Renamed from Source/WebCore/Modules/geolocation/PositionError.h.
634         (WebCore::GeolocationPositionError::create):
635         (WebCore::GeolocationPositionError::GeolocationPositionError):
636         * Modules/geolocation/GeolocationPositionError.idl: Renamed from Source/WebCore/Modules/geolocation/PositionError.idl.
637         * Modules/geolocation/Geoposition.h: Removed.
638         * Modules/geolocation/PositionCallback.h:
639         * Modules/geolocation/PositionCallback.idl:
640         * Modules/geolocation/PositionErrorCallback.h:
641         * Modules/geolocation/PositionErrorCallback.idl:
642         * Modules/geolocation/ios/GeolocationPositionDataIOS.mm: Renamed from Source/WebCore/Modules/geolocation/ios/GeolocationPositionIOS.mm.
643         (WebCore::GeolocationPositionData::GeolocationPositionData):
644         * Sources.txt:
645         * WebCore.xcodeproj/project.pbxproj:
646         * platform/mock/GeolocationClientMock.cpp:
647         (WebCore::GeolocationClientMock::setPosition):
648         (WebCore::GeolocationClientMock::lastPosition):
649         * platform/mock/GeolocationClientMock.h:
650
651 2019-08-20  Jiewen Tan  <jiewen_tan@apple.com>
652
653         [WebAuthn] Support NFC authenticators for iOS
654         https://bugs.webkit.org/show_bug.cgi?id=188624
655         <rdar://problem/43354214>
656
657         Reviewed by Chris Dumez.
658
659         Tests: http/wpt/webauthn/ctap-nfc-failure.https.html
660                http/wpt/webauthn/public-key-credential-create-failure-nfc.https.html
661                http/wpt/webauthn/public-key-credential-create-success-nfc.https.html
662                http/wpt/webauthn/public-key-credential-get-failure-nfc.https.html
663                http/wpt/webauthn/public-key-credential-get-success-nfc.https.html
664
665         * Modules/webauthn/apdu/ApduResponse.h:
666         Adds a new method to support moving m_data.
667         * Modules/webauthn/fido/FidoConstants.h:
668         Adds constants for NFC applet selection.
669
670 2019-08-23  Ross Kirsling  <ross.kirsling@sony.com>
671
672         JSC should have public API for unhandled promise rejections
673         https://bugs.webkit.org/show_bug.cgi?id=197172
674
675         Reviewed by Keith Miller.
676
677         * bindings/js/JSDOMGlobalObject.cpp:
678         (WebCore::JSDOMGlobalObject::promiseRejectionTracker):
679         Move JSInternalPromise early-out to JSC side.
680
681 2019-08-23  Kate Cheney  <katherine_cheney@apple.com>
682
683         Support ITP on a per-session basis (198923)
684         https://bugs.webkit.org/show_bug.cgi?id=198923
685
686         Reviewed by Chris Dumez.
687
688         This patch updated the data structure used to collect resource load
689         statistics in order to support ITP data collection on a per session
690         basis. Each sessionID is stored as a key-value pair with its own map
691         of ResourceLoadStatistics.
692
693         It also updated the statisticsForURL function call to perform lookups
694         of URL data based on sessionID.
695
696         * loader/ResourceLoadObserver.cpp:
697         (WebCore::ResourceLoadObserver::setStatisticsUpdatedCallback):
698         (WebCore::ResourceLoadObserver::shouldLog const):
699         (WebCore::ResourceLoadObserver::logSubresourceLoading):
700         (WebCore::ResourceLoadObserver::logWebSocketLoading):
701         (WebCore::ResourceLoadObserver::logUserInteractionWithReducedTimeResolution):
702         (WebCore::ResourceLoadObserver::logFontLoad):
703         (WebCore::ResourceLoadObserver::logCanvasRead):
704         (WebCore::ResourceLoadObserver::logCanvasWriteOrMeasure):
705         (WebCore::ResourceLoadObserver::logNavigatorAPIAccessed):
706         (WebCore::ResourceLoadObserver::logScreenAPIAccessed):
707         (WebCore::ResourceLoadObserver::ensureResourceStatisticsForRegistrableDomain):
708         (WebCore::ResourceLoadObserver::statisticsForURL):
709         (WebCore::ResourceLoadObserver::takeStatistics):
710         (WebCore::ResourceLoadObserver::clearState):
711         * loader/ResourceLoadObserver.h:
712         * testing/Internals.cpp:
713         (WebCore::Internals::resourceLoadStatisticsForURL):
714
715 2019-08-23  Simon Fraser  <simon.fraser@apple.com>
716
717         Remove unnecessary call to enclosingClippingScopes()
718         https://bugs.webkit.org/show_bug.cgi?id=201063
719
720         Reviewed by Zalan Bujtas.
721
722         This line of code did nothing, and was left in by mistake. Remove it.
723
724         * rendering/RenderLayerCompositor.cpp:
725         (WebCore::RenderLayerCompositor::updateOverlapMap const):
726
727 2019-08-23  Simon Fraser  <simon.fraser@apple.com>
728
729         Cache hasCompositedScrollableOverflow as a bit on RenderLayer
730         https://bugs.webkit.org/show_bug.cgi?id=201065
731
732         Reviewed by Zalan Bujtas.
733
734         hasCompositedScrollableOverflow() is pretty hot on some compositing-related code paths, and isn't
735         super cheap, as it checks a Setting and calls into renderer code. Optimize by computing it in
736         computeScrollDimensions().
737
738         * rendering/RenderLayer.cpp:
739         (WebCore::RenderLayer::RenderLayer):
740         (WebCore::RenderLayer::hasCompositedScrollableOverflow const):
741         (WebCore::RenderLayer::computeScrollDimensions):
742         * rendering/RenderLayer.h:
743
744 2019-08-23  Simon Fraser  <simon.fraser@apple.com>
745
746         Don't call clipCrossesPaintingBoundary() when not necessary
747         https://bugs.webkit.org/show_bug.cgi?id=201064
748
749         Reviewed by Zalan Bujtas.
750
751         clipCrossesPaintingBoundary() does some RenderLayer ancestor walks, so avoid
752         calling it when we already know that the clip rects are TemporaryClipRects.
753
754         * rendering/RenderLayer.cpp:
755         (WebCore::RenderLayer::calculateClipRects const):
756
757 2019-08-23  Philippe Normand  <pnormand@igalia.com>
758
759         [GStreamer] Hole-punch build is broken
760         https://bugs.webkit.org/show_bug.cgi?id=200972
761
762         Reviewed by Žan Doberšek.
763
764         This patch fixes link issues when building with
765         USE_GSTREAMER_HOLEPUNCH enabled, the hole punch client destructor
766         was missing.
767
768         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
769         Remove FAST_ALLOCATED annotation, because:
770         * platform/graphics/texmap/TextureMapperPlatformLayerBuffer.h:
771         it's now in the base class, along with a default destructor.
772
773 2019-08-22  Fujii Hironori  <Hironori.Fujii@sony.com>
774
775         [SVG] -webkit-clip-path treats url(abc#xyz) as url(#xyz) because it checks only URL fragment part
776         https://bugs.webkit.org/show_bug.cgi?id=201030
777
778         Reviewed by Ryosuke Niwa.
779
780         Tests: svg/clip-path/clip-path-invalid-reference-001-expected.svg
781                svg/clip-path/clip-path-invalid-reference-001.svg
782                svg/clip-path/clip-path-invalid-reference-002-expected.svg
783                svg/clip-path/clip-path-invalid-reference-002.svg
784
785         * css/StyleBuilderConverter.h:
786         (WebCore::StyleBuilderConverter::convertClipPath): Use
787         SVGURIReference::fragmentIdentifierFromIRIString to get fragment
788         identifier from -webkit-clip-path.
789
790 2019-08-22  Andy Estes  <aestes@apple.com>
791
792         [watchOS] Disable Content Filtering in the simulator build
793         https://bugs.webkit.org/show_bug.cgi?id=201047
794
795         Reviewed by Tim Horton.
796
797         * Configurations/FeatureDefines.xcconfig:
798
799 2019-08-22  Chris Dumez  <cdumez@apple.com>
800
801         Try to recover nicely when getting an unexpected schema in the service workers database
802         https://bugs.webkit.org/show_bug.cgi?id=201002
803         <rdar://problem/54574991>
804
805         Reviewed by Youenn Fablet.
806
807         Try to recover nicely when getting an unexpected schema in the service workers database instead
808         of crashing the network process. To recover, we delete the database file and re-create it.
809
810         * workers/service/server/RegistrationDatabase.cpp:
811         (WebCore::RegistrationDatabase::openSQLiteDatabase):
812         (WebCore::RegistrationDatabase::ensureValidRecordsTable):
813
814 2019-08-22  Said Abou-Hallawa  <sabouhallawa@apple.com>
815
816         Crash may happen when an SVG <feImage> element references the root <svg> element
817         https://bugs.webkit.org/show_bug.cgi?id=201014
818
819         Reviewed by Ryosuke Niwa.
820
821         When an <feImage> references an <svg> element as its target image but
822         this <svg> element is also one of the ancestors of the <feImage>, the
823         parent <filter> should not be applied.
824
825         Test: svg/filters/filter-image-ref-root.html
826
827         * svg/SVGFEImageElement.cpp:
828         (WebCore::SVGFEImageElement::build const):
829
830 2019-08-22  Ryosuke Niwa  <rniwa@webkit.org>
831
832         Make ImageBuffer and SVG's FilterData isoheap'ed
833         https://bugs.webkit.org/show_bug.cgi?id=201029
834
835         Reviewed by Simon Fraser.
836
837         Made ImageBuffer and RenderSVGResourceFilter use IsoHeap.
838
839         * platform/graphics/ImageBuffer.cpp:
840         * platform/graphics/ImageBuffer.h:
841         * rendering/svg/RenderSVGResourceFilter.cpp:
842         * rendering/svg/RenderSVGResourceFilter.h:
843
844 2019-08-22  Adrian Perez de Castro  <aperez@igalia.com>
845
846         [GTK][WPE] Fixes for non-unified builds after r248547
847         https://bugs.webkit.org/show_bug.cgi?id=201044
848
849         Reviewed by Philippe Normand.
850
851         * platform/audio/AudioResamplerKernel.h: Add missing inclusion of wtf/Noncopyable.h
852
853 2019-08-22  Youenn Fablet  <youenn@apple.com>
854
855         Make MediaStreamTrackPrivate WeakPtrFactoryInitialization::Eager
856         https://bugs.webkit.org/show_bug.cgi?id=201037
857
858         Reviewed by Darin Adler.
859
860         No change of behavior, replacing m_weakThis by the more convenient Eager.
861
862         * platform/mediastream/MediaStreamTrackPrivate.cpp:
863         (WebCore::MediaStreamTrackPrivate::audioSamplesAvailable):
864         (WebCore::MediaStreamTrackPrivate::MediaStreamTrackPrivate): Deleted.
865         * platform/mediastream/MediaStreamTrackPrivate.h:
866
867 2019-08-17  Darin Adler  <darin@apple.com>
868
869         Use makeString and multi-argument StringBuilder::append instead of less efficient multiple appends
870         https://bugs.webkit.org/show_bug.cgi?id=200862
871
872         Reviewed by Ryosuke Niwa.
873
874         * Modules/indexeddb/shared/IDBDatabaseInfo.cpp:
875         (WebCore::IDBDatabaseInfo::loggingString const): Use one append instead of multiple.
876         * Modules/indexeddb/shared/IDBObjectStoreInfo.cpp:
877         (WebCore::IDBObjectStoreInfo::loggingString const): Ditto.
878         * Modules/mediastream/libwebrtc/LibWebRTCUtils.cpp:
879         (WebCore::toRTCCodecParameters): Ditto.
880         * Modules/plugins/YouTubePluginReplacement.cpp:
881         (WebCore::YouTubePluginReplacement::youTubeURLFromAbsoluteURL): Ditto.
882         * Modules/webdatabase/DatabaseTracker.cpp:
883         (WebCore::generateDatabaseFileName): Ditto.
884         * Modules/websockets/WebSocketExtensionDispatcher.cpp:
885         (WebCore::WebSocketExtensionDispatcher::createHeaderValue const): Ditto.
886         (WebCore::WebSocketExtensionDispatcher::appendAcceptedExtension): Ditto.
887
888         * Modules/websockets/WebSocketHandshake.cpp:
889         (WebCore::WebSocketHandshake::clientLocation const): Use makeString instead of
890         StringBuilder.
891
892         * bindings/js/JSDOMExceptionHandling.cpp:
893         (WebCore::appendArgumentMustBe): Use one append instead of multiple.
894         (WebCore::throwArgumentMustBeEnumError): Ditto.
895         (WebCore::throwArgumentTypeError): Ditto.
896         * contentextensions/CombinedURLFilters.cpp:
897         (WebCore::ContentExtensions::recursivePrint): Ditto.
898         * css/CSSBasicShapes.cpp:
899         (WebCore::buildCircleString): Ditto.
900         (WebCore::buildEllipseString): Ditto.
901         (WebCore::buildPolygonString): Ditto.
902         (WebCore::buildInsetString): Ditto.
903
904         * css/CSSCalculationValue.cpp:
905         (WebCore::buildCssText): Deleted.
906         (WebCore::CSSCalcValue::customCSSText const): Use makeString.
907
908         * css/CSSComputedStyleDeclaration.cpp:
909         (WebCore::CSSComputedStyleDeclaration::cssText const): Use one append instead of multiple.
910
911         * css/CSSCrossfadeValue.cpp:
912         (WebCore::CSSCrossfadeValue::customCSSText const): Use makeString.
913         * css/CSSFilterImageValue.cpp:
914         (WebCore::CSSFilterImageValue::customCSSText const): Ditto.
915         * css/CSSFontFaceRule.cpp:
916         (WebCore::CSSFontFaceRule::cssText const): Ditto.
917         * css/CSSFontFaceSrcValue.cpp:
918         (WebCore::CSSFontFaceSrcValue::customCSSText const): Ditto.
919
920         * css/CSSGradientValue.cpp:
921         (WebCore::appendGradientStops): Moved code here from CSSLinearGradientValue::customCSSText
922         so it can be shared with CSSRadialGradientValue::customCSSText. Use one append per stop.
923         (WebCore::CSSLinearGradientValue::customCSSText const): Use one append instead of multiple.
924         (WebCore::CSSRadialGradientValue::customCSSText const): Ditto.
925         (WebCore::CSSConicGradientValue::customCSSText const): Ditto.
926         * css/CSSMediaRule.cpp:
927         (WebCore::CSSMediaRule::cssText const): Ditto.
928         * css/CSSNamespaceRule.cpp:
929         (WebCore::CSSNamespaceRule::cssText const): Ditto.
930
931         * css/CSSPageRule.cpp:
932         (WebCore::CSSPageRule::selectorText const): Use makeString.
933
934         * css/CSSPrimitiveValue.cpp:
935         (WebCore::CSSPrimitiveValue::formatNumberForCustomCSSText const):
936         Use one append instead of multiple.
937
938         * css/CSSPropertySourceData.cpp:
939         (WebCore::CSSPropertySourceData::CSSPropertySourceData): Initialize in the
940         structure definition instead of the constructor.
941         (WebCore::CSSPropertySourceData::toString const): Use makeString.
942         * css/CSSPropertySourceData.h: Initialize in the structure definition.
943
944         * css/CSSStyleRule.cpp:
945         (WebCore::CSSStyleRule::cssText const): Use makeString.
946
947         * css/parser/CSSParser.cpp:
948         (WebCore::CSSParser::parseFontFaceDescriptor): Use makeString.
949
950         * html/canvas/CanvasRenderingContext2D.cpp:
951         (WebCore::CanvasRenderingContext2D::font const): Use one append instead of multiple.
952
953 2019-08-22  Kai Ninomiya  <kainino@chromium.org>
954
955         Pass conformance/attribs WebGL conformance tests
956         https://bugs.webkit.org/show_bug.cgi?id=200901
957
958         Reviewed by Alex Christensen.
959
960         Tested by
961         LayoutTests/webgl/*/conformance/attribs/gl-vertexattribpointer.html,
962         LayoutTests/webgl/2.0.0/conformance/more/functions/vertexAttribPointerBadArgs.html,
963         and other conformance/attribs/* tests not included in LayoutTests.
964         LayoutTests/webgl/1.0.2/conformance/more/functions/vertexAttribPointerBadArgs.html
965         fails as expected because it is an old snapshot of an incorrect test.
966
967         * html/canvas/WebGLRenderingContextBase.cpp:
968         (WebCore::WebGLRenderingContextBase::validateVertexAttributes):
969         (WebCore::WebGLRenderingContextBase::vertexAttribPointer):
970         * html/canvas/WebGLVertexArrayObjectBase.cpp:
971         (WebCore::WebGLVertexArrayObjectBase::setVertexAttribState):
972         * html/canvas/WebGLVertexArrayObjectBase.h:
973
974 2019-08-22  Wenson Hsieh  <wenson_hsieh@apple.com>
975
976         Typing Korean in title field after typing in the body inserts extraneous characters on blog.naver.com
977         https://bugs.webkit.org/show_bug.cgi?id=201023
978         <rdar://problem/54294794>
979
980         Reviewed by Ryosuke Niwa.
981
982         Ensures that we recognize the blog editor on blog.naver.com to be a hidden editable area. This website places
983         focus inside an editable body element of a subframe that is completely empty (width: 0 and border: 0). See the
984         WebKit ChangeLog for more details.
985
986         Test: editing/selection/ios/do-not-show-selection-in-empty-borderless-subframe.html
987
988         * rendering/RenderLayer.cpp:
989         (WebCore::RenderLayer::calculateClipRects const):
990
991 2019-08-22  Youenn Fablet  <youenn@apple.com>
992
993         CaptureDeviceManager does not need to be CanMakeWeakPtr
994         https://bugs.webkit.org/show_bug.cgi?id=200936
995
996         Reviewed by Alex Christensen.
997
998         CaptureDeviceManager does not need to create a weak pointer in deviceChanged
999         since it directly calls RealtimeMediaSourceCenter singleton.
1000
1001         CoreAudioCaptureDeviceManager does not need to create a weak pointer since its only
1002         instance is NeverDestroyed.
1003         No change of behavior.
1004
1005         * platform/mediastream/CaptureDeviceManager.cpp:
1006         (WebCore::CaptureDeviceManager::deviceChanged):
1007         * platform/mediastream/CaptureDeviceManager.h:
1008         * platform/mediastream/mac/CoreAudioCaptureDeviceManager.cpp:
1009         (WebCore::createAudioObjectPropertyListenerBlock):
1010         (WebCore::CoreAudioCaptureDeviceManager::coreAudioCaptureDevices):
1011         (WebCore::CoreAudioCaptureDeviceManager::refreshAudioCaptureDevices):
1012         * platform/mediastream/mac/CoreAudioCaptureDeviceManager.h:
1013
1014 2019-08-22  Chris Dumez  <cdumez@apple.com>
1015
1016         Fix unsafe usage of MediaStreamTrackPrivate from background thread in MediaStreamTrackPrivate::audioSamplesAvailable()
1017         https://bugs.webkit.org/show_bug.cgi?id=200924
1018
1019         Reviewed by Youenn Fablet.
1020
1021         MediaStreamTrackPrivate is constructed / destructed on the main thread but its MediaStreamTrackPrivate::audioSamplesAvailable()
1022         gets called on a background thread. The audioSamplesAvailable() method may get called until the MediaStreamTrackPrivate
1023         destructor unregisters |this| as an observer from m_source. Event though MediaStreamTrackPrivate subclasses ThreadSafeRefCounted,
1024         ref'ing |this| on the background thread inside audioSamplesAvailable() is still unsafe as the destructor may already be running
1025         on the main thread.
1026
1027         * platform/mediastream/MediaStreamTrackPrivate.cpp:
1028         (WebCore::MediaStreamTrackPrivate::MediaStreamTrackPrivate):
1029         (WebCore::MediaStreamTrackPrivate::~MediaStreamTrackPrivate):
1030         (WebCore::MediaStreamTrackPrivate::audioSamplesAvailable):
1031         * platform/mediastream/MediaStreamTrackPrivate.h:
1032
1033 2019-08-22  Fujii Hironori  <Hironori.Fujii@sony.com>
1034
1035         Remove the dead code of ScalableImageDecoder for scaling
1036         https://bugs.webkit.org/show_bug.cgi?id=200498
1037
1038         Reviewed by Daniel Bates.
1039
1040         No ports are using the down scaling feature of
1041         ScalableImageDecoder now. Removed it.
1042
1043         No behavior change.
1044
1045         * platform/image-decoders/ScalableImageDecoder.cpp:
1046         (WebCore::ScalableImageDecoder::prepareScaleDataIfNecessary): Deleted.
1047         (WebCore::ScalableImageDecoder::upperBoundScaledX): Deleted.
1048         (WebCore::ScalableImageDecoder::lowerBoundScaledX): Deleted.
1049         (WebCore::ScalableImageDecoder::upperBoundScaledY): Deleted.
1050         (WebCore::ScalableImageDecoder::lowerBoundScaledY): Deleted.
1051         (WebCore::ScalableImageDecoder::scaledY): Deleted.
1052         * platform/image-decoders/ScalableImageDecoder.h:
1053         (WebCore::ScalableImageDecoder::scaledSize): Deleted.
1054         * platform/image-decoders/gif/GIFImageDecoder.cpp:
1055         (WebCore::GIFImageDecoder::setSize):
1056         (WebCore::GIFImageDecoder::findFirstRequiredFrameToDecode):
1057         (WebCore::GIFImageDecoder::haveDecodedRow):
1058         (WebCore::GIFImageDecoder::frameComplete):
1059         (WebCore::GIFImageDecoder::initFrameBuffer):
1060         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
1061         (WebCore::JPEGImageDecoder::outputScanlines):
1062         (WebCore::JPEGImageDecoder::setSize): Deleted.
1063         * platform/image-decoders/jpeg/JPEGImageDecoder.h:
1064         * platform/image-decoders/jpeg2000/JPEG2000ImageDecoder.cpp:
1065         (WebCore::JPEG2000ImageDecoder::decode):
1066         * platform/image-decoders/png/PNGImageDecoder.cpp:
1067         (WebCore::PNGImageDecoder::rowAvailable):
1068         (WebCore::PNGImageDecoder::initFrameBuffer):
1069         (WebCore::PNGImageDecoder::frameComplete):
1070         (WebCore::PNGImageDecoder::setSize): Deleted.
1071         * platform/image-decoders/png/PNGImageDecoder.h:
1072
1073 2019-08-21  Jer Noble  <jer.noble@apple.com>
1074
1075         Unreviewed build fix; add a 'final' declaration on shouldOverridePauseDuringRouteChange().
1076
1077         * Modules/mediastream/MediaStream.h:
1078
1079 2019-08-21  Saam Barati  <sbarati@apple.com>
1080
1081         [WHLSL] Improve default constructor and emit fewer pointers in metal codegen
1082         https://bugs.webkit.org/show_bug.cgi?id=200995
1083
1084         Reviewed by Myles C. Maxfield.
1085
1086         This patch makes it so that we:
1087         1. Emit less code for copy constructors by omitting an unused variable.
1088         2. Emit ternary expressions instead of if statements for conditional assignments.
1089         3. Don't copy pointers for producing an lvalue from DereferenceExpression.
1090         4. Lazily produce lvalues for GlobalVariableReference.
1091
1092         * Modules/webgpu/WHLSL/Metal/WHLSLFunctionWriter.cpp:
1093         (WebCore::WHLSL::Metal::FunctionDefinitionWriter::visit):
1094         * Modules/webgpu/WHLSL/Metal/WHLSLNativeFunctionWriter.cpp:
1095         (WebCore::WHLSL::Metal::inlineNativeFunction):
1096
1097 2019-08-21  Myles C. Maxfield  <mmaxfield@apple.com>
1098
1099         [WHLSL] Vertex shader and fragment shader need to be able to come from two different programs
1100         https://bugs.webkit.org/show_bug.cgi?id=195446
1101
1102         Reviewed by Saam Barati.
1103
1104         When an author configures WebGPU to render things, the author provides a vertex shader and a fragment
1105         shader, and they both execute within the same draw call. It's common for authors coming from WebGL to
1106         put the two shaders in distinct files. Until this patch, WHLSL was unable to process two shaders from
1107         different sources which were meant to be hooked together.
1108
1109         The first thing this patch does is add the notion of a "shader module" to the WHLSL compiler. This
1110         represents the source code containing one or more shaders. When the author wants to actually compile
1111         their source, they supply one or more shader modules to the compiler. The compiler then looks in the
1112         first module for the vertex shader and the second module for the fragment shader. The two modules are
1113         passed by reference, so they may refer to the same underlying object, which is supported.
1114
1115         Shader modules have this interesting behavior where, within a shader module, funtion / type names may
1116         refer to each other, but may not refer to any other name within any other shader module. They behave
1117         as if all the names inside the module are not exported. So, it would seem that the most natural way to
1118         support this would be to run the WHLSL compiler and the MSL compiler twice independently, once for each
1119         module. However, this means that our compile times would double, which would be unfortunate. Instead,
1120         a more performant option would be to make the WHLSL compiler smart enough to handle multiple shader
1121         modules at once, and to produce a single merged output program that contains everything. It does this
1122         by parsing all the shader modules into a single Program object, but remembering which items in the 
1123         Program came from which places.
1124
1125         This is implemented by teaching the WHLSL compiler about "namespaces." There are three namespaces: one
1126         for each shader module, and an additional one for the standard library. Every global object (e.g.
1127         named types and functions) knows which namespace it lives inside. The NameResolver has been educated
1128         to understand namespaces, so when you ask it for a name in a particular namespace, it will look up
1129         all the names both in that namespace and in the standard library's namespace, and it will union the
1130         results together.
1131
1132         Function overload resolution doesn't actually go through the name resolver; instead, it's handled by
1133         sorting all functions into buckets such that any CallExpression only has to look in a single bucket
1134         to find all its potential overloads. These buckets can't be educated about namespaces (consider a
1135         function which has overloads in all 3 namespaces that is called from both shader modules - all the
1136         overloads must end up in the same bucket). Therefore, this logic is moved into
1137         resolveFunctionOverload(), which will now disregard candidate functions if they are in an inaccessible 
1138         namespace.
1139
1140         Tests: webgpu/whlsl/separate-shader-modules/separate-shader-modules-10.html
1141                webgpu/whlsl/separate-shader-modules/separate-shader-modules-11.html
1142                webgpu/whlsl/separate-shader-modules/separate-shader-modules-12.html
1143                webgpu/whlsl/separate-shader-modules/separate-shader-modules-13.html
1144                webgpu/whlsl/separate-shader-modules/separate-shader-modules-14.html
1145                webgpu/whlsl/separate-shader-modules/separate-shader-modules-15.html
1146                webgpu/whlsl/separate-shader-modules/separate-shader-modules-16.html
1147                webgpu/whlsl/separate-shader-modules/separate-shader-modules-17.html
1148                webgpu/whlsl/separate-shader-modules/separate-shader-modules-18.html
1149                webgpu/whlsl/separate-shader-modules/separate-shader-modules-19.html
1150                webgpu/whlsl/separate-shader-modules/separate-shader-modules-2.html
1151                webgpu/whlsl/separate-shader-modules/separate-shader-modules-20.html
1152                webgpu/whlsl/separate-shader-modules/separate-shader-modules-21.html
1153                webgpu/whlsl/separate-shader-modules/separate-shader-modules-22.html
1154                webgpu/whlsl/separate-shader-modules/separate-shader-modules-23.html
1155                webgpu/whlsl/separate-shader-modules/separate-shader-modules-24.html
1156                webgpu/whlsl/separate-shader-modules/separate-shader-modules-25.html
1157                webgpu/whlsl/separate-shader-modules/separate-shader-modules-26.html
1158                webgpu/whlsl/separate-shader-modules/separate-shader-modules-27.html
1159                webgpu/whlsl/separate-shader-modules/separate-shader-modules-3.html
1160                webgpu/whlsl/separate-shader-modules/separate-shader-modules-4.html
1161                webgpu/whlsl/separate-shader-modules/separate-shader-modules-5.html
1162                webgpu/whlsl/separate-shader-modules/separate-shader-modules-6.html
1163                webgpu/whlsl/separate-shader-modules/separate-shader-modules-7.html
1164                webgpu/whlsl/separate-shader-modules/separate-shader-modules-8.html
1165                webgpu/whlsl/separate-shader-modules/separate-shader-modules-9.html
1166                webgpu/whlsl/separate-shader-modules/separate-shader-modules.html
1167
1168         * Modules/webgpu/WHLSL/AST/WHLSLFunctionDeclaration.h:
1169         (WebCore::WHLSL::AST::FunctionDeclaration::nameSpace const):
1170         (WebCore::WHLSL::AST::FunctionDeclaration::setNameSpace):
1171         * Modules/webgpu/WHLSL/AST/WHLSLNameSpace.h: Copied from Source/WebCore/Modules/webgpu/WHLSL/WHLSLStandardLibraryUtilities.h.
1172         * Modules/webgpu/WHLSL/AST/WHLSLNamedType.h:
1173         (WebCore::WHLSL::AST::NamedType::nameSpace const):
1174         (WebCore::WHLSL::AST::NamedType::setNameSpace):
1175         * Modules/webgpu/WHLSL/Metal/WHLSLFunctionWriter.cpp:
1176         (WebCore::WHLSL::Metal::emitMetalFunctions):
1177         * Modules/webgpu/WHLSL/WHLSLCheckDuplicateFunctions.cpp:
1178         (WebCore::WHLSL::DuplicateFunctionKey::operator== const):
1179         * Modules/webgpu/WHLSL/WHLSLChecker.cpp:
1180         (WebCore::WHLSL::FunctionKey::operator== const):
1181         (WebCore::WHLSL::checkOperatorOverload):
1182         (WebCore::WHLSL::Checker::checkShaderType):
1183         (WebCore::WHLSL::Checker::visit):
1184         (WebCore::WHLSL::Checker::resolveFunction):
1185         * Modules/webgpu/WHLSL/WHLSLLexer.cpp:
1186         * Modules/webgpu/WHLSL/WHLSLNameContext.cpp:
1187         (WebCore::WHLSL::NameContext::add):
1188         (WebCore::WHLSL::NameContext::getTypes):
1189         (WebCore::WHLSL::NameContext::getFunctions):
1190         (WebCore::WHLSL::NameContext::searchTypes const):
1191         (WebCore::WHLSL::NameContext::searchFunctions const):
1192         (WebCore::WHLSL::NameContext::globalExists const):
1193         (WebCore::WHLSL::NameContext::localExists const):
1194         (WebCore::WHLSL::NameContext::exists): Deleted.
1195         * Modules/webgpu/WHLSL/WHLSLNameContext.h:
1196         (WebCore::WHLSL::NameContext::setCurrentNameSpace):
1197         * Modules/webgpu/WHLSL/WHLSLNameResolver.cpp:
1198         (WebCore::WHLSL::NameResolver::NameResolver):
1199         (WebCore::WHLSL::NameResolver::visit):
1200         (WebCore::WHLSL::resolveNamesInTypes):
1201         (WebCore::WHLSL::resolveTypeNamesInFunctions):
1202         * Modules/webgpu/WHLSL/WHLSLNameResolver.h:
1203         (WebCore::WHLSL::NameResolver::setCurrentNameSpace):
1204         * Modules/webgpu/WHLSL/WHLSLParser.cpp:
1205         (WebCore::WHLSL::Parser::parse):
1206         (WebCore::WHLSL::Parser::fail):
1207         (WebCore::WHLSL::Parser::consumeIntegralLiteral):
1208         (WebCore::WHLSL::Parser::consumeNonNegativeIntegralLiteral):
1209         (WebCore::WHLSL::Parser::parseConstantExpression):
1210         (WebCore::WHLSL::Parser::parseTypeSuffixAbbreviated):
1211         (WebCore::WHLSL::Parser::parseTypeSuffixNonAbbreviated):
1212         (WebCore::WHLSL::Parser::parseBuiltInSemantic):
1213         (WebCore::WHLSL::Parser::parseResourceSemantic):
1214         (WebCore::WHLSL::Parser::parseStageInOutSemantic):
1215         (WebCore::WHLSL::Parser::parseEnumerationDefinition):
1216         (WebCore::WHLSL::Parser::parseEnumerationMember):
1217         (WebCore::WHLSL::Parser::parseNumThreadsFunctionAttribute):
1218         (WebCore::WHLSL::Parser::parseVertexOrFragmentFunctionDeclaration):
1219         (WebCore::WHLSL::Parser::parseRegularFunctionDeclaration):
1220         (WebCore::WHLSL::Parser::parseSwitchCase):
1221         (WebCore::WHLSL::Parser::parseForLoop):
1222         (WebCore::WHLSL::Parser::parseVariableDeclarations):
1223         (WebCore::WHLSL::Parser::completeAssignment):
1224         (WebCore::WHLSL::Parser::parsePossibleTernaryConditional):
1225         (WebCore::WHLSL::Parser::parseTerm):
1226         * Modules/webgpu/WHLSL/WHLSLPrepare.cpp:
1227         (WebCore::WHLSL::ShaderModule::ShaderModule):
1228         (WebCore::WHLSL::createShaderModule):
1229         (WebCore::WHLSL::ShaderModuleDeleter::operator()):
1230         (WebCore::WHLSL::prepareShared):
1231         (WebCore::WHLSL::prepare):
1232         * Modules/webgpu/WHLSL/WHLSLPrepare.h:
1233         * Modules/webgpu/WHLSL/WHLSLProgram.h:
1234         (WebCore::WHLSL::Program::append):
1235         * Modules/webgpu/WHLSL/WHLSLResolveOverloadImpl.cpp:
1236         (WebCore::WHLSL::resolveFunctionOverloadImpl):
1237         (WebCore::WHLSL::resolveFunctionOverload):
1238         * Modules/webgpu/WHLSL/WHLSLResolveOverloadImpl.h:
1239         * Modules/webgpu/WHLSL/WHLSLSemanticMatcher.cpp:
1240         (WebCore::WHLSL::matchSemantics):
1241         (WebCore::WHLSL::findEntryPoint): Deleted.
1242         * Modules/webgpu/WHLSL/WHLSLSemanticMatcher.h:
1243         * Modules/webgpu/WHLSL/WHLSLStandardLibraryUtilities.cpp:
1244         (WebCore::WHLSL::includeStandardLibrary):
1245         * Modules/webgpu/WHLSL/WHLSLStandardLibraryUtilities.h:
1246         * WebCore.xcodeproj/project.pbxproj:
1247         * platform/graphics/gpu/GPUShaderModule.h:
1248         (WebCore::GPUShaderModule::platformShaderModule const):
1249         (WebCore::GPUShaderModule::whlslModule const):
1250         (WebCore::GPUShaderModule::whlslSource const): Deleted.
1251         * platform/graphics/gpu/cocoa/GPUComputePipelineMetal.mm:
1252         (WebCore::trySetFunctions):
1253         (WebCore::convertComputePipelineDescriptor):
1254         * platform/graphics/gpu/cocoa/GPURenderPipelineMetal.mm:
1255         (WebCore::trySetMetalFunctions):
1256         (WebCore::trySetFunctions):
1257         (WebCore::convertRenderPipelineDescriptor):
1258         * platform/graphics/gpu/cocoa/GPUShaderModuleMetal.mm:
1259         (WebCore::GPUShaderModule::tryCreate):
1260         (WebCore::GPUShaderModule::GPUShaderModule):
1261
1262 2019-08-21  Ryosuke Niwa  <rniwa@webkit.org>
1263
1264         SVG element should become focusable when focus and key event listeners are added
1265         https://bugs.webkit.org/show_bug.cgi?id=200997
1266
1267         Reviewed by Said Abou-Hallawa.
1268
1269         This patch removes the odd behavior WebKit (and Blink) browsers had to make SVG elements
1270         with key or focus event listeners focusable. New behavior matches the behavior of Firefox
1271         as well as the SVG 2.0 specification: https://www.w3.org/TR/SVG2/interact.html#Focus
1272
1273         Test: svg/custom/tabindex-order.html
1274
1275         * svg/SVGAElement.cpp:
1276         (WebCore::SVGAElement::supportsFocus const):
1277         * svg/SVGElement.cpp:
1278         (WebCore::SVGElement::hasFocusEventListeners const): Deleted.
1279         (WebCore::SVGElement::isMouseFocusable const): Deleted.
1280         * svg/SVGElement.h:
1281         * svg/SVGGraphicsElement.h:
1282
1283 2019-08-21  Jer Noble  <jer.noble@apple.com>
1284
1285         Adopt AVSystemController_ActiveAudioRouteDidChangeNotification
1286         https://bugs.webkit.org/show_bug.cgi?id=200992
1287         <rdar://problem/54408993>
1288
1289         Reviewed by Eric Carlson.
1290
1291         Follow-up to r248962: When the active audio route changes, and the
1292         system instructs us to pause, only pause the currently audible sessions.
1293
1294         * platform/audio/ios/MediaSessionManagerIOS.h:
1295         * platform/audio/ios/MediaSessionManagerIOS.mm:
1296         (WebCore::MediaSessionManageriOS::activeAudioRouteDidChange):
1297         (-[WebMediaSessionHelper activeAudioRouteDidChange:]):
1298         (WebCore::MediaSessionManageriOS::activeRouteDidChange): Deleted.
1299
1300 2019-08-21  Megan Gardner  <megan_gardner@apple.com>
1301
1302         Do not adjust viewport if editing selection is already visible
1303         https://bugs.webkit.org/show_bug.cgi?id=200907
1304         <rdar://problem/53903417>
1305
1306         Reviewed by Simon Fraser.
1307
1308         Test: fast/scrolling/ios/autoscroll-input-when-very-zoomed.html
1309
1310         Currently due to scrolling being mostly handled by integers, we are getting
1311         issues with rounding errors when trying to adjust the viewport while
1312         editing text when we are significantly zoomed in. The real fix would be to 
1313         start dealing with scrolling with floats/doubles, but until such time,
1314         we should early out of adjusting selections that we are certain are currently
1315         visible.
1316
1317         * rendering/RenderLayer.cpp:
1318         (WebCore::RenderLayer::scrollRectToVisible):
1319
1320 2019-08-21  Tim Horton  <timothy_horton@apple.com>
1321
1322         [Mail] Tapping top of message scrolls back to copied text instead of top of the message
1323         https://bugs.webkit.org/show_bug.cgi?id=200999
1324         <rdar://problem/54564878>
1325
1326         Reviewed by Wenson Hsieh.
1327
1328         Test: editing/selection/ios/change-selection-by-tapping-with-existing-selection.html
1329
1330         * page/EditorClient.h:
1331         (WebCore::EditorClient::shouldAllowSingleClickToChangeSelection const):
1332         * page/EventHandler.cpp:
1333         (WebCore::EventHandler::handleMousePressEventSingleClick):
1334         Instead of encoding platform behaviors in EventHandler, defer to EditorClient.
1335
1336 2019-08-21  Chris Dumez  <cdumez@apple.com>
1337
1338         Crash under StringImpl::endsWith() in SQLiteIDBBackingStore::fullDatabaseDirectoryWithUpgrade()
1339         https://bugs.webkit.org/show_bug.cgi?id=200990
1340         <rdar://problem/54566439>
1341
1342         Reviewed by Alex Christensen.
1343
1344         Make sure we call isolatedCopy() on SQLiteIDBBackingStore::m_databaseRootDirectory before using
1345         it from background threads.
1346
1347         * Modules/indexeddb/server/SQLiteIDBBackingStore.cpp:
1348         (WebCore::IDBServer::SQLiteIDBBackingStore::fullDatabaseDirectoryWithUpgrade):
1349         (WebCore::IDBServer::SQLiteIDBBackingStore::databasesSizeForOrigin const):
1350         (WebCore::IDBServer::SQLiteIDBBackingStore::deleteBackingStore):
1351         * Modules/indexeddb/server/SQLiteIDBBackingStore.h:
1352         (WebCore::IDBServer::SQLiteIDBBackingStore::databaseRootDirectory const):
1353
1354 2019-08-21  Chris Dumez  <cdumez@apple.com>
1355
1356         Crash under StringImpl::~StringImpl() in IDBServer::computeSpaceUsedForOrigin()
1357         https://bugs.webkit.org/show_bug.cgi?id=200989
1358         <rdar://problem/54565546>
1359
1360         Reviewed by Alex Christensen.
1361
1362         Make sure we call isolatedCopy() on IDBServer::m_databaseDirectoryPath before using it from
1363         background threads.
1364
1365         * Modules/indexeddb/server/IDBServer.cpp:
1366         (WebCore::IDBServer::IDBServer::createBackingStore):
1367         (WebCore::IDBServer::IDBServer::performGetAllDatabaseNames):
1368         (WebCore::IDBServer::IDBServer::removeDatabasesModifiedSinceForVersion):
1369         (WebCore::IDBServer::IDBServer::performCloseAndDeleteDatabasesModifiedSince):
1370         (WebCore::IDBServer::IDBServer::removeDatabasesWithOriginsForVersion):
1371         (WebCore::IDBServer::IDBServer::performCloseAndDeleteDatabasesForOrigins):
1372         (WebCore::IDBServer::IDBServer::computeSpaceUsedForOrigin):
1373         (WebCore::IDBServer::IDBServer::upgradeFilesIfNecessary):
1374         * Modules/indexeddb/server/IDBServer.h:
1375         (WebCore::IDBServer::IDBServer::databaseDirectoryPath const):
1376
1377 2019-08-21  Chris Dumez  <cdumez@apple.com>
1378
1379         Crash under StringImpl::endsWith() in RegistrationDatabase::openSQLiteDatabase()
1380         https://bugs.webkit.org/show_bug.cgi?id=200991
1381         <rdar://problem/54566689>
1382
1383         Reviewed by Geoffrey Garen.
1384
1385         Make sure we call isolatedCopy() on RegistrationDatabase::m_databaseDirectory before using
1386         it from background threads.
1387
1388         * workers/service/server/RegistrationDatabase.cpp:
1389         (WebCore::RegistrationDatabase::openSQLiteDatabase):
1390         (WebCore::RegistrationDatabase::clearAll):
1391         * workers/service/server/RegistrationDatabase.h:
1392         (WebCore::RegistrationDatabase::databaseDirectory const):
1393
1394 2019-08-21  Alex Christensen  <achristensen@webkit.org>
1395
1396         Disabling text autosizing should prevent text autosizing
1397         https://bugs.webkit.org/show_bug.cgi?id=200955
1398         <rdar://problem/48095374>
1399
1400         Reviewed by Simon Fraser.
1401
1402         Before this change there was no way to reliably change the text size on iOS when a -webkit-text-size-adjust:none style was applied
1403         because it would ignore the WKPreferences value for _textAutosizingEnabled.  Now that value has the desired effect when laying out.
1404
1405         * css/StyleResolver.cpp:
1406         (WebCore::StyleResolver::checkForTextSizeAdjust):
1407
1408 2019-08-21  Jer Noble  <jer.noble@apple.com>
1409
1410         Adopt AVSystemController_ActiveAudioRouteDidChangeNotification
1411         https://bugs.webkit.org/show_bug.cgi?id=200992
1412         <rdar://problem/54408993>
1413
1414         Reviewed by Eric Carlson.
1415
1416         When the system notifies us that the active audio route has changed in such a way
1417         that necessitates pausing, pause all media sessions, exempting those that are
1418         associated with WebRTC, since "pausing" an active audio conference isn't really
1419         possible.
1420
1421         * Modules/mediastream/MediaStream.h:
1422         * platform/audio/PlatformMediaSession.cpp:
1423         (WebCore::PlatformMediaSession::shouldOverridePauseDuringRouteChange const):
1424         * platform/audio/PlatformMediaSession.h:
1425         (WebCore::PlatformMediaSessionClient::shouldOverridePauseDuringRouteChange const):
1426         * platform/audio/ios/MediaSessionManagerIOS.h:
1427         * platform/audio/ios/MediaSessionManagerIOS.mm:
1428         (WebCore::MediaSessionManageriOS::activeRouteDidChange):
1429         (-[WebMediaSessionHelper initWithCallback:]):
1430         (-[WebMediaSessionHelper activeAudioRouteDidChange:]):
1431
1432 2019-08-21  Ryosuke Niwa  <rniwa@webkit.org>
1433
1434         Put keygen element behind a runtime flag and disable it by default
1435         https://bugs.webkit.org/show_bug.cgi?id=200850
1436
1437         Reviewed by Antti Koivisto.
1438
1439         The HTML keygen element has been removed from Chrome, Firefox, and the HTML specification in 2017.
1440         This patch disables the keygen element by default by adding a runtime enabled flag which is disabled by default.
1441
1442         * bindings/js/WebCoreBuiltinNames.h:
1443         * html/HTMLKeygenElement.idl:
1444         * html/HTMLTagNames.in:
1445         * page/RuntimeEnabledFeatures.h:
1446         (WebCore::RuntimeEnabledFeatures::setKeygenElementEnabled):
1447         (WebCore::RuntimeEnabledFeatures::keygenElementEnabled const):
1448
1449 2019-08-21  Chris Dumez  <cdumez@apple.com>
1450
1451         Get rid of m_weakThis data members now that we have a safe way to call makeWeakPtr() from various threads
1452         https://bugs.webkit.org/show_bug.cgi?id=200981
1453
1454         Reviewed by Alex Christensen.
1455
1456         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
1457         (WebCore::MediaPlayerPrivateAVFoundation::MediaPlayerPrivateAVFoundation):
1458         (WebCore::MediaPlayerPrivateAVFoundation::scheduleMainThreadNotification):
1459         (WebCore::MediaPlayerPrivateAVFoundation::dispatchNotification):
1460         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
1461         * platform/mediastream/libwebrtc/LibWebRTCDTMFSenderBackend.cpp:
1462         (WebCore::LibWebRTCDTMFSenderBackend::LibWebRTCDTMFSenderBackend):
1463         (WebCore::LibWebRTCDTMFSenderBackend::OnToneChange):
1464         * platform/mediastream/libwebrtc/LibWebRTCDTMFSenderBackend.h:
1465         * platform/network/cocoa/CookieStorageObserver.h:
1466         * platform/network/cocoa/CookieStorageObserver.mm:
1467         (WebCore::CookieStorageObserver::CookieStorageObserver):
1468         (WebCore::CookieStorageObserver::cookiesDidChange):
1469
1470 2019-08-21  Chris Dumez  <cdumez@apple.com>
1471
1472         Add internal setting to disable SecureContext checks
1473         https://bugs.webkit.org/show_bug.cgi?id=200980
1474         <rdar://problem/54438512>
1475
1476         Reviewed by Alex Christensen.
1477
1478         Add internal setting to disable SecureContext checks, in order to facilitate development
1479         for features like Service workers or device orientation / motion.
1480
1481         * dom/Document.cpp:
1482         (WebCore::Document::isSecureContext const):
1483         * page/RuntimeEnabledFeatures.h:
1484         (WebCore::RuntimeEnabledFeatures::secureContextChecksEnabled const):
1485         (WebCore::RuntimeEnabledFeatures::setSecureContextChecksEnabled):
1486         * workers/WorkerGlobalScope.cpp:
1487         (WebCore::WorkerGlobalScope::isSecureContext const):
1488
1489 2019-08-21  Jer Noble  <jer.noble@apple.com>
1490
1491         [iOS] HLS streams disappear from Now Playing when paused on the lock screen
1492         https://bugs.webkit.org/show_bug.cgi?id=200951
1493         <rdar://problem/54534301>
1494
1495         Reviewed by Eric Carlson.
1496
1497         The AVPlayerItemTracks will get recreated on occasion (during seeks, and when
1498         changing buffering policy) which can result in a player which no longer reports
1499         that it has audio, which in turn results in Now Playing no longer considering
1500         the web page to be an eligable now playing application. Bridge this gap by also
1501         taking AVPlayerItem.hasEnabledAudio into account when determining whether the 
1502         player has audio.
1503
1504         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
1505         (WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged):
1506
1507 2019-08-21  Adrian Perez de Castro  <aperez@igalia.com>
1508
1509         [GStreamer] Clang warns about mismatched type tag in declarations for ImageOrientation
1510         https://bugs.webkit.org/show_bug.cgi?id=200982
1511
1512         Reviewed by Carlos Alberto Lopez Perez.
1513
1514         No new tests needed.
1515
1516         * platform/graphics/gstreamer/VideoTextureCopierGStreamer.h: Change
1517         type tag in the forward declaration to "struct", hence matching the
1518         actual type definition.
1519
1520 2019-08-21  Antti Koivisto  <antti@apple.com>
1521
1522         ASSERTION FAILED: !s_isInvalidatingStyleWithRuleSets in com.apple.WebCore: WebCore::DocumentRuleSets::collectFeatures const
1523         https://bugs.webkit.org/show_bug.cgi?id=200919
1524         <rdar://problem/53413013>
1525
1526         Reviewed by Zalan Bujtas.
1527
1528         Bots show that in some timing-dependent cases we may end up constructing a style resolver in the middle the class change invalidation.
1529
1530         This happens flakily on Pad bots in
1531
1532         media/track/track-node-add-remove.html
1533         media/W3C/video/events/event_loadstart_manual.html
1534         media/W3C/video/readyState/readyState_initial.html
1535
1536         and also reproes locally with lots of runs over these tests.
1537
1538         * style/StyleInvalidationFunctions.h:
1539         (WebCore::Style::traverseRuleFeatures):
1540
1541         Ensure that for elements in shadow tree the host resolver is also always constructed before starting rule-based invalidation.
1542
1543 2019-08-21  Antoine Quint  <graouts@apple.com>
1544
1545         REGRESSION: naver.com - Multiple taps are required to open email
1546         https://bugs.webkit.org/show_bug.cgi?id=200979
1547         <rdar://problem/54295239>
1548
1549         Reviewed by Dean Jackson.
1550
1551         The "click" events on subjects in the message list are prevented by preventDefault() being called from a "mouseup" event listener.
1552         This shouldn't actually happen, but due to how simulated mouse events are implemented, there is no current distinction between
1553         "touchend" and "mouseup" events. It is safe however to opt mail.naver.com out of simulated mouse events altogether.
1554
1555         * page/Quirks.cpp:
1556         (WebCore::Quirks::shouldDispatchSimulatedMouseEvents const):
1557
1558 2019-08-21  Devin Rousso  <drousso@apple.com>
1559
1560         Web Inspector: Page: re-add enable/disable after r248454
1561         https://bugs.webkit.org/show_bug.cgi?id=200947
1562
1563         Reviewed by Joseph Pecoraro.
1564
1565         We shouldn't design the agent system with only Web Inspector in mind. Other clients may want
1566         to have different functionality, not being told about frames creation/updates/destruction.
1567         In these cases, we should have graceful error message failures for other agents that rely on
1568         the Page agent.
1569
1570         * inspector/agents/InspectorPageAgent.h:
1571         * inspector/agents/InspectorPageAgent.cpp:
1572         (WebCore::InspectorPageAgent::didCreateFrontendAndBackend):
1573         (WebCore::InspectorPageAgent::willDestroyFrontendAndBackend):
1574         (WebCore::InspectorPageAgent::enable): Added.
1575         (WebCore::InspectorPageAgent::disable): Added.
1576
1577         * inspector/agents/InspectorApplicationCacheAgent.cpp:
1578         (WebCore::InspectorApplicationCacheAgent::updateApplicationCacheStatus):
1579         (WebCore::InspectorApplicationCacheAgent::getFramesWithManifests):
1580         (WebCore::InspectorApplicationCacheAgent::assertFrameWithDocumentLoader):
1581         * inspector/agents/InspectorCSSAgent.cpp:
1582         (WebCore::InspectorCSSAgent::createStyleSheet):
1583         * inspector/agents/InspectorDOMAgent.cpp:
1584         (WebCore::InspectorDOMAgent::highlightSelector):
1585         (WebCore::InspectorDOMAgent::highlightFrame):
1586         (WebCore::InspectorDOMAgent::buildObjectForNode):
1587         * inspector/agents/InspectorTimelineAgent.cpp:
1588         (WebCore::InspectorTimelineAgent::setFrameIdentifier):
1589         * inspector/agents/page/PageNetworkAgent.cpp:
1590         (WebCore::PageNetworkAgent::loaderIdentifier):
1591         (WebCore::PageNetworkAgent::frameIdentifier):
1592         (WebCore::PageNetworkAgent::scriptExecutionContext):
1593         * inspector/agents/page/PageRuntimeAgent.cpp:
1594         (WebCore::PageRuntimeAgent::didCreateMainWorldContext):
1595         (WebCore::PageRuntimeAgent::reportExecutionContextCreation):
1596
1597 2019-08-20  Ryosuke Niwa  <rniwa@webkit.org>
1598
1599         nextElementWithGreaterTabIndex should use shadowAdjustedTabIndex
1600         https://bugs.webkit.org/show_bug.cgi?id=200943
1601
1602         Reviewed by Wenson Hsieh.
1603
1604         Use shadowAdjustedTabIndex instead of tabIndexForElement in nextElementWithGreaterTabIndex.
1605
1606         Because nextElementWithGreaterTabIndex is only called to find an element with a tab index
1607         set to a greater value than the argument tabIndex, which is always a positive integer,
1608         whether we call shadowAdjustedTabIndex or tabIndexForElement has no effect on an element
1609         with a shadow root or on a slot element. Furthermore, none of the elements with
1610         an isKeyboardFocusable override can have a author defined shadow root attached either.
1611
1612         As a result, this refactoring will have no observable behavioral change.
1613
1614         No new tests since there should be no observable behavior change.
1615
1616         * page/FocusController.cpp:
1617         (WebCore::tabIndexForElement): Merged into shadowAdjustedTabIndex.
1618         (WebCore::shadowAdjustedTabIndex):
1619         (WebCore::nextElementWithGreaterTabIndex):
1620
1621 2019-08-20  Ryosuke Niwa  <rniwa@webkit.org>
1622
1623         Remove MathMLElement::defaultTabIndex()
1624         https://bugs.webkit.org/show_bug.cgi?id=200944
1625
1626         Reviewed by Frédéric Wang.
1627
1628         Removed MathMLElement::defaultTabIndex since it doesn't have any observable effect since
1629         MathMLElement doesn't expose tabIndex IDL attribute, and sequential (tab key) focus navigation
1630         checks MathMLElement::isKeyboardFocusable, which doesn't rely on defaultTabIndex, anyway.
1631
1632         * mathml/MathMLElement.cpp:
1633         (WebCore::MathMLElement::defaultTabIndex const): Deleted.
1634         * mathml/MathMLElement.h:
1635
1636 2019-08-20  Devin Rousso  <drousso@apple.com>
1637
1638         Web Inspector: Implement `queryHolders` Command Line API
1639         https://bugs.webkit.org/show_bug.cgi?id=200458
1640
1641         Reviewed by Joseph Pecoraro.
1642
1643         Call `queryHolders(object)` from the Console to return an array of objects that strongly
1644         reference the given `object`. This could be very useful for finding JavaScript "leaks".
1645
1646         Test: inspector/console/queryHolders.html
1647
1648         * inspector/CommandLineAPIModuleSource.js:
1649         (CommandLineAPIImpl.prototype.queryHolders): Added.
1650
1651         * bindings/scripts/CodeGeneratorJS.pm:
1652         (GenerateHeader):
1653         (GenerateImplementation):
1654         * bindings/js/DOMGCOutputConstraint.cpp:
1655         * bindings/js/JSDOMWindowCustom.cpp:
1656         (WebCore::JSDOMWindow::analyzeHeap): Added.
1657         (WebCore::JSDOMWindow::heapSnapshot): Deleted.
1658         * bindings/js/JSDocumentCustom.cpp:
1659         (WebCore::JSDocument::analyzeHeap): Added.
1660         (WebCore::JSDocument::heapSnapshot): Deleted.
1661         * bindings/scripts/test/JS/*:
1662         Rename `heapSnapshot` to `analyzeHeap` to match JavaScriptCore changes.
1663
1664 2019-08-20  Saam Barati  <sbarati@apple.com>
1665
1666         [WHLSL] We need to null check when emitting native code for operator&.<field-name>
1667         https://bugs.webkit.org/show_bug.cgi?id=200846
1668
1669         Reviewed by Myles C. Maxfield.
1670
1671         Test: webgpu/whlsl/structure-field-access-on-null.html
1672
1673         * Modules/webgpu/WHLSL/Metal/WHLSLNativeFunctionWriter.cpp:
1674         (WebCore::WHLSL::Metal::inlineNativeFunction):
1675
1676 2019-08-20  Justin Fan  <justin_fan@apple.com>
1677
1678         Unreviewed comment follow-up for https://bugs.webkit.org/show_bug.cgi?id=200752.
1679
1680         * html/canvas/GPUBasedCanvasRenderingContext.h:
1681
1682 2019-08-16  Ryosuke Niwa  <rniwa@webkit.org>
1683
1684         The default tab index of output and fieldset should be -1
1685         https://bugs.webkit.org/show_bug.cgi?id=200834
1686
1687         Reviewed by Alex Christensen.
1688
1689         This patch updates the default tab index of output and fieldset to -1 to match the behavior of
1690         Chrome and Firefox as well as the latest HTML specification:
1691         https://html.spec.whatwg.org/multipage/interaction.html#the-tabindex-attribute
1692
1693         To do that, this patch replaces HTMLFormControlElement::defaultTabIndex with defaultTabIndex
1694         implementation in each one of its concrete subclass such as HTMLButtonElement to mirror
1695         the language of the specification as follows:
1696
1697         HTMLFormControlElement
1698             HTMLButtonElement -> 0
1699             HTMLFieldSetElement -> -1
1700             HTMLFormControlElementWithState
1701                 HTMLKeygenElement -> 0 - Not specified anywhere but preserving the existing behavior.
1702                 HTMLSelectElement -> 0
1703                 HTMLTextFormControlElement
1704                     HTMLInputElement -> 0
1705                     HTMLTextAreaElement -> 0
1706             HTMLOutputElement -> -1 
1707
1708         Even though Element::shouldBeIgnoredInSequentialFocusNavigation() checks the value of
1709         defaultTabIndex, this patch does not affect the actual sequential (tab) focus navigation:
1710         Beacuse HTMLOutputElement and HTMLFieldSetElement have supportsFocus overrides to call
1711         HTMLElement::supportsFocus instead of HTMLFormControlElement::supportsFocus, these two
1712         elements are focusable only when tabindex is set or it's a root content editable element.
1713         But all root editable elements are focusable anyway and the default tab index does not
1714         matter when tabindex is set.
1715
1716         Test: fast/dom/tabindex-defaults.html
1717
1718         * html/HTMLButtonElement.cpp:
1719         (WebCore::HTMLButtonElement::defaultTabIndex const): Added.
1720         * html/HTMLButtonElement.h:
1721         * html/HTMLFormControlElement.cpp:
1722         (WebCore::HTMLFormControlElement::defaultTabIndex const): Deleted.
1723         * html/HTMLFormControlElement.h:
1724         * html/HTMLInputElement.cpp:
1725         (WebCore::HTMLInputElement::defaultTabIndex const): Added.
1726         * html/HTMLKeygenElement.h:
1727         * html/HTMLKeygenElement.cpp:
1728         (WebCore::HTMLKeygenElement::defaultTabIndex const): Added.
1729         * html/HTMLKeygenElement.h:
1730         * html/HTMLSelectElement.cpp:
1731         (WebCore::HTMLSelectElement::defaultTabIndex const): Added.
1732         * html/HTMLSelectElement.h:
1733         * html/HTMLTextAreaElement.cpp:
1734         (WebCore::HTMLTextAreaElement::defaultTabIndex const): Added.
1735         * html/HTMLTextAreaElement.h:
1736
1737 2019-08-20  Zalan Bujtas  <zalan@apple.com>
1738
1739         [ContentChangeObserver] isConsideredClickable should be able to process elements with no renderers
1740         https://bugs.webkit.org/show_bug.cgi?id=200926
1741         <rdar://problem/54519579>
1742
1743         Reviewed by Simon Fraser.
1744
1745         This patch fixes the crash when the visible->hidden change triggers an isConsideredClickable() call with a 'display: none' element.
1746
1747         Test: fast/events/touch/ios/content-observation/going-from-hidden-to-visible-and-to-hidden-crash.html
1748
1749         * page/ios/ContentChangeObserver.cpp:
1750         (WebCore::isConsideredClickable):
1751
1752 2019-08-20  Wenson Hsieh  <wenson_hsieh@apple.com>
1753
1754         Clicking the search icon on ae.com hangs the web content process
1755         https://bugs.webkit.org/show_bug.cgi?id=200889
1756         <rdar://problem/54359330>
1757
1758         Reviewed by Ryosuke Niwa.
1759
1760         The hang occurs under FrameSelection::selectionAtSentenceStart, while computing an EditorState to send to the UI
1761         process. This act of determining whether the given positon is at the start of sentence entails moving backwards
1762         from the start of the current visible selection until the start of a paragraph or sentence is found, using
1763         VisiblePosition::previous to iterate backwards through VisiblePositions.
1764
1765         However, on this website, VisiblePosition::previous ends up just returning the current position, and we loop
1766         infinitely as a result because we never actually move backwards. This happens because VisiblePosition::previous
1767         first uses previousVisuallyDistinctCandidate to find a candidate Position before the current position, but when
1768         the position is canonicalized to create a VisiblePosition, it is moved back to its original Position as the deep
1769         equivalent.
1770
1771         In the attached test case (which is representative of the relevant part of the DOM on ae.com), we try to find
1772         the previous VisiblePosition from (#c, 0). The previous visually distinct candidate we initially find is
1773         (#b, 0), since:
1774
1775         1. The enclosing renderer is a RenderBlock with a non-zero height.
1776         2. The enclosing renderer has no rendered children.
1777         3. The position is at the first editing position in the node (i.e. the span element).
1778
1779         However, when canonicalizing the position, we find that neither the upstream nor the downstream position is a
1780         candidate because both the upstream and downstream nodes end up well outside of the span (the upstream node ends
1781         up being at the start of the body element, and the downstream position ends up right before the start of #c's
1782         container). The downstream position is at the end of a text node with a leading newline, it's not a candidate
1783         because its last caret offset is less than the length of the text node.
1784
1785         As a result, even though the given position (#b, 0) is a candidate itself, its downstream and upstream positions
1786         are not. Thus, VisiblePosition::canonicalPosition expands the scope of its candidate positions to the next
1787         closest candidate positions; the next candidate position is (#c, 0). Both of these candidates are outside of the
1788         containing block, so we (somewhat arbitrarily) break the tie by choosing the next visible position, bringing us
1789         back to (#c, 0).
1790
1791         There are several ways to fix this, one of which involves fixing the downstream/upstream positions of (#b, 0) so
1792         that they no longer jump out of the containing block of #b and cause (#b, 0) to be an invalid visible position
1793         despite being a candidate position. This can be achieved by adjusting the heuristic in
1794         endsOfNodeAreVisuallyDistinctPositions (used when moving upstream or downstream). Currently, this helper
1795         function returns false for #b because they contain a single (non-rendered) whitespace character. Removing this
1796         extraneous whitespace character actually causes the problem to stop reproducing, since #b and #c no longer
1797         contain any child nodes. This is important because the heuristic in Position::downstream attempts to keep the
1798         downstream position within the confines of the enclosing visual boundary, which (currently) ends up being the
1799         entire body element because endsOfNodeAreVisuallyDistinctPositions returns false for #b.
1800
1801         To avoid this scenario, we teach endsOfNodeAreVisuallyDistinctPositions to treat inline-block containers that
1802         are empty (that is, contain no rendered content) but may have children for editing in the same way as inline-
1803         block containers that don't have any children; in both scenarios, they may contain a candidate position, so we
1804         should treat the ends of the container node as being visually distinct.
1805
1806         Doing so causes the downstream position of (#b, 0) to be kept within the immediate containing span element,
1807         which then allows (#b, 0) to be a canonical VisiblePosition.
1808
1809         Tests:  fast/events/focus-anchor-with-tabindex-hang.html
1810                 editing/selection/modify-backward-inline-block-containers.html
1811
1812         * editing/VisiblePosition.cpp:
1813         (WebCore::VisiblePosition::previous const):
1814
1815 2019-08-20  Brent Fulgham  <bfulgham@apple.com>
1816
1817         [FTW] Fix scrolling in modern WebKit views
1818         https://bugs.webkit.org/show_bug.cgi?id=200923
1819
1820         Reviewed by Don Olmstead.
1821
1822         The initial implementation of scrolling in Direct2D had errors that
1823         caused hilarious rendering glitches. This patch corrects the logic
1824         so that page scroll is correct.
1825  
1826         * platform/graphics/win/BackingStoreBackendDirect2D.h:
1827         * platform/graphics/win/BackingStoreBackendDirect2DImpl.cpp:
1828         (WebCore::BackingStoreBackendDirect2DImpl::scroll):
1829         (WebCore::BackingStoreBackendDirect2DImpl::bitmapBrush):
1830         * platform/graphics/win/BackingStoreBackendDirect2DImpl.h:
1831         * platform/graphics/win/Direct2DOperations.cpp:
1832         (WebCore::Direct2D::drawNativeImage):
1833         * platform/graphics/win/Direct2DUtilities.cpp:
1834         (WebCore::Direct2D::copyRectFromOneSurfaceToAnother):
1835         (WebCore::Direct2D::writeImageToDiskAsPNG): Added diagnostic utility to
1836         dump textures to disk for review.
1837         * platform/graphics/win/Direct2DUtilities.h:
1838         * platform/graphics/win/ImageDecoderDirect2D.cpp:
1839         (WebCore::ImageDecoderDirect2D::systemImagingFactory): Switch to more
1840         recent factory with additional features.
1841         * platform/graphics/win/ImageDecoderDirect2D.h:
1842
1843 2019-08-20  Saam Barati  <sbarati@apple.com>
1844
1845         [WHLSL] Only take the pointer of a variable or global variable reference if it is used
1846         https://bugs.webkit.org/show_bug.cgi?id=200908
1847
1848         Reviewed by Dean Jackson.
1849
1850         Previously, we would always emit Metal code to produce an lvalue pointer
1851         even when it wasn't used. This patch adds a mechanism to lazily generate
1852         such pointers when they're actually needed, since we often don't use them.
1853         This is a 7% Metal compile time speedup on compute_boids with a p value of
1854         0.0001.
1855
1856         * Modules/webgpu/WHLSL/Metal/WHLSLFunctionWriter.cpp:
1857         (WebCore::WHLSL::Metal::FunctionDefinitionWriter::appendRightValueWithNullability):
1858         (WebCore::WHLSL::Metal::FunctionDefinitionWriter::appendLeftValue):
1859         (WebCore::WHLSL::Metal::FunctionDefinitionWriter::takeLastLeftValue):
1860         (WebCore::WHLSL::Metal::FunctionDefinitionWriter::visit):
1861         * Modules/webgpu/WHLSL/Metal/WHLSLMangledNames.h:
1862         (WebCore::WHLSL::Metal::MangledVariableName::operator bool const):
1863
1864 2019-08-20  Chris Dumez  <cdumez@apple.com>
1865
1866         Unsafe usage of CookieStorageObserver from a background thread
1867         https://bugs.webkit.org/show_bug.cgi?id=200920
1868
1869         Reviewed by Alex Christensen.
1870
1871         Unsafe usage of CookieStorageObserver from a background thread. CookieStorageObserver gets
1872         constructed / destructed on the main thread. However, CookieStorageObserver::cookiesDidChange()
1873         gets called on a background thread and tries to ref |this|. Even though CookieStorageObserver
1874         is ThreadSafeRefCounted, this is still unsafe because the CookieStorageObserver destructor may
1875         already be running on the main thread when CookieStorageObserver::cookiesDidChange() gets called
1876         on the background thread.
1877
1878         * platform/network/NetworkStorageSession.h:
1879         * platform/network/cocoa/CookieStorageObserver.h:
1880         * platform/network/cocoa/CookieStorageObserver.mm:
1881         (WebCore::CookieStorageObserver::CookieStorageObserver):
1882         (WebCore::CookieStorageObserver::cookiesDidChange):
1883         (WebCore::CookieStorageObserver::create): Deleted.
1884         * platform/network/cocoa/NetworkStorageSessionCocoa.mm:
1885         (WebCore::NetworkStorageSession::cookieStorageObserver const):
1886
1887 2019-08-20  Chris Dumez  <cdumez@apple.com>
1888
1889         Use a strongly typed identifier for StorageNamespace's identifier
1890         https://bugs.webkit.org/show_bug.cgi?id=200895
1891
1892         Reviewed by Alex Christensen and Youenn Fablet.
1893
1894         * storage/StorageNamespace.h:
1895
1896 2019-08-20  Youenn Fablet  <youenn@apple.com>
1897
1898         Make IDB quota check lambdas take a weak of UniqueIDBDatabaseTransaction instead of a ref
1899         https://bugs.webkit.org/show_bug.cgi?id=196696
1900
1901         Reviewed by Alex Christensen.
1902
1903         Refing the transaction in the lambdas extend their lifetime.
1904         Taking a weak pointer of them is better as this will not extend their lifetime.
1905         In particular, if the database is deleted, the corresponding transactions might be deleted.
1906         This makes quota checks less intrusive in IDB lifetime management.
1907         Covered by existing tests.
1908
1909         * Modules/indexeddb/server/UniqueIDBDatabase.cpp:
1910         (WebCore::IDBServer::UniqueIDBDatabase::createObjectStore):
1911         (WebCore::IDBServer::UniqueIDBDatabase::deleteObjectStore):
1912         (WebCore::IDBServer::UniqueIDBDatabase::renameObjectStore):
1913         (WebCore::IDBServer::UniqueIDBDatabase::clearObjectStore):
1914         (WebCore::IDBServer::UniqueIDBDatabase::createIndex):
1915         (WebCore::IDBServer::UniqueIDBDatabase::deleteIndex):
1916         (WebCore::IDBServer::UniqueIDBDatabase::renameIndex):
1917         (WebCore::IDBServer::UniqueIDBDatabase::commitTransaction):
1918         (WebCore::IDBServer::UniqueIDBDatabase::abortTransaction):
1919         * Modules/indexeddb/server/UniqueIDBDatabaseTransaction.h:
1920
1921 2019-08-20  Youenn Fablet  <youenn@apple.com>
1922
1923         Remove DeferredPromise::sessionID()
1924         https://bugs.webkit.org/show_bug.cgi?id=200616
1925
1926         Reviewed by Alex Christensen.
1927
1928         Calling sessionID() on DeferredPromise is valid if the DeferredPromise is not suspended.
1929         Since this might not always be true in call sites, add a resolve promise that is passed a function that returns
1930         the value to resolve.
1931         This function is taking a ScriptExecutionContext from which the session ID can be retrieved.
1932         This is safe since the function will only be called if the DeferredPromise is not suspended.
1933         Update call sites accordingly.
1934         No change of behavior.
1935
1936         * Modules/fetch/FetchBodyConsumer.cpp:
1937         (WebCore::resolveWithTypeAndData):
1938         (WebCore::FetchBodyConsumer::resolve):
1939         * Modules/fetch/FetchBodyOwner.cpp:
1940         (WebCore::FetchBodyOwner::blob):
1941         * bindings/js/JSDOMPromiseDeferred.h:
1942         (WebCore::DeferredPromise::resolveCallbackValueWithNewlyCreated):
1943         (WebCore::DeferredPromise::sessionID const): Deleted.
1944
1945 2019-08-20  Youenn Fablet  <youenn@apple.com>
1946
1947         PendingActivationMediaStream does not need to be refcounted
1948         https://bugs.webkit.org/show_bug.cgi?id=200879
1949
1950         Reviewed by Alex Christensen.
1951
1952         No observable change of behavior.
1953
1954         * Modules/mediastream/UserMediaRequest.cpp:
1955         (WebCore::UserMediaRequest::allow):
1956         (WebCore::UserMediaRequest::mediaStreamDidFail):
1957         No need to asynchronously remove the observer since MediaStreamPrivate handles that properply now.
1958         * Modules/mediastream/UserMediaRequest.h:
1959
1960 2019-08-19  Devin Rousso  <drousso@apple.com>
1961
1962         Web Inspector: Debugger: add a global breakpoint for pausing in the next microtask
1963         https://bugs.webkit.org/show_bug.cgi?id=200652
1964
1965         Reviewed by Joseph Pecoraro.
1966
1967         Test: inspector/debugger/setPauseOnMicrotasks.html
1968
1969         * inspector/agents/page/PageDebuggerAgent.h:
1970         * inspector/agents/worker/WorkerDebuggerAgent.h:
1971
1972         * inspector/agents/InspectorTimelineAgent.h:
1973         (WebCore::InspectorTimelineAgent::willRunMicrotask): Added.
1974         (WebCore::InspectorTimelineAgent::didRunMicrotask): Added.
1975
1976 2019-08-19  Sam Weinig  <weinig@apple.com>
1977
1978         [WHLSL] Make generated Metal code should be indented properly to ease reading while debugging
1979         https://bugs.webkit.org/show_bug.cgi?id=200870
1980
1981         Reviewed by Saam Barati.
1982
1983         Adds indentation of generated Metal code using the new WTF::Indentation and WTF::IndentationScope
1984         classes. This makes reading the generated Metal code much easier while debugging it, and does not
1985         seem to introduce any performance regression (I measured no difference on compute_boids.html test).
1986
1987         * Modules/webgpu/WHLSL/Metal/WHLSLEntryPointScaffolding.cpp:
1988         (WebCore::WHLSL::Metal::EntryPointScaffolding::emitResourceHelperTypes):
1989         (WebCore::WHLSL::Metal::EntryPointScaffolding::emitUnpackResourcesAndNamedBuiltIns):
1990         (WebCore::WHLSL::Metal::VertexEntryPointScaffolding::emitHelperTypes):
1991         (WebCore::WHLSL::Metal::VertexEntryPointScaffolding::emitSignature):
1992         (WebCore::WHLSL::Metal::VertexEntryPointScaffolding::emitUnpack):
1993         (WebCore::WHLSL::Metal::VertexEntryPointScaffolding::emitPack):
1994         (WebCore::WHLSL::Metal::FragmentEntryPointScaffolding::emitHelperTypes):
1995         (WebCore::WHLSL::Metal::FragmentEntryPointScaffolding::emitSignature):
1996         (WebCore::WHLSL::Metal::FragmentEntryPointScaffolding::emitUnpack):
1997         (WebCore::WHLSL::Metal::FragmentEntryPointScaffolding::emitPack):
1998         (WebCore::WHLSL::Metal::ComputeEntryPointScaffolding::emitHelperTypes):
1999         (WebCore::WHLSL::Metal::ComputeEntryPointScaffolding::emitSignature):
2000         (WebCore::WHLSL::Metal::ComputeEntryPointScaffolding::emitUnpack):
2001         (WebCore::WHLSL::Metal::ComputeEntryPointScaffolding::emitPack):
2002         * Modules/webgpu/WHLSL/Metal/WHLSLEntryPointScaffolding.h:
2003         * Modules/webgpu/WHLSL/Metal/WHLSLFunctionWriter.cpp:
2004         (WebCore::WHLSL::Metal::FunctionDefinitionWriter::visit):
2005         (WebCore::WHLSL::Metal::FunctionDefinitionWriter::emitLoop):
2006         * Modules/webgpu/WHLSL/Metal/WHLSLNativeFunctionWriter.cpp:
2007         (WebCore::WHLSL::Metal::inlineNativeFunction):
2008         * Modules/webgpu/WHLSL/Metal/WHLSLNativeFunctionWriter.h:
2009         * Modules/webgpu/WHLSL/Metal/WHLSLTypeNamer.cpp:
2010         (WebCore::WHLSL::Metal::TypeNamer::emitUnnamedTypeDefinition):
2011
2012 2019-08-19  Devin Rousso  <drousso@apple.com>
2013
2014         Web Inspector: have more aggressive checks for dataURLs provided to `console.screenshot`
2015         https://bugs.webkit.org/show_bug.cgi?id=200747
2016
2017         Reviewed by Joseph Pecoraro.
2018
2019         Always send any /data:*+/ strings to the frontend and have it render there. If that doesn't
2020         work, have the frontend "spoof" an error message look and feel.
2021
2022         Test: inspector/console/console-screenshot.html
2023
2024         * page/PageConsoleClient.cpp:
2025         (WebCore::PageConsoleClient::screenshot):
2026
2027 2019-08-19  Jer Noble  <jer.noble@apple.com>
2028
2029         [Cocoa] Fix misspelling of -preventsDisplaySleepForVideoPlayback
2030         https://bugs.webkit.org/show_bug.cgi?id=200774
2031         <rdar://problem/54321071>
2032
2033         Reviewed by Eric Carlson.
2034
2035         Only declare the API on platforms where that API is undefined, so as
2036         to catch this kind of misspelling at compile time.
2037
2038         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
2039         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::ensureLayer):
2040
2041 2019-08-19  Justin Fan  <justin_fan@apple.com>
2042
2043         WebGPU layers don't show up sometimes
2044         https://bugs.webkit.org/show_bug.cgi?id=200752
2045
2046         Reviewed by Dean Jackson.
2047
2048         Ensure HTML canvas is properly notified of WebGPU updates. Fixes alpha WebGPU MotionMark benchmark no-show issue.
2049
2050         Normal WebGPU behavior unaffected and covered by existing tests.
2051
2052         * Modules/webgpu/GPUCanvasContext.cpp:
2053         (WebCore::GPUCanvasContext::configureSwapChain):
2054         (WebCore::GPUCanvasContext::reshape):
2055         * Modules/webgpu/WHLSL/Metal/WHLSLNativeFunctionWriter.cpp:
2056         (WebCore::WHLSL::Metal::inlineNativeFunction):
2057         * Sources.txt:
2058         * WebCore.xcodeproj/project.pbxproj:
2059         * html/canvas/GPUBasedCanvasRenderingContext.cpp: Added.
2060         (WebCore::GPUBasedCanvasRenderingContext::GPUBasedCanvasRenderingContext):
2061         (WebCore::GPUBasedCanvasRenderingContext::htmlCanvas const):
2062         (WebCore::GPUBasedCanvasRenderingContext::notifyCanvasContentChanged):
2063         * html/canvas/GPUBasedCanvasRenderingContext.h:
2064         (WebCore::GPUBasedCanvasRenderingContext::GPUBasedCanvasRenderingContext): Deleted.
2065         * html/canvas/WebGLRenderingContextBase.cpp:
2066         (WebCore::WebGLRenderingContextBase::reshape):
2067         (WebCore::WebGLRenderingContextBase::htmlCanvas): Deleted.
2068         * html/canvas/WebGLRenderingContextBase.h:
2069         * rendering/RenderLayerBacking.cpp:
2070         (WebCore::RenderLayerBacking::contentChanged):
2071
2072 2019-08-19  Sihui Liu  <sihui_liu@apple.com>
2073
2074         Remove IDB-specific quota
2075         https://bugs.webkit.org/show_bug.cgi?id=196545
2076         <rdar://problem/54201783>
2077
2078         Reviewed by Youenn Fablet.
2079
2080         Re-land r248526 with fix for performance tests.
2081
2082         No change of behavior as IDB specific quota is no longer used.
2083         Instead a global quota is used. This quota currently handles IDB and Cache API.
2084
2085         * Modules/indexeddb/server/IDBBackingStore.h:
2086         * Modules/indexeddb/server/IDBServer.cpp:
2087         (WebCore::IDBServer::IDBServer::createBackingStore):
2088         (WebCore::IDBServer::IDBServer::setPerOriginQuota): Deleted.
2089         * Modules/indexeddb/server/IDBServer.h:
2090         (WebCore::IDBServer::IDBServer::perOriginQuota const): Deleted.
2091         * Modules/indexeddb/server/MemoryIDBBackingStore.h:
2092         * Modules/indexeddb/server/SQLiteIDBBackingStore.cpp:
2093         (WebCore::IDBServer::SQLiteIDBBackingStore::SQLiteIDBBackingStore):
2094         (WebCore::IDBServer::SQLiteIDBBackingStore::beginTransaction):
2095         (WebCore::IDBServer::SQLiteIDBBackingStore::createObjectStore):
2096         (WebCore::IDBServer::SQLiteIDBBackingStore::renameObjectStore):
2097         (WebCore::IDBServer::SQLiteIDBBackingStore::createIndex):
2098         (WebCore::IDBServer::SQLiteIDBBackingStore::uncheckedPutIndexRecord):
2099         (WebCore::IDBServer::SQLiteIDBBackingStore::renameIndex):
2100         (WebCore::IDBServer::SQLiteIDBBackingStore::addRecord):
2101         (WebCore::IDBServer::SQLiteIDBBackingStore::uncheckedSetKeyGeneratorValue):
2102         (WebCore::IDBServer::SQLiteIDBBackingStore::quotaForOrigin const): Deleted.
2103         (WebCore::IDBServer::SQLiteIDBBackingStore::maximumSize const): Deleted.
2104         * Modules/indexeddb/server/SQLiteIDBBackingStore.h:
2105         * Modules/indexeddb/server/UniqueIDBDatabase.cpp:
2106         (WebCore::IDBServer::UniqueIDBDatabase::setQuota): Deleted.
2107         * Modules/indexeddb/server/UniqueIDBDatabase.h:
2108
2109 2019-08-19  Antoine Quint  <graouts@apple.com>
2110
2111         [Pointer Events] Removing the capture element prevents future pointer events from being dispatched on macOS
2112         https://bugs.webkit.org/show_bug.cgi?id=200887
2113         <rdar://problem/54104147>
2114
2115         Reviewed by Dean Jackson.
2116
2117         Test: pointerevents/mouse/pointer-capture-element-removal.html
2118
2119         While we should only dispatch a lostpointercapture event to a connected element, clearing the capture element set on the frame's EventHandler
2120         should always happen, regardless of the connected status of the previous capture element, since otherwise all future mouse and pointer events
2121         would be targeted at the now-disconnected, former capture element.
2122
2123         * page/PointerCaptureController.cpp:
2124         (WebCore::PointerCaptureController::processPendingPointerCapture):
2125
2126 2019-08-19  Youenn Fablet  <youenn@apple.com>
2127
2128         Remove SessionID::emptySessionID()
2129         https://bugs.webkit.org/show_bug.cgi?id=200811
2130
2131         Reviewed by Alex Christensen.
2132
2133         No change of behavior, update SessionID call sites.
2134
2135         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
2136         (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
2137         * dom/Document.cpp:
2138         (WebCore::Document::sessionID const):
2139         (WebCore::Document::privateBrowsingStateDidChange):
2140         * workers/service/ServiceWorkerProvider.cpp:
2141         (WebCore::ServiceWorkerProvider::registerServiceWorkerClients):
2142
2143 2019-08-19  Youenn Fablet  <youenn@apple.com>
2144
2145         Stop MediaDevices timer when stopping MediaDevices
2146         https://bugs.webkit.org/show_bug.cgi?id=200880
2147
2148         Reviewed by Eric Carlson.
2149
2150         No change of behavior.
2151         Stop timer when stopping MediaDevices and check for MediaDevices being stopped before scheduling the timer.
2152
2153         * Modules/mediastream/MediaDevices.cpp:
2154         (WebCore::MediaDevices::stop):
2155         Remove document/controller check since at that point,
2156         the document should not be null and the controller should be there.
2157         (WebCore::MediaDevices::scheduledEventTimerFired):
2158         (WebCore::MediaDevices::listenForDeviceChanges):
2159
2160 2019-08-19  Yusuke Suzuki  <ysuzuki@apple.com>
2161
2162         Unreviewed, speculative build fix for GTK and WinCairo
2163         https://bugs.webkit.org/show_bug.cgi?id=200620
2164
2165         It seems that these files have different flags that is not tested in EWS.
2166
2167         * platform/audio/gstreamer/AudioFileReaderGStreamer.cpp:
2168         * platform/audio/gstreamer/AudioSourceProviderGStreamer.h:
2169
2170 2019-08-19  Yusuke Suzuki  <ysuzuki@apple.com>
2171
2172         [WTF] Add makeUnique<T>, which ensures T is fast-allocated, actual static_assert part
2173         https://bugs.webkit.org/show_bug.cgi?id=200620
2174
2175         Reviewed by Geoff Garen.
2176
2177         * platform/network/curl/CookieJarCurl.h:
2178
2179 2019-08-19  Youenn Fablet  <youenn@apple.com>
2180
2181         enumerateDevices should return the same JS objects if called twice
2182         https://bugs.webkit.org/show_bug.cgi?id=200767
2183
2184         Reviewed by Eric Carlson.
2185
2186         Make MediaDevices store the last list of enumerated MediaDeviceInfo objects.
2187         Reuse them for the next enumerateDevices call if needed.
2188         In case of a device change event, make sure the next enumerateDevices call will fetch the new list of devices.
2189         When constructing the new list of devices, reuse any preexisting device in the old list as specified by
2190         https://w3c.github.io/mediacapture-main/#dom-mediadevices-enumeratedevices.
2191
2192         Update enumerateDevices to use a completion handler.
2193         Remove MediaDevicesRequest and MediaDevicesEnumerationRequest.
2194         Covered by updated test and existing tests.
2195
2196         * Modules/mediastream/MediaDeviceInfo.cpp:
2197         (WebCore::MediaDeviceInfo::MediaDeviceInfo):
2198         (WebCore::MediaDeviceInfo::create):
2199         * Modules/mediastream/MediaDeviceInfo.h:
2200         * Modules/mediastream/MediaDeviceInfo.idl:
2201         * Modules/mediastream/MediaDevices.cpp:
2202         (WebCore::MediaDevices::MediaDevices):
2203         (WebCore::MediaDevices::stop):
2204         (WebCore::MediaDevices::refreshDevices):
2205         (WebCore::MediaDevices::enumerateDevices):
2206         (WebCore::MediaDevices::scheduledEventTimerFired):
2207         (WebCore::MediaDevices::listenForDeviceChanges):
2208         (WebCore::MediaDevices::addEventListener):
2209         * Modules/mediastream/MediaDevices.h:
2210         * Modules/mediastream/MediaDevices.idl:
2211         * Modules/mediastream/MediaDevicesEnumerationRequest.cpp: Removed.
2212         * Modules/mediastream/MediaDevicesEnumerationRequest.h: Removed.
2213         * Modules/mediastream/MediaDevicesRequest.cpp: Removed.
2214         * Modules/mediastream/MediaDevicesRequest.h: Removed.
2215         * Modules/mediastream/RTCRtpSender.cpp:
2216         * Modules/mediastream/UserMediaClient.h:
2217         * Modules/mediastream/UserMediaController.cpp:
2218         (WebCore::isAllowedToUse):
2219         (WebCore::UserMediaController::canCallGetUserMedia const):
2220         * Modules/mediastream/UserMediaController.h:
2221         (WebCore::UserMediaController::enumerateMediaDevices):
2222         * Sources.txt:
2223         * WebCore.xcodeproj/project.pbxproj:
2224
2225 2019-08-18  Yusuke Suzuki  <ysuzuki@apple.com>
2226
2227         [WTF] Add makeUnique<T>, which ensures T is fast-allocated, makeUnique / makeUniqueWithoutFastMallocCheck part
2228         https://bugs.webkit.org/show_bug.cgi?id=200620
2229
2230         Reviewed by Geoff Garen.
2231
2232         * Modules/applicationmanifest/ApplicationManifestParser.cpp:
2233         (WebCore::ApplicationManifestParser::logDeveloperWarning):
2234         * Modules/beacon/NavigatorBeacon.cpp:
2235         (WebCore::NavigatorBeacon::from):
2236         * Modules/cache/DOMWindowCaches.cpp:
2237         (WebCore::DOMWindowCaches::from):
2238         * Modules/cache/WorkerGlobalScopeCaches.cpp:
2239         (WebCore::WorkerGlobalScopeCaches::from):
2240         * Modules/credentialmanagement/NavigatorCredentials.cpp:
2241         (WebCore::NavigatorCredentials::from):
2242         * Modules/encryptedmedia/InitDataRegistry.cpp:
2243         (WebCore::InitDataRegistry::extractPsshBoxesFromCenc):
2244         * Modules/encryptedmedia/legacy/LegacyCDM.cpp:
2245         (WebCore::LegacyCDM::create):
2246         * Modules/encryptedmedia/legacy/LegacyCDMPrivateClearKey.cpp:
2247         (WebCore::LegacyCDMPrivateClearKey::createSession):
2248         * Modules/fetch/FetchBodyOwner.cpp:
2249         (WebCore::FetchBodyOwner::loadBlob):
2250         * Modules/fetch/FetchResponse.cpp:
2251         (WebCore::FetchResponse::fetch):
2252         (WebCore::FetchResponse::BodyLoader::start):
2253         * Modules/gamepad/NavigatorGamepad.cpp:
2254         (WebCore::NavigatorGamepad::from):
2255         * Modules/geolocation/GeolocationController.cpp:
2256         (WebCore::provideGeolocationTo):
2257         * Modules/geolocation/NavigatorGeolocation.cpp:
2258         (WebCore::NavigatorGeolocation::from):
2259         * Modules/indexeddb/DOMWindowIndexedDatabase.cpp:
2260         (WebCore::DOMWindowIndexedDatabase::from):
2261         * Modules/indexeddb/IDBObjectStore.cpp:
2262         (WebCore::IDBObjectStore::index):
2263         * Modules/indexeddb/IDBTransaction.cpp:
2264         (WebCore::IDBTransaction::objectStore):
2265         (WebCore::IDBTransaction::createObjectStore):
2266         (WebCore::IDBTransaction::createIndex):
2267         * Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.cpp:
2268         (WebCore::WorkerGlobalScopeIndexedDatabase::from):
2269         * Modules/indexeddb/client/IDBConnectionToServer.cpp:
2270         (WebCore::IDBClient::IDBConnectionToServer::IDBConnectionToServer):
2271         * Modules/indexeddb/client/TransactionOperation.cpp:
2272         (WebCore::IDBClient::TransactionOperation::TransactionOperation):
2273         * Modules/indexeddb/server/IDBServer.cpp:
2274         (WebCore::IDBServer::IDBServer::getOrCreateUniqueIDBDatabase):
2275         (WebCore::IDBServer::IDBServer::createBackingStore):
2276         (WebCore::IDBServer::IDBServer::ensureQuotaUser):
2277         * Modules/indexeddb/server/IndexValueStore.cpp:
2278         (WebCore::IDBServer::IndexValueStore::addRecord):
2279         * Modules/indexeddb/server/MemoryBackingStoreTransaction.cpp:
2280         (WebCore::IDBServer::MemoryBackingStoreTransaction::create):
2281         (WebCore::IDBServer::MemoryBackingStoreTransaction::MemoryBackingStoreTransaction):
2282         (WebCore::IDBServer::MemoryBackingStoreTransaction::recordValueChanged):
2283         * Modules/indexeddb/server/MemoryIDBBackingStore.cpp:
2284         (WebCore::IDBServer::MemoryIDBBackingStore::create):
2285         (WebCore::IDBServer::MemoryIDBBackingStore::getOrEstablishDatabaseInfo):
2286         (WebCore::IDBServer::MemoryIDBBackingStore::setDatabaseInfo):
2287         * Modules/indexeddb/server/MemoryIndex.cpp:
2288         (WebCore::IDBServer::MemoryIndex::putIndexKey):
2289         (WebCore::IDBServer::MemoryIndex::maybeOpenCursor):
2290         * Modules/indexeddb/server/MemoryObjectStore.cpp:
2291         (WebCore::IDBServer::MemoryObjectStore::addRecord):
2292         (WebCore::IDBServer::MemoryObjectStore::maybeOpenCursor):
2293         * Modules/indexeddb/server/SQLiteIDBBackingStore.cpp:
2294         (WebCore::IDBServer::SQLiteIDBBackingStore::createAndPopulateInitialDatabaseInfo):
2295         (WebCore::IDBServer::SQLiteIDBBackingStore::extractExistingDatabaseInfo):
2296         (WebCore::IDBServer::SQLiteIDBBackingStore::getOrEstablishDatabaseInfo):
2297         (WebCore::IDBServer::SQLiteIDBBackingStore::beginTransaction):
2298         (WebCore::IDBServer::SQLiteIDBBackingStore::cachedStatement):
2299         * Modules/indexeddb/server/SQLiteIDBCursor.cpp:
2300         (WebCore::IDBServer::SQLiteIDBCursor::maybeCreate):
2301         (WebCore::IDBServer::SQLiteIDBCursor::maybeCreateBackingStoreCursor):
2302         (WebCore::IDBServer::SQLiteIDBCursor::createSQLiteStatement):
2303         (WebCore::IDBServer::SQLiteIDBCursor::internalFetchNextRecord):
2304         * Modules/indexeddb/server/SQLiteIDBTransaction.cpp:
2305         (WebCore::IDBServer::SQLiteIDBTransaction::begin):
2306         * Modules/indexeddb/server/UniqueIDBDatabase.cpp:
2307         (WebCore::IDBServer::UniqueIDBDatabase::didDeleteBackingStore):
2308         (WebCore::IDBServer::UniqueIDBDatabase::didOpenBackingStore):
2309         (WebCore::IDBServer::UniqueIDBDatabase::didPerformAbortTransaction):
2310         * Modules/indexeddb/server/UniqueIDBDatabaseTransaction.cpp:
2311         (WebCore::IDBServer::UniqueIDBDatabaseTransaction::UniqueIDBDatabaseTransaction):
2312         * Modules/indexeddb/shared/IDBRequestData.cpp:
2313         (WebCore::IDBRequestData::IDBRequestData):
2314         (WebCore::IDBRequestData::isolatedCopy):
2315         * Modules/indexeddb/shared/IDBRequestData.h:
2316         (WebCore::IDBRequestData::decode):
2317         * Modules/indexeddb/shared/IDBResultData.cpp:
2318         (WebCore::IDBResultData::IDBResultData):
2319         (WebCore::IDBResultData::isolatedCopy):
2320         (WebCore::IDBResultData::openDatabaseSuccess):
2321         (WebCore::IDBResultData::openDatabaseUpgradeNeeded):
2322         (WebCore::IDBResultData::deleteDatabaseSuccess):
2323         (WebCore::IDBResultData::putOrAddSuccess):
2324         (WebCore::IDBResultData::getRecordSuccess):
2325         (WebCore::IDBResultData::getAllRecordsSuccess):
2326         (WebCore::IDBResultData::openCursorSuccess):
2327         (WebCore::IDBResultData::iterateCursorSuccess):
2328         * Modules/indexeddb/shared/IDBResultData.h:
2329         (WebCore::IDBResultData::decode):
2330         * Modules/indexeddb/shared/IDBTransactionInfo.cpp:
2331         (WebCore::IDBTransactionInfo::versionChange):
2332         (WebCore::IDBTransactionInfo::IDBTransactionInfo):
2333         (WebCore::IDBTransactionInfo::isolatedCopy):
2334         * Modules/indexeddb/shared/IDBTransactionInfo.h:
2335         (WebCore::IDBTransactionInfo::decode):
2336         * Modules/indexeddb/shared/InProcessIDBServer.cpp:
2337         (WebCore::InProcessIDBServer::quotaManager):
2338         * Modules/mediacapabilities/NavigatorMediaCapabilities.cpp:
2339         (WebCore::NavigatorMediaCapabilities::from):
2340         * Modules/mediasession/WebMediaSessionManager.cpp:
2341         (WebCore::WebMediaSessionManager::mockPicker):
2342         (WebCore::WebMediaSessionManager::addPlaybackTargetPickerClient):
2343         * Modules/mediasource/MediaSource.cpp:
2344         (WebCore::MediaSource::buffered const):
2345         (WebCore::MediaSource::setLiveSeekableRange):
2346         * Modules/mediastream/NavigatorMediaDevices.cpp:
2347         (WebCore::NavigatorMediaDevices::from):
2348         * Modules/mediastream/UserMediaController.cpp:
2349         (WebCore::provideUserMediaTo):
2350         * Modules/mediastream/libwebrtc/LibWebRTCDataChannelHandler.cpp:
2351         (WebCore::LibWebRTCDataChannelHandler::channelEvent):
2352         * Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:
2353         (WebCore::LibWebRTCMediaEndpoint::addRemoteTrack):
2354         (WebCore::LibWebRTCMediaEndpoint::collectTransceivers):
2355         (WebCore::LibWebRTCMediaEndpoint::newTransceiver):
2356         (WebCore::LibWebRTCMediaEndpoint::createTransceiverBackends):
2357         (WebCore::LibWebRTCMediaEndpoint::transceiverBackendFromSender):
2358         (WebCore::LibWebRTCMediaEndpoint::createDataChannel):
2359         * Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.cpp:
2360         (WebCore::createLibWebRTCPeerConnectionBackend):
2361         (WebCore::LibWebRTCPeerConnectionBackend::videoReceiver):
2362         (WebCore::LibWebRTCPeerConnectionBackend::audioReceiver):
2363         (WebCore::LibWebRTCPeerConnectionBackend::addTrack):
2364         (WebCore::LibWebRTCPeerConnectionBackend::addTransceiver):
2365         * Modules/mediastream/libwebrtc/LibWebRTCRtpSenderBackend.cpp:
2366         (WebCore::LibWebRTCRtpSenderBackend::createDTMFBackend):
2367         * Modules/mediastream/libwebrtc/LibWebRTCRtpTransceiverBackend.cpp:
2368         (WebCore::LibWebRTCRtpTransceiverBackend::createReceiverBackend):
2369         (WebCore::LibWebRTCRtpTransceiverBackend::createSenderBackend):
2370         * Modules/notifications/Notification.cpp:
2371         (WebCore::Notification::Notification):
2372         * Modules/notifications/NotificationController.cpp:
2373         (WebCore::provideNotification):
2374         * Modules/quota/DOMWindowQuota.cpp:
2375         (WebCore::DOMWindowQuota::from):
2376         * Modules/quota/NavigatorStorageQuota.cpp:
2377         (WebCore::NavigatorStorageQuota::from):
2378         * Modules/quota/WorkerNavigatorStorageQuota.cpp:
2379         (WebCore::WorkerNavigatorStorageQuota::from):
2380         * Modules/speech/DOMWindowSpeechSynthesis.cpp:
2381         (WebCore::DOMWindowSpeechSynthesis::from):
2382         * Modules/speech/SpeechSynthesis.cpp:
2383         (WebCore::SpeechSynthesis::ensurePlatformSpeechSynthesizer):
2384         * Modules/webaudio/AsyncAudioDecoder.cpp:
2385         (WebCore::AsyncAudioDecoder::decodeAsync):
2386         * Modules/webaudio/AudioBasicInspectorNode.cpp:
2387         (WebCore::AudioBasicInspectorNode::AudioBasicInspectorNode):
2388         * Modules/webaudio/AudioBasicProcessorNode.cpp:
2389         (WebCore::AudioBasicProcessorNode::AudioBasicProcessorNode):
2390         * Modules/webaudio/AudioBufferSourceNode.cpp:
2391         (WebCore::AudioBufferSourceNode::AudioBufferSourceNode):
2392         * Modules/webaudio/AudioContext.cpp:
2393         (WebCore::AudioContext::AudioContext):
2394         (WebCore::AudioContext::decodeAudioData):
2395         * Modules/webaudio/AudioDestinationNode.cpp:
2396         (WebCore::AudioDestinationNode::AudioDestinationNode):
2397         * Modules/webaudio/BiquadFilterNode.cpp:
2398         (WebCore::BiquadFilterNode::BiquadFilterNode):
2399         * Modules/webaudio/BiquadProcessor.cpp:
2400         (WebCore::BiquadProcessor::createKernel):
2401         (WebCore::BiquadProcessor::getFrequencyResponse):
2402         * Modules/webaudio/ChannelMergerNode.cpp:
2403         (WebCore::ChannelMergerNode::ChannelMergerNode):
2404         * Modules/webaudio/ChannelSplitterNode.cpp:
2405         (WebCore::ChannelSplitterNode::ChannelSplitterNode):
2406         * Modules/webaudio/ConvolverNode.cpp:
2407         (WebCore::ConvolverNode::ConvolverNode):
2408         (WebCore::ConvolverNode::setBuffer):
2409         * Modules/webaudio/DelayNode.cpp:
2410         (WebCore::DelayNode::DelayNode):
2411         * Modules/webaudio/DelayProcessor.cpp:
2412         (WebCore::DelayProcessor::createKernel):
2413         * Modules/webaudio/DynamicsCompressorNode.cpp:
2414         (WebCore::DynamicsCompressorNode::DynamicsCompressorNode):
2415         (WebCore::DynamicsCompressorNode::initialize):
2416         * Modules/webaudio/GainNode.cpp:
2417         (WebCore::GainNode::GainNode):
2418         * Modules/webaudio/MediaElementAudioSourceNode.cpp:
2419         (WebCore::MediaElementAudioSourceNode::MediaElementAudioSourceNode):
2420         (WebCore::MediaElementAudioSourceNode::setFormat):
2421         * Modules/webaudio/MediaStreamAudioSourceNode.cpp:
2422         (WebCore::MediaStreamAudioSourceNode::MediaStreamAudioSourceNode):
2423         (WebCore::MediaStreamAudioSourceNode::setFormat):
2424         * Modules/webaudio/OscillatorNode.cpp:
2425         (WebCore::OscillatorNode::OscillatorNode):
2426         * Modules/webaudio/PannerNode.cpp:
2427         (WebCore::PannerNode::PannerNode):
2428         * Modules/webaudio/PeriodicWave.cpp:
2429         (WebCore::PeriodicWave::createBandLimitedTables):
2430         * Modules/webaudio/RealtimeAnalyser.cpp:
2431         (WebCore::RealtimeAnalyser::RealtimeAnalyser):
2432         (WebCore::RealtimeAnalyser::setFftSize):
2433         * Modules/webaudio/ScriptProcessorNode.cpp:
2434         (WebCore::ScriptProcessorNode::ScriptProcessorNode):
2435         * Modules/webaudio/WaveShaperDSPKernel.cpp:
2436         (WebCore::WaveShaperDSPKernel::lazyInitializeOversampling):
2437         * Modules/webaudio/WaveShaperNode.cpp:
2438         (WebCore::WaveShaperNode::WaveShaperNode):
2439         * Modules/webaudio/WaveShaperProcessor.cpp:
2440         (WebCore::WaveShaperProcessor::createKernel):
2441         * Modules/webauthn/fido/FidoHidMessage.cpp:
2442         (fido::FidoHidMessage::FidoHidMessage):
2443         * Modules/webauthn/fido/FidoHidPacket.cpp:
2444         (fido::FidoHidInitPacket::createFromSerializedData):
2445         (fido::FidoHidContinuationPacket::createFromSerializedData):
2446         * Modules/webdatabase/Database.cpp:
2447         (WebCore::Database::openAndVerifyVersion):
2448         (WebCore::Database::close):
2449         (WebCore::Database::scheduleTransaction):
2450         (WebCore::Database::scheduleTransactionStep):
2451         (WebCore::Database::tableNames):
2452         * Modules/webdatabase/DatabaseThread.cpp:
2453         (WebCore::DatabaseThread::DatabaseThread):
2454         * Modules/webdatabase/DatabaseTracker.cpp:
2455         (WebCore::DatabaseTracker::addOpenDatabase):
2456         (WebCore::DatabaseTracker::recordCreatingDatabase):
2457         (WebCore::DatabaseTracker::recordDeletingDatabase):
2458         * Modules/webdatabase/SQLTransaction.cpp:
2459         (WebCore::SQLTransaction::executeSql):
2460         (WebCore::SQLTransaction::openTransactionAndPreflight):
2461         * Modules/webdriver/NavigatorWebDriver.cpp:
2462         (WebCore::NavigatorWebDriver::from):
2463         * Modules/webgpu/NavigatorGPU.cpp:
2464         (WebCore::NavigatorGPU::from):
2465         * Modules/webgpu/WHLSL/AST/WHLSLEnumerationDefinition.h:
2466         * Modules/webgpu/WHLSL/AST/WHLSLVariableDeclaration.h:
2467         * Modules/webgpu/WHLSL/Metal/WHLSLFunctionWriter.cpp:
2468         (WebCore::WHLSL::Metal::RenderFunctionDefinitionWriter::createEntryPointScaffolding):
2469         (WebCore::WHLSL::Metal::ComputeFunctionDefinitionWriter::createEntryPointScaffolding):
2470         * Modules/webgpu/WHLSL/Metal/WHLSLTypeNamer.cpp:
2471         (WebCore::WHLSL::Metal::TypeNamer::createNameNode):
2472         * Modules/webgpu/WHLSL/WHLSLChecker.cpp:
2473         (WebCore::WHLSL::Checker::assignConcreteType):
2474         (WebCore::WHLSL::Checker::assignType):
2475         (WebCore::WHLSL::Checker::forwardType):
2476         * Modules/webgpu/WHLSL/WHLSLParser.cpp:
2477         (WebCore::WHLSL::Parser::parseSemantic):
2478         * Modules/webgpu/WorkerNavigatorGPU.cpp:
2479         (WebCore::WorkerNavigatorGPU::from):
2480         * Modules/websockets/ThreadableWebSocketChannelClientWrapper.cpp:
2481         (WebCore::ThreadableWebSocketChannelClientWrapper::didConnect):
2482         (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveMessage):
2483         (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveBinaryData):
2484         (WebCore::ThreadableWebSocketChannelClientWrapper::didUpdateBufferedAmount):
2485         (WebCore::ThreadableWebSocketChannelClientWrapper::didStartClosingHandshake):
2486         (WebCore::ThreadableWebSocketChannelClientWrapper::didClose):
2487         (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveMessageError):
2488         (WebCore::ThreadableWebSocketChannelClientWrapper::didUpgradeURL):
2489         * Modules/websockets/WebSocketChannel.cpp:
2490         (WebCore::WebSocketChannel::connect):
2491         (WebCore::WebSocketChannel::enqueueTextFrame):
2492         (WebCore::WebSocketChannel::enqueueRawFrame):
2493         (WebCore::WebSocketChannel::enqueueBlobFrame):
2494         (WebCore::WebSocketChannel::processOutgoingFrameQueue):
2495         * Modules/websockets/WebSocketDeflateFramer.cpp:
2496         (WebCore::WebSocketDeflateFramer::createExtensionProcessor):
2497         (WebCore::WebSocketDeflateFramer::enableDeflate):
2498         (WebCore::WebSocketDeflateFramer::deflate):
2499         (WebCore::WebSocketDeflateFramer::inflate):
2500         * Modules/websockets/WebSocketDeflater.cpp:
2501         (WebCore::WebSocketDeflater::WebSocketDeflater):
2502         (WebCore::WebSocketInflater::WebSocketInflater):
2503         * Modules/websockets/WorkerThreadableWebSocketChannel.cpp:
2504         (WebCore::WorkerThreadableWebSocketChannel::Bridge::mainThreadInitialize):
2505         * Modules/webvr/NavigatorWebVR.cpp:
2506         (WebCore::NavigatorWebVR::from):
2507         * accessibility/AXObjectCache.cpp:
2508         (WebCore::AXObjectCache::startCachingComputedObjectAttributesUntilTreeMutates):
2509         * animation/WebAnimation.cpp:
2510         (WebCore::WebAnimation::updateFinishedState):
2511         * bindings/js/JSDOMWindowBase.cpp:
2512         (WebCore::JSDOMWindowBase::queueTaskToEventLoop):
2513         * bindings/js/JSEventTargetCustom.cpp:
2514         (WebCore::jsEventTargetCast):
2515         * bindings/js/JSWorkerGlobalScopeBase.cpp:
2516         (WebCore::JSWorkerGlobalScopeBase::queueTaskToEventLoop):
2517         * bindings/js/SerializedScriptValue.cpp:
2518         (WebCore::transferArrayBuffers):
2519         (WebCore::SerializedScriptValue::create):
2520         * bindings/js/SerializedScriptValue.h:
2521         (WebCore::SerializedScriptValue::decode):
2522         * bindings/js/WebCoreJSClientData.cpp:
2523         (WebCore::JSVMClientData::initNormalWorld):
2524         * bindings/js/WorkerScriptController.cpp:
2525         (WebCore::WorkerScriptController::initScript):
2526         * bridge/c/c_class.cpp:
2527         (JSC::Bindings::CClass::methodNamed const):
2528         (JSC::Bindings::CClass::fieldNamed const):
2529         * bridge/objc/objc_class.mm:
2530         (JSC::Bindings::ObjcClass::methodNamed const):
2531         (JSC::Bindings::ObjcClass::fieldNamed const):
2532         * bridge/objc/objc_runtime.mm:
2533         (JSC::Bindings::callObjCFallbackObject):
2534         * contentextensions/CombinedURLFilters.cpp:
2535         (WebCore::ContentExtensions::CombinedURLFilters::CombinedURLFilters):
2536         (WebCore::ContentExtensions::CombinedURLFilters::addPattern):
2537         * crypto/SubtleCrypto.cpp:
2538         (WebCore::normalizeCryptoAlgorithmParameters):
2539         (WebCore::crossThreadCopyImportParams):
2540         * css/CSSCalculationValue.cpp:
2541         (WebCore::determineCategory):
2542         * css/CSSDefaultStyleSheets.cpp:
2543         (WebCore::CSSDefaultStyleSheets::loadFullDefaultStyle):
2544         (WebCore::CSSDefaultStyleSheets::loadSimpleDefaultStyle):
2545         * css/CSSFontFace.cpp:
2546         (WebCore::CSSFontFace::appendSources):
2547         * css/CSSFontFaceSet.cpp:
2548         (WebCore::CSSFontFaceSet::ensureLocalFontFacesForFamilyRegistered):
2549         * css/CSSGroupingRule.cpp:
2550         (WebCore::CSSGroupingRule::cssRules const):
2551         * css/CSSImageGeneratorValue.cpp:
2552         (WebCore::CSSImageGeneratorValue::saveCachedImageForSize):
2553         * css/CSSKeyframesRule.cpp:
2554         (WebCore::CSSKeyframesRule::cssRules):
2555         * css/CSSStyleSheet.cpp:
2556         (WebCore::CSSStyleSheet::cssRules):
2557         * css/DOMCSSPaintWorklet.cpp:
2558         (WebCore::DOMCSSPaintWorklet::from):
2559         * css/DOMCSSRegisterCustomProperty.cpp:
2560         (WebCore::DOMCSSRegisterCustomProperty::from):
2561         * css/DocumentRuleSets.cpp:
2562         (WebCore::DocumentRuleSets::DocumentRuleSets):
2563         (WebCore::DocumentRuleSets::updateUserAgentMediaQueryStyleIfNeeded const):
2564         (WebCore::DocumentRuleSets::initializeUserStyle):
2565         (WebCore::makeRuleSet):
2566         (WebCore::DocumentRuleSets::resetAuthorStyle):
2567         (WebCore::ensureInvalidationRuleSets):
2568         * css/ElementRuleCollector.cpp:
2569         (WebCore::ElementRuleCollector::collectSlottedPseudoElementRulesForSlot):
2570         * css/FontFace.cpp:
2571         (WebCore::populateFontFaceWithArrayBuffer):
2572         * css/PropertySetCSSStyleDeclaration.cpp:
2573         (WebCore::PropertySetCSSStyleDeclaration::wrapForDeprecatedCSSOM):
2574         * css/RuleFeature.cpp:
2575         (WebCore::RuleFeatureSet::collectFeatures):
2576         (WebCore::RuleFeatureSet::add):
2577         * css/RuleSet.cpp:
2578         (WebCore::RuleSet::addToRuleSet):
2579         * css/StyleBuilderConverter.h:
2580         (WebCore::StyleBuilderConverter::convertTo100PercentMinusLength):
2581         * css/StyleBuilderCustom.h:
2582         (WebCore::StyleBuilderCustom::applyTextOrBoxShadowValue):
2583         (WebCore::StyleBuilderCustom::applyInheritTextShadow):
2584         (WebCore::StyleBuilderCustom::applyInheritBoxShadow):
2585         (WebCore::StyleBuilderCustom::applyValueContent):
2586         * css/StyleProperties.cpp:
2587         (WebCore::MutableStyleProperties::ensureCSSStyleDeclaration):
2588         (WebCore::MutableStyleProperties::ensureInlineCSSStyleDeclaration):
2589         * css/StyleResolver.cpp:
2590         (WebCore::StyleResolver::cascadedPropertiesForRollback):
2591         * css/makeprop.pl:
2592         (generateFillLayerPropertyInheritValueSetter):
2593         (generateFillLayerPropertyValueSetter):
2594         * css/parser/CSSParserImpl.cpp:
2595         (WebCore::CSSParserImpl::CSSParserImpl):
2596         (WebCore::CSSParserImpl::parsePageSelector):
2597         (WebCore::CSSParserImpl::consumeMediaRule):
2598         (WebCore::CSSParserImpl::consumeSupportsRule):
2599         (WebCore::CSSParserImpl::consumeKeyframesRule):
2600         * css/parser/CSSParserSelector.cpp:
2601         (WebCore::CSSParserSelector::parsePagePseudoSelector):
2602         (WebCore::CSSParserSelector::parsePseudoElementSelector):
2603         (WebCore::CSSParserSelector::parsePseudoClassSelector):
2604         (WebCore::CSSParserSelector::CSSParserSelector):
2605         (WebCore::CSSParserSelector::adoptSelectorVector):
2606         (WebCore::CSSParserSelector::prependTagSelector):
2607         * css/parser/CSSPropertyParser.cpp:
2608         (WebCore::consumeBasicShapePath):
2609         * css/parser/CSSSelectorParser.cpp:
2610         (WebCore::CSSSelectorParser::consumePseudo):
2611         * dom/CustomElementReactionQueue.cpp:
2612         (WebCore::CustomElementReactionQueue::ensureBackupQueue):
2613         * dom/DataTransfer.cpp:
2614         (WebCore::DataTransfer::items):
2615         (WebCore::DataTransfer::createForInputEvent):
2616         (WebCore::DataTransfer::createForDragStartEvent):
2617         (WebCore::DataTransfer::setDragImage):
2618         * dom/DeviceOrientationController.cpp:
2619         (WebCore::provideDeviceOrientationTo):
2620         * dom/Document.cpp:
2621         (WebCore::Document::Document):
2622         (WebCore::Document::buildAccessKeyCache):
2623         (WebCore::Document::implementation):
2624         (WebCore::Document::formController):
2625         (WebCore::Document::updateTextRenderer):
2626         (WebCore::Document::userAgentShadowTreeStyleResolver):
2627         (WebCore::Document::axObjectCache const):
2628         (WebCore::Document::setParsing):
2629         (WebCore::Document::accessSVGExtensions):
2630         (WebCore::Document::initSecurityContext):
2631         (WebCore::Document::textAutoSizing):
2632         (WebCore::Document::didAddWheelEventHandler):
2633         (WebCore::Document::didAddTouchEventHandler):
2634         (WebCore::Document::didLogMessage):
2635         (WebCore::Document::registerCSSProperty):
2636         (WebCore::Document::deviceOrientationAndMotionAccessController):
2637         (WebCore::Document::contentChangeObserver):
2638         (WebCore::Document::domTimerHoldingTank):
2639         * dom/Document.h:
2640         (WebCore::Document::createParserYieldToken):
2641         * dom/DocumentEventQueue.cpp:
2642         (WebCore::DocumentEventQueue::DocumentEventQueue):
2643         * dom/DocumentMarkerController.cpp:
2644         (WebCore::DocumentMarkerController::addMarker):
2645         * dom/DocumentStorageAccess.cpp:
2646         (WebCore::DocumentStorageAccess::from):
2647         (WebCore::DocumentStorageAccess::requestStorageAccess):
2648         (WebCore::DocumentStorageAccess::enableTemporaryTimeUserGesture):
2649         * dom/Element.cpp:
2650         (WebCore::Element::attributes const):
2651         (WebCore::Element::setIsDefinedCustomElement):
2652         (WebCore::Element::enqueueToUpgrade):
2653         (WebCore::Element::classList):
2654         (WebCore::Element::dataset):
2655         (WebCore::Element::ensureIntersectionObserverData):
2656         (WebCore::Element::ensureResizeObserverData):
2657         * dom/EventListenerMap.cpp:
2658         (WebCore::EventListenerMap::add):
2659         * dom/EventNames.h:
2660         * dom/EventPath.cpp:
2661         (WebCore::EventPath::buildPath):
2662         (WebCore::EventPath::EventPath):
2663         * dom/IdTargetObserverRegistry.cpp:
2664         (WebCore::IdTargetObserverRegistry::addObserver):
2665         * dom/KeyboardEvent.cpp:
2666         (WebCore::KeyboardEvent::KeyboardEvent):
2667         * dom/MutationObserver.cpp:
2668         (WebCore::queueMutationObserverCompoundMicrotask):
2669         * dom/MutationObserverInterestGroup.cpp:
2670         (WebCore::MutationObserverInterestGroup::createIfNeeded):
2671         * dom/MutationObserverRegistration.cpp:
2672         (WebCore::MutationObserverRegistration::observedSubtreeNodeWillDetach):
2673         * dom/Node.cpp:
2674         (WebCore::Node::materializeRareData):
2675         (WebCore::Node::ensureEventTargetData):
2676         (WebCore::Node::registerMutationObserver):
2677         * dom/NodeRareData.h:
2678         (WebCore::NodeRareData::ensureNodeLists):
2679         (WebCore::NodeRareData::ensureMutationObserverData):
2680         * dom/RadioButtonGroups.cpp:
2681         (WebCore::RadioButtonGroups::addButton):
2682         * dom/ScriptExecutionContext.cpp:
2683         (WebCore::ScriptExecutionContext::reportException):
2684         (WebCore::ScriptExecutionContext::reportUnhandledPromiseRejection):
2685         (WebCore::ScriptExecutionContext::ensureRejectedPromiseTrackerSlow):
2686         * dom/SelectorQuery.cpp:
2687         * dom/ShadowRoot.cpp:
2688         (WebCore::ShadowRoot::ShadowRoot):
2689         (WebCore::ShadowRoot::moveShadowRootToNewDocument):
2690         (WebCore::ShadowRoot::addSlotElementByName):
2691         * dom/SlotAssignment.cpp:
2692         (WebCore::SlotAssignment::addSlotElementByName):
2693         (WebCore::SlotAssignment::assignToSlot):
2694         * dom/TreeScope.cpp:
2695         (WebCore::TreeScope::TreeScope):
2696         (WebCore::TreeScope::addElementById):
2697         (WebCore::TreeScope::addElementByName):
2698         (WebCore::TreeScope::addImageMap):
2699         (WebCore::TreeScope::addImageElementByUsemap):
2700         (WebCore::TreeScope::labelElementForId):
2701         * editing/Editor.cpp:
2702         (WebCore::createDataTransferForClipboardEvent):
2703         (WebCore::Editor::Editor):
2704         * editing/ReplaceSelectionCommand.cpp:
2705         (WebCore::ReplaceSelectionCommand::ensureReplacementFragment):
2706         * editing/SelectionRectGatherer.cpp:
2707         (WebCore::SelectionRectGatherer::clearAndCreateNotifier):
2708         * editing/TextIterator.cpp:
2709         (WebCore::TextIterator::handleTextNode):
2710         * editing/cocoa/HTMLConverter.mm:
2711         (HTMLConverter::HTMLConverter):
2712         (HTMLConverterCaches::computedStylePropertyForElement):
2713         * editing/markup.cpp:
2714         (WebCore::createPageForSanitizingWebContent):
2715         * fileapi/AsyncFileStream.cpp:
2716         (WebCore::callOnFileThread):
2717         (WebCore::AsyncFileStream::AsyncFileStream):
2718         * fileapi/FileReader.cpp:
2719         (WebCore::FileReader::readInternal):
2720         * history/CachedFrame.cpp:
2721         (WebCore::CachedFrame::CachedFrame):
2722         * history/CachedPage.cpp:
2723         (WebCore::CachedPage::CachedPage):
2724         * history/PageCache.cpp:
2725         (WebCore::PageCache::addIfCacheable):
2726         * html/FileInputType.cpp:
2727         (WebCore::FileInputType::requestIcon):
2728         * html/FormAssociatedElement.cpp:
2729         (WebCore::FormAssociatedElement::resetFormAttributeTargetObserver):
2730         * html/FormController.cpp:
2731         (WebCore::SavedFormState::deserialize):
2732         (WebCore::FormController::createSavedFormStateMap):
2733         (WebCore::FormController::takeStateForFormElement):
2734         * html/HTMLAnchorElement.cpp:
2735         (WebCore::HTMLAnchorElement::relList const):
2736         * html/HTMLAreaElement.cpp:
2737         (WebCore::HTMLAreaElement::mapMouseEvent):
2738         * html/HTMLCanvasElement.cpp:
2739         (WebCore::HTMLCanvasElement::setImageBuffer const):
2740         * html/HTMLCollection.cpp:
2741         (WebCore::HTMLCollection::updateNamedElementCache const):
2742         * html/HTMLDetailsElement.cpp:
2743         (WebCore::HTMLDetailsElement::create):
2744         * html/HTMLFormControlElement.cpp:
2745         (WebCore::HTMLFormControlElement::updateVisibleValidationMessage):
2746         * html/HTMLFormControlsCollection.cpp:
2747         (WebCore::HTMLFormControlsCollection::updateNamedElementCache const):
2748         * html/HTMLFormElement.cpp:
2749         (WebCore::HTMLFormElement::addToPastNamesMap):
2750         * html/HTMLIFrameElement.cpp:
2751         (WebCore::HTMLIFrameElement::sandbox):
2752         * html/HTMLInputElement.cpp:
2753         (WebCore::HTMLInputElement::ensureImageLoader):
2754         (WebCore::HTMLInputElement::resetListAttributeTargetObserver):
2755         * html/HTMLLinkElement.cpp:
2756         (WebCore::HTMLLinkElement::sizes):
2757         (WebCore::HTMLLinkElement::relList):
2758         * html/HTMLMediaElement.cpp:
2759         (WebCore::HTMLMediaElement::finishInitialization):
2760         (WebCore::HTMLMediaElement::seekWithTolerance):
2761         * html/HTMLOutputElement.cpp:
2762         (WebCore::HTMLOutputElement::htmlFor):
2763         * html/HTMLPlugInImageElement.cpp:
2764         (WebCore::HTMLPlugInImageElement::updateAfterStyleResolution):
2765         * html/HTMLSummaryElement.cpp:
2766         (WebCore::HTMLSummaryElement::create):
2767         * html/HTMLVideoElement.cpp:
2768         (WebCore::HTMLVideoElement::didAttachRenderers):
2769         (WebCore::HTMLVideoElement::parseAttribute):
2770         * html/PublicURLManager.cpp:
2771         (WebCore::PublicURLManager::create):
2772         * html/ValidationMessage.cpp:
2773         (WebCore::ValidationMessage::setMessage):
2774         (WebCore::ValidationMessage::setMessageDOMAndStartTimer):
2775         (WebCore::ValidationMessage::requestToHideMessage):
2776         * html/canvas/CanvasRenderingContext2DBase.cpp:
2777         (WebCore::DisplayListDrawingContext::DisplayListDrawingContext):
2778         (WebCore::CanvasRenderingContext2DBase::drawingContext const):
2779         * html/canvas/WebGL2RenderingContext.cpp:
2780         (WebCore::WebGL2RenderingContext::getExtension):
2781         * html/canvas/WebGLRenderingContext.cpp:
2782         (WebCore::WebGLRenderingContext::getExtension):
2783         * html/canvas/WebGLRenderingContextBase.cpp:
2784         (WebCore::WebGLRenderingContextBase::initializeNewContext):
2785         (WebCore::WebGLRenderingContextBase::compileShader):
2786         (WebCore::WebGLRenderingContextBase::printToConsole):
2787         * html/parser/CSSPreloadScanner.cpp:
2788         (WebCore::CSSPreloadScanner::emitRule):
2789         * html/parser/HTMLConstructionSite.cpp:
2790         (WebCore::HTMLConstructionSite::insertHTMLElementOrFindCustomElementInterface):
2791         * html/parser/HTMLDocumentParser.cpp:
2792         (WebCore::HTMLDocumentParser::HTMLDocumentParser):
2793         (WebCore::HTMLDocumentParser::pumpTokenizer):
2794         (WebCore::HTMLDocumentParser::insert):
2795         * html/parser/HTMLElementStack.cpp:
2796         (WebCore::HTMLElementStack::insertAbove):
2797         (WebCore::HTMLElementStack::pushCommon):
2798         * html/parser/HTMLPreloadScanner.cpp:
2799         (WebCore::TokenPreloadScanner::StartTagScanner::createPreloadRequest):
2800         * html/parser/HTMLToken.h:
2801         (WebCore::HTMLToken::beginDOCTYPE):
2802         * html/parser/XSSAuditor.cpp:
2803         (WebCore::XSSAuditor::filterToken):
2804         (WebCore::XSSAuditor::decodedHTTPBodySuffixTree):
2805         * html/shadow/TextControlInnerElements.cpp:
2806         (WebCore::TextControlInnerTextElement::resolveCustomStyle):
2807         * html/track/InbandGenericTextTrack.cpp:
2808         (WebCore::InbandGenericTextTrack::parser):
2809         * html/track/InbandWebVTTTextTrack.cpp:
2810         (WebCore::InbandWebVTTTextTrack::parser):
2811         * html/track/LoadableTextTrack.cpp:
2812         (WebCore::LoadableTextTrack::loadTimerFired):
2813         * inspector/CommandLineAPIHost.cpp:
2814         (WebCore::CommandLineAPIHost::CommandLineAPIHost):
2815         (WebCore::CommandLineAPIHost::clearAllWrappers):
2816         * inspector/DOMEditor.cpp:
2817         (WebCore::DOMEditor::insertBefore):
2818         (WebCore::DOMEditor::removeChild):
2819         (WebCore::DOMEditor::setAttribute):
2820         (WebCore::DOMEditor::removeAttribute):
2821         (WebCore::DOMEditor::setOuterHTML):
2822         (WebCore::DOMEditor::insertAdjacentHTML):
2823         (WebCore::DOMEditor::replaceWholeText):
2824         (WebCore::DOMEditor::replaceChild):
2825         (WebCore::DOMEditor::setNodeValue):
2826         * inspector/DOMPatchSupport.cpp:
2827         (WebCore::DOMPatchSupport::createDigest):
2828         * inspector/InspectorController.cpp:
2829         (WebCore::InspectorController::InspectorController):
2830         (WebCore::InspectorController::createLazyAgents):
2831         (WebCore::InspectorController::ensureInspectorAgent):
2832         (WebCore::InspectorController::ensureDOMAgent):
2833         (WebCore::InspectorController::ensurePageAgent):
2834         * inspector/InspectorHistory.cpp:
2835         (WebCore::InspectorHistory::markUndoableState):
2836         * inspector/InspectorStyleSheet.cpp:
2837         (ParsedStyleSheet::setSourceData):
2838         (WebCore::InspectorStyleSheet::ensureSourceData):
2839         * inspector/NetworkResourcesData.cpp:
2840         (WebCore::NetworkResourcesData::resourceCreated):
2841         * inspector/WorkerInspectorController.cpp:
2842         (WebCore::WorkerInspectorController::WorkerInspectorController):
2843         (WebCore::WorkerInspectorController::connectFrontend):
2844         (WebCore::WorkerInspectorController::createLazyAgents):
2845         * inspector/agents/InspectorApplicationCacheAgent.cpp:
2846         (WebCore::InspectorApplicationCacheAgent::InspectorApplicationCacheAgent):
2847         * inspector/agents/InspectorCPUProfilerAgent.cpp:
2848         (WebCore::InspectorCPUProfilerAgent::InspectorCPUProfilerAgent):
2849         * inspector/agents/InspectorCSSAgent.cpp:
2850         (WebCore::InspectorCSSAgent::InspectorCSSAgent):
2851         (WebCore::InspectorCSSAgent::setStyleSheetText):
2852         (WebCore::InspectorCSSAgent::setStyleText):
2853         (WebCore::InspectorCSSAgent::setRuleSelector):
2854         (WebCore::InspectorCSSAgent::addRule):
2855         * inspector/agents/InspectorCanvasAgent.cpp:
2856         (WebCore::InspectorCanvasAgent::InspectorCanvasAgent):
2857         (WebCore::InspectorCanvasAgent::recordCanvasAction):
2858         * inspector/agents/InspectorDOMAgent.cpp:
2859         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
2860         (WebCore::InspectorDOMAgent::didCreateFrontendAndBackend):
2861         (WebCore::InspectorDOMAgent::pushNodePathToFrontend):
2862         (WebCore::InspectorDOMAgent::highlightConfigFromInspectorObject):
2863         (WebCore::InspectorDOMAgent::highlightRect):
2864         (WebCore::InspectorDOMAgent::highlightQuad):
2865         (WebCore::InspectorDOMAgent::innerHighlightQuad):
2866         (WebCore::InspectorDOMAgent::highlightFrame):
2867         (WebCore::InspectorDOMAgent::setInspectedNode):
2868         (WebCore::InspectorDOMAgent::didInvalidateStyleAttr):
2869         * inspector/agents/InspectorDOMStorageAgent.cpp:
2870         (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
2871         * inspector/agents/InspectorDatabaseAgent.cpp:
2872         (WebCore::InspectorDatabaseAgent::InspectorDatabaseAgent):
2873         * inspector/agents/InspectorLayerTreeAgent.cpp:
2874         (WebCore::InspectorLayerTreeAgent::InspectorLayerTreeAgent):
2875         * inspector/agents/InspectorMemoryAgent.cpp:
2876         (WebCore::InspectorMemoryAgent::InspectorMemoryAgent):
2877         * inspector/agents/InspectorNetworkAgent.cpp:
2878         (WebCore::InspectorNetworkAgent::InspectorNetworkAgent):
2879         * inspector/agents/InspectorPageAgent.cpp:
2880         (WebCore::InspectorPageAgent::InspectorPageAgent):
2881         * inspector/agents/InspectorTimelineAgent.cpp:
2882         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
2883         (WebCore::InspectorTimelineAgent::internalStart):
2884         (WebCore::InspectorTimelineAgent::startFromConsole):
2885         (WebCore::InspectorTimelineAgent::stopFromConsole):
2886         * inspector/agents/InspectorWorkerAgent.cpp:
2887         (WebCore::InspectorWorkerAgent::InspectorWorkerAgent):
2888         * inspector/agents/WebConsoleAgent.cpp:
2889         (WebCore::WebConsoleAgent::didReceiveResponse):
2890         (WebCore::WebConsoleAgent::didFailLoading):
2891         * inspector/agents/WebHeapAgent.cpp:
2892         (WebCore::WebHeapAgent::WebHeapAgent):
2893         * inspector/agents/page/PageRuntimeAgent.cpp:
2894         (WebCore::PageRuntimeAgent::PageRuntimeAgent):
2895         * inspector/agents/worker/WorkerDebuggerAgent.cpp:
2896         (WebCore::WorkerDebuggerAgent::breakpointActionLog):
2897         * layout/LayoutState.cpp:
2898         (WebCore::Layout::LayoutState::displayBoxForLayoutBox const):
2899         (WebCore::Layout::LayoutState::createFormattingStateForFormattingRootIfNeeded):
2900         (WebCore::Layout::LayoutState::createFormattingContext):
2901         * layout/inlineformatting/InlineFormattingContext.cpp:
2902         (WebCore::Layout::InlineFormattingContext::collectInlineContent const):
2903         * layout/inlineformatting/InlineFormattingContextLineLayout.cpp:
2904         (WebCore::Layout::InlineFormattingContext::InlineLayout::createDisplayRuns const):
2905         * layout/inlineformatting/InlineLine.cpp:
2906         (WebCore::Layout::Line::Line):
2907         (WebCore::Layout::Line::appendNonBreakableSpace):
2908         (WebCore::Layout::Line::appendTextContent):
2909         (WebCore::Layout::Line::appendNonReplacedInlineBox):
2910         (WebCore::Layout::Line::appendHardLineBreak):
2911         * layout/inlineformatting/InlineTextItem.cpp:
2912         (WebCore::Layout::InlineTextItem::createAndAppendTextItems):
2913         (WebCore::Layout::InlineTextItem::split const):
2914         * layout/layouttree/LayoutBox.cpp:
2915         (WebCore::Layout::Box::Box):
2916         (WebCore::Layout::Box::ensureRareData):
2917         * layout/layouttree/LayoutTreeBuilder.cpp:
2918         (WebCore::Layout::TreeBuilder::createLayoutBox):
2919         (WebCore::Layout::TreeBuilder::createTableStructure):
2920         (WebCore::Layout::printLayoutTreeForLiveDocuments):
2921         * layout/tableformatting/TableGrid.cpp:
2922         (WebCore::Layout::TableGrid::appendCell):
2923         * loader/ContentFilter.cpp:
2924         (WebCore::ContentFilter::create):
2925         * loader/CrossOriginAccessControl.cpp:
2926         (WebCore::validatePreflightResponse):
2927         * loader/DocumentLoader.cpp:
2928         (WebCore::DocumentLoader::DocumentLoader):
2929         (WebCore::DocumentLoader::loadApplicationManifest):
2930         (WebCore::DocumentLoader::addAllArchiveResources):
2931         (WebCore::DocumentLoader::addArchiveResource):
2932         (WebCore::DocumentLoader::loadMainResource):
2933         (WebCore::DocumentLoader::didGetLoadDecisionForIcon):
2934         * loader/EmptyClients.cpp:
2935         (WebCore::pageConfigurationWithEmptyClients):
2936         * loader/FrameLoader.cpp:
2937         (WebCore::FrameLoader::FrameLoader):
2938         (WebCore::FrameLoader::init):
2939         (WebCore::FrameLoader::initForSynthesizedDocument):
2940         (WebCore::FrameLoader::detachChildren):
2941         * loader/LinkLoader.cpp:
2942         (WebCore::createLinkPreloadResourceClient):
2943         * loader/NavigationScheduler.cpp:
2944         (WebCore::NavigationScheduler::scheduleRedirect):
2945         (WebCore::NavigationScheduler::scheduleLocationChange):
2946         (WebCore::NavigationScheduler::scheduleFormSubmission):
2947         (WebCore::NavigationScheduler::scheduleRefresh):
2948         (WebCore::NavigationScheduler::scheduleHistoryNavigation):
2949         (WebCore::NavigationScheduler::schedulePageBlock):
2950         * loader/ProgressTracker.cpp:
2951         (WebCore::ProgressTracker::incrementProgress):
2952         * loader/TextResourceDecoder.cpp:
2953         (WebCore::TextResourceDecoder::checkForHeadCharset):
2954         * loader/TextTrackLoader.cpp:
2955         (WebCore::TextTrackLoader::processNewCueData):
2956         * loader/WorkerThreadableLoader.cpp:
2957         (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge):
2958         * loader/archive/cf/LegacyWebArchive.cpp:
2959         (WebCore::LegacyWebArchive::create):
2960         * loader/cache/CachedImage.cpp:
2961         (WebCore::CachedImage::setBodyDataFrom):
2962         (WebCore::CachedImage::createImage):
2963         * loader/cache/CachedRawResource.cpp:
2964         (WebCore::CachedRawResource::redirectReceived):
2965         * loader/cache/CachedResource.cpp:
2966         (WebCore::CachedResource::addClientToSet):
2967         * loader/cache/CachedResourceLoader.cpp:
2968         (WebCore::CachedResourceLoader::requestResource):
2969         (WebCore::CachedResourceLoader::preload):
2970         (WebCore::CachedResourceLoader::clearPreloads):
2971         * loader/cache/MemoryCache.cpp:
2972         (WebCore::MemoryCache::ensureSessionResourceMap):
2973         (WebCore::MemoryCache::addImageToCache):
2974         (WebCore::MemoryCache::lruListFor):
2975         * loader/ios/PreviewLoader.mm:
2976         (-[WebPreviewLoader initWithResourceLoader:resourceResponse:]):
2977         (-[WebPreviewLoader connection:didFailWithError:]):
2978         (WebCore::PreviewLoader::create):
2979         * page/ContextMenuController.cpp:
2980         (WebCore::ContextMenuController::maybeCreateContextMenu):
2981         * page/DebugPageOverlays.cpp:
2982         (WebCore::MouseWheelRegionOverlay::updateRegion):
2983         * page/EventHandler.cpp:
2984         (WebCore::EventHandler::EventHandler):
2985         * page/FrameView.cpp:
2986         (WebCore::FrameView::addEmbeddedObjectToUpdate):
2987         (WebCore::FrameView::addSlowRepaintObject):
2988         (WebCore::FrameView::addViewportConstrainedObject):
2989         (WebCore::FrameView::addScrollableArea):
2990         * page/FrameViewLayoutContext.cpp:
2991         (WebCore::FrameViewLayoutContext::pushLayoutState):
2992         (WebCore::FrameViewLayoutContext::pushLayoutStateForPaginationIfNeeded):
2993         * page/NavigatorBase.cpp:
2994         (WebCore::NavigatorBase::serviceWorker):
2995         * page/Page.cpp:
2996         (WebCore::Page::Page):
2997         (WebCore::Page::initGroup):
2998         (WebCore::Page::setResourceUsageOverlayVisible):
2999         * page/PageConsoleClient.cpp:
3000         (WebCore::PageConsoleClient::addMessage):
3001         (WebCore::PageConsoleClient::messageWithTypeAndLevel):
3002         (WebCore::PageConsoleClient::screenshot):
3003         * page/PageGroup.cpp:
3004         (WebCore::PageGroup::captionPreferences):
3005         * page/Performance.cpp:
3006         (WebCore::Performance::mark):
3007         (WebCore::Performance::clearMarks):
3008         (WebCore::Performance::measure):
3009         (WebCore::Performance::clearMeasures):
3010         * page/PrintContext.cpp:
3011         (WebCore::PrintContext::outputLinkedDestinations):
3012         * page/RenderingUpdateScheduler.cpp:
3013         (WebCore::RenderingUpdateScheduler::startTimer):
3014         * page/RenderingUpdateScheduler.h:
3015         (WebCore::RenderingUpdateScheduler::create):
3016         * page/SecurityPolicy.cpp:
3017         (WebCore::SecurityPolicy::addOriginAccessWhitelistEntry):
3018         * page/SettingsBase.cpp:
3019         (WebCore::SettingsBase::SettingsBase):
3020         * page/UserContentController.cpp:
3021         (WebCore::UserContentController::addUserScript):
3022         (WebCore::UserContentController::addUserStyleSheet):
3023         * page/WheelEventDeltaFilter.cpp:
3024         (WebCore::WheelEventDeltaFilter::create):
3025         * page/animation/CSSAnimationController.cpp:
3026         (WebCore::CSSAnimationController::CSSAnimationController):
3027         * page/animation/CSSPropertyAnimation.cpp:
3028         (WebCore::blendFunc):
3029         (WebCore::PropertyWrapperVisitedAffectedColor::PropertyWrapperVisitedAffectedColor):
3030         (WebCore::FillLayersPropertyWrapper::FillLayersPropertyWrapper):
3031         (WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):
3032         * page/csp/ContentSecurityPolicy.cpp:
3033         (WebCore::ContentSecurityPolicy::updateSourceSelf):
3034         * page/csp/ContentSecurityPolicyDirectiveList.cpp:
3035         (WebCore::ContentSecurityPolicyDirectiveList::create):
3036         (WebCore::ContentSecurityPolicyDirectiveList::setCSPDirective):
3037         * page/linux/ResourceUsageOverlayLinux.cpp:
3038         (WebCore::ResourceUsageOverlay::platformInitialize):
3039         * page/mac/PageMac.mm:
3040         (WebCore::Page::addSchedulePair):
3041         * page/scrolling/AsyncScrollingCoordinator.cpp:
3042         (WebCore::AsyncScrollingCoordinator::AsyncScrollingCoordinator):
3043         * page/scrolling/ScrollingMomentumCalculator.cpp:
3044         (WebCore::ScrollingMomentumCalculator::create):
3045         * page/scrolling/ScrollingStateNode.cpp:
3046         (WebCore::ScrollingStateNode::appendChild):
3047         (WebCore::ScrollingStateNode::insertChild):
3048         * page/scrolling/ScrollingStateTree.cpp:
3049         (WebCore::ScrollingStateTree::commit):
3050         * page/scrolling/ScrollingTreeNode.cpp:
3051         (WebCore::ScrollingTreeNode::appendChild):
3052         * page/scrolling/mac/ScrollingMomentumCalculatorMac.mm:
3053         (WebCore::ScrollingMomentumCalculator::create):
3054         * platform/Length.cpp:
3055         (WebCore::convertTo100PercentMinusLength):
3056         (WebCore::blendMixedTypes):
3057         * platform/RemoteCommandListener.cpp:
3058         (WebCore::RemoteCommandListener::create):
3059         * platform/ScrollAnimator.cpp:
3060         (WebCore::ScrollAnimator::create):
3061         * platform/ScrollableArea.cpp:
3062         (WebCore::ScrollableArea::scrollAnimator const):
3063         (WebCore::ScrollableArea::ensureSnapOffsetsInfo):
3064         * platform/ThreadGlobalData.cpp:
3065         (WebCore::ThreadGlobalData::ThreadGlobalData):
3066         * platform/audio/AudioBus.cpp:
3067         (WebCore::AudioBus::AudioBus):
3068         (WebCore::AudioBus::copyWithGainFrom):
3069         * platform/audio/AudioChannel.h:
3070         * platform/audio/AudioResampler.cpp:
3071         (WebCore::AudioResampler::AudioResampler):
3072         (WebCore::AudioResampler::configureChannels):
3073         * platform/audio/DynamicsCompressor.cpp:
3074         (WebCore::DynamicsCompressor::setNumberOfChannels):
3075         * platform/audio/DynamicsCompressorKernel.cpp:
3076         (WebCore::DynamicsCompressorKernel::setNumberOfChannels):
3077         * platform/audio/FFTFrame.cpp:
3078         (WebCore::FFTFrame::createInterpolatedFrame):
3079         * platform/audio/HRTFDatabaseLoader.cpp:
3080         (WebCore::HRTFDatabaseLoader::load):
3081         * platform/audio/HRTFElevation.cpp:
3082         (WebCore::HRTFElevation::createForSubject):
3083         (WebCore::HRTFElevation::createByInterpolatingSlices):
3084         * platform/audio/HRTFKernel.cpp:
3085         (WebCore::HRTFKernel::HRTFKernel):
3086         (WebCore::HRTFKernel::createImpulseResponse):
3087         * platform/audio/MultiChannelResampler.cpp:
3088         (WebCore::MultiChannelResampler::MultiChannelResampler):
3089         * platform/audio/Panner.cpp:
3090         (WebCore::Panner::create):
3091         * platform/audio/PlatformMediaSession.cpp:
3092         (WebCore::PlatformMediaSession::create):
3093         * platform/audio/Reverb.cpp:
3094         (WebCore::Reverb::initialize):
3095         * platform/audio/ReverbConvolver.cpp:
3096         (WebCore::ReverbConvolver::ReverbConvolver):
3097         * platform/audio/ReverbConvolverStage.cpp:
3098         (WebCore::ReverbConvolverStage::ReverbConvolverStage):
3099         * platform/audio/gstreamer/AudioDestinationGStreamer.cpp:
3100         (WebCore::AudioDestination::create):
3101         * platform/audio/ios/AudioDestinationIOS.cpp:
3102         (WebCore::AudioDestination::create):
3103         * platform/audio/ios/AudioSessionIOS.mm:
3104         (WebCore::AudioSession::AudioSession):
3105         * platform/audio/mac/AudioDestinationMac.cpp:
3106         (WebCore::AudioDestination::create):
3107         * platform/audio/mac/AudioSampleDataSource.mm:
3108         (WebCore::AudioSampleDataSource::setInputFormat):
3109         (WebCore::AudioSampleDataSource::setOutputFormat):
3110         * platform/audio/mac/AudioSessionMac.cpp:
3111         (WebCore::AudioSession::AudioSession):
3112         * platform/cf/KeyedDecoderCF.cpp:
3113         (WebCore::KeyedDecoder::decoder):
3114         * platform/cf/KeyedEncoderCF.cpp:
3115         (WebCore::KeyedEncoder::encoder):
3116         * platform/cf/MainThreadSharedTimerCF.cpp:
3117         (WebCore::setupPowerObserver):
3118         * platform/cocoa/NetworkExtensionContentFilter.mm:
3119         (WebCore::NetworkExtensionContentFilter::create):
3120         * platform/cocoa/ParentalControlsContentFilter.mm:
3121         (WebCore::ParentalControlsContentFilter::create):
3122         * platform/cocoa/ScrollController.mm:
3123         (WebCore::ScrollController::updateScrollSnapPoints):
3124         * platform/encryptedmedia/clearkey/CDMClearKey.cpp:
3125         (WebCore::CDMFactoryClearKey::createCDM):
3126         * platform/gamepad/cocoa/GameControllerGamepadProvider.mm:
3127         (WebCore::GameControllerGamepadProvider::controllerDidConnect):
3128         * platform/gamepad/mac/HIDGamepadProvider.cpp:
3129         (WebCore::HIDGamepadProvider::deviceAdded):
3130         * platform/generic/KeyedDecoderGeneric.cpp:
3131         (WebCore::KeyedDecoderGeneric::Dictionary::add):
3132         (WebCore::KeyedDecoder::decoder):
3133         (WebCore::KeyedDecoderGeneric::KeyedDecoderGeneric):
3134         * platform/generic/KeyedEncoderGeneric.cpp:
3135         (WebCore::KeyedEncoder::encoder):
3136         * platform/generic/ScrollAnimatorGeneric.cpp:
3137         (WebCore::ScrollAnimator::create):
3138         (WebCore::ScrollAnimatorGeneric::ScrollAnimatorGeneric):
3139         (WebCore::ScrollAnimatorGeneric::ensureSmoothScrollingAnimation):
3140         * platform/glib/KeyedDecoderGlib.cpp:
3141         (WebCore::KeyedDecoder::decoder):
3142         * platform/glib/KeyedEncoderGlib.cpp:
3143         (WebCore::KeyedEncoder::encoder):
3144         * platform/graphics/BitmapImage.cpp:
3145         (WebCore::BitmapImage::startTimer):
3146         (WebCore::BitmapImage::decode):
3147         * platform/graphics/ComplexTextController.cpp:
3148         (WebCore::TextLayout::TextLayout):
3149         * platform/graphics/Font.cpp:
3150         (WebCore::Font::ensureDerivedFontData const):
3151         * platform/graphics/Font.h:
3152         (WebCore::Font::boundsForGlyph const):
3153         * platform/graphics/FontCache.cpp:
3154         (WebCore::FontCache::getCachedFontPlatformData):
3155         * platform/graphics/FontCascade.cpp:
3156         (WebCore::retrieveOrAddCachedFonts):
3157         (WebCore::FontCascade::displayListForTextRun const):
3158         * platform/graphics/FontCascadeFonts.cpp:
3159         (WebCore::FontCascadeFonts::GlyphPageCacheEntry::setGlyphDataForCharacter):
3160         * platform/graphics/GlyphMetricsMap.h:
3161         (WebCore::GlyphMetricsMap<T>::locatePageSlowCase):
3162         * platform/graphics/GraphicsLayer.cpp:
3163         (WebCore::GraphicsLayer::setTransform):
3164         (WebCore::GraphicsLayer::setChildrenTransform):
3165         * platform/graphics/GraphicsLayer.h:
3166         * platform/graphics/Image.cpp:
3167         (WebCore::Image::startAnimationAsynchronously):
3168         * platform/graphics/MediaPlayer.cpp:
3169         (WebCore::MediaPlayer::MediaPlayer):
3170         (WebCore::MediaPlayer::loadWithNextMediaEngine):
3171         * platform/graphics/MediaPlayerPrivate.h:
3172         (WebCore::MediaPlayerPrivateInterface::seekable const):
3173         * platform/graphics/PathUtilities.cpp:
3174         (WebCore::FloatPointGraph::findOrCreateNode):
3175         * platform/graphics/Region.cpp:
3176         (WebCore::Region::setShape):
3177         * platform/graphics/Region.h:
3178         (WebCore::Region::copyShape const):
3179         (WebCore::Region::decode):
3180         * platform/graphics/TextTrackRepresentation.cpp:
3181         (WebCore::TextTrackRepresentation::create):
3182         * platform/graphics/angle/GraphicsContext3DANGLE.cpp:
3183         (WebCore::GraphicsContext3D::getExtensions):
3184         * platform/graphics/avfoundation/AudioSourceProviderAVFObjC.mm:
3185         (WebCore::AudioSourceProviderAVFObjC::prepare):
3186         * platform/graphics/avfoundation/CDMFairPlayStreaming.cpp:
3187         (WebCore::CDMFactoryFairPlayStreaming::createCDM):
3188         * platform/graphics/avfoundation/CDMPrivateMediaSourceAVFObjC.mm:
3189         (WebCore::CDMPrivateMediaSourceAVFObjC::createSession):
3190         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
3191         (WebCore::MediaPlayerPrivateAVFoundation::buffered const):
3192         * platform/graphics/avfoundation/WebMediaSessionManagerMac.cpp:
3193         (WebCore::WebMediaSessionManagerMac::platformPicker):
3194         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
3195         (WebCore::MediaPlayerPrivateAVFoundationCF::registerMediaEngine):
3196         (WebCore::MediaPlayerPrivateAVFoundationCF::platformBufferedTimeRanges const):
3197         (WebCore::MediaPlayerPrivateAVFoundationCF::createSession):
3198         (WebCore::AVFWrapper::notificationCallback):
3199         (WebCore::AVFWrapper::legibleOutputCallback):
3200         (WebCore::AVFWrapper::resourceLoaderShouldWaitForLoadingOfRequestedResource):
3201         (WebCore::AVFWrapper::platformLayer):
3202         * platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.mm:
3203         (WebCore::AudioTrackPrivateAVFObjC::AudioTrackPrivateAVFObjC):
3204         (WebCore::AudioTrackPrivateAVFObjC::setPlayerItemTrack):
3205         (WebCore::AudioTrackPrivateAVFObjC::setAssetTrack):
3206         (WebCore::AudioTrackPrivateAVFObjC::setMediaSelectionOption):
3207         * platform/graphics/avfoundation/objc/AudioTrackPrivateMediaSourceAVFObjC.cpp:
3208         (WebCore::AudioTrackPrivateMediaSourceAVFObjC::AudioTrackPrivateMediaSourceAVFObjC):
3209         (WebCore::AudioTrackPrivateMediaSourceAVFObjC::setAssetTrack):
3210         * platform/graphics/avfoundation/objc/ImageDecoderAVFObjC.mm:
3211         (WebCore::ImageDecoderAVFObjC::readTrackMetadata):
3212         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
3213         (WebCore::MediaPlayerPrivateAVFoundationObjC::registerMediaEngine):
3214         (WebCore::MediaPlayerPrivateAVFoundationObjC::MediaPlayerPrivateAVFoundationObjC):
3215         (WebCore::MediaPlayerPrivateAVFoundationObjC::platformBufferedTimeRanges const):
3216         (WebCore::MediaPlayerPrivateAVFoundationObjC::updateRotationSession):
3217         (WebCore::MediaPlayerPrivateAVFoundationObjC::updateLastImage):
3218         (WebCore::MediaPlayerPrivateAVFoundationObjC::copyVideoTextureToPlatformTexture):
3219         (WebCore::MediaPlayerPrivateAVFoundationObjC::createSession):
3220         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
3221         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::MediaPlayerPrivateMediaSourceAVFObjC):
3222         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::registerMediaEngine):
3223         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekWithTolerance):
3224         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekable const):
3225         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::buffered const):
3226         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::updateLastImage):
3227         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::copyVideoTextureToPlatformTexture):
3228         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:
3229         (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::MediaPlayerPrivateMediaStreamAVFObjC):
3230         (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::registerMediaEngine):
3231         (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::seekable const):
3232         (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::buffered const):
3233         (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::updateCurrentFrameImage):
3234         * platform/graphics/avfoundation/objc/VideoTrackPrivateAVFObjC.cpp:
3235         (WebCore::VideoTrackPrivateAVFObjC::VideoTrackPrivateAVFObjC):
3236         (WebCore::VideoTrackPrivateAVFObjC::setPlayerItemTrack):
3237         (WebCore::VideoTrackPrivateAVFObjC::setAssetTrack):
3238         (WebCore::VideoTrackPrivateAVFObjC::setMediaSelectonOption):
3239         * platform/graphics/avfoundation/objc/VideoTrackPrivateMediaSourceAVFObjC.mm:
3240         (WebCore::VideoTrackPrivateMediaSourceAVFObjC::VideoTrackPrivateMediaSourceAVFObjC):
3241         (WebCore::VideoTrackPrivateMediaSourceAVFObjC::setAssetTrack):
3242         * platform/graphics/ca/GraphicsLayerCA.cpp:
3243         (WebCore::GraphicsLayerCA::recursiveCommitChanges):
3244         (WebCore::GraphicsLayerCA::ensureLayerAnimations):
3245         (WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes):
3246         * platform/graphics/ca/TileController.cpp:
3247         (WebCore::TileController::TileController):
3248         (WebCore::TileController::setContentsScale):
3249         (WebCore::TileController::adjustTileCoverageRectForScrolling):
3250         (WebCore::TileController::tiledScrollingIndicatorLayer):
3251         * platform/graphics/ca/cocoa/PlatformCALayerCocoa.mm:
3252         (WebCore::PlatformCALayerCocoa::commonInit):
3253         (WebCore::PlatformCALayerCocoa::setShapeRoundedRect):
3254         * platform/graphics/ca/cocoa/WebTiledBackingLayer.mm:
3255         (-[WebTiledBackingLayer createTileController:]):
3256         * platform/graphics/ca/win/PlatformCALayerWin.cpp:
3257         (PlatformCALayerWin::PlatformCALayerWin):
3258         * platform/graphics/ca/win/WebTiledBackingLayerWin.cpp:
3259         (WebTiledBackingLayerWin::createTileController):
3260         * platform/graphics/cairo/GraphicsContextImplCairo.cpp:
3261         (WebCore::GraphicsContextImplCairo::createFactory):
3262         (WebCore::m_private):
3263         * platform/graphics/cairo/ImageBufferCairo.cpp:
3264         (WebCore::ImageBufferData::swapBuffersIfNeeded):
3265         (WebCore::ImageBuffer::ImageBuffer):
3266         * platform/graphics/cg/ImageBufferCG.cpp:
3267         (WebCore::ImageBuffer::ImageBuffer):
3268         * platform/graphics/cocoa/FontCacheCoreText.cpp:
3269         (WebCore::FontCache::createFontPlatformData):
3270         * platform/graphics/cocoa/FontFamilySpecificationCoreText.cpp:
3271         (WebCore::FontFamilySpecificationCoreText::fontRanges const):
3272         * platform/graphics/cocoa/GraphicsContext3DCocoa.mm:
3273         (WebCore::GraphicsContext3D::GraphicsContext3D):
3274         * platform/graphics/cocoa/IOSurface.mm:
3275         (WebCore::IOSurface::ensureGraphicsContext):
3276         * platform/graphics/cocoa/TextTrackRepresentationCocoa.mm:
3277         (TextTrackRepresentation::create):
3278         * platform/graphics/cv/TextureCacheCV.mm:
3279         (WebCore::TextureCacheCV::create):
3280         * platform/graphics/displaylists/DisplayListReplayer.cpp:
3281         (WebCore::DisplayList::Replayer::replay):
3282         * platform/graphics/filters/FilterOperation.cpp:
3283         (WebCore::ReferenceFilterOperation::loadExternalDocumentIfNeeded):
3284         * platform/graphics/freetype/FontCacheFreeType.cpp:
3285         (WebCore::FontCache::createFontPlatformData):
3286         * platform/graphics/freetype/FontCustomPlatformDataFreeType.cpp:
3287         (WebCore::createFontCustomPlatformData):
3288         * platform/graphics/gpu/Texture.cpp:
3289         (WebCore::Texture::create):
3290         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
3291         (WebCore::MediaPlayerPrivateGStreamer::registerMediaEngine):
3292         (WebCore::MediaPlayerPrivateGStreamer::buffered const):
3293         (WebCore::MediaPlayerPrivateGStreamer::ensureAudioSourceProvider):
3294         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
3295         (WebCore::MediaPlayerPrivateGStreamerBase::pushTextureToCompositor):
3296         (WebCore::MediaPlayerPrivateGStreamerBase::copyVideoTextureToPlatformTexture):
3297         (WebCore::MediaPlayerPrivateGStreamerBase::nativeImageForCurrentTime):
3298         (WebCore::MediaPlayerPrivateGStreamerBase::pushNextHolePunchBuffer):
3299         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
3300         (webKitWebSrcMakeRequest):
3301         * platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp:
3302         (WebCore::MediaPlayerPrivateGStreamerMSE::registerMediaEngine):
3303         (WebCore::MediaPlayerPrivateGStreamerMSE::buffered const):
3304         * platform/graphics/holepunch/MediaPlayerPrivateHolePunch.cpp:
3305         (WebCore::MediaPlayerPrivateHolePunch::pushNextHolePunchBuffer):
3306         (WebCore::MediaPlayerPrivateHolePunch::registerMediaEngine):
3307         * platform/graphics/holepunch/MediaPlayerPrivateHolePunch.h:
3308         * platform/graphics/iso/ISOProtectionSchemeInfoBox.cpp:
3309         (WebCore::ISOProtectionSchemeInfoBox::parse):
3310         * platform/graphics/iso/ISOSchemeInformationBox.cpp:
3311         (WebCore::ISOSchemeInformationBox::parse):
3312         * platform/graphics/mac/FontCustomPlatformData.cpp:
3313         (WebCore::createFontCustomPlatformData):
3314         * platform/graphics/nicosia/NicosiaSceneIntegration.cpp:
3315         (Nicosia::SceneIntegration::createUpdateScope):
3316         * platform/graphics/nicosia/cairo/NicosiaCairoOperationRecorder.cpp:
3317         (Nicosia::createCommand):
3318         * platform/graphics/nicosia/cairo/NicosiaPaintingContextCairo.cpp:
3319         (Nicosia::PaintingContextCairo::ForPainting::ForPainting):
3320         (Nicosia::PaintingContextCairo::ForRecording::ForRecording):
3321         * platform/graphics/nicosia/texmap/NicosiaBackingStoreTextureMapperImpl.cpp:
3322         (Nicosia::BackingStoreTextureMapperImpl::createFactory):
3323         * platform/graphics/nicosia/texmap/NicosiaCompositionLayerTextureMapperImpl.cpp:
3324         (Nicosia::CompositionLayerTextureMapperImpl::createFactory):
3325         * platform/graphics/nicosia/texmap/NicosiaContentLayerTextureMapperImpl.cpp:
3326         (Nicosia::ContentLayerTextureMapperImpl::createFactory):
3327         * platform/graphics/nicosia/texmap/NicosiaGC3DLayer.cpp:
3328         (Nicosia::GC3DLayer::swapBuffersIfNeeded):
3329         * platform/graphics/nicosia/texmap/NicosiaImageBackingTextureMapperImpl.cpp:
3330         (Nicosia::ImageBackingTextureMapperImpl::createFactory):
3331         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
3332         (WebCore::GraphicsContext3D::getExtensions):
3333         * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
3334         (WebCore::GraphicsContext3D::compileShader):
3335         (WebCore::GraphicsContext3D::mappedSymbolName):
3336         * platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp:
3337         (WebCore::GraphicsContext3D::getExtensions):
3338         (WebCore::GraphicsContext3D::GraphicsContext3D):
3339         * platform/graphics/texmap/GraphicsContext3DTextureMapper.cpp:
3340         (WebCore::GraphicsContext3D::GraphicsContext3D):
3341         (WebCore::GraphicsContext3D::getExtensions):
3342         * platform/graphics/texmap/TextureMapperGC3DPlatformLayer.cpp:
3343         (WebCore::TextureMapperGC3DPlatformLayer::swapBuffersIfNeeded):
3344         * platform/graphics/texmap/TextureMapperGL.cpp:
3345         (WebCore::TextureMapperGL::TextureMapperGL):
3346         (WebCore::TextureMapper::platformCreateAccelerated):
3347         * platform/graphics/texmap/TextureMapperPlatformLayerBuffer.cpp:
3348         (WebCore::TextureMapperPlatformLayerBuffer::clone):
3349         * platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp:
3350         (WebCore::TextureMapperPlatformLayerProxy::activateOnCompositingThread):
3351         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
3352         (WebCore::CoordinatedGraphicsLayer::updateContentBuffers):
3353         * platform/graphics/texmap/coordinated/TiledBackingStore.cpp:
3354         (WebCore::TiledBackingStore::createTiles):
3355         * platform/graphics/transforms/TransformState.cpp:
3356         (WebCore::TransformState::operator=):
3357         (WebCore::TransformState::applyTransform):
3358         (WebCore::TransformState::setLastPlanarSecondaryQuad):
3359         * platform/graphics/transforms/TransformState.h:
3360         (WebCore::TransformState::setSecondaryQuad):
3361         * platform/graphics/win/FontCacheWin.cpp:
3362         (WebCore::FontCache::createFontPlatformData):
3363         * platform/graphics/win/FontCustomPlatformData.cpp:
3364         (WebCore::createFontCustomPlatformData):
3365         * platform/graphics/win/FontCustomPlatformDataCairo.cpp:
3366         (WebCore::createFontCustomPlatformData):
3367         * platform/graphics/win/FullScreenController.cpp:
3368         (WebCore::FullScreenController::FullScreenController):
3369         (WebCore::FullScreenController::enterFullScreen):
3370         * platform/graphics/win/GraphicsContextCairoWin.cpp:
3371         (WebCore::GraphicsContext::platformInit):
3372         * platform/graphics/win/GraphicsContextDirect2D.cpp:
3373         (WebCore::GraphicsContext::GraphicsContext):
3374         (WebCore::GraphicsContext::platformInit):
3375         * platform/graphics/win/GraphicsContextImplDirect2D.cpp:
3376         (WebCore::GraphicsContextImplDirect2D::createFactory):
3377         (WebCore::m_private):
3378         * platform/graphics/win/GraphicsContextWin.cpp:
3379         (WebCore::GraphicsContext::createWindowsBitmap):
3380         * platform/graphics/win/ImageBufferDirect2D.cpp:
3381         (WebCore::ImageBuffer::ImageBuffer):
3382         * platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp:
3383         (WebCore::MediaPlayerPrivateMediaFoundation::registerMediaEngine):
3384         (WebCore::MediaPlayerPrivateMediaFoundation::buffered const):
3385         (WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::CustomVideoPresenter):
3386         * platform/graphics/win/WKCAImageQueue.cpp:
3387         (WebCore::WKCAImageQueue::WKCAImageQueue):
3388         * platform/gtk/PasteboardGtk.cpp:
3389         (WebCore::Pasteboard::createForCopyAndPaste):
3390         (WebCore::Pasteboard::createForGlobalSelection):
3391         (WebCore::Pasteboard::createForDragAndDrop):
3392         * platform/gtk/PasteboardHelper.cpp:
3393         (WebCore::PasteboardHelper::writeClipboardContents):
3394         * platform/gtk/RenderThemeGadget.cpp:
3395         (WebCore::RenderThemeGadget::create):
3396         * platform/gtk/RenderThemeWidget.cpp:
3397         (WebCore::RenderThemeWidget::getOrCreate):
3398         (WebCore::RenderThemeScrollbar::RenderThemeScrollbar):
3399         (WebCore::RenderThemeComboBox::RenderThemeComboBox):
3400         * platform/image-decoders/bmp/BMPImageDecoder.cpp:
3401         (WebCore::BMPImageDecoder::decodeHelper):
3402         * platform/image-decoders/gif/GIFImageDecoder.cpp:
3403         (WebCore::GIFImageDecoder::decode):
3404         * platform/image-decoders/gif/GIFImageReader.cpp:
3405         (GIFFrameContext::decode):
3406         (GIFImageReader::addFrameIfNecessary):
3407         * platform/image-decoders/ico/ICOImageDecoder.cpp:
3408         (WebCore::ICOImageDecoder::decodeAtIndex):
3409         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
3410         (WebCore::JPEGImageDecoder::decode):
3411         * platform/image-decoders/png/PNGImageDecoder.cpp:
3412         (WebCore::PNGImageDecoder::decode):
3413         * platform/ios/LegacyTileCache.mm:
3414         (WebCore::LegacyTileCache::LegacyTileCache):
3415         (WebCore::LegacyTileCache::commitScaleChange):
3416         * platform/ios/PasteboardIOS.mm:
3417         (WebCore::Pasteboard::createForDragAndDrop):
3418         (WebCore::Pasteboard::createForCopyAndPaste):
3419         * platform/ios/QuickLook.mm:
3420         (WebCore::registerQLPreviewConverterIfNeeded):
3421         * platform/ios/RemoteCommandListenerIOS.mm:
3422         (WebCore::RemoteCommandListener::create):
3423         * platform/ios/ScrollAnimatorIOS.mm:
3424         (WebCore::ScrollAnimator::create):
3425         * platform/libwpe/PasteboardLibWPE.cpp:
3426         (WebCore::Pasteboard::createForCopyAndPaste):
3427         * platform/mac/PasteboardMac.mm:
3428         (WebCore::Pasteboard::createForCopyAndPaste):
3429         (WebCore::Pasteboard::createForDragAndDrop):
3430         * platform/mac/RemoteCommandListenerMac.mm:
3431         (WebCore::RemoteCommandListener::create):
3432         * platform/mac/ScrollAnimatorMac.mm:
3433         (WebCore::ScrollAnimator::create):
3434         * platform/mediarecorder/MediaRecorderPrivateAVFImpl.cpp:
3435         (WebCore::MediaRecorderPrivateAVFImpl::create):
3436         * platform/mediastream/gstreamer/GStreamerAudioCaptureSource.cpp:
3437         (WebCore::m_capturer):
3438         (WebCore::GStreamerAudioCaptureSource::GStreamerAudioCaptureSource):
3439         * platform/mediastream/gstreamer/GStreamerMediaStreamSource.cpp:
3440         (WebCore::webkit_media_stream_src_init):
3441         * platform/mediastream/gstreamer/GStreamerVideoCaptureSource.cpp:
3442         (WebCore::GStreamerVideoCaptureSource::GStreamerVideoCaptureSource):
3443         (WebCore::m_capturer):
3444         * platform/mediastream/libwebrtc/GStreamerVideoEncoderFactory.cpp:
3445         (WebCore::GStreamerVideoEncoderFactory::CreateVideoEncoder):
3446         * platform/mediastream/libwebrtc/LibWebRTCProvider.cpp:
3447         (WebCore::BasicPacketSocketFactory::BasicPacketSocketFactory):
3448         (WebCore::initializePeerConnectionFactoryAndThreads):
3449         (WebCore::LibWebRTCProvider::createPeerConnection):
3450         (WebCore::LibWebRTCProvider::certificateGenerator):
3451         * platform/mediastream/libwebrtc/LibWebRTCProviderGStreamer.cpp:
3452         (WebCore::LibWebRTCProviderGStreamer::createDecoderFactory):
3453         (WebCore::LibWebRTCProviderGStreamer::createEncoderFactory):
3454         * platform/mediastream/mac/AudioTrackPrivateMediaStreamCocoa.cpp:
3455         (WebCore::AudioTrackPrivateMediaStreamCocoa::audioSamplesAvailable):
3456         * platform/mediastream/mac/MockRealtimeAudioSourceMac.mm:
3457         (WebCore::MockRealtimeAudioSourceMac::reconfigure):
3458         * platform/mediastream/mac/RealtimeOutgoingVideoSourceCocoa.mm:
3459         (WebCore::RealtimeOutgoingVideoSourceCocoa::convertToYUV):
3460         (WebCore::RealtimeOutgoingVideoSourceCocoa::rotatePixelBuffer):
3461         * platform/mock/RTCNotifiersMock.cpp:
3462         (WebCore::RemoteDataChannelNotifier::fire):
3463         * platform/mock/mediasource/MockMediaPlayerMediaSource.cpp:
3464         (WebCore::MockMediaPlayerMediaSource::registerMediaEngine):
3465         (WebCore::MockMediaPlayerMediaSource::buffered const):
3466         * platform/network/BlobResourceHandle.cpp:
3467         * platform/network/DataURLDecoder.cpp:
3468         (WebCore::DataURLDecoder::createDecodeTask):
3469         * platform/network/ResourceHandle.cpp:
3470         (WebCore::ResourceHandle::ResourceHandle):
3471         * platform/network/cf/ResourceHandleCFURLConnectionDelegateWithOperationQueue.cpp:
3472         (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::willSendRequest):
3473         (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveResponse):
3474         (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveData):
3475         (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didFinishLoading):
3476         (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didFail):
3477         (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::willCacheResponse):
3478         (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveChallenge):
3479         (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didSendBodyData):
3480         (WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::canRespondToProtectionSpace):
3481         * platform/network/cocoa/WebCoreNSURLSession.mm:
3482         (-[WebCoreNSURLSessionDataTask _restart]):
3483         * platform/network/curl/CookieJarDB.cpp:
3484         (WebCore::CookieJarDB::searchCookies):
3485         (WebCore::CookieJarDB::createPrepareStatement):
3486         * platform/network/curl/CurlCacheManager.cpp:
3487         (WebCore::CurlCacheManager::loadIndex):
3488         (WebCore::CurlCacheManager::didReceiveResponse):
3489         * platform/network/curl/CurlContext.cpp:
3490         (WebCore::CurlContext::CurlContext):
3491         (WebCore::CurlHandle::willSetupSslCtx):
3492         * platform/network/curl/CurlFormDataStream.cpp:
3493         (WebCore::CurlFormDataStream::getPostData):
3494         * platform/network/curl/CurlMultipartHandle.cpp:
3495         (WebCore::CurlMultipartHandle::createIfNeeded):
3496         * platform/network/curl/CurlRequest.cpp:
3497         (WebCore::CurlRequest::runOnMainThread):
3498         (WebCore::CurlRequest::setupTransfer):
3499         * platform/network/curl/CurlRequestScheduler.cpp:
3500         (WebCore::CurlRequestScheduler::workerThread):
3501         * platform/network/curl/ResourceHandleCurl.cpp:
3502         (WebCore::ResourceHandle::delegate):
3503         * platform/network/curl/SocketStreamHandleImplCurl.cpp:
3504         (WebCore::SocketStreamHandleImpl::callOnWorkerThread):
3505         * platform/network/mac/WebCoreResourceHandleAsOperationQueueDelegate.mm:
3506         (-[WebCoreResourceHandleAsOperationQueueDelegate callFunctionOnMainThread:]):
3507         * platform/network/soup/DNSResolveQueueSoup.cpp:
3508         (WebCore::DNSResolveQueueSoup::resolve):
3509         * platform/network/soup/NetworkStorageSessionSoup.cpp:
3510         (WebCore::NetworkStorageSession::getCredentialFromPersistentStorage):
3511         * platform/text/BidiResolver.h:
3512         (WebCore::DerivedClass>::appendRunInternal):
3513         * platform/text/LocaleICU.cpp:
3514         (WebCore::Locale::create):
3515         (WebCore::LocaleICU::createLabelVector):
3516         (WebCore::createFallbackMonthLabels):
3517         (WebCore::createFallbackAMPMLabels):
3518         * platform/text/LocaleNone.cpp:
3519         (WebCore::Locale::create):
3520         * platform/text/TextCodecICU.cpp:
3521         (WebCore::TextCodecICU::registerCodecs):
3522         * platform/text/TextCodecLatin1.cpp:
3523         (WebCore::TextCodecLatin1::registerCodecs):
3524         * platform/text/TextCodecReplacement.cpp:
3525         (WebCore::TextCodecReplacement::registerCodecs):
3526         * platform/text/TextCodecUTF16.cpp:
3527         (WebCore::TextCodecUTF16::registerCodecs):
3528         * platform/text/TextCodecUTF8.cpp:
3529         (WebCore::TextCodecUTF8::registerCodecs):
3530         * platform/text/TextCodecUserDefined.cpp:
3531         (WebCore::TextCodecUserDefined::registerCodecs):
3532         * platform/text/mac/LocaleMac.mm:
3533         (WebCore::Locale::create):
3534         * platform/text/win/LocaleWin.cpp:
3535         (WebCore::Locale::create):
3536         * platform/text/win/TextCodecWin.cpp:
3537         (WebCore::newTextCodecWin):
3538         * platform/vr/openvr/VRPlatformManagerOpenVR.cpp:
3539         (WebCore::VRPlatformManagerOpenVR::create):
3540         (WebCore::VRPlatformManagerOpenVR::getVRDisplays):
3541         * platform/win/PasteboardWin.cpp:
3542         (WebCore::Pasteboard::createForCopyAndPaste):
3543         (WebCore::Pasteboard::createForDragAndDrop):
3544         * platform/win/SearchPopupMenuDB.cpp:
3545         (WebCore::SearchPopupMenuDB::createPreparedStatement):
3546         * platform/win/WCDataObject.cpp:
3547         (WebCore::WCDataObject::SetData):
3548         * rendering/CSSFilter.cpp:
3549         (WebCore::CSSFilter::buildReferenceFilter):
3550         * rendering/ComplexLineLayout.cpp:
3551         (WebCore::createRun):
3552         (WebCore::ComplexLineLayout::createRootInlineBox):
3553         (WebCore::ComplexLineLayout::handleTrailingSpaces):
3554         (WebCore::ComplexLineLayout::linkToEndLineIfNeeded):
3555         * rendering/FloatingObjects.cpp:
3556         (WebCore::FloatingObject::create):
3557         (WebCore::FloatingObject::copyToNewContainer const):
3558         (WebCore::FloatingObject::cloneForNewParent const):
3559         (WebCore::FloatingObjects::computePlacedFloatsTree):
3560         * rendering/Grid.cpp:
3561         (WebCore::GridIterator::nextEmptyGridArea):
3562         * rendering/GridBaselineAlignment.cpp:
3563         (WebCore::GridBaselineAlignment::updateBaselineAlignmentContext):
3564         * rendering/GridTrackSizingAlgorithm.cpp:
3565         (WebCore::GridTrackSizingAlgorithm::computeFlexFactorUnitSize const):
3566         (WebCore::GridTrackSizingAlgorithm::setup):
3567         * rendering/HitTestResult.cpp:
3568         (WebCore::HitTestResult::HitTestResult):
3569         (WebCore::HitTestResult::operator=):
3570         (WebCore::HitTestResult::listBasedTestResult const):
3571         (WebCore::HitTestResult::mutableListBasedTestResult):
3572         * rendering/InlineIterator.h:
3573         (WebCore::addPlaceholderRunForIsolatedInline):
3574         * rendering/LayerOverlapMap.cpp:
3575         (WebCore::LayerOverlapMap::pushCompositingContainer):
3576         * rendering/RenderBlock.cpp:
3577         (WebCore::insertIntoTrackedRendererMaps):
3578         (WebCore::PositionedDescendantsMap::addDescendant):
3579         (WebCore::RenderBlock::beginUpdateScrollInfoAfterLayoutTransaction):
3580         (WebCore::ensureBlockRareData):
3581         * rendering/RenderBlockFlow.cpp:
3582         (WebCore::RenderBlockFlow::layoutInlineChildren):
3583         (WebCore::RenderBlockFlow::layoutLineGridBox):
3584         (WebCore::RenderBlockFlow::createFloatingObjects):
3585         (WebCore::RenderBlockFlow::ensureLineBoxes):
3586         (WebCore::RenderBlockFlow::materializeRareBlockFlowData):
3587         * rendering/RenderBox.cpp:
3588         (WebCore::controlStatesForRenderer):
3589         (WebCore::RenderBox::createInlineBox):
3590         * rendering/RenderBoxModelObject.cpp:
3591         (WebCore::RenderBoxModelObject::ensureContinuationChainNode):
3592         * rendering/RenderCounter.cpp:
3593         (WebCore::makeCounterNode):
3594         * rendering/RenderFragmentContainer.cpp:
3595         (WebCore::RenderFragmentContainer::setRenderBoxFragmentInfo):
3596         * rendering/RenderFragmentedFlow.cpp:
3597         (WebCore::RenderFragmentedFlow::containingFragmentMap):
3598         * rendering/RenderGeometryMap.cpp:
3599         (WebCore::RenderGeometryMap::push):
3600         (WebCore::RenderGeometryMap::pushView):
3601         * rendering/RenderGrid.cpp:
3602         (WebCore::RenderGrid::computeEmptyTracksForAutoRepeat const):
3603         (WebCore::RenderGrid::createEmptyGridAreaAtSpecifiedPositionsOutsideGrid const):
3604         * rendering/RenderImage.cpp:
3605         (WebCore::RenderImage::RenderImage):
3606         * rendering/RenderInline.cpp:
3607         (WebCore::RenderInline::createInlineFlowBox):
3608         * rendering/RenderLayer.cpp:
3609         (WebCore::RenderLayer::updateNormalFlowList):
3610         (WebCore::RenderLayer::collectLayers):
3611         (WebCore::RenderLayer::updateTransform):
3612         (WebCore::RenderLayer::updateClipRects):
3613         (WebCore::RenderLayer::calculateClipRects const):
3614         * rendering/RenderLayerBacking.cpp:
3615         (WebCore::RenderLayerBacking::updateAncestorClippingStack):
3616         (WebCore::RenderLayerBacking::startAnimation):
3617         (WebCore::RenderLayerBacking::startTransition):
3618         * rendering/RenderLayerCompositor.cpp:
3619         (WebCore::RenderLayerCompositor::RenderLayerCompositor):
3620         (WebCore::RenderLayerCompositor::notifyFlushBeforeDisplayRefresh):
3621         (WebCore::LegacyWebKitScrollingLayerCoordinator::registerAllViewportConstrainedLayers):
3622         * rendering/RenderLayerModelObject.cpp:
3623         (WebCore::RenderLayerModelObject::createLayer):
3624         * rendering/RenderLineBreak.cpp:
3625         (WebCore::RenderLineBreak::createInlineBox):
3626         * rendering/RenderMultiColumnFlow.cpp:
3627         (WebCore::RenderMultiColumnFlow::RenderMultiColumnFlow):
3628         * rendering/RenderObject.cpp:
3629         (WebCore::RenderObject::ensureRareData):
3630         * rendering/RenderSnapshottedPlugIn.cpp:
3631         (WebCore::RenderSnapshottedPlugIn::RenderSnapshottedPlugIn):
3632         * rendering/RenderTable.cpp:
3633         (WebCore::RenderTable::styleDidChange):
3634         * rendering/RenderText.cpp:
3635         (WebCore::RenderText::createTextBox):
3636         (WebCore::RenderText::momentarilyRevealLastTypedCharacter):
3637         * rendering/RenderView.cpp:
3638         (WebCore::RenderView::repaintViewRectangle const):
3639         (WebCore::RenderView::compositor):
3640         (WebCore::RenderView::imageQualityController):
3641         (WebCore::RenderView::RepaintRegionAccumulator::RepaintRegionAccumulator):
3642         * rendering/RootInlineBox.cpp:
3643         (WebCore::RootInlineBox::placeEllipsis):
3644         * rendering/RootInlineBox.h:
3645         (WebCore::RootInlineBox::appendFloat):
3646         * rendering/SelectionRangeData.cpp:
3647         (WebCore::collect):
3648         (WebCore::SelectionRangeData::collectBounds const):
3649         (WebCore::SelectionRangeData::apply):
3650         * rendering/SimpleLineLayout.cpp:
3651         (WebCore::SimpleLineLayout::Layout::runResolver const):
3652         * rendering/SimpleLineLayoutFunctions.cpp:
3653         (WebCore::SimpleLineLayout::paintFlow):
3654         (WebCore::SimpleLineLayout::generateLineBoxTree):
3655         * rendering/TextAutoSizing.cpp:
3656         (WebCore::TextAutoSizing::addTextNode):
3657         * rendering/line/LineBreaker.cpp:
3658         (WebCore::LineBreaker::skipLeadingWhitespace):
3659         * rendering/shapes/RasterShape.cpp:
3660         (WebCore::RasterShapeIntervals::computeShapeMarginIntervals const):
3661         * rendering/shapes/Shape.cpp:
3662         (WebCore::createInsetShape):
3663         (WebCore::createCircleShape):
3664         (WebCore::createEllipseShape):
3665         (WebCore::createPolygonShape):
3666         (WebCore::Shape::createShape):
3667         (WebCore::Shape::createRasterShape):
3668         (WebCore::Shape::createBoxShape):
3669         * rendering/shapes/ShapeOutsideInfo.h:
3670         * rendering/style/BasicShapes.cpp:
3671         (WebCore::BasicShapePath::blend const):
3672         * rendering/style/ContentData.h:
3673         * rendering/style/FillLayer.cpp:
3674         (WebCore::FillLayer::FillLayer):
3675         (WebCore::FillLayer::operator=):
3676         * rendering/style/RenderStyle.cpp:
3677         (WebCore::RenderStyle::clonePtr):
3678         (WebCore::RenderStyle::addCachedPseudoStyle):
3679         (WebCore::RenderStyle::addCustomPaintWatchProperty):
3680         (WebCore::RenderStyle::setContent):
3681         (WebCore::RenderStyle::accessCounterDirectives):
3682         (WebCore::RenderStyle::ensureAnimations):
3683         (WebCore::RenderStyle::ensureTransitions):
3684         * rendering/style/SVGRenderStyleDefs.cpp:
3685         (WebCore::StyleShadowSVGData::StyleShadowSVGData):
3686         * rendering/style/ShadowData.cpp:
3687         (WebCore::ShadowData::ShadowData):
3688         * rendering/style/StyleRareInheritedData.cpp:
3689         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
3690         * rendering/style/StyleRareNonInheritedData.cpp:
3691         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
3692         * rendering/svg/RenderSVGImage.cpp:
3693         (WebCore::RenderSVGImage::RenderSVGImage):
3694         * rendering/svg/RenderSVGInline.cpp:
3695         (WebCore::RenderSVGInline::createInlineFlowBox):
3696         * rendering/svg/RenderSVGInlineText.cpp:
3697         (WebCore::RenderSVGInlineText::createTextBox):
3698         * rendering/svg/RenderSVGResourceFilter.cpp:
3699         (WebCore::RenderSVGResourceFilter::buildPrimitives const):
3700         (WebCore::RenderSVGResourceFilter::applyResource):
3701         * rendering/svg/RenderSVGResourceGradient.cpp:
3702         (WebCore::RenderSVGResourceGradient::applyResource):
3703         * rendering/svg/RenderSVGResourceMasker.cpp:
3704         (WebCore::RenderSVGResourceMasker::applyResource):
3705         * rendering/svg/RenderSVGResourcePattern.cpp:
3706         (WebCore::RenderSVGResourcePattern::buildPattern):
3707         * rendering/svg/RenderSVGShape.cpp:
3708         (WebCore::RenderSVGShape::updateShapeFromElement):
3709         * rendering/svg/SVGResources.cpp:
3710         (WebCore::SVGResources::setClipper):
3711         (WebCore::SVGResources::setFilter):
3712         (WebCore::SVGResources::setMarkerStart):
3713         (WebCore::SVGResources::setMarkerMid):
3714         (WebCore::SVGResources::setMarkerEnd):
3715         (WebCore::SVGResources::setMasker):
3716         (WebCore::SVGResources::setFill):
3717         (WebCore::SVGResources::setStroke):
3718         * rendering/svg/SVGResourcesCache.cpp:
3719         (WebCore::SVGResourcesCache::addResourcesFromRenderer):
3720         * rendering/svg/SVGTextMetricsBuilder.cpp:
3721         (WebCore::SVGTextMetricsBuilder::initializeMeasurementWithTextRenderer):
3722         * rendering/updating/RenderTreeBuilder.cpp:
3723         (WebCore::RenderTreeBuilder::RenderTreeBuilder):
3724         * rendering/updating/RenderTreeUpdater.cpp:
3725         (WebCore::RenderTreeUpdater::RenderTreeUpdater):
3726         * style/StyleInvalidator.cpp:
3727         (WebCore::Style::Invalidator::Invalidator):
3728         * style/StyleRelations.cpp:
3729         (WebCore::Style::commitRelationsToRenderStyle):
3730         * style/StyleScope.cpp:
3731         (WebCore::Style::Scope::resolver):
3732         (WebCore::Style::Scope::activeStyleSheetsContains const):
3733         * style/StyleTreeResolver.cpp:
3734         (WebCore::Style::TreeResolver::resolve):
3735         * svg/SVGDocumentExtensions.cpp:
3736         (WebCore::SVGDocumentExtensions::SVGDocumentExtensions):
3737         (WebCore::SVGDocumentExtensions::addPendingResource):
3738         (WebCore::SVGDocumentExtensions::addElementReferencingTarget):
3739         * svg/SVGElement.cpp:
3740         (WebCore::SVGElement::SVGElement):
3741         (WebCore::SVGElement::ensureSVGRareData):
3742         * svg/SVGGraphicsElement.cpp:
3743         (WebCore::SVGGraphicsElement::supplementalTransform):
3744         * svg/SVGPathByteStream.h:
3745         (WebCore::SVGPathByteStream::copy const):
3746         * svg/animation/SMILTimeContainer.cpp:
3747         (WebCore::SMILTimeContainer::schedule):
3748         * svg/graphics/SVGImage.cpp:
3749         (WebCore::SVGImage::dataChanged):
3750         * svg/properties/SVGAnimatedDecoratedProperty.h:
3751         (WebCore::SVGAnimatedDecoratedProperty::create):
3752         * svg/properties/SVGAnimatedPropertyAnimatorImpl.h:
3753         * svg/properties/SVGAnimatedPropertyPairAnimatorImpl.h:
3754         * svg/properties/SVGDecoratedEnumeration.h:
3755         (WebCore::SVGDecoratedEnumeration::create):
3756         * svg/properties/SVGPrimitivePropertyAnimator.h:
3757         (WebCore::SVGPrimitivePropertyAnimator::create):
3758         * svg/properties/SVGValuePropertyAnimatorImpl.h:
3759         * svg/properties/SVGValuePropertyListAnimatorImpl.h:
3760         * testing/InternalSettings.cpp:
3761         (WebCore::InternalSettings::from):
3762         * testing/Internals.cpp:
3763         (WebCore::InspectorStubFrontend::InspectorStubFrontend):
3764         (WebCore::Internals::Internals):
3765         (WebCore::Internals::enableMockSpeechSynthesizer):
3766         (WebCore::Internals::openDummyInspectorFrontend):
3767         (WebCore::Internals::setPrinting):
3768         (WebCore::Internals::initializeMockCDM):
3769         (WebCore::Internals::queueMicroTask):
3770         * testing/LegacyMockCDM.cpp:
3771         (WebCore::LegacyMockCDM::createSession):
3772         * testing/MockCDMFactory.cpp:
3773         (WebCore::MockCDMFactory::createCDM):
3774         * testing/MockContentFilter.cpp:
3775         (WebCore::MockContentFilter::create):
3776         * testing/MockGamepadProvider.cpp:
3777         (WebCore::MockGamepadProvider::setMockGamepadDetails):
3778         * workers/WorkerConsoleClient.cpp:
3779         (WebCore::WorkerConsoleClient::messageWithTypeAndLevel):
3780         * workers/WorkerEventQueue.cpp:
3781         (WebCore::WorkerEventQueue::enqueueEvent):
3782         * workers/WorkerGlobalScope.cpp:
3783         (WebCore::WorkerGlobalScope::WorkerGlobalScope):
3784         (WebCore::WorkerGlobalScope::addMessage):
3785         * workers/WorkerMessagingProxy.cpp:
3786         (WebCore::WorkerMessagingProxy::WorkerMessagingProxy):
3787         (WebCore::WorkerMessagingProxy::postMessageToWorkerGlobalScope):
3788         * workers/WorkerRunLoop.cpp:
3789         (WebCore::WorkerRunLoop::WorkerRunLoop):
3790         (WebCore::WorkerRunLoop::postTaskAndTerminate):
3791         (WebCore::WorkerRunLoop::postTaskForMode):
3792         * workers/WorkerScriptLoader.cpp:
3793         (WebCore::WorkerScriptLoader::loadAsynchronously):
3794         (WebCore::WorkerScriptLoader::createResourceRequest):
3795         * workers/WorkerThread.cpp:
3796         (WebCore::WorkerThread::WorkerThread):
3797         * workers/service/ServiceWorkerContainer.cpp:
3798         (WebCore::ServiceWorkerContainer::ready):
3799         (WebCore::ServiceWorkerContainer::addRegistration):
3800         (WebCore::ServiceWorkerContainer::removeRegistration):
3801         (WebCore::ServiceWorkerContainer::updateRegistration):
3802         (WebCore::ServiceWorkerContainer::getRegistration):
3803         (WebCore::ServiceWorkerContainer::getRegistrations):
3804         * workers/service/context/SWContextManager.cpp:
3805         (WebCore::SWContextManager::terminateWorker):
3806         * workers/service/context/ServiceWorkerThreadProxy.cpp:
3807         (WebCore::ServiceWorkerThreadProxy::ServiceWorkerThreadProxy):
3808         (WebCore::ServiceWorkerThreadProxy::createBlobLoader):
3809         * workers/service/server/RegistrationDatabase.cpp:
3810         (WebCore::RegistrationDatabase::openSQLiteDatabase):
3811         * workers/service/server/SWServer.cpp:
3812         (WebCore::SWServer::addRegistrationFromStore):
3813         (WebCore::SWServer::SWServer):
3814         (WebCore::SWServer::scheduleJob):
3815         (WebCore::SWServer::unregisterServiceWorkerClient):
3816         * workers/service/server/SWServerJobQueue.cpp:
3817         (WebCore::SWServerJobQueue::runRegisterJob):
3818         * worklets/PaintWorkletGlobalScope.cpp:
3819         (WebCore::PaintWorkletGlobalScope::registerPaint):
3820         * worklets/WorkletConsoleClient.cpp:
3821         (WebCore::WorkletConsoleClient::messageWithTypeAndLevel):
3822         * worklets/WorkletGlobalScope.cpp:
3823         (WebCore::WorkletGlobalScope::WorkletGlobalScope):
3824         (WebCore::WorkletGlobalScope::addConsoleMessage):
3825         * worklets/WorkletScriptController.cpp:
3826         (WebCore::WorkletScriptController::initScriptWithSubclass):
3827         * xml/XMLHttpRequest.cpp:
3828         (WebCore::XMLHttpRequest::upload):
3829         * xml/XPathFunctions.cpp:
3830         * xml/XPathPredicate.cpp:
3831         (WebCore::XPath::evaluatePredicate):
3832         * xml/XSLStyleSheetLibxslt.cpp:
3833         (WebCore::XSLStyleSheet::loadChildSheet):
3834         * xml/parser/XMLDocumentParser.cpp:
3835         (WebCore::XMLDocumentParser::handleError):
3836         * xml/parser/XMLDocumentParserLibxml2.cpp:
3837         (WebCore::PendingCallbacks::appendStartElementNSCallback):
3838         (WebCore::PendingCallbacks::appendEndElementNSCallback):
3839         (WebCore::PendingCallbacks::appendCharactersCallback):
3840         (WebCore::PendingCallbacks::appendProcessingInstructionCallback):
3841         (WebCore::PendingCallbacks::appendCDATABlockCallback):
3842         (WebCore::PendingCallbacks::appendCommentCallback):
3843         (WebCore::PendingCallbacks::appendInternalSubsetCallback):
3844         (WebCore::PendingCallbacks::appendErrorCallback):
3845         (WebCore::XMLDocumentParser::XMLDocumentParser):
3846         (WebCore::XMLDocumentParser::doEnd):
3847
3848 2019-08-18  Zalan Bujtas  <zalan@apple.com>
3849
3850         [LFC][TFC] Compute column min/max widths and table width.
3851         https://bugs.webkit.org/show_bug.cgi?id=200757
3852         <rdar://problem/54333148>
3853
3854         Reviewed by Antti Koivisto.
3855
3856         For each column, determine a maximum and minimum column width from the cells that span only that column.
3857         The minimum is that required by the cell with the largest minimum cell width (or the column 'width', whichever is larger).
3858         The maximum is that required by the cell with the largest maximum cell width (or the column 'width', whichever is larger).
3859
3860         * layout/tableformatting/TableFormattingContext.cpp:
3861         (WebCore::Layout::TableFormattingContext::computePreferredWidthForColumns const):
3862         * layout/tableformatting/TableGrid.cpp:
3863         (WebCore::Layout::TableGrid::appendCell):
3864         * layout/tableformatting/TableGrid.h:
3865         (WebCore::Layout::TableGrid::columns):
3866         (WebCore::Layout::TableGrid::rows):
3867
3868 2019-08-17  Darin Adler  <darin@apple.com>
3869
3870         Tidy up checks to see if a character is in the Latin-1 range by using isLatin1 consistently
3871         https://bugs.webkit.org/show_bug.cgi?id=200861
3872
3873         Reviewed by Ross Kirsling.
3874
3875         * css/makeSelectorPseudoClassAndCompatibilityElementMap.py: Use isLatin1.
3876         * css/makeSelectorPseudoElementsMap.py: Ditto.
3877         * editing/TextIterator.cpp:
3878         (WebCore::isNonLatin1Separator): Ditto.
3879         (WebCore::isSeparator): Ditto.
3880         * platform/network/HTTPParsers.cpp:
3881         (WebCore::isValidReasonPhrase): Ditto.
3882         (WebCore::isValidHTTPHeaderValue): Ditto.
3883         (WebCore::isValidAcceptHeaderValue): Ditto.
3884         * platform/text/TextCodecLatin1.cpp:
3885         (WebCore::TextCodecLatin1::decode): Ditto.
3886         * platform/text/TextCodecUTF8.cpp:
3887         (WebCore::TextCodecUTF8::handlePartialSequence): Ditto.
3888         (WebCore::TextCodecUTF8::decode): Ditto.
3889
3890 2019-08-18  Cathie Chen  <cathiechen@igalia.com>
3891
3892         Crash in Document::deliverResizeObservations
3893         https://bugs.webkit.org/show_bug.cgi?id=200635
3894
3895         Reviewed by Simon Fraser.
3896
3897         Document::deliverResizeObservations will crash if m_resizeObservers in Document
3898         is modified in JS callbacks when we are traversing observers in m_resizeObservers.
3899         This patch copy m_resizeObservers to a new vector, and check null for observers.
3900
3901         Test: resize-observer/delete-observers-in-callbacks.html
3902
3903         * dom/Document.cpp:
3904         (WebCore::Document::deliverResizeObservations):
3905
3906 2019-08-17  Sam Weinig  <weinig@apple.com>
3907
3908         Rename StringBuilder::flexibleAppend(...) to StringBuilder::append(...)
3909         https://bugs.webkit.org/show_bug.cgi?id=200756
3910
3911         Reviewed by Darin Adler.
3912
3913         Update call sites for rename from StringBuilder::flexibleAppend(...) to 
3914         StringBuilder::append(...).
3915
3916         * Modules/webgpu/WHLSL/Metal/WHLSLEntryPointScaffolding.cpp:
3917         (WebCore::WHLSL::Metal::EntryPointScaffolding::emitResourceHelperTypes):
3918         (WebCore::WHLSL::Metal::EntryPointScaffolding::emitResourceSignature):
3919         (WebCore::WHLSL::Metal::EntryPointScaffolding::emitBuiltInsSignature):
3920         (WebCore::WHLSL::Metal::EntryPointScaffolding::emitMangledInputPath):
3921         (WebCore::WHLSL::Metal::EntryPointScaffolding::emitMangledOutputPath):
3922         (WebCore::WHLSL::Metal::EntryPointScaffolding::emitUnpackResourcesAndNamedBuiltIns):
3923         (WebCore::WHLSL::Metal::VertexEntryPointScaffolding::emitHelperTypes):
3924         (WebCore::WHLSL::Metal::VertexEntryPointScaffolding::emitSignature):
3925         (WebCore::WHLSL::Metal::VertexEntryPointScaffolding::emitUnpack):
3926         (WebCore::WHLSL::Metal::VertexEntryPointScaffolding::emitPack):
3927         (WebCore::WHLSL::Metal::FragmentEntryPointScaffolding::emitHelperTypes):
3928         (WebCore::WHLSL::Metal::FragmentEntryPointScaffolding::emitSignature):
3929         (WebCore::WHLSL::Metal::FragmentEntryPointScaffolding::emitUnpack):
3930         (WebCore::WHLSL::Metal::FragmentEntryPointScaffolding::emitPack):
3931         (WebCore::WHLSL::Metal::ComputeEntryPointScaffolding::emitSignature):
3932         * Modules/webgpu/WHLSL/Metal/WHLSLFunctionWriter.cpp:
3933         (WebCore::WHLSL::Metal::declareFunction):
3934         (WebCore::WHLSL::Metal::FunctionDefinitionWriter::visit):
3935         (WebCore::WHLSL::Metal::FunctionDefinitionWriter::emitLoop):
3936         (WebCore::WHLSL::Metal::FunctionDefinitionWriter::emitConstantExpressionString):
3937         * Modules/webgpu/WHLSL/Metal/WHLSLNativeFunctionWriter.cpp:
3938         (WebCore::WHLSL::Metal::inlineNativeFunction):
3939         * Modules/webgpu/WHLSL/Metal/WHLSLTypeNamer.cpp:
3940         (WebCore::WHLSL::Metal::TypeNamer::emitUnnamedTypeDefinition):
3941         (WebCore::WHLSL::Metal::TypeNamer::emitNamedTypeDefinition):
3942         * Modules/webgpu/WHLSL/WHLSLParser.cpp:
3943         (WebCore::WHLSL::Types::appendNameTo):
3944         * rendering/RenderLayerCompositor.cpp:
3945         (WebCore::RenderLayerCompositor::logLayerInfo):
3946         * testing/Internals.cpp:
3947         (WebCore::Internals::ongoingLoadsDescriptions const):
3948
3949 2019-08-16  Commit Queue  <