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