Timeline



May 18, 2022:

11:24 PM Changeset in webkit [294469] by sihui_liu@apple.com
  • 7 edits in trunk/Source/WebKit/UIProcess

Move directories from WebProcessPool to WebsiteDataStore
https://bugs.webkit.org/show_bug.cgi?id=240609

Reviewed by Chris Dumez.

Moving directories out of WebProcessPool because WebsiteDataStore usually decides where to store things. It is confusing
in current implementation that WebsiteDataStore gets the paths from WebProcessPool, and then WebProcessPool query paths
from WebsiteDataStore.

  • Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm:

(WebKit::WebProcessPool::cacheDirectoryInContainerOrHomeDirectory): Deleted.
(WebKit::WebProcessPool::cookieStorageDirectory): Deleted.
(WebKit::WebProcessPool::parentBundleDirectory): Deleted.
(WebKit::WebProcessPool::networkingCachesDirectory): Deleted.
(WebKit::WebProcessPool::webContentCachesDirectory): Deleted.
(WebKit::WebProcessPool::containerTemporaryDirectory): Deleted.

  • Source/WebKit/UIProcess/GPU/GPUProcessProxy.cpp:

(WebKit::gpuProcessCachesDirectory):
(WebKit::GPUProcessProxy::GPUProcessProxy):

  • Source/WebKit/UIProcess/WebProcessPool.cpp:

(WebKit::WebProcessPool::webProcessDataStoreParameters):

  • Source/WebKit/UIProcess/WebProcessPool.h:
  • Source/WebKit/UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:

(WebKit::WebsiteDataStore::cacheDirectoryInContainerOrHomeDirectory):
(WebKit::WebsiteDataStore::cookieStorageDirectory):
(WebKit::WebsiteDataStore::containerCachesDirectory):
(WebKit::WebsiteDataStore::parentBundleDirectory):
(WebKit::WebsiteDataStore::networkingCachesDirectory):
(WebKit::WebsiteDataStore::containerTemporaryDirectory):

  • Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp:

(WebKit::WebsiteDataStore::resolveDirectoriesIfNecessary):
(WebKit::WebsiteDataStore::parameters):

  • Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.h:

(WebKit::WebsiteDataStore::cookieStorageDirectory const): Deleted.
(WebKit::WebsiteDataStore::containerCachesDirectory const): Deleted.
(WebKit::WebsiteDataStore::containerTemporaryDirectory const): Deleted.

Canonical link: https://commits.webkit.org/250731@main

10:53 PM Changeset in webkit [294468] by Chris Dumez
  • 40 edits in trunk

Add find()/reverseFind()/contains() overloads takes an ASCIILiteral to our String types https://bugs.webkit.org/show_bug.cgi?id=240247
https://bugs.webkit.org/show_bug.cgi?id=240247

Reviewed by Darin Adler.

Add find()/reverseFind()/contains() overloads takes an ASCIILiteral to our String types.
These versions are more efficient when the call sites have an ASCIILiteral as they have
less branching.

  • Source/JavaScriptCore/runtime/ExceptionHelpers.cpp:

(JSC::notAFunctionSourceAppender):
(JSC::invalidParameterInSourceAppender):
(JSC::invalidParameterInstanceofSourceAppender):
(JSC::invalidPrototypeSourceAppender):

  • Source/JavaScriptCore/runtime/IntlObject.cpp:

(JSC::canonicalizeUnicodeExtensionsAfterICULocaleCanonicalization):
(JSC::lookupMatcher):

  • Source/JavaScriptCore/tools/FunctionOverrides.cpp:

(JSC::initializeOverrideInfo):

  • Source/WebCore/PAL/pal/text/DecodeEscapeSequences.h:

(PAL::Unicode16BitEscapeSequence::findInString):

  • Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp:

(WebKit::needsNewCreateTableSchema):
(WebKit::ResourceLoadStatisticsDatabaseStore::insertDomainRelationshipList):

  • Source/WebKit/NetworkProcess/NetworkResourceLoader.cpp:

(WebKit::NetworkResourceLoader::didReceiveResponse):

  • Source/WebKit/NetworkProcess/cache/PrefetchCache.cpp:

(WebKit::PrefetchCache::take):

  • Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView _updateTextInputTraits:]):

  • Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::focusedElementInformation):

  • Source/WebKit/WebProcess/WebProcess.cpp:

(WebKit::checkDocumentsCaptureStateConsistency):

  • Source/WebKitLegacy/mac/WebView/WebView.mm:

(-[WebView updateTextTouchBar]):

  • Source/WTF/wtf/text/AtomString.h:
  • Source/WTF/wtf/text/StringImpl.cpp:

(WTF::StringImpl::find):
(WTF::StringImpl::reverseFind):

  • Source/WTF/wtf/text/StringImpl.h:

(WTF::StringImpl::find):
(WTF::StringImpl::reverseFind):

  • Source/WTF/wtf/text/StringView.cpp:

(WTF::StringView::find const):
(WTF::StringView::reverseFind const):

  • Source/WTF/wtf/text/StringView.h:
  • Source/WTF/wtf/text/WTFString.h:
  • Source/WebCore/Modules/fetch/FetchBodyConsumer.cpp:

(WebCore::FetchBodyConsumer::packageFormData):

  • Source/WebCore/Modules/mediastream/PeerConnectionBackend.cpp:

(WebCore::PeerConnectionBackend::validateSDP const):
(WebCore::PeerConnectionBackend::newICECandidate):

  • Source/WebCore/Modules/plugins/YouTubePluginReplacement.cpp:

(WebCore::YouTubePluginReplacement::youTubeURLFromAbsoluteURL):

  • Source/WebCore/dom/DataTransfer.cpp:

(WebCore::DataTransfer::types const):

  • Source/WebCore/dom/Document.cpp:

(WebCore::Document::createCDATASection):
(WebCore::Document::createProcessingInstruction):

  • Source/WebCore/editing/cocoa/HTMLConverter.mm:

(HTMLConverter::computedAttributesForElement):

  • Source/WebCore/editing/libwpe/EditorLibWPE.cpp:

(WebCore::createFragmentFromPasteboardData):

  • Source/WebCore/editing/markup.cpp:

(WebCore::StyledMarkupAccumulator::shouldPreserveMSOListStyleForElement):
(WebCore::StyledMarkupAccumulator::appendNodeToPreserveMSOList):
(WebCore::shouldPreserveMSOLists):

  • Source/WebCore/html/track/VTTRegion.cpp:

(WebCore::VTTRegion::parseSettingValue):

  • Source/WebCore/html/track/WebVTTParser.cpp:

(WebCore::WebVTTParser::collectWebVTTBlock):
(WebCore::WebVTTParser::checkAndRecoverCue):
(WebCore::WebVTTParser::checkAndCreateRegion):
(WebCore::WebVTTParser::checkAndStoreRegion):
(WebCore::WebVTTParser::checkStyleSheet):
(WebCore::WebVTTParser::checkAndStoreStyleSheet):
(WebCore::WebVTTParser::collectCueId):
(WebCore::WebVTTParser::collectCueText):
(WebCore::WebVTTParser::ignoreBadCue):

  • Source/WebCore/platform/graphics/gstreamer/GStreamerRegistryScanner.cpp:

(WebCore::GStreamerRegistryScanner::ElementFactories::hasElementForMediaType const):

  • Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):

  • Source/WebCore/platform/graphics/opengl/ExtensionsGLOpenGLCommon.cpp:

(WebCore::ExtensionsGLOpenGLCommon::ExtensionsGLOpenGLCommon):

  • Source/WebCore/platform/graphics/texmap/TextureMapperContextAttributes.cpp:

(WebCore::TextureMapperContextAttributes::get):

  • Source/WebCore/platform/ios/UserAgentIOS.mm:

(WebCore::deviceNameForUserAgent):

  • Source/WebCore/platform/mediastream/mac/CoreAudioCaptureDeviceManager.cpp:

(WebCore::isValidCaptureDevice):

  • Source/WebCore/rendering/style/GridPositionsResolver.cpp:

(WebCore::NamedLineCollectionBase::NamedLineCollectionBase):

  • Source/WebCore/style/StyleScope.cpp:

(WebCore::Style::Scope::collectActiveStyleSheets):

  • Source/WebCore/testing/Internals.cpp:

(WebCore::Internals::isVP9VTBDeccoderUsed):

  • Source/WebCore/testing/MockLibWebRTCPeerConnection.cpp:

(WebCore::MockLibWebRTCPeerConnection::SetRemoteDescription):

Canonical link: https://commits.webkit.org/250730@main

9:09 PM Changeset in webkit [294467] by timothy_horton@apple.com
  • 2 edits in trunk/Source

REGRESSION (r294160): Occasional infinite loops under updateLayersForInteractionRegions
https://bugs.webkit.org/show_bug.cgi?id=240610
<rdar://problem/93507791>

Reviewed by Wenson Hsieh.

  • Source/WebCore/page/InteractionRegion.cpp:

(WebCore::regionForElement):
Avoid emitting empty rects for interaction regions, and avoid emitting the region
at all if this results in an empty set of rects.

  • Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeInteractionRegionLayers.mm:

(WebKit::updateLayersForInteractionRegions):
Never re-use a layer with empty bounds; we should never get here, but I'd rather
re-create the layer if we do than corrupt the hash table.

Canonical link: https://commits.webkit.org/250729@main

9:08 PM Changeset in webkit [294466] by Lauro Moura
  • 1 edit in trunk/Source/WebKit/WebProcess/WebCoreSupport/wpe/WebEditorClientWPE.cpp

Unreviewed, fix WPE build 250693@main

  • WebProcess/WebCoreSupport/wpe/WebEditorClientWPE.cpp: Add missing inlines.h include.

Canonical link: https://commits.webkit.org/250728@main

9:03 PM Changeset in webkit [294465] by Chris Dumez
  • 1 edit in trunk/Source/WTF/wtf/text/WTFString.h

Drop operator==() overload for comparing a String and a LChar*
https://bugs.webkit.org/show_bug.cgi?id=240611

Reviewed by Darin Adler.

Drop operator==() overload for comparing a String and a LChar*, as it is unused.

  • Source/WTF/wtf/text/WTFString.h:

(WTF::operator==):
(WTF::operator!=):

Canonical link: https://commits.webkit.org/250727@main

8:50 PM Changeset in webkit [294464] by Wenson Hsieh
  • 19 edits in trunk/Source

Use references instead of pointers when passing elements through several editor client hooks
https://bugs.webkit.org/show_bug.cgi?id=240603

Reviewed by Chris Dumez.

Change Element* to Element& in several WebEditorClient (and injected bundle form client) codepaths
that currently expect non-null pointers, anyways. No change in behavior.

  • Source/WebKit/WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:

(-[WKWebProcessPlugInBrowserContextController _setFormDelegate:]):

  • Source/WebKit/WebProcess/InjectedBundle/APIInjectedBundleFormClient.h:

(API::InjectedBundle::FormClient::didFocusTextField):
(API::InjectedBundle::FormClient::textFieldDidBeginEditing):
(API::InjectedBundle::FormClient::textFieldDidEndEditing):
(API::InjectedBundle::FormClient::textDidChangeInTextField):
(API::InjectedBundle::FormClient::textDidChangeInTextArea):
(API::InjectedBundle::FormClient::shouldPerformActionInTextField):

  • Source/WebKit/WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp:

(WebKit::InjectedBundlePageFormClient::didFocusTextField):
(WebKit::InjectedBundlePageFormClient::textFieldDidBeginEditing):
(WebKit::InjectedBundlePageFormClient::textFieldDidEndEditing):
(WebKit::InjectedBundlePageFormClient::textDidChangeInTextField):
(WebKit::InjectedBundlePageFormClient::textDidChangeInTextArea):
(WebKit::InjectedBundlePageFormClient::shouldPerformActionInTextField):

  • Source/WebKit/WebProcess/InjectedBundle/InjectedBundlePageFormClient.h:
  • Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::focusedElementChanged):

  • Source/WebKit/WebProcess/WebCoreSupport/WebEditorClient.cpp:

(WebKit::WebEditorClient::textFieldDidBeginEditing):
(WebKit::WebEditorClient::textFieldDidEndEditing):
(WebKit::WebEditorClient::textDidChangeInTextField):
(WebKit::WebEditorClient::textDidChangeInTextArea):
(WebKit::WebEditorClient::doTextFieldCommandFromEvent):
(WebKit::WebEditorClient::textWillBeDeletedInTextField):

  • Source/WebKit/WebProcess/WebCoreSupport/WebEditorClient.h:
  • Source/WebKitLegacy/mac/WebCoreSupport/WebEditorClient.h:
  • Source/WebKitLegacy/mac/WebCoreSupport/WebEditorClient.mm:

(dynamicDowncastToKit):

Also add a helper method here to make it easier to safely downcast an Element to a
given WebCore type, and then return an Objective-C DOMElement wrapper for the
element, if it matches the type.

(WebEditorClient::textFieldDidBeginEditing):
(WebEditorClient::textFieldDidEndEditing):
(WebEditorClient::textDidChangeInTextField):
(WebEditorClient::doTextFieldCommandFromEvent):
(WebEditorClient::textWillBeDeletedInTextField):
(WebEditorClient::textDidChangeInTextArea):

  • Source/WebKitLegacy/win/WebCoreSupport/WebEditorClient.cpp:

(WebEditorClient::textFieldDidBeginEditing):
(WebEditorClient::textFieldDidEndEditing):
(WebEditorClient::textDidChangeInTextField):
(WebEditorClient::doTextFieldCommandFromEvent):
(WebEditorClient::textWillBeDeletedInTextField):
(WebEditorClient::textDidChangeInTextArea):

  • Source/WebKitLegacy/win/WebCoreSupport/WebEditorClient.h:
  • Source/WebCore/editing/DeleteSelectionCommand.cpp:

(WebCore::DeleteSelectionCommand::doApply):

  • Source/WebCore/editing/Editor.cpp:

(WebCore::Editor::textFieldDidBeginEditing):
(WebCore::Editor::textFieldDidEndEditing):
(WebCore::Editor::textDidChangeInTextField):
(WebCore::Editor::doTextFieldCommandFromEvent):
(WebCore::Editor::textWillBeDeletedInTextField):
(WebCore::Editor::textDidChangeInTextArea):

  • Source/WebCore/editing/Editor.h:
  • Source/WebCore/html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::endEditing):

  • Source/WebCore/html/HTMLTextAreaElement.cpp:

(WebCore::HTMLTextAreaElement::subtreeHasChanged):

  • Source/WebCore/html/TextFieldInputType.cpp:

(WebCore::TextFieldInputType::handleKeydownEvent):
(WebCore::TextFieldInputType::handleFocusEvent):
(WebCore::TextFieldInputType::didSetValueByUserEdit):

  • Source/WebCore/loader/EmptyClients.cpp:
  • Source/WebCore/page/EditorClient.h:

Canonical link: https://commits.webkit.org/250726@main

8:05 PM Changeset in webkit [294463] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore/layout

Add support for simple 'flex-grow'
https://bugs.webkit.org/show_bug.cgi?id=240561

Reviewed by Antti Koivisto.

This is a basic "flex grow" implementation ignoring min/max values.

  • Source/WebCore/layout/formattingContexts/flex/FlexFormattingContext.cpp:

(WebCore::Layout::FlexFormattingContext::setFlexItemsGeometry):
(WebCore::Layout::FlexFormattingContext::layoutInFlowContentForIntegration):

  • Source/WebCore/layout/integration/flex/LayoutIntegrationFlexLayout.cpp:

(WebCore::LayoutIntegration::FlexLayout::updateRenderers const):

Canonical link: https://commits.webkit.org/250725@main

7:29 PM Changeset in webkit [294462] by Fujii Hironori
  • 1 edit in trunk/Source/JavaScriptCore/CMakeLists.txt

PrivateHeaders/JavaScriptCore/InspectorProtocolObjects.h isn't regenerated in incremental builds
https://bugs.webkit.org/show_bug.cgi?id=240540

Reviewed by Don Olmstead.

In CMake Visual Studio generator builds, InspectorProtocolObjects.h
was not copied to the private headers directory as expected in
incremental builds.

${JavaScriptCore_DERIVED_SOURCES_DIR}/inspector/InspectorProtocolObjects.h
was added to both JavaScriptCore_PRIVATE_FRAMEWORK_HEADERS and
JavaScriptCore_HEADERS. This caused the incremental build problem.
Don't add such headers to JavaScriptCore_HEADERS.

  • Source/JavaScriptCore/CMakeLists.txt:

Canonical link: https://commits.webkit.org/250724@main

7:28 PM Changeset in webkit [294461] by Fujii Hironori
  • 1 edit in trunk/Source/JavaScriptCore/CMakeLists.txt

JavaScriptCore/DerivedSources/Bytecodes.h is generated twice both in Bytecodes.vcxproj in LLIntSettingsExtractor.vcxproj
https://bugs.webkit.org/show_bug.cgi?id=240556

Reviewed by Don Olmstead.

In CMake Visual Studio generator builds, Bytecodes.h was generated
twice both in Bytecodes.vcxproj in LLIntSettingsExtractor.vcxproj.

The fundamental problem of this bug was fixed in CMake v3.12.
<https://gitlab.kitware.com/cmake/cmake/-/commit/5a6c6292898fe238f3a5105133b8904209fbedaf>

LLIntSettingsExtractor target needs to have a direct or indirect
dependency to Bytecodes target for CMake Visual Studio generator to
eliminate duplicated custom commands.

  • Source/JavaScriptCore/CMakeLists.txt:

Canonical link: https://commits.webkit.org/250723@main

7:12 PM Changeset in webkit [294460] by Chris Dumez
  • 65 edits
    1 copy
    1 add
    2 deletes in trunk/Source/WebKit

Regression(r294190) GPUProcess is unable to launch on certain builds
https://bugs.webkit.org/show_bug.cgi?id=240615
<rdar://93533749>

Unreviewed, revert r294190 to adddress the issue.

  • Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp:

(WebKit::GPUConnectionToWebProcess::remoteMediaResourceManager):

  • Source/WebKit/GPUProcess/media/RemoteCDMInstanceProxy.h:
  • Source/WebKit/GPUProcess/media/RemoteImageDecoderAVFProxy.cpp:

(WebKit::RemoteImageDecoderAVFProxy::createDecoder):
(WebKit::RemoteImageDecoderAVFProxy::setData):

  • Source/WebKit/GPUProcess/media/RemoteImageDecoderAVFProxy.h:
  • Source/WebKit/GPUProcess/media/RemoteImageDecoderAVFProxy.messages.in:
  • Source/WebKit/GPUProcess/media/RemoteMediaResourceManager.cpp:

(WebKit::RemoteMediaResourceManager::RemoteMediaResourceManager):
(WebKit::RemoteMediaResourceManager::dataReceived):

  • Source/WebKit/GPUProcess/media/RemoteMediaResourceManager.h:
  • Source/WebKit/GPUProcess/media/RemoteMediaResourceManager.messages.in:
  • Source/WebKit/GPUProcess/media/RemoteSourceBufferProxy.cpp:

(WebKit::RemoteSourceBufferProxy::append):

  • Source/WebKit/GPUProcess/media/RemoteSourceBufferProxy.h:
  • Source/WebKit/GPUProcess/media/RemoteSourceBufferProxy.messages.in:
  • Source/WebKit/NetworkProcess/NetworkResourceLoader.cpp:

(WebKit::NetworkResourceLoader::bufferingTimerFired):
(WebKit::NetworkResourceLoader::sendBuffer):
(WebKit::NetworkResourceLoader::dataReceivedThroughContentFilter):

  • Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerDownloadTask.cpp:

(WebKit::ServiceWorkerDownloadTask::didReceiveData):

  • Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerDownloadTask.h:
  • Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerDownloadTask.messages.in:
  • Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp:

(WebKit::ServiceWorkerFetchTask::didReceiveData):
(WebKit::ServiceWorkerFetchTask::loadBodyFromPreloader):

  • Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.h:
  • Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.messages.in:
  • Source/WebKit/Platform/IPC/SharedBufferReference.cpp: Removed.
  • Source/WebKit/Platform/IPC/SharedBufferReference.h: Removed.
  • Source/WebKit/Platform/SharedMemory.cpp:

(WebKit::SharedMemory::Handle::takeOwnershipOfMemory const):
(WebKit::SharedMemory::Handle::transferOwnershipOfMemory const): Deleted.

  • Source/WebKit/Platform/SharedMemory.h:
  • Source/WebKit/Platform/cocoa/SharedMemoryCocoa.cpp:

(WebKit::SharedMemory::Handle::takeOwnershipOfMemory const):
(WebKit::machProtection):
(WebKit::SharedMemory::map):
(WebKit::changeOwnershipOfMemory): Deleted.
(WebKit::SharedMemory::Handle::transferOwnershipOfMemory const): Deleted.

  • Source/WebKit/Platform/unix/SharedMemoryUnix.cpp:

(WebKit::accessModeMMap):
(WebKit::SharedMemory::map):

  • Source/WebKit/Scripts/process-entitlements.sh:
  • Source/WebKit/Shared/RemoteLayerTree/CGDisplayListImageBufferBackend.cpp:

(WebKit::CGDisplayListImageBufferBackend::createBackendHandle const):

  • Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.mm:

(WebKit::RemoteLayerBackingStore::applyBackingStoreToLayer):

  • Source/WebKit/Shared/WebCoreArgumentCoders.cpp:

(IPC::encodeSharedBuffer):
(IPC::decodeSharedBuffer):

  • Source/WebKit/Sources.txt:
  • Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView createPDFWithConfiguration:completionHandler:]):

  • Source/WebKit/UIProcess/Cocoa/WebPageProxyCocoa.mm:

(WebKit::WebPageProxy::platformRegisterAttachment):

  • Source/WebKit/UIProcess/Cocoa/WebPasteboardProxyCocoa.mm:

(WebKit::WebPasteboardProxy::getPasteboardBufferForType):
(WebKit::WebPasteboardProxy::setPasteboardBufferForType):
(WebKit::WebPasteboardProxy::readBufferFromPasteboard):

  • Source/WebKit/UIProcess/Cocoa/WebProcessProxyCocoa.mm:

(WebKit::WebProcessProxy::sendAudioComponentRegistrations):

  • Source/WebKit/UIProcess/WebPageProxy.cpp:

(WebKit::CompletionHandler<void):
(WebKit::WebPageProxy::drawPagesToPDF):
(WebKit::WebPageProxy::drawToPDF):
(WebKit::WebPageProxy::getLoadDecisionForIcon):
(WebKit::WebPageProxy::updateAttachmentAttributes):
(WebKit::WebPageProxy::registerAttachmentIdentifierFromData):
(WebKit::WebPageProxy::platformRegisterAttachment):

  • Source/WebKit/UIProcess/WebPageProxy.h:
  • Source/WebKit/UIProcess/WebPageProxy.messages.in:
  • Source/WebKit/UIProcess/WebPasteboardProxy.cpp:

(WebKit::WebPasteboardProxy::readBufferFromPasteboard):

  • Source/WebKit/UIProcess/WebPasteboardProxy.h:
  • Source/WebKit/UIProcess/WebPasteboardProxy.messages.in:
  • Source/WebKit/UIProcess/WebURLSchemeTask.cpp:

(WebKit::WebURLSchemeTask::didReceiveData):

  • Source/WebKit/UIProcess/gtk/WebPasteboardProxyGtk.cpp:

(WebKit::WebPasteboardProxy::readBuffer):

  • Source/WebKit/UIProcess/ios/WKContentView.mm:

(-[WKContentView _wk_pageCountForPrintFormatter:]):

  • Source/WebKit/UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::drawToPDFiOS):

  • Source/WebKit/UIProcess/mac/WebPageProxyMac.mm:

(WebKit::WebPageProxy::dataSelectionForPasteboard):

  • Source/WebKit/WebKit.xcodeproj/project.pbxproj:
  • Source/WebKit/WebProcess/GPU/graphics/ImageBufferBackendHandle.h:
  • Source/WebKit/WebProcess/GPU/media/RemoteImageDecoderAVF.cpp:

(WebKit::RemoteImageDecoderAVF::setData):

  • Source/WebKit/WebProcess/GPU/media/RemoteImageDecoderAVFManager.cpp:

(WebKit::RemoteImageDecoderAVFManager::createImageDecoder):

  • Source/WebKit/WebProcess/GPU/media/RemoteMediaResourceProxy.cpp:

(WebKit::RemoteMediaResourceProxy::dataReceived):

  • Source/WebKit/WebProcess/GPU/media/SourceBufferPrivateRemote.cpp:

(WebKit::SourceBufferPrivateRemote::append):

  • Source/WebKit/WebProcess/Network/WebResourceLoader.cpp:

(WebKit::WebResourceLoader::didReceiveData):

  • Source/WebKit/WebProcess/Network/WebResourceLoader.h:
  • Source/WebKit/WebProcess/Network/WebResourceLoader.messages.in:
  • Source/WebKit/WebProcess/Plugins/PDF/PDFPlugin.mm:

(WebKit::PDFPlugin::writeItemsToPasteboard):

  • Source/WebKit/WebProcess/Storage/WebServiceWorkerFetchTaskClient.cpp:

(WebKit::WebServiceWorkerFetchTaskClient::didReceiveData):
(WebKit::WebServiceWorkerFetchTaskClient::didReceiveBlobChunk):

  • Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp:
  • Source/WebKit/WebProcess/WebCoreSupport/WebEditorClient.cpp:

(WebKit::WebEditorClient::registerAttachmentIdentifier):

  • Source/WebKit/WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:

(WebKit::WebPlatformStrategies::bufferForType):
(WebKit::WebPlatformStrategies::setBufferForType):
(WebKit::WebPlatformStrategies::readBufferFromClipboard):
(WebKit::WebPlatformStrategies::readBufferFromPasteboard):

  • Source/WebKit/WebProcess/WebCoreSupport/mac/WebDragClientMac.mm:

(WebKit::WebDragClient::declareAndWriteDragImage):

  • Source/WebKit/WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::getContentsAsMHTMLData):
(WebKit::WebPage::getSelectionAsWebArchiveData):
(WebKit::WebPage::getMainResourceDataOfFrame):
(WebKit::WebPage::getResourceDataFromFrame):
(WebKit::WebPage::getWebArchiveOfFrame):
(WebKit::WebPage::getAccessibilityTreeData):
(WebKit::WebPage::drawToPDF):
(WebKit::WebPage::drawPagesToPDF):
(WebKit::WebPage::didGetLoadDecisionForIcon):
(WebKit::WebPage::urlSchemeTaskDidReceiveData):
(WebKit::WebPage::updateAttachmentAttributes):

  • Source/WebKit/WebProcess/WebPage/WebPage.h:
  • Source/WebKit/WebProcess/WebPage/WebPage.messages.in:
  • Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::getDataSelectionForPasteboard):
(WebKit::WebPage::performActionOnElement):
(WebKit::WebPage::drawToPDFiOS):
(WebKit::WebPage::didFinishLoadForQuickLookDocumentInMainFrame):

  • Source/WebKit/WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::WebPage::getDataSelectionForPasteboard):

  • Source/WebKit/WebProcess/WebProcess.h:
  • Source/WebKit/WebProcess/WebProcess.messages.in:
  • Source/WebKit/WebProcess/cocoa/WebProcessCocoa.mm:

(WebKit::WebProcess::consumeAudioComponentRegistrations):

Canonical link: https://commits.webkit.org/250722@main

7:08 PM Changeset in webkit [294459] by Russell Epstein
  • 1 copy in tags/WebKit-7614.1.14.0.6

Tag WebKit-7614.1.14.0.6.

7:06 PM Changeset in webkit [294458] by Russell Epstein
  • 1 copy in tags/WebKit-7614.1.14.1.6

Tag WebKit-7614.1.14.1.6.

7:04 PM Changeset in webkit [294457] by Russell Epstein
  • 66 edits
    1 copy
    1 add
    2 deletes in branches/safari-7614.1.14.1-branch/Source/WebKit

Revert r294190. rdar://problem/93533749

6:59 PM Changeset in webkit [294456] by Russell Epstein
  • 66 edits
    1 copy
    1 add
    2 deletes in branches/safari-7614.1.14.0-branch/Source/WebKit

Revert r294190. rdar://problem/93533749

6:47 PM Changeset in webkit [294455] by Karl Rackler
  • 1 edit in trunk/LayoutTests/platform/ios/TestExpectations

REGRESSION (r294317): [ iOS ] Thirteen layout tests are flaky or consistent timeouts
https://bugs.webkit.org/show_bug.cgi?id=240616
<rdar://93541706>

Unreviewed test gardening.

  • LayoutTests/platform/ios/TestExpectations:

Canonical link: https://commits.webkit.org/250721@main

6:40 PM Changeset in webkit [294454] by Russell Epstein
  • 9 edits in branches/safari-7614.1.14.1-branch/Source

Versioning.

WebKit-7614.1.14.1.6

6:40 PM Changeset in webkit [294453] by Russell Epstein
  • 9 edits in branches/safari-7614.1.14.0-branch/Source

Versioning.

WebKit-7614.1.14.0.6

5:41 PM Changeset in webkit [294452] by Robert Jenner
  • 12 edits in trunk/Source

Unreviewed, reverting r294317.

Broke multiple layout-tests, and 2 api-tests.

Reverted changeset:

"ImageBufferIOSurfaceBackend context setup and teardown
functions are redundant and error-prone"
https://bugs.webkit.org/show_bug.cgi?id=240452
https://commits.webkit.org/r294317

5:01 PM Changeset in webkit [294451] by Kate Cheney
  • 3 edits
    1 add in trunk

Copy-pasted attachments in mail show up as generic file icons
https://bugs.webkit.org/show_bug.cgi?id=240586
rdar://91067102

Reviewed by Wenson Hsieh.

Generate QuickLook previews for attachments that are copy-pasted as
webarchives, such as pages, keynote and numbers docs.

  • Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • Tools/TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:

(testiWorkAttachmentFileURL):
(testiWorkAttachmentData):
(TestWebKitAPI::TEST):
(TestWebKitAPI::_generateBestRepresentationForRequest):
Swizzle QLThumbnailGenerator code to make sure we hit image generation.
This is not an ideal test but ensures we at least hit the right code
path since we are unable to directly compare icons.

  • Tools/TestWebKitAPI/Tests/WebKitCocoa/test.pages: Added.
  • Source/WebKit/UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::registerAttachmentsFromSerializedData):

Canonical link: https://commits.webkit.org/250719@main

3:57 PM Changeset in webkit [294450] by Alan Coon
  • 1 copy in tags/WebKit-7614.1.14.3.2

Tag WebKit-7614.1.14.3.2.

3:51 PM Changeset in webkit [294449] by Alan Coon
  • 9 edits in branches/safari-7614.1.14.3-branch/Source

Versioning.

WebKit-7614.1.14.3.2

3:48 PM Changeset in webkit [294448] by Alan Coon
  • 1 copy in tags/WebKit-7614.1.14.2.2

Tag WebKit-7614.1.14.2.2.

3:42 PM Changeset in webkit [294447] by Alan Coon
  • 9 edits in branches/safari-7614.1.14.2-branch/Source

Versioning.

WebKit-7614.1.14.2.2

3:34 PM Changeset in webkit [294446] by Alan Coon
  • 1 copy in tags/WebKit-7614.1.14.1.5

Tag WebKit-7614.1.14.1.5.

3:32 PM Changeset in webkit [294445] by Alan Coon
  • 1 copy in tags/WebKit-7614.1.14.0.5

Tag WebKit-7614.1.14.0.5.

3:29 PM Changeset in webkit [294444] by Alan Coon
  • 9 edits in branches/safari-7614.1.14.1-branch/Source

Versioning.

WebKit-7614.1.14.1.5

3:29 PM Changeset in webkit [294443] by Alan Coon
  • 9 edits in branches/safari-7614.1.14.0-branch/Source

Versioning.

WebKit-7614.1.14.0.5

3:22 PM Changeset in webkit [294442] by Jonathan Bedard
  • 4 edits in trunk/Tools/Scripts/libraries/webkitscmpy

[git-webkit] Remove space in radar URLs
https://bugs.webkit.org/show_bug.cgi?id=240592
<rdar://problem/93519659>

Reviewed by Chris Dumez.

  • Tools/Scripts/libraries/webkitscmpy/setup.py: Bump version.
  • Tools/Scripts/libraries/webkitscmpy/webkitscmpy/init.py: Ditto.
  • Tools/Scripts/libraries/webkitscmpy/webkitscmpy/pull_request.py:

(PullRequest):
(PullRequest.escape_html):

  • Tools/Scripts/libraries/webkitscmpy/webkitscmpy/test/pull_request_unittest.py:

Canonical link: https://commits.webkit.org/250718@main

3:16 PM Changeset in webkit [294441] by Karl Rackler
  • 1 edit in trunk/LayoutTests/platform/ios/TestExpectations

PROGRESSION(r294272): Correction to guard in Platform file caused multiple tests failures
https://bugs.webkit.org/show_bug.cgi?id=240579
<rdar://93504716>

Unreviewed test gardening.

  • LayoutTests/platform/ios/TestExpectations:

Canonical link: https://commits.webkit.org/250717@main

3:12 PM Changeset in webkit [294440] by Russell Epstein
  • 1 copy in tags/WebKit-7614.1.11.9.1

Tag WebKit-7614.1.11.9.1.

3:00 PM Changeset in webkit [294439] by Russell Epstein
  • 47 edits in branches/safari-7614.1.11.9-branch/Source

Apply patch. rdar://problem/93068926

2:58 PM Changeset in webkit [294438] by J Pascoe
  • 38 edits
    9 deletes in trunk

[WebAuthn] Clean up WebAuthenticationModern and WebAuthnProcess
https://bugs.webkit.org/show_bug.cgi?id=240318
<rdar://93130490>

The WebAuthenticationModern flag and WebAuthnProcess are no longer used
and can be removed. This patch removes all references to both the flag
and the process.

Reviewed by Brent Fulgham.

Covered by existing tests and manual testing on macOS / iOS.

  • Tools/TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:

(TestWebKitAPI::TEST):
(TestWebKitAPI::WebCore::webAuthenticationModernExperimentalFeature): Deleted.

  • Source/WebKit/Configurations/WebAuthnService.xcconfig: Removed.
  • Source/WebKit/Configurations/WebKit.xcconfig:
  • Source/WebKit/DerivedSources.make:
  • Source/WebKit/Platform/ExtraPrivateSymbolsForTAPI.h:
  • Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebAuthn.sb.in: Removed.
  • Source/WebKit/Scripts/process-entitlements.sh:
  • Source/WebKit/Shared/Cocoa/DefaultWebBrowserChecks.mm:

(WebKit::isInWebKitChildProcess):

  • Source/WebKit/Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceEntryPoint.h:
  • Source/WebKit/Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceMain.mm:

(WebKit::XPCServiceEventHandler):

  • Source/WebKit/Shared/mac/AuxiliaryProcessMac.mm:

(WebKit::processStorageClass):
(WebKit::sandboxDirectory):

  • Source/WebKit/Sources.txt:
  • Source/WebKit/SourcesCocoa.txt:
  • Source/WebKit/UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetWebAuthenticationModernEnabled): Deleted.
(WKPreferencesGetWebAuthenticationModernEnabled): Deleted.

  • Source/WebKit/UIProcess/API/C/WKPreferencesRefPrivate.h:
  • Source/WebKit/UIProcess/API/Cocoa/WKProcessPool.mm:

(+[WKProcessPool _webAuthnProcessIdentifier]): Deleted.

  • Source/WebKit/UIProcess/API/Cocoa/WKProcessPoolPrivate.h:
  • Source/WebKit/UIProcess/AuxiliaryProcessProxy.cpp:

(WebKit::AuxiliaryProcessProxy::getLaunchOptions):

  • Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm:

(WebKit::WebProcessPool::notifyPreferencesChanged):

  • Source/WebKit/UIProcess/Launcher/ProcessLauncher.h:
  • Source/WebKit/UIProcess/Launcher/cocoa/ProcessLauncherCocoa.mm:

(WebKit::serviceName):
(WebKit::shouldLeakBoost):

  • Source/WebKit/UIProcess/WebAuthentication/Authenticator.h:

(WebKit::Authenticator::requestData const):
(WebKit::Authenticator::setWebAuthenticationModernEnabled): Deleted.
(WebKit::Authenticator::webAuthenticationModernEnabled const): Deleted.
(): Deleted.

  • Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.cpp:

(WebKit::AuthenticatorManager::authenticatorAdded):
(WebKit::AuthenticatorManager::enableModernWebAuthentication): Deleted.

  • Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.h:
  • Source/WebKit/UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.h:
  • Source/WebKit/UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.mm:

(WebKit::LocalAuthenticator::makeCredential):
(WebKit::LocalAuthenticator::continueGetAssertionAfterResponseSelected):
(WebKit::LocalAuthenticator::continueMakeCredentialAfterDecidePolicy): Deleted.

  • Source/WebKit/UIProcess/WebAuthentication/WebAuthnProcessProxy.cpp: Removed.
  • Source/WebKit/UIProcess/WebAuthentication/WebAuthnProcessProxy.h: Removed.
  • Source/WebKit/UIProcess/WebProcessPool.cpp:

(WebKit::WebProcessPool::getWebAuthnProcessConnection): Deleted.

  • Source/WebKit/UIProcess/WebProcessPool.h:
  • Source/WebKit/UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::getWebAuthnProcessConnection): Deleted.

  • Source/WebKit/UIProcess/WebProcessProxy.h:
  • Source/WebKit/UIProcess/WebProcessProxy.messages.in:
  • Source/WebKit/WebAuthnProcess/EntryPoint/Cocoa/XPCService/WebAuthnService/Info-OSX.plist: Removed.
  • Source/WebKit/WebAuthnProcess/EntryPoint/Cocoa/XPCService/WebAuthnService/Info-iOS.plist: Removed.
  • Source/WebKit/WebAuthnProcess/EntryPoint/Cocoa/XPCService/WebAuthnServiceEntryPoint.mm: Removed.
  • Source/WebKit/WebAuthnProcess/WebAuthnConnectionToWebProcess.cpp: Removed.
  • Source/WebKit/WebAuthnProcess/WebAuthnConnectionToWebProcess.h: Removed.
  • Source/WebKit/WebAuthnProcess/WebAuthnConnectionToWebProcess.messages.in: Removed.
  • Source/WebKit/WebAuthnProcess/WebAuthnProcess.cpp: Removed.
  • Source/WebKit/WebAuthnProcess/WebAuthnProcess.h: Removed.
  • Source/WebKit/WebAuthnProcess/WebAuthnProcess.messages.in: Removed.
  • Source/WebKit/WebAuthnProcess/WebAuthnProcessCreationParameters.cpp: Removed.
  • Source/WebKit/WebAuthnProcess/WebAuthnProcessCreationParameters.h: Removed.
  • Source/WebKit/WebAuthnProcess/ios/WebAuthnProcessIOS.mm: Removed.
  • Source/WebKit/WebAuthnProcess/mac/WebAuthnProcessMac.mm: Removed.
  • Source/WebKit/WebAuthnProcess/mac/com.apple.WebKit.WebAuthnProcess.sb.in: Removed.
  • Source/WebKit/WebKit.xcodeproj/project.pbxproj:
  • Source/WebKit/WebProcess/WebAuthentication/WebAuthenticatorCoordinator.cpp:

(WebKit::WebAuthenticatorCoordinator::makeCredential):
(WebKit::WebAuthenticatorCoordinator::getAssertion):
(WebKit::WebAuthenticatorCoordinator::isUserVerifyingPlatformAuthenticatorAvailable):

  • Source/WebKit/WebProcess/WebAuthentication/WebAuthnProcessConnection.cpp: Removed.
  • Source/WebKit/WebProcess/WebAuthentication/WebAuthnProcessConnection.h: Removed.
  • Source/WebKit/WebProcess/WebAuthentication/WebAuthnProcessConnection.messages.in: Removed.
  • Source/WebKit/WebProcess/WebAuthentication/WebAuthnProcessConnectionInfo.h: Removed.
  • Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::setMockWebAuthenticationConfiguration):

  • Source/WebKit/WebProcess/WebProcess.cpp:

(WebKit::getWebAuthnProcessConnection): Deleted.
(WebKit::WebProcess::ensureWebAuthnProcessConnection): Deleted.
(WebKit::WebProcess::webAuthnProcessConnectionClosed): Deleted.

  • Source/WebKit/WebProcess/WebProcess.h:

(WebKit::WebProcess::existingWebAuthnProcessConnection): Deleted.

  • Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml:
  • Source/WebCore/page/RuntimeEnabledFeatures.h:

(WebCore::RuntimeEnabledFeatures::setWebAuthenticationModernEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::webAuthenticationModernEnabled const): Deleted.

  • Source/WebCore/platform/RuntimeApplicationChecks.cpp:

(WebCore::processTypeDescription):

  • Source/WebCore/platform/RuntimeApplicationChecks.h:

Canonical link: https://commits.webkit.org/250715@main

2:57 PM Changeset in webkit [294437] by basuke.suzuki@sony.com
  • 1 edit in trunk/Source/WebCore/editing/libwpe/EditorLibWPE.cpp

[LibWPE] Fix build failure when enabling LAYOUT_FORMATTING_CONTEXT
https://bugs.webkit.org/show_bug.cgi?id=240602

Unreviewed, fix libwpe build with the flag after r294399

  • editing/libwpe/EditorLibWPE.cpp:

Canonical link: https://commits.webkit.org/250715@main

2:57 PM Changeset in webkit [294436] by Alan Coon
  • 1 copy in tags/WebKit-7614.1.14.1.4

Tag WebKit-7614.1.14.1.4.

2:47 PM Changeset in webkit [294435] by Alan Coon
  • 1 copy in tags/WebKit-7614.1.14.0.4

Tag WebKit-7614.1.14.0.4.

2:28 PM Changeset in webkit [294434] by J Pascoe
  • 1 edit in trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm

REGRESSION (442fcb1ea6f?): TestWebKitAPI.WebAuthenticationPanel.ExportImportDuplicateCredential is failing
https://bugs.webkit.org/show_bug.cgi?id=240534
rdar://93267243

Reviewed by Brent Fulgham.

The default for a flag relevant to syncing has changed in test infrastructure. This change fixes this test
by using the sync=1 flag as set by default when importing credentials.

  • Tools/TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:

(TestWebKitAPI::TEST):

Canonical link: https://commits.webkit.org/250713@main

2:27 PM Changeset in webkit [294433] by ysuzuki@apple.com
  • 1 edit in trunk/Source/JavaScriptCore/assembler/SecureARM64EHashPinsInlines.h

Unreviewed, build fix after r294429
https://bugs.webkit.org/show_bug.cgi?id=240587

  • Source/JavaScriptCore/assembler/SecureARM64EHashPinsInlines.h:

(JSC::SecureARM64EHashPins::forEachPage):

Canonical link: https://commits.webkit.org/250713@main

2:19 PM Changeset in webkit [294432] by Russell Epstein
  • 9 edits in branches/safari-7614.1.11.9-branch/Source

Versioning.

WebKit-7614.1.11.9.1

2:05 PM Changeset in webkit [294431] by Chris Dumez
  • 5 edits in trunk/Source/WebCore

Drop unnecessary EventTarget::isFiringEventListeners()
https://bugs.webkit.org/show_bug.cgi?id=240578

Reviewed by Geoffrey Garen.

Drop unnecessary EventTarget::isFiringEventListeners() flag. This flag was checked by
our GC logic to avoid collecting wrappers while they are firing events. However, those
checks are in hot code paths and it should be up to the code dispatching the event
to keep the wrapper alive, either via ActiveDOMObject or GCReachableRef.

  • Source/WebCore/bindings/js/JSAbortSignalCustom.cpp:

(WebCore::JSAbortSignalOwner::isReachableFromOpaqueRoots):

  • Source/WebCore/bindings/js/JSNodeCustom.cpp:

(WebCore::JSNodeOwner::isReachableFromOpaqueRoots):

  • Source/WebCore/bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):

  • Source/WebCore/dom/EventTarget.cpp:

(WebCore::EventTarget::fireEventListeners):

  • Source/WebCore/dom/EventTarget.h:

(WebCore::EventTarget::isFiringEventListeners const): Deleted.

Canonical link: https://commits.webkit.org/250712@main

2:04 PM Changeset in webkit [294430] by Russell Epstein
  • 1 copy in branches/safari-7614.1.11.9-branch

New branch.

1:43 PM Changeset in webkit [294429] by mark.lam@apple.com
  • 1 edit in trunk/Source/JavaScriptCore/assembler/SecureARM64EHashPinsInlines.h

Small clean ups in SecureARM64EHashPins.
https://bugs.webkit.org/show_bug.cgi?id=240587

Reviewed by Yusuke Suzuki.

  1. In SecureARM64EHashPins::keyForCurrentThread(), there's no need to add 1 to the value retrieve from TPIDRRO_EL0. TPIDRRO_EL0 is a pointer to valid memory and can never be 0. Also, we already code in multiple other places where we expect to load from it without a null check.
  1. SecureARM64EHashPins::forEachPage() should use a do-while loop instead of a for loop. This is because we are guaranteed to at least have 1 page at start up if the JIT is enabled. If the JIT is not enabled, this code will never be called.
  • Source/JavaScriptCore/assembler/SecureARM64EHashPinsInlines.h:

(JSC::SecureARM64EHashPins::keyForCurrentThread):
(JSC::SecureARM64EHashPins::forEachPage):

Canonical link: https://commits.webkit.org/250711@main

1:39 PM Changeset in webkit [294428] by pvollan@apple.com
  • 5 edits in trunk/Source/WebKit/UIProcess

Audit token for font sandbox extension is sometimes wrong
https://bugs.webkit.org/show_bug.cgi?id=240547

Reviewed by Chris Dumez.

Audit token for font sandbox extension is sometimes wrong. We must get the audit token from the correct WebProcessProxy.

(WebKit::WebPageProxy::switchFromStaticFontRegistryToUserFontRegistry):
(WebKit::WebPageProxy::fontdMachExtensionHandle): Deleted.

  • Source/WebKit/UIProcess/Cocoa/WebProcessProxyCocoa.mm:

(WebKit::WebProcessProxy::fontdMachExtensionHandle):

  • Source/WebKit/UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::creationParameters):

  • Source/WebKit/UIProcess/WebPageProxy.h:
  • Source/WebKit/UIProcess/WebProcessProxy.h:

Canonical link: https://commits.webkit.org/250710@main

1:01 PM Changeset in webkit [294427] by Devin Rousso
  • 6 edits in trunk

Feature Request: Regular Expression Groups in Request Override Redirects
https://bugs.webkit.org/show_bug.cgi?id=240477
<rdar://problem/73779368>

Reviewed by Patrick Angle.

This allows developers to create generic "catch all" request local overrides that can redirect
multiple URLs with a single local override (e.g. https://example.org/(.*) -> localhost/$1).

  • Source/WebInspectorUI/UserInterface/Models/LocalResourceOverride.js:

(WI.LocalResourceOverride):
(WI.LocalResourceOverride.prototype.generateRequestRedirectURL): Added.
(WI.LocalResourceOverride.prototype.matches):
(WI.LocalResourceOverride.prototype.get _urlRegex): Added.
Instead of directly using the URL of the WI.LocalResource as the redirect URL, derive it based on
the regex created to check if the WI.LocalResourceOverride matches the original request.

  • Source/WebInspectorUI/UserInterface/Models/Resource.js:

(WI.Resource.prototype.async createLocalResourceOverride):

  • Source/WebInspectorUI/UserInterface/Controllers/NetworkManager.js:

(WI.NetworkManager.prototype.async requestIntercepted):
(WI.NetworkManager.prototype.async responseIntercepted):

  • Source/WebInspectorUI/UserInterface/Views/LocalResourceOverridePopover.js:

(WI.LocalResourceOverridePopover.prototype.get serializedData):
Drive-by: Move WI.urlWithoutFragment to WI.LocalResourceOverride so that every callsite doesn't

have to decide/remember to use it.

  • LayoutTests/http/tests/inspector/network/intercept-request-properties.html:
  • LayoutTests/http/tests/inspector/network/intercept-request-properties-expected.txt:

Canonical link: https://commits.webkit.org/250709@main

12:48 PM Changeset in webkit [294426] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore/rendering

Unreviewed, fix build after 250680@main (again)

Patch by Michael Catanzaro <mcatanzaro@redhat.com> on 2022-05-18
https://bugs.webkit.org/show_bug.cgi?id=240416

  • Source/WebCore/rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintMaskForTextFillBox):

  • Source/WebCore/rendering/TextBoxPainter.cpp:

(WebCore::TextBoxPainter<TextBoxPath>::debugTextShadow const):

Canonical link: https://commits.webkit.org/250708@main

12:39 PM Changeset in webkit [294425] by Brent Fulgham
  • 3 edits in trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa

REGRESSION (r294272): TestWebKitAPI Failures after compile guard change
https://bugs.webkit.org/show_bug.cgi?id=240530

Reviewed by Youenn Fablet.

  • Tools/TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
  • Tools/TestWebKitAPI/Tests/WebKitCocoa/PushAPI.mm:
  • Tools/TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm:

Canonical link: https://commits.webkit.org/250707@main

12:34 PM Changeset in webkit [294424] by Alan Coon
  • 2 edits in branches/safari-7614.1.14.0-branch/Source/bmalloc

Cherry-pick r293952. rdar://problem/92916514

Force PAS_ASSERT to generate different crash sites for each assertion.
https://bugs.webkit.org/show_bug.cgi?id=240209

Reviewed by Yusuke Suzuki.

Clang currently optimizes all crash sites into one in each function. Hence, if we
get a crash address at the 1 crash site, we don't know which failed assertion got
us there. This patch uses an asm statement to force Clang to emit a different
crash site for each assertion.

Benchmarks show that performance is neutral on both Jetstream2 and Speedometer2.

Size-wise, there is some increase. The following is the "size" output on
JavaScriptCore on M1:

TEXT. DATA OBJC others dec hex

old 19628032 180224 0 18792448 38600704 24d0000
new 19644416 180224 0 19251200 39075840 2544000

diff 16384 0 0 458752 475136

The increase in the "others" categories are mostly in the String Table, Symbol
Table, and Function Start Addresses. These take up disk space but should not
impact RAM usage unless they are accessed by a a debugger.

  • libpas/src/libpas/pas_utils.h: (pas_assertion_failed):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@293952 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12:21 PM Changeset in webkit [294423] by Antti Koivisto
  • 7 edits in trunk

Invalidation fails if the mutated elements subtree has been marked invalid
https://bugs.webkit.org/show_bug.cgi?id=240581

Reviewed by Alan Bujtas.

:has() can affect elements outside the subtree so we can't use this optimization if it is present.

  • LayoutTests/imported/w3c/web-platform-tests/css/selectors/invalidation/has-in-adjacent-position-expected.txt:
  • LayoutTests/imported/w3c/web-platform-tests/css/selectors/invalidation/has-in-ancestor-position-expected.txt:
  • LayoutTests/imported/w3c/web-platform-tests/css/selectors/invalidation/has-in-parent-position-expected.txt:
  • LayoutTests/imported/w3c/web-platform-tests/css/selectors/invalidation/has-in-sibling-position-expected.txt:
  • Source/WebCore/dom/Element.cpp:

(WebCore::Element::needsStyleInvalidation const):

Don't skip invalidation for a locally invalid subtree if :has() is present.
Add a new check for document element subtree being invalid (this covers some of the same cases and works with :has()).

  • Source/WebCore/style/StyleScope.cpp:

(WebCore::Style::Scope::forNode):

Add const version.

  • Source/WebCore/style/StyleScope.h:

Canonical link: https://commits.webkit.org/250706@main

12:19 PM Changeset in webkit [294422] by Alan Coon
  • 9 edits in branches/safari-7614.1.14.0-branch/Source

Versioning.

WebKit-7614.1.14.0.4

12:19 PM Changeset in webkit [294421] by Alan Coon
  • 1 copy in tags/WebKit-7614.1.14.3.1

Tag WebKit-7614.1.14.3.1.

12:15 PM Changeset in webkit [294420] by Alan Coon
  • 2 edits in branches/safari-7614.1.14.3-branch/Source/bmalloc

Cherry-pick r293952. rdar://problem/92916514

Force PAS_ASSERT to generate different crash sites for each assertion.
https://bugs.webkit.org/show_bug.cgi?id=240209

Reviewed by Yusuke Suzuki.

Clang currently optimizes all crash sites into one in each function. Hence, if we
get a crash address at the 1 crash site, we don't know which failed assertion got
us there. This patch uses an asm statement to force Clang to emit a different
crash site for each assertion.

Benchmarks show that performance is neutral on both Jetstream2 and Speedometer2.

Size-wise, there is some increase. The following is the "size" output on
JavaScriptCore on M1:

TEXT. DATA OBJC others dec hex

old 19628032 180224 0 18792448 38600704 24d0000
new 19644416 180224 0 19251200 39075840 2544000

diff 16384 0 0 458752 475136

The increase in the "others" categories are mostly in the String Table, Symbol
Table, and Function Start Addresses. These take up disk space but should not
impact RAM usage unless they are accessed by a a debugger.

  • libpas/src/libpas/pas_utils.h: (pas_assertion_failed):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@293952 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12:13 PM Changeset in webkit [294419] by Alan Coon
  • 9 edits in branches/safari-7614.1.14.3-branch/Source

Versioning.

WebKit-7614.1.14.3.1

12:12 PM Changeset in webkit [294418] by Alan Coon
  • 1 copy in tags/WebKit-7614.1.14.2.1

Tag WebKit-7614.1.14.2.1.

12:11 PM Changeset in webkit [294417] by Alan Coon
  • 2 edits in branches/safari-7614.1.14.2-branch/Source/bmalloc

Cherry-pick r293952. rdar://problem/92916514

Force PAS_ASSERT to generate different crash sites for each assertion.
https://bugs.webkit.org/show_bug.cgi?id=240209

Reviewed by Yusuke Suzuki.

Clang currently optimizes all crash sites into one in each function. Hence, if we
get a crash address at the 1 crash site, we don't know which failed assertion got
us there. This patch uses an asm statement to force Clang to emit a different
crash site for each assertion.

Benchmarks show that performance is neutral on both Jetstream2 and Speedometer2.

Size-wise, there is some increase. The following is the "size" output on
JavaScriptCore on M1:

TEXT. DATA OBJC others dec hex

old 19628032 180224 0 18792448 38600704 24d0000
new 19644416 180224 0 19251200 39075840 2544000

diff 16384 0 0 458752 475136

The increase in the "others" categories are mostly in the String Table, Symbol
Table, and Function Start Addresses. These take up disk space but should not
impact RAM usage unless they are accessed by a a debugger.

  • libpas/src/libpas/pas_utils.h: (pas_assertion_failed):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@293952 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12:07 PM Changeset in webkit [294416] by Alan Coon
  • 9 edits in branches/safari-7614.1.14.2-branch/Source

Versioning.

WebKit-7614.1.14.2.1

11:57 AM Changeset in webkit [294415] by Alan Coon
  • 2 edits in branches/safari-7614.1.14.1-branch/Source/bmalloc

Cherry-pick r293952. rdar://problem/92916514

Force PAS_ASSERT to generate different crash sites for each assertion.
https://bugs.webkit.org/show_bug.cgi?id=240209

Reviewed by Yusuke Suzuki.

Clang currently optimizes all crash sites into one in each function. Hence, if we
get a crash address at the 1 crash site, we don't know which failed assertion got
us there. This patch uses an asm statement to force Clang to emit a different
crash site for each assertion.

Benchmarks show that performance is neutral on both Jetstream2 and Speedometer2.

Size-wise, there is some increase. The following is the "size" output on
JavaScriptCore on M1:

TEXT. DATA OBJC others dec hex

old 19628032 180224 0 18792448 38600704 24d0000
new 19644416 180224 0 19251200 39075840 2544000

diff 16384 0 0 458752 475136

The increase in the "others" categories are mostly in the String Table, Symbol
Table, and Function Start Addresses. These take up disk space but should not
impact RAM usage unless they are accessed by a a debugger.

  • libpas/src/libpas/pas_utils.h: (pas_assertion_failed):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@293952 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11:51 AM Changeset in webkit [294414] by Alan Coon
  • 9 edits in branches/safari-7614.1.14.1-branch/Source

Versioning.

WebKit-7614.1.14.1.4

11:40 AM Changeset in webkit [294413] by achristensen@apple.com
  • 2 edits
    15 adds in trunk

REGRESSION (STP): WebSocket.bufferedAmount does not get updated in some cases
https://bugs.webkit.org/show_bug.cgi?id=240311

Reviewed by Youenn Fablet.

This reverts the functional part of r290995 for OSes what don't have an NSURLSession WebSocket implementation we can use.
The rest of r290995 was just moving UTF-8 encoding to a different location in the pipeline, which has no observable behavior change.

It is unfortunate, but our old implementation of WebSockets that uses CFWriteStreamWrite thinks it has written immediately,
so if I make SocketStreamHandleImpl::platformSend call m_client.didUpdateBufferedAmount even when bytesWritten >= length,
I don't have the bufferent amount updated synchronously like Chrome, Firefox, and the NSURLSession-based implementation have.
If I leave it as it is now, the buffered amount never goes back down to zero sometimes after writing to the stream.

It was broken before, it is differently broken now, and this restores the status quo on Big Sur. This is why we can't have nice things.

  • Modules/websockets/WebSocket.cpp:

(WebCore::WebSocket::send):

Canonical link: https://commits.webkit.org/250705@main

11:37 AM Changeset in webkit [294412] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore/layout/formattingContexts/flex

Move visual/logical code to dedicated functions
https://bugs.webkit.org/show_bug.cgi?id=240560

Reviewed by Antti Koivisto.

This is in preparation for adding more pre/post core layout logic.

  • Source/WebCore/layout/formattingContexts/flex/FlexFormattingContext.cpp:

(WebCore::Layout::FlexFormattingContext::convertFlexItemsToLogicalSpace):
(WebCore::Layout::FlexFormattingContext::setFlexItemsGeometry):
(WebCore::Layout::FlexFormattingContext::layoutInFlowContentForIntegration):
(): Deleted.

  • Source/WebCore/layout/formattingContexts/flex/FlexFormattingContext.h:

Canonical link: https://commits.webkit.org/250704@main

11:33 AM Changeset in webkit [294411] by msaboff@apple.com
  • 3 edits in trunk

WTF::CrashOnOverflow::crash() with /((a{100000000})*b{2100000000})+/.test();
https://bugs.webkit.org/show_bug.cgi?id=240552

Reviewed by Yusuke Suzuki and Alex Christensen.

Replaced a crashing checked add in the YARR JIT code generator with a reporting add so we can
catch the overflow. When we do overflow, we terminate the JIT genration with an error.
We'll fallback to the YARR interpreter, which already exits with an error on a similar overflow.

  • JSTests/stress/regexp-large-quantifier.js:

(testRegExp):

  • Source/JavaScriptCore/yarr/YarrJIT.cpp:

(JSC::Yarr::dumpCompileFailure):

  • Source/JavaScriptCore/yarr/YarrJIT.h:

Canonical link: https://commits.webkit.org/250703@main

11:17 AM Changeset in webkit [294410] by Alan Coon
  • 1 copy in tags/WebKit-7614.1.14.100.2

Tag WebKit-7614.1.14.100.2.

11:13 AM Changeset in webkit [294409] by Alan Coon
  • 9 edits in branches/safari-7614.1.14.100-branch/Source

Versioning.

WebKit-7614.1.14.100.2

11:12 AM Changeset in webkit [294408] by Nikos Mouchtaris
  • 1 edit in trunk/metadata/contributors.json

Add nmoucht to contributors.json
https://bugs.webkit.org/show_bug.cgi?id=240588

Reviewed by Tim Nguyen.

  • metadata/contributors.json:

Canonical link: https://commits.webkit.org/250702@main

11:07 AM Changeset in webkit [294407] by Jonathan Bedard
  • 1 edit in trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy/remote/git_hub.py

[git-webkit] Support non-members updating PRs
https://bugs.webkit.org/show_bug.cgi?id=240550
<rdar://93460889>

Reviewed by Brent Fulgham.

  • Tools/Scripts/libraries/webkitscmpy/webkitscmpy/remote/git_hub.py:

(GitHub.PRGenerator.update):

Canonical link: https://commits.webkit.org/250701@main

10:59 AM Changeset in webkit [294406] by Jenner@apple.com
  • 2 edits in trunk/LayoutTests/platform

[ Gardening ] REGRESSION(r294272): [ iOS ] Four http/tests/workers/service/shownotification tests are a consistent failures
https://bugs.webkit.org/show_bug.cgi?id=240579

Unreviewed test gardening.

  • LayoutTests/platform/ios-wk2/TestExpectations:
  • LayoutTests/platform/ios/TestExpectations:

Canonical link: https://commits.webkit.org/250700@main

10:51 AM Changeset in webkit [294405] by sihui_liu@apple.com
  • 8 edits
    2 adds in trunk/Source/WebKit

Monitor process state and send prepareToSuspend based on that
https://bugs.webkit.org/show_bug.cgi?id=240359

Reviewed by Chris Dumez.

Currently UI process sends PrepareToSuspend when a process has no activity that needs an assertion, or when
assertion will be invalidated due to timeout (when assertionWillInvalidate is called). On receiving PrepareToSuspend,
process will perform necessary actions, such as suspending storage threads for network process. According to crashes in
rdar://problem/92228190, the message is not received by process before suspension, or process gets suspended while
processing the message. To fix the crash, we need to ensure the message gets processed before process suspension.

This patch introduces ProcessStateMonitor that tracks when UI process will be suspended, and notifies WebProcessPools
when remaining running time is less than 15s. On receiving the notification, ProcessThrottlers of web processes will
invalidate activities and send out PrepareToSuspend messages to web processes. These processes are not allowed to take
new background assertion until ProcessStateMonitor finds process becomes running without timeout, or ProcessStateMonitor
is destroyed. ProcessStateMonitor is created when UI process enters background, and destroyed when UI process enters
foreground, to avoid getting receiving too many unnecessary updates from runningboardd.

  • Source/WebKit/Platform/spi/ios/RunningBoardServicesSPI.h:

(+[RBSProcessPredicate predicateMatchingHandle:]):

  • Source/WebKit/SourcesCocoa.txt:
  • Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm:

(WebKit::WebProcessPool::setProcessesShouldSuspend):

  • Source/WebKit/UIProcess/ProcessThrottler.cpp:

(WebKit::ProcessThrottler::addActivity):
(WebKit::ProcessThrottler::setAllowsActivities):

  • Source/WebKit/UIProcess/ProcessThrottler.h:

(WebKit::ProcessThrottler::Activity::Activity):
(WebKit::ProcessThrottler::Activity::name const):
(WebKit::ProcessThrottler::Activity::isQuietActivity const):

  • Source/WebKit/UIProcess/WebProcessPool.h:
  • Source/WebKit/UIProcess/ios/ProcessAssertionIOS.mm:

(-[WKProcessAssertionBackgroundTaskManager init]):
(-[WKProcessAssertionBackgroundTaskManager _releaseBackgroundTask]):

  • Source/WebKit/UIProcess/ios/ProcessStateMonitor.h: Added.
  • Source/WebKit/UIProcess/ios/ProcessStateMonitor.mm: Added.

(WebKit::ProcessStateMonitor::ProcessStateMonitor):
(WebKit::ProcessStateMonitor::~ProcessStateMonitor):
(WebKit::ProcessStateMonitor::processDidBecomeRunning):
(WebKit::ProcessStateMonitor::processWillBeSuspended):
(WebKit::ProcessStateMonitor::processWillBeSuspendedImmediately):
(WebKit::ProcessStateMonitor::suspendTimerFired):
(WebKit::ProcessStateMonitor::checkRemainingRunTime):

  • Source/WebKit/WebKit.xcodeproj/project.pbxproj:

Canonical link: https://commits.webkit.org/250699@main

10:28 AM Changeset in webkit [294404] by Alan Bujtas
  • 1 edit in trunk/metadata/contributors.json

Add github account to contributors.json
https://bugs.webkit.org/show_bug.cgi?id=240583

Reviewed by Antti Koivisto.

  • metadata/contributors.json:

Canonical link: https://commits.webkit.org/250698@main

10:26 AM Changeset in webkit [294403] by Jonathan Bedard
  • 2 edits in trunk/Tools/CISupport/ews-build

[Commit-Queue] Forbid ChangeLog modification (Follow-up)
https://bugs.webkit.org/show_bug.cgi?id=240461
<rdar://93351783>

Reviewed by Alexey Proskuryakov.

  • Tools/CISupport/ews-build/steps.py:

(CleanGitRepo.run): Abort any in progress git am commands.

  • Tools/CISupport/ews-build/steps_unittest.py:

Canonical link: https://commits.webkit.org/250697@main

10:01 AM Changeset in webkit [294402] by commit-queue@webkit.org
  • 1 edit in trunk/Source/WebKit/Shared/AuxiliaryProcess.h

Fix comment about termination in AuxiliaryProcess
https://bugs.webkit.org/show_bug.cgi?id=240580

Patch by Olivier Blin <Olivier Blin> on 2022-05-18
Reviewed by Chris Dumez.

enableTermination is the one needed to re-enable process termination.
Typo present from initial introduction in r83767.

  • Shared/AuxiliaryProcess.h:

Canonical link: https://commits.webkit.org/250696@main

9:58 AM Changeset in webkit [294401] by Brent Fulgham
  • 1 edit in trunk/metadata/contributors.json

Update contributors.json with GitHub account
https://bugs.webkit.org/show_bug.cgi?id=240584

Reviewed by Tim Nguyen.

Add my GitHub account to the contributors.json file.

  • metadata/contributors.json:

Canonical link: https://commits.webkit.org/250695@main

9:55 AM Changeset in webkit [294400] by Karl Rackler
  • 1 edit in trunk/LayoutTests/platform/ios/TestExpectations

[Gardening]: REGRESSION(r294272): [ iOS ] Four http/tests/workers/service/shownotification tests are a consistent failure
https://bugs.webkit.org/show_bug.cgi?id=240579

Unreviewed test gardening.

  • LayoutTests/platform/ios/TestExpectations:

Canonical link: https://commits.webkit.org/250694@main

9:00 AM Changeset in webkit [294399] by Chris Dumez
  • 57 edits
    1 copy in trunk/Source

Inline FrameDestructionObserver::frame()
https://bugs.webkit.org/show_bug.cgi?id=240506

Reviewed by Ryosuke Niwa.

Inline FrameDestructionObserver::frame() and it is a trivial getter and it shows on Speedometer
profiles.

  • Source/WebKit/Shared/WebsitePoliciesData.cpp:
  • Source/WebKit/WebProcess/MediaStream/UserMediaPermissionRequestManager.cpp:
  • Source/WebKit/WebProcess/Network/WebLoaderStrategy.cpp:
  • Source/WebKit/WebProcess/WebCoreSupport/WebResourceLoadObserver.cpp:
  • Source/WebKitLegacy/mac/DOM/DOMInternal.mm:
  • Source/WebKitLegacy/mac/WebView/WebDocumentLoaderMac.mm:
  • Source/WebCore/Modules/applepay/PaymentSession.cpp:
  • Source/WebCore/Modules/beacon/NavigatorBeacon.cpp:
  • Source/WebCore/Modules/indexeddb/IDBFactory.cpp:
  • Source/WebCore/Modules/mediastream/MediaDevices.cpp:
  • Source/WebCore/Modules/mediastream/RTCPeerConnection.cpp:
  • Source/WebCore/Modules/model-element/HTMLModelElement.cpp:
  • Source/WebCore/Modules/notifications/Notification.cpp:
  • Source/WebCore/Modules/paymentrequest/PaymentRequest.cpp:
  • Source/WebCore/Modules/permissions/PermissionStatus.cpp:
  • Source/WebCore/Modules/speech/SpeechRecognition.cpp:
  • Source/WebCore/Modules/speech/SpeechSynthesis.cpp:
  • Source/WebCore/Modules/webauthn/AuthenticatorCoordinator.cpp:
  • Source/WebCore/Modules/websockets/WebSocket.cpp:
  • Source/WebCore/Modules/websockets/WebSocketChannel.cpp:
  • Source/WebCore/Modules/websockets/WorkerThreadableWebSocketChannel.cpp:
  • Source/WebCore/WebCore.xcodeproj/project.pbxproj:
  • Source/WebCore/css/FontFaceSet.cpp:
  • Source/WebCore/dom/DataTransfer.cpp:
  • Source/WebCore/dom/DataTransferMac.mm:
  • Source/WebCore/dom/Document.h:

(WebCore::Document::hasBrowsingContext const): Deleted.

  • Source/WebCore/dom/DocumentInlines.h:

(WebCore::Document::hasBrowsingContext const):

  • Source/WebCore/dom/FullscreenManager.h:
  • Source/WebCore/dom/ViewportArguments.cpp:
  • Source/WebCore/html/HTMLMediaElement.cpp:
  • Source/WebCore/html/parser/HTMLConstructionSite.cpp:
  • Source/WebCore/inspector/InspectorAuditResourcesObject.cpp:
  • Source/WebCore/inspector/agents/page/PageNetworkAgent.cpp:
  • Source/WebCore/loader/ApplicationManifestLoader.cpp:
  • Source/WebCore/loader/ResourceLoader.cpp:
  • Source/WebCore/page/FrameDestructionObserver.cpp:

(WebCore::FrameDestructionObserver::frame const): Deleted.

  • Source/WebCore/page/FrameDestructionObserver.h:
  • Source/WebCore/page/FrameDestructionObserverInlines.h: Copied from Source/WebCore/page/FrameDestructionObserver.h.

(WebCore::FrameDestructionObserver::frame const):

  • Source/WebCore/page/UserMessageHandlersNamespace.cpp:
  • Source/WebCore/rendering/RenderObject.h:
  • Source/WebCore/style/StyleBuilderConverter.h:
  • Source/WebCore/testing/js/WebCoreTestSupport.cpp:
  • Source/WebCore/workers/service/ServiceWorkerClientData.cpp:
  • Source/WebCore/xml/XMLTreeViewer.cpp:
  • Source/WebCore/xml/parser/XMLDocumentParserLibxml2.cpp:

Canonical link: https://commits.webkit.org/250693@main

8:49 AM Changeset in webkit [294398] by Karl Rackler
  • 1 edit in trunk/LayoutTests/platform/ios/TestExpectations

REGRESSION (r294272): [ iOS ] Four http/tests/workers/service/shownotification tests are a consistent failure
https://bugs.webkit.org/show_bug.cgi?id=240579

Unreviewed test gardening.

  • LayoutTests/platform/ios/TestExpectations:

Canonical link: https://commits.webkit.org/250692@main

8:45 AM Changeset in webkit [294397] by pvollan@apple.com
  • 15 edits in trunk/Source

Add WebKit API to turn off the URL scheme check when linkifying through Data Detectors
https://bugs.webkit.org/show_bug.cgi?id=239900
<rdar://92026172>

Reviewed by Geoffrey Garen.

This will enable us to block the Mach service com.apple.lsd.open in the WebContent process for all clients.
The URL scheme check is disabled by default for all clients that are not Web browsers. This choice was made
because we know that com.apple.lsd.open can be blocked for Web browsers without disabling the check, since
we already have blocked it there for quite some time without observing any issues. We also have a couple of
examples of other apps, which are not Mail clients, that would need this to be the default behavior.

  • Source/WebCore/PAL/pal/cocoa/DataDetectorsCoreSoftLink.h:
  • Source/WebCore/PAL/pal/cocoa/DataDetectorsCoreSoftLink.mm:
  • Source/WebCore/PAL/pal/spi/cocoa/DataDetectorsCoreSPI.h:
  • Source/WebKit/Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in:
  • Source/WebKit/Shared/WebProcessCreationParameters.cpp:

(WebKit::WebProcessCreationParameters::encode const):
(WebKit::WebProcessCreationParameters::decode):

  • Source/WebKit/Shared/WebProcessCreationParameters.h:
  • Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _disableURLSchemeCheckInDataDetectors]):

  • Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivate.h:
  • Source/WebKit/UIProcess/Cocoa/WebPageProxyCocoa.mm:

(WebKit::WebPageProxy::disableURLSchemeCheckInDataDetectors const):

  • Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm:

(WebKit::WebProcessPool::platformInitializeWebProcess):
(WebKit::nonBrowserServices): Deleted.

  • Source/WebKit/UIProcess/WebPageProxy.h:
  • Source/WebKit/WebProcess/WebProcess.h:
  • Source/WebKit/WebProcess/WebProcess.messages.in:
  • Source/WebKit/WebProcess/cocoa/WebProcessCocoa.mm:

(WebKit::WebProcess::platformInitializeWebProcess):
(WebKit::WebProcess::disableURLSchemeCheckInDataDetectors const):

  • Source/WTF/wtf/PlatformHave.h:

Canonical link: https://commits.webkit.org/250691@main

7:55 AM Changeset in webkit [294396] by Karl Rackler
  • 1 edit in trunk/LayoutTests/platform/ios/fast/css/continuationCrash-expected.txt

[Gardening]: Rebaseline-[ iOS ] fast/css/continuationCrash.html is a consistent failure
https://bugs.webkit.org/show_bug.cgi?id=240069

Unreviewed test gardening.

  • LayoutTests/platform/ios/fast/css/continuationCrash-expected.txt:

Canonical link: https://commits.webkit.org/250690@main

6:48 AM Changeset in webkit [294395] by commit-queue@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore/wasm

[WASM-GC] Rtt types are represented as 64-bit values

Patch by Geza Lore <Geza Lore> on 2022-05-18
https://bugs.webkit.org/show_bug.cgi?id=239493

Reviewed by Yusuke Suzuki.

Rtt types are 64-bit reference-like values, so represent them as
B3::Int64.

  • wasm/WasmAirIRGenerator.cpp:

(JSC::Wasm::AirIRGenerator::gRtt):
(JSC::Wasm::AirIRGenerator::tmpForType):
(JSC::Wasm::AirIRGenerator::addRttCanon):

  • wasm/WasmB3IRGenerator.cpp:

(JSC::Wasm::B3IRGenerator::addRttCanon):

  • wasm/wasm.json:

# Please populate the above commit message. Lines starting
# with '#' will be ignored

# On branch eng/WASM-GC-Introduce-rtt-types
# Changes to be committed:
# (use "git restore --staged <file>..." to unstage)
# modified: Source/JavaScriptCore/ChangeLog
#
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
# .clion.source.upload.marker
# clion-remote-release/
#

Canonical link: https://commits.webkit.org/250689@main

6:10 AM Changeset in webkit [294394] by commit-queue@webkit.org
  • 1 edit in trunk/Source/WebCore/platform/mediastream/mac/CoreAudioSharedUnit.cpp

CoreAudioSharedInternalUnit::set should pass the value pointer directly
https://bugs.webkit.org/show_bug.cgi?id=240565
rdar://93364609

Patch by Youenn Fablet <youennf@gmail.com> on 2022-05-18
Reviewed by Eric Carlson.

Manually tested by verifying that https://webrtc.github.io/samples/src/content/getusermedia/audio/ can play the microphone stream

  • Source/WebCore/platform/mediastream/mac/CoreAudioSharedUnit.cpp:

(WebCore::CoreAudioSharedInternalUnit::set):
Pass the pointer to the audio unit and not the pointer's address.

Canonical link: https://commits.webkit.org/250688@main

6:06 AM WebKitGTK/2.36.x edited by Adrian Perez de Castro
(diff)
6:05 AM Changeset in webkit [294393] by Adrian Perez de Castro
  • 3 edits in releases/WebKitGTK/webkit-2.36/Source/ThirdParty/ANGLE

Merge r292765 - [GTK][WPE] Build ANGLE with the EGL_NO_PLATFORM_SPECIFIC_TYPES define
https://bugs.webkit.org/show_bug.cgi?id=239039

Reviewed by Adrian Perez de Castro.

Specify the EGL_NO_PLATFORM_SPECIFIC_TYPES define when building ANGLE
subproject for the GTK and WPE ports. This should avoid searching for
platform-specific headers that might not be available at all during
build, e.g. the X11 headers which are used by default on UNIX platforms.

  • PlatformGTK.cmake:
  • PlatformWPE.cmake:
5:59 AM Changeset in webkit [294392] by graouts@webkit.org
  • 1 edit
    12 adds in trunk

[web-animations] ensure that animations using offset properties correctly run on a composited layer
https://bugs.webkit.org/show_bug.cgi?id=236709
<rdar://problem/89029756>

Reviewed by Dean Jackson.

Add all the CSS properties related to the CSS Motion Path feature to
RenderLayerCompositor::requiresCompositingForAnimation() in order to
ensure that an element's renderer is composited when one of those
properties is animated.

Tests: webanimations/offset-anchor-animation-yields-compositing.html

webanimations/offset-distance-animation-yields-compositing.html
webanimations/offset-path-animation-yields-compositing.html
webanimations/offset-position-animation-yields-compositing.html
webanimations/offset-rotate-animation-yields-compositing.html
webanimations/offset-shorthand-animation-yields-compositing.html

  • Source/WebCore/rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::requiresCompositingForAnimation const):

  • LayoutTests/webanimations/offset-anchor-animation-yields-compositing-expected.txt: Added.
  • LayoutTests/webanimations/offset-anchor-animation-yields-compositing.html: Added.
  • LayoutTests/webanimations/offset-distance-animation-yields-compositing-expected.txt: Added.
  • LayoutTests/webanimations/offset-distance-animation-yields-compositing.html: Added.
  • LayoutTests/webanimations/offset-path-animation-yields-compositing-expected.txt: Added.
  • LayoutTests/webanimations/offset-path-animation-yields-compositing.html: Added.
  • LayoutTests/webanimations/offset-position-animation-yields-compositing-expected.txt: Added.
  • LayoutTests/webanimations/offset-position-animation-yields-compositing.html: Added.
  • LayoutTests/webanimations/offset-rotate-animation-yields-compositing-expected.txt: Added.
  • LayoutTests/webanimations/offset-rotate-animation-yields-compositing.html: Added.
  • LayoutTests/webanimations/offset-shorthand-animation-yields-compositing-expected.txt: Added.
  • LayoutTests/webanimations/offset-shorthand-animation-yields-compositing.html: Added.

Canonical link: https://commits.webkit.org/250687@main

5:54 AM Changeset in webkit [294391] by graouts@webkit.org
  • 8 edits in trunk

[web-animations] dynamically toggle acceleration of composition animations depending on ability of animations in the effect stack to be accelerated
https://bugs.webkit.org/show_bug.cgi?id=236708
<rdar://89029577>

Reviewed by Dean Jackson.

We currently don't have support for composite operations at the GraphicsLayerCA level. There are many situations
under which an effect depends on another effect lower in the effect stack, and if that effect fails to run accelerated,
such as due to a non-replace composite operation, we should not run any other effect for that property using
acceleration.

While we could add logic to correctly determine the cases where we actually can run effects using acceleration,
it is a relatively involved task and a simpler, less error-prone approach is to correctly run a whole effect
stack containing some non-replace composite operations without any acceleration.

We already did something similar for cases where we'd fail to run an effect targeting a transform property because
GraphicsLayerCA::addAnimation() would return false. Such situations include using a steps() timing function, a
playback rate other than 1 or providing fewer than 2 animation values.

We now use a single mechanism to deal not only with the case of animations that fail to run using GraphicsLayerCA,
but also with animations that we know GraphicsLayerCA cannot handle, such as non-replace composite operations.

To do this, we change the RunningAccelerated enum to have both "Prevented" and "Failed" values instead of the
single No value to determine the reason why an effect does not accelerated. The "Prevented" value indicates that
the effect stack or the effect itself prevented the effect from running accelerated, while the "Failed" value
indicates that while we attempted to run the animation accelerated through GraphicsLayerCA, we failed to.

We now account for the "Failed" value in preventsAcceleration() to determine that an effect should prevent other
effects from running accelerated. This method is used by KeyframeEffectStack to check that all of its effects
are able to run accelerated and to toggle acceleration based on this value.

As an effect's composite operation or keyframes is set, or when pending accelerated actions are applied, we now
instantiate a CanBeAcceleratedMutationScope which will automatically detect if the preventsAcceleration() value
changes before and after such mutations, and informs the effect stack if that is the case to make sure the effect
stack knows whether it is newly able to run or not run using acceleration.

Finally, to be able to correctly interact with GraphicsLayerCA, we must make sure to reuse the same key when creating
keyframes passed to its animation APIs, so we add a m_keyframesName member.

  • Source/WebCore/animation/DocumentTimeline.cpp:

(WebCore::DocumentTimeline::applyPendingAcceleratedAnimations):

  • Source/WebCore/animation/KeyframeEffect.cpp:

(WebCore::KeyframeEffect::KeyframeEffect):
(WebCore::KeyframeEffect::copyPropertiesFromSource):
(WebCore::KeyframeEffect::updateBlendingKeyframes):
(WebCore::KeyframeEffect::setBlendingKeyframes):
(WebCore::KeyframeEffect::computeCSSTransitionBlendingKeyframes):
(WebCore::KeyframeEffect::preventsAcceleration const):
(WebCore::KeyframeEffect::updateAcceleratedActions):
(WebCore::KeyframeEffect::addPendingAcceleratedAction):
(WebCore::KeyframeEffect::animationDidChangeTimingProperties):
(WebCore::KeyframeEffect::applyPendingAcceleratedActions):
(WebCore::KeyframeEffect::setComposite):
(WebCore::KeyframeEffect::effectStackNoLongerPreventsAcceleration):
(WebCore::KeyframeEffect::effectStackNoLongerAllowsAcceleration):
(WebCore::KeyframeEffect::abilityToBeAcceleratedDidChange):
(WebCore::KeyframeEffect::CanBeAcceleratedMutationScope::CanBeAcceleratedMutationScope):
(WebCore::KeyframeEffect::CanBeAcceleratedMutationScope::~CanBeAcceleratedMutationScope):
(WebCore::KeyframeEffect::stopAcceleratingTransformRelatedProperties): Deleted.

  • Source/WebCore/animation/KeyframeEffect.h:
  • Source/WebCore/animation/KeyframeEffectStack.cpp:

(WebCore::KeyframeEffectStack::addEffect):
(WebCore::KeyframeEffectStack::removeEffect):
(WebCore::KeyframeEffectStack::effectAbilityToBeAcceleratedDidChange):
(WebCore::KeyframeEffectStack::allowsAcceleration const):
(WebCore::KeyframeEffectStack::startAcceleratedAnimationsIfPossible):
(WebCore::KeyframeEffectStack::stopAcceleratedAnimations):
(WebCore::KeyframeEffectStack::stopAcceleratingTransformRelatedProperties): Deleted.
(WebCore::KeyframeEffectStack::containsEffectThatPreventsAccelerationOfEffect): Deleted.

  • Source/WebCore/animation/KeyframeEffectStack.h:
  • Source/WebCore/animation/WebAnimationTypes.h:
  • LayoutTests/webanimations/accelerated-animations-and-composite-expected.txt:
  • LayoutTests/webanimations/accelerated-animations-and-composite.html:

Canonical link: https://commits.webkit.org/250686@main

5:47 AM WebKitGTK/2.36.x edited by Adrian Perez de Castro
(diff)
4:24 AM Changeset in webkit [294390] by commit-queue@webkit.org
  • 563 adds in trunk/LayoutTests/platform

[LBSE] Run layout tests with LBSE activated
https://bugs.webkit.org/show_bug.cgi?id=239764

Patch by Nikolas Zimmermann <nzimmermann@igalia.com> on 2022-05-18
Reviewed by Rob Buis.

This patch adds two new baselines, that are helpful for LBSE development.

The intention of the patch is to be able to

a) Run pixel tests with legacy SVG engine that pass 100% (... on my machine; no intention to

get pixel tests running' globablly, but it's very helpful for that kind of SVG development).

--> Generate svg/W3C-SVG-1.1 pixel test baseline using my M1 machine running latest macOS Monterey

and only add the *expected.png* files as new 'mac-monterey-wk2-pixel' baseline

$ run-webkit-tests --new-baseline --pixel-tests svg/W3C-SVG-1.1
$ mv LayoutTests/platform/mac-monterey-wk2 LayoutTests/platform/mac-monterey-wk2-pixel

b) Run pixel tests wtih LBSE

LBSE does not need a new pixel test baseline, instead we should match what the legacy engine
produces, only the text dumps are different, due to inherit differences between legacy/LBSE,
such as an additional RenderLayer structure that's now included in the text dumps.

--> Generate svg/W3C-SVG-1.1 text baseline using my M1 machine running latest macOS Monterey

and *LBSE activated* and make them available as new 'mac-monterey-wk2-lbse-text' baseline.

$ run-webkit-tests --new-baseline --internal-feature=LayerBasedSVGEngineEnabled=true svg/W3C-SVG-1.1
$ mv LayoutTests/platform/mac-monterey-wk2 LayoutTests/platform/mac-monterey-wk2-lbse-text

Armed with the new baselines we can now perform testing in three combinations:

  1. Run pixel tests using legacy SVG engine

$ run-webkit-tests --additional-platform-directory=$PWD/LayoutTests/platform/mac-monterey-wk2-pixel \

--pixel-tests --tolerance=0 svg/W3C-SVG-1.1

By construction, this should succeed.

  1. Run pixel tests using LBSE

$ run-webkit-tests --additional-platform-directory=$PWD/LayoutTests/platform/mac-monterey-wk2-pixel \

--additional-platform-directory=$PWD/LayoutTests/platform/mac-monterey-wk2-lbse-text \
--additional-expectations=$PWD/LayoutTests/platform/mac-monterey-wk2-lbse-text/TestExpectations \
--pixel-tests --tolerance=0 --internal-feature=LayerBasedSVGEngineEnabled=true svg/W3C-SVG-1.1

The 'TestExpectations' file shall reflect the curent state of LBSE, thus this is always expected to succeed.

  1. Run A/B testing legacy SVG engine. vs LBSE

$ run-webkit-tests --self-compare-with-header=LayerBasedSVGEngineEnabled=true svg/W3C-SVG-1.1

The new very helpful A/B testing, reveals that LBSE matches 66/278 tests pixel perfect of the SVG 1.1 test suite.
It ignores all existing test expectations and allows us to cross-check the TestExpectations file is correct:

$ cat LayoutTests/platform/mac-monterey-wk2-lbse-text/TestExpectations | grep -v "\[ Pass \]" | grep -v '#' | wc -l

212

$ cat LayoutTests/platform/mac-monterey-wk2-lbse-text/TestExpectations | grep "\[ Pass \]" | wc -l

66

That perfectly matches the expectations.

Evertything is ready to run tests on dedicated bots and integrate LBSE in upstream CI.

  • LayoutTests/platform/mac-monterey-wk2-lbse-text/TestExpectations: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-02-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-03-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-04-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-05-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-06-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-07-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-08-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-09-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-10-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-11-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-12-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-13-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-14-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-15-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-16-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-17-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-18-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-19-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-20-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-21-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-22-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-23-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-24-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-25-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-26-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-27-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-28-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-29-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-30-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-31-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-32-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-33-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-34-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-36-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-37-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-39-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-40-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-41-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-44-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-46-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-52-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-60-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-61-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-62-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-63-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-64-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-65-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-66-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-67-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-68-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-69-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-70-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-77-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-78-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-80-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-81-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-82-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-83-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-84-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/animate-elem-85-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/color-prof-01-f-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/color-prop-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/color-prop-02-f-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/color-prop-03-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/coords-coord-01-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/coords-coord-02-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/coords-trans-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/coords-trans-02-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/coords-trans-03-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/coords-trans-04-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/coords-trans-05-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/coords-trans-06-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/coords-units-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/coords-units-02-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/coords-units-03-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/coords-viewattr-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/coords-viewattr-02-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/coords-viewattr-03-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/extend-namespace-01-f-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/filters-blend-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/filters-color-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/filters-composite-02-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/filters-conv-01-f-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/filters-diffuse-01-f-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/filters-displace-01-f-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/filters-example-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/filters-felem-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/filters-gauss-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/filters-image-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/filters-light-01-f-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/filters-light-04-f-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/filters-morph-01-f-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/filters-offset-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/filters-specular-01-f-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/filters-tile-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/filters-turb-01-f-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/filters-turb-02-f-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/fonts-desc-02-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/fonts-elem-01-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/fonts-elem-02-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/fonts-elem-03-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/fonts-elem-04-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/fonts-elem-05-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/fonts-elem-06-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/fonts-elem-07-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/fonts-glyph-02-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/fonts-glyph-03-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/fonts-kern-01-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/interact-cursor-01-f-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/interact-dom-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/interact-events-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/interact-order-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/interact-order-02-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/interact-order-03-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/interact-zoom-01-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/linking-a-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/linking-a-02-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/linking-a-03-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/linking-a-04-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/linking-a-05-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/linking-a-07-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/linking-uri-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/linking-uri-02-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/linking-uri-03-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/masking-intro-01-f-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/masking-mask-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/masking-opacity-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/masking-path-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/masking-path-02-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/masking-path-03-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/masking-path-04-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/masking-path-05-f-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/metadata-example-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/painting-fill-01-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/painting-fill-02-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/painting-fill-03-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/painting-fill-04-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/painting-fill-05-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/painting-marker-01-f-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/painting-marker-02-f-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/painting-marker-03-f-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/painting-render-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/painting-stroke-01-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/painting-stroke-02-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/painting-stroke-03-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/painting-stroke-04-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/painting-stroke-07-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/paths-data-01-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/paths-data-02-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/paths-data-03-f-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/paths-data-04-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/paths-data-05-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/paths-data-06-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/paths-data-07-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/paths-data-08-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/paths-data-09-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/paths-data-10-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/paths-data-12-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/paths-data-13-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/paths-data-14-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/paths-data-15-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/pservers-grad-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/pservers-grad-02-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/pservers-grad-03-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/pservers-grad-04-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/pservers-grad-06-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/pservers-grad-07-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/pservers-grad-09-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/pservers-grad-10-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/pservers-grad-11-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/pservers-grad-12-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/pservers-grad-13-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/pservers-grad-14-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/pservers-grad-15-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/pservers-grad-16-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/pservers-grad-17-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/pservers-grad-18-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/pservers-grad-19-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/pservers-pattern-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/render-elems-01-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/render-elems-02-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/render-elems-03-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/render-elems-06-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/render-elems-07-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/render-elems-08-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/render-groups-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/render-groups-03-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/script-handle-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/script-handle-02-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/script-handle-03-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/script-handle-04-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/shapes-circle-01-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/shapes-circle-02-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/shapes-ellipse-01-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/shapes-ellipse-02-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/shapes-intro-01-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/shapes-line-01-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/shapes-polygon-01-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/shapes-polyline-01-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/shapes-rect-01-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/shapes-rect-02-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-cond-01-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-cond-02-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-cond-03-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-defs-01-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-dom-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-dom-02-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-dom-03-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-dom-04-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-dom-05-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-dom-06-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-frag-01-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-frag-02-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-frag-03-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-frag-04-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-frag-05-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-frag-06-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-group-01-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-group-02-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-group-03-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-image-01-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-image-02-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-image-03-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-image-04-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-image-05-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-image-06-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-image-07-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-image-08-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-image-09-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-image-10-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-symbol-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-use-01-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-use-03-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/struct-use-05-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/styling-css-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/styling-css-02-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/styling-css-03-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/styling-css-04-f-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/styling-css-05-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/styling-css-06-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/styling-inherit-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/styling-pres-01-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-align-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-align-02-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-align-03-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-align-04-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-align-05-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-align-06-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-align-08-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-altglyph-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-deco-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-fonts-01-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-fonts-02-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-fonts-03-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-intro-01-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-intro-02-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-intro-03-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-intro-04-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-intro-05-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-path-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-spacing-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-text-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-text-03-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-text-04-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-text-05-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-text-06-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-text-07-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-text-08-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-tref-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-tselect-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-tselect-02-f-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-tspan-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-ws-01-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/text-ws-02-t-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-lbse-text/svg/W3C-SVG-1.1/types-basicDOM-01-b-expected.txt: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-02-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-03-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-04-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-05-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-06-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-07-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-08-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-09-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-10-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-11-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-12-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-13-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-14-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-15-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-16-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-17-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-18-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-19-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-20-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-21-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-22-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-23-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-24-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-25-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-26-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-27-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-28-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-29-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-30-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-31-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-32-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-33-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-34-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-36-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-37-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-39-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-40-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-41-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-44-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-46-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-52-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-60-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-61-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-62-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-63-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-64-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-65-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-66-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-67-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-68-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-69-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-70-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-77-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-78-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-80-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-81-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-82-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-83-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-84-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/animate-elem-85-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/color-prof-01-f-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/color-prop-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/color-prop-02-f-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/color-prop-03-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/coords-coord-01-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/coords-coord-02-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/coords-trans-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/coords-trans-02-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/coords-trans-03-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/coords-trans-04-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/coords-trans-05-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/coords-trans-06-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/coords-units-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/coords-units-02-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/coords-units-03-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/coords-viewattr-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/coords-viewattr-02-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/coords-viewattr-03-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/extend-namespace-01-f-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/filters-blend-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/filters-color-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/filters-composite-02-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/filters-conv-01-f-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/filters-diffuse-01-f-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/filters-displace-01-f-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/filters-example-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/filters-felem-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/filters-gauss-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/filters-image-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/filters-light-01-f-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/filters-light-04-f-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/filters-morph-01-f-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/filters-offset-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/filters-specular-01-f-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/filters-tile-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/filters-turb-01-f-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/filters-turb-02-f-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/fonts-desc-02-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/fonts-elem-01-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/fonts-elem-02-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/fonts-elem-03-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/fonts-elem-04-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/fonts-elem-05-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/fonts-elem-06-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/fonts-elem-07-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/fonts-glyph-02-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/fonts-glyph-03-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/fonts-kern-01-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/interact-cursor-01-f-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/interact-dom-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/interact-events-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/interact-order-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/interact-order-02-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/interact-order-03-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/interact-zoom-01-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/linking-a-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/linking-a-02-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/linking-a-03-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/linking-a-04-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/linking-a-05-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/linking-a-07-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/linking-uri-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/linking-uri-02-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/linking-uri-03-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/masking-intro-01-f-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/masking-mask-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/masking-opacity-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/masking-path-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/masking-path-02-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/masking-path-03-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/masking-path-04-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/masking-path-05-f-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/metadata-example-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/painting-fill-01-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/painting-fill-02-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/painting-fill-03-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/painting-fill-04-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/painting-fill-05-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/painting-marker-01-f-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/painting-marker-02-f-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/painting-marker-03-f-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/painting-render-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/painting-stroke-01-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/painting-stroke-02-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/painting-stroke-03-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/painting-stroke-04-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/painting-stroke-07-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/paths-data-01-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/paths-data-02-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/paths-data-03-f-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/paths-data-04-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/paths-data-05-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/paths-data-06-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/paths-data-07-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/paths-data-08-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/paths-data-09-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/paths-data-10-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/paths-data-12-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/paths-data-13-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/paths-data-14-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/paths-data-15-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/pservers-grad-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/pservers-grad-02-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/pservers-grad-03-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/pservers-grad-04-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/pservers-grad-05-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/pservers-grad-06-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/pservers-grad-07-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/pservers-grad-08-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/pservers-grad-09-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/pservers-grad-10-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/pservers-grad-11-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/pservers-grad-12-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/pservers-grad-13-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/pservers-grad-14-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/pservers-grad-15-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/pservers-grad-16-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/pservers-grad-17-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/pservers-grad-18-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/pservers-grad-19-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/pservers-pattern-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/render-elems-01-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/render-elems-02-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/render-elems-03-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/render-elems-06-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/render-elems-07-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/render-elems-08-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/render-groups-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/render-groups-03-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/script-handle-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/script-handle-02-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/script-handle-03-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/script-handle-04-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/shapes-circle-01-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/shapes-circle-02-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/shapes-ellipse-01-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/shapes-ellipse-02-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/shapes-intro-01-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/shapes-line-01-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/shapes-polygon-01-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/shapes-polyline-01-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/shapes-rect-01-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/shapes-rect-02-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-cond-01-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-cond-02-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-cond-03-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-defs-01-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-dom-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-dom-02-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-dom-03-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-dom-04-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-dom-05-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-dom-06-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-frag-01-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-frag-02-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-frag-03-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-frag-04-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-frag-05-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-frag-06-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-group-01-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-group-02-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-group-03-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-image-01-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-image-02-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-image-03-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-image-04-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-image-05-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-image-06-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-image-07-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-image-08-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-image-09-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-image-10-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-symbol-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-use-01-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-use-03-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/struct-use-05-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/styling-css-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/styling-css-02-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/styling-css-03-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/styling-css-04-f-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/styling-css-05-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/styling-css-06-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/styling-inherit-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/styling-pres-01-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-align-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-align-02-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-align-03-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-align-04-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-align-05-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-align-06-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-align-08-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-altglyph-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-deco-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-fonts-01-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-fonts-02-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-fonts-03-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-intro-01-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-intro-02-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-intro-03-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-intro-04-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-intro-05-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-path-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-spacing-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-text-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-text-03-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-text-04-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-text-05-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-text-06-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-text-07-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-text-08-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-tref-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-tselect-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-tselect-02-f-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-tspan-01-b-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-ws-01-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/text-ws-02-t-expected.png: Added.
  • LayoutTests/platform/mac-monterey-wk2-pixel/svg/W3C-SVG-1.1/types-basicDOM-01-b-expected.png: Added.

Canonical link: https://commits.webkit.org/250684@main

4:23 AM Changeset in webkit [294389] by commit-queue@webkit.org
  • 2 edits in trunk/Source

ENABLE_LAYER_BASED_SVG_ENGINE needs to match for iOS and macOS
https://bugs.webkit.org/show_bug.cgi?id=239877
<rdar://problem/92829309>

Patch by Nikolas Zimmermann <nzimmermann@igalia.com> on 2022-05-18
Reviewed by Simon Fraser.

Switch on ENABLE_LAYER_BASED_SVG_ENGINE for all Cocoa based platforms.

This only works after fixing one build issue:
hasTransform() now needs hasSVGTransform(), when in turn uses rareData(), which
is not exported by WebCore at present breaking tvOS/watchOS/iOS builds, fix that.

Covered by existing tests, no change in behaviour.

  • Source/WTF/wtf/PlatformEnableCocoa.h:
  • Source/WebCore/rendering/RenderObject.h:
3:43 AM Changeset in webkit [294388] by Adrian Perez de Castro
  • 1 copy in releases/WPE WebKit/webkit-2.36.2

WPE WebKit 2.36.2

3:43 AM Changeset in webkit [294387] by Adrian Perez de Castro
  • 4 edits in releases/WebKitGTK/webkit-2.36

Unreviewed. Update OptionsWPE.cmake and NEWS for the 2.36.2 release

.:

  • Source/cmake/OptionsWPE.cmake: Bump version numbers.

Source/WebKit:

  • wpe/NEWS: Add release notes for 2.36.2.
2:01 AM Changeset in webkit [294386] by commit-queue@webkit.org
  • 1 edit in trunk/LayoutTests/platform/mac-wk1/TestExpectations

[ macOS wk1 ] http/wpt/fetch/navigation-post-to-get-origin.html hits a flaky assertion in invokeReadableStreamDefaultControllerFunction
https://bugs.webkit.org/show_bug.cgi?id=230693

Patch by Youenn Fablet <youennf@gmail.com> on 2022-05-18
Unreviewed.

  • LayoutTests/platform/mac-wk1/TestExpectations:

Canonical link: https://commits.webkit.org/250683@main

1:47 AM Changeset in webkit [294385] by commit-queue@webkit.org
  • 10 edits in trunk/Source/WebCore

Activate text rendering, by re-using RenderSVGText
https://bugs.webkit.org/show_bug.cgi?id=239743

Patch by Nikolas Zimmermann <nzimmermann@igalia.com> on 2022-05-18
Reviewed by Rob Buis.

Adapt RenderSVGText to be usable at the same time from legacy SVG engine (as
it is right now) and from LBSE. This requires minimal effort, since RenderSVGText
already inherited from RenderLayerModelObject, so there's no need for the creation
of LegacyRenderSVGText / RenderSVGText as separated legacy/LBSE implementations.

Most SVG 1.1 <text> testcases already pass out of the box with this change.
The next patch after text support will add a new 'macos-wk2-lbse-xxx' specific
platform baseline, so that we can run tests LBSE againt iself (finally we can
include the progressions in the form of TestExpectation file changes, once a certain
patch implements a new feature in LBSE. This makes sense now as enough is upstreamed
that a considerable amount of the SVG 1.1 testsuite already passes pixel perfect.

Covered by existing tests, no change in behaviour. (However testability for LBSE is ready soon!).

  • rendering/RenderLayerModelObject.cpp:

(WebCore::RenderLayerModelObject::computeVisibleRectInSVGContainer const):

  • rendering/RenderObject.cpp:

(WebCore::objectIsRelayoutBoundary):

  • rendering/svg/RenderSVGBlock.cpp:

(WebCore::RenderSVGBlock::updateFromStyle):
(WebCore::RenderSVGBlock::absoluteRects const):
(WebCore::RenderSVGBlock::absoluteQuads const):
(WebCore::RenderSVGBlock::styleDidChange):
(WebCore::RenderSVGBlock::computeOverflow):
(WebCore::RenderSVGBlock::clippedOverflowRect const):
(WebCore::RenderSVGBlock::computeVisibleRectInContainer const):
(WebCore::RenderSVGBlock::computeFloatVisibleRectInContainer const):
(WebCore::RenderSVGBlock::pushMappingToContainer const):
(WebCore::RenderSVGBlock::offsetFromContainer const):
(WebCore::RenderSVGBlock::nodeAtPoint): Deleted.

  • rendering/svg/RenderSVGBlock.h:
  • rendering/svg/RenderSVGText.cpp:

(WebCore::RenderSVGText::RenderSVGText):
(WebCore::RenderSVGText::layout):
(WebCore::RenderSVGText::nodeAtFloatPoint):
(WebCore::RenderSVGText::nodeAtPoint):
(WebCore::RenderSVGText::paint):
(WebCore::RenderSVGText::repaintRectInLocalCoordinates const):
(WebCore::RenderSVGText::updatePositionAndOverflow):
(WebCore::RenderSVGText::absoluteQuads const): Deleted.

  • rendering/svg/RenderSVGText.h:
  • rendering/svg/SVGRootInlineBox.cpp:

(WebCore::SVGRootInlineBox::renderSVGText const):
(WebCore::SVGRootInlineBox::paint):
(WebCore::SVGRootInlineBox::layoutRootBox):
(WebCore::SVGRootInlineBox::renderSVGText): Deleted.

  • rendering/svg/SVGRootInlineBox.h:
  • svg/SVGElement.cpp:

(WebCore::createSVGLayerAwareElementSet):

Canonical link: https://commits.webkit.org/250682@main

12:18 AM Changeset in webkit [294384] by Diego Pino Garcia
  • 1 edit in trunk/Source/WebCore/inspector/agents/InspectorTimelineAgent.cpp

Unreviewed, non-unified build fixes after r294166

May 17, 2022:

11:26 PM Changeset in webkit [294383] by Antti Koivisto
  • 13 edits in trunk/Source/WebCore

Template TextBoxPainter on line layout path
https://bugs.webkit.org/show_bug.cgi?id=240416

Reviewed by Alan Bujtas.

Painting currently goes via a line layout path agnostic iterator.
This is inefficient since we always know what sort of layout we are painting.

  • Source/WebCore/layout/integration/inline/InlineIteratorBox.cpp:

(WebCore::InlineIterator::Box::visualRect const):

  • Source/WebCore/layout/integration/inline/InlineIteratorBox.h:

(WebCore::InlineIterator::Box::containingBlock const):
(WebCore::InlineIterator::Box::visualRect const): Deleted.

  • Source/WebCore/layout/integration/inline/InlineIteratorBoxLegacyPath.h:

(WebCore::InlineIterator::BoxLegacyPath::containingBlock const):
(WebCore::InlineIterator::BoxLegacyPath::direction const):
(WebCore::InlineIterator::BoxLegacyPath::isFirstLine const):

  • Source/WebCore/layout/integration/inline/InlineIteratorBoxModernPath.h:

(WebCore::InlineIterator::BoxModernPath::containingBlock const):
(WebCore::InlineIterator::BoxModernPath::direction const):
(WebCore::InlineIterator::BoxModernPath::isFirstLine const):
(WebCore::InlineIterator::BoxModernPath::renderText const):

  • Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.cpp:

(WebCore::LayoutIntegration::LineLayout::paint):

  • Source/WebCore/rendering/GlyphDisplayListCache.h:

(WebCore::GlyphDisplayListCache::singleton):

  • Source/WebCore/rendering/InlineBoxPainter.cpp:

(WebCore::InlineBoxPainter::paintMask):
(WebCore::InlineBoxPainter::paintDecorations):

  • Source/WebCore/rendering/LegacyInlineFlowBox.cpp:

(WebCore::LegacyInlineFlowBox::addTextBoxVisualOverflow):

  • Source/WebCore/rendering/LegacyInlineTextBox.cpp:

(WebCore::LegacyInlineTextBox::paint):

  • Source/WebCore/rendering/LegacyInlineTextBox.h:
  • Source/WebCore/rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintMaskForTextFillBox):

  • Source/WebCore/rendering/TextBoxPainter.cpp:

(WebCore::LegacyTextBoxPainter::LegacyTextBoxPainter):
(WebCore::ModernTextBoxPainter::ModernTextBoxPainter):
(WebCore::TextBoxPainter<TextBoxPath>::TextBoxPainter):
(WebCore::TextBoxPainter<TextBoxPath>::~TextBoxPainter):
(WebCore::TextBoxPainter<TextBoxPath>::makeIterator const):
(WebCore::TextBoxPainter<TextBoxPath>::paint):
(WebCore::TextBoxPainter<TextBoxPath>::createMarkedTextFromSelectionInBox):
(WebCore::TextBoxPainter<TextBoxPath>::paintBackground):
(WebCore::TextBoxPainter<TextBoxPath>::paintForegroundAndDecorations):
(WebCore::TextBoxPainter<TextBoxPath>::paintCompositionBackground):
(WebCore::TextBoxPainter<TextBoxPath>::paintForeground):
(WebCore::TextBoxPainter<TextBoxPath>::createDecorationPainter):
(WebCore::TextBoxPainter<TextBoxPath>::paintBackgroundDecorations):
(WebCore::TextBoxPainter<TextBoxPath>::paintForegroundDecorations):
(WebCore::TextBoxPainter<TextBoxPath>::paintCompositionUnderlines):
(WebCore::TextBoxPainter<TextBoxPath>::textPosition):
(WebCore::TextBoxPainter<TextBoxPath>::paintCompositionUnderline):
(WebCore::TextBoxPainter<TextBoxPath>::paintPlatformDocumentMarkers):
(WebCore::LegacyTextBoxPainter::calculateUnionOfAllDocumentMarkerBounds):
(WebCore::TextBoxPainter<TextBoxPath>::paintPlatformDocumentMarker):
(WebCore::TextBoxPainter<TextBoxPath>::computePaintRect):
(WebCore::calculateDocumentMarkerBounds):
(WebCore::TextBoxPainter<TextBoxPath>::computeHaveSelection const):
(WebCore::TextBoxPainter<TextBoxPath>::fontCascade const):
(WebCore::TextBoxPainter<TextBoxPath>::textOriginFromPaintRect const):
(WebCore::TextBoxPainter<TextBoxPath>::debugTextShadow const):
(WebCore::TextBoxPainter::TextBoxPainter): Deleted.
(WebCore::TextBoxPainter::~TextBoxPainter): Deleted.
(WebCore::TextBoxPainter::paint): Deleted.
(WebCore::TextBoxPainter::createMarkedTextFromSelectionInBox): Deleted.
(WebCore::TextBoxPainter::paintBackground): Deleted.
(WebCore::TextBoxPainter::paintForegroundAndDecorations): Deleted.
(WebCore::TextBoxPainter::paintCompositionBackground): Deleted.
(WebCore::TextBoxPainter::paintForeground): Deleted.
(WebCore::TextBoxPainter::createDecorationPainter): Deleted.
(WebCore::TextBoxPainter::paintBackgroundDecorations): Deleted.
(WebCore::TextBoxPainter::paintForegroundDecorations): Deleted.
(WebCore::TextBoxPainter::paintCompositionUnderlines): Deleted.
(WebCore::textPosition): Deleted.
(WebCore::TextBoxPainter::paintCompositionUnderline): Deleted.
(WebCore::TextBoxPainter::paintPlatformDocumentMarkers): Deleted.
(WebCore::TextBoxPainter::calculateUnionOfAllDocumentMarkerBounds): Deleted.
(WebCore::TextBoxPainter::paintPlatformDocumentMarker): Deleted.
(WebCore::TextBoxPainter::computePaintRect): Deleted.
(WebCore::TextBoxPainter::calculateDocumentMarkerBounds): Deleted.
(WebCore::TextBoxPainter::computeHaveSelection const): Deleted.
(WebCore::TextBoxPainter::fontCascade const): Deleted.
(WebCore::TextBoxPainter::textOriginFromPaintRect const): Deleted.
(WebCore::TextBoxPainter::debugTextShadow const): Deleted.

  • Source/WebCore/rendering/TextBoxPainter.h:

(WebCore::TextBoxPainter::textBox const):

9:47 PM Changeset in webkit [294382] by commit-queue@webkit.org
  • 1 edit in trunk/metadata/contributors.json

Add jgriego to contributors.json
https://bugs.webkit.org/show_bug.cgi?id=240525

Patch by Joseph Griego <jgriego@igalia.com> on 2022-05-17
Reviewed by Tim Nguyen.

  • metadata/contributors.json:

Canonical link: https://commits.webkit.org/250679@main

8:23 PM Changeset in webkit [294381] by sihui_liu@apple.com
  • 12 edits in trunk/Source/WebKit/UIProcess

WebProcessProxy should not hold WebsiteDataStore alive when there is no page
https://bugs.webkit.org/show_bug.cgi?id=238892
<rdar://problem/91715517>

Reviewed by Youenn Fablet.

WebProcessProxy can outlive WebPageProxy, and because WebProcessProxy holds strong reference to WebsiteDataStore,
WebsiteDataStore will be kept alive even when it's not used by any page and will not be used by any page.

  • UIProcess/GPU/GPUProcessProxy.cpp:

(WebKit::GPUProcessProxy::createGPUProcessConnection):

  • UIProcess/ProvisionalPageProxy.cpp:

(WebKit::ProvisionalPageProxy::ProvisionalPageProxy):
(WebKit::ProvisionalPageProxy::~ProvisionalPageProxy):

  • UIProcess/ProvisionalPageProxy.h:
  • UIProcess/SuspendedPageProxy.cpp:

(WebKit::SuspendedPageProxy::findReusableSuspendedPageProcess):

  • UIProcess/WebBackForwardCache.cpp:

(WebKit::WebBackForwardCache::removeEntriesForSession):

  • UIProcess/WebLockRegistryProxy.cpp:

(WebKit::WebLockRegistryProxy::requestLock):
(WebKit::WebLockRegistryProxy::releaseLock):
(WebKit::WebLockRegistryProxy::abortLockRequest):
(WebKit::WebLockRegistryProxy::snapshot):
(WebKit::WebLockRegistryProxy::clientIsGoingAway):
(WebKit::WebLockRegistryProxy::processDidExit):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::swapToProvisionalPage):
(WebKit::WebPageProxy::commitProvisionalPage):

  • UIProcess/WebProcessCache.cpp:

(WebKit::WebProcessCache::canCacheProcess const):
(WebKit::WebProcessCache::takeProcess):
(WebKit::WebProcessCache::clearAllProcessesForSession):
(WebKit::WebProcessCache::CachedProcess::CachedProcess):

  • UIProcess/WebProcessPool.cpp:

(WebKit::WebProcessPool::establishRemoteWorkerContextConnectionToNetworkProcess):
(WebKit::WebProcessPool::processForRegistrableDomain):
(WebKit::WebProcessPool::createWebPage):
(WebKit::WebProcessPool::processForNavigationInternal):

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::WebProcessProxy):
(WebKit::m_webLockRegistry):
(WebKit::WebProcessProxy::websiteDataStore const):
(WebKit::WebProcessProxy::setWebsiteDataStore):
(WebKit::WebProcessProxy::isDummyProcessProxy const):
(WebKit::WebProcessProxy::updateRegistrationWithDataStore):
(WebKit::WebProcessProxy::addExistingWebPage):
(WebKit::WebProcessProxy::getNetworkProcessConnection):
(WebKit::WebProcessProxy::didStartProvisionalLoadForMainFrame):
(WebKit::WebProcessProxy::sessionID const):

  • UIProcess/WebProcessProxy.h:

(WebKit::WebProcessProxy::websiteDataStore const): Deleted.

  • UIProcess/glib/WebProcessProxyGLib.cpp:

(WebKit::WebProcessProxy::platformGetLaunchOptions):

7:19 PM Changeset in webkit [294380] by commit-queue@webkit.org
  • 1 edit in trunk/metadata/contributors.json

Add myself (Asumu Takikawa) to contributors.json
https://bugs.webkit.org/show_bug.cgi?id=240546

Patch by Asumu Takikawa <asumu@igalia.com> on 2022-05-17
Reviewed by Yusuke Suzuki.

  • metadata/contributors.json:

Canonical link: https://commits.webkit.org/250677@main

6:45 PM Changeset in webkit [294379] by commit-queue@webkit.org
  • 1 edit in trunk/Tools/glib/generate-pdfjs-gresource-manifest.py

[WPE][GTK] generate-pdfjs-gresource-manifest.py should be more careful about unknown files
https://bugs.webkit.org/show_bug.cgi?id=240536

Patch by Michael Catanzaro <mcatanzaro@redhat.com> on 2022-05-17
Reviewed by Adrian Perez de Castro.

Instead of silently ignoring unexpected files, let's create a list of
all files that we do not want to include in the resource manifest.
Anything unexpected will result in a build failure so that there are no
mistakes.

Also, change the lists at the top of the script into sets. Adrian
noticed that they do not need to be ordered.

  • Tools/glib/generate-pdfjs-gresource-manifest.py:

(get_filenames):
(get_filenames.should_ignore_resource): Deleted.

Canonical link: https://commits.webkit.org/250668@main

6:43 PM Changeset in webkit [294378] by ap@apple.com
  • 5 edits in trunk/Tools/Scripts/libraries/webkitscmpy

Reverting https://trac.webkit.org/r294367, as some of our automation hosts don't
have the --date=unix option.

Reviewed by NOBODY (OOPS!).

  • Scripts/libraries/webkitscmpy/setup.py:
  • Scripts/libraries/webkitscmpy/webkitscmpy/init.py:
  • Scripts/libraries/webkitscmpy/webkitscmpy/local/git.py:

(Git.Cache.populate):
(Git.commit):
(Git._args_from_content):
(Git.commits):

  • Scripts/libraries/webkitscmpy/webkitscmpy/mocks/local/git.py:
  • Scripts/libraries/webkitscmpy/webkitscmpy/test/git_unittest.py:

(TestGit.test_log):

6:42 PM Changeset in webkit [294377] by basuke.suzuki@sony.com
  • 1 edit in trunk/Source/WebCore/page/win/ResourceUsageThreadWin.cpp

[WinCairo] Add memory usage of LibcMalloc category
https://bugs.webkit.org/show_bug.cgi?id=239660

Reviewed by Ross Kirsling.

WinCairo's memory timeline just displays JavaScript memory usage. Adding
this info shows also Page
memory usage.

  • page/win/ResourceUsageThreadWin.cpp:

(WebCore::ResourceUsageThread::platformCollectMemoryData):

Canonical link: https://commits.webkit.org/250668@main

6:37 PM Changeset in webkit [294376] by zhifei_fang@apple.com
  • 3 edits in trunk/Tools/Scripts/libraries/webkitscmpy/webkitscmpy

[git-webkit] Make git-webkit revert a two step workflow
https://bugs.webkit.org/show_bug.cgi?id=240192
rdar://92875608

Reviewed by Jonathan Bedard.

  • Tools/Scripts/libraries/webkitscmpy/webkitscmpy/program/pull_request.py:

(PullRequest.create_pull_request):
(PullRequest.add_comment_to_reverted_commit_bug_tracker):
(PullRequest.is_revert_commit):

  • Tools/Scripts/libraries/webkitscmpy/webkitscmpy/program/revert.py:

(Revert):
(Revert.parser):
(Revert.revert_commit):
(Revert.main):

  • Tools/Scripts/libraries/webkitscmpy/webkitscmpy/test/revert_unittest.py:

(TestRevert.test_github):
(test_update):

Canonical link: https://commits.webkit.org/250668@main

6:20 PM Changeset in webkit [294375] by Alan Coon
  • 1 copy in tags/WebKit-7614.1.14.100.1

Tag WebKit-7614.1.14.100.1.

6:17 PM Changeset in webkit [294374] by yurys@chromium.org
  • 9 edits
    3 adds in trunk

Web Inspector: support EventSource resource type in Network Panel
https://bugs.webkit.org/show_bug.cgi?id=240326

Reviewed by Devin Rousso.

  • http/tests/inspector/network/eventsource-type-expected.txt: Added.
  • http/tests/inspector/network/eventsource-type.html: Added.
  • http/tests/inspector/network/resources/event-source.py: Added.

Web Inspector: support EventSource resource type in Network Panel
https://bugs.webkit.org/show_bug.cgi?id=240326

  • inspector/protocol/Page.json: added EventSource resource type.

Web Inspector: support EventSource resource type in Network Panel
https://bugs.webkit.org/show_bug.cgi?id=240326

Network requests initiated by EventSource now have their own requester
type which allows to distinguish them from other requests.

Test: http/tests/inspector/network/eventsource-type.html

  • inspector/agents/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::resourceTypeJSON):
(WebCore::InspectorPageAgent::inspectorResourceType):

  • inspector/agents/InspectorPageAgent.h:
  • page/EventSource.cpp:

(WebCore::EventSource::connect):

  • platform/network/ResourceRequestBase.h:

Web Inspector: support EventSource resource type in Network Panel
https://bugs.webkit.org/show_bug.cgi?id=240326

EventSource initiated requests are now displayed with their own type
in the network panel.

  • Localizations/en.lproj/localizedStrings.js:
  • UserInterface/Controllers/NetworkManager.js:

(WI.NetworkManager.prototype.canBeOverridden):

  • UserInterface/Models/Resource.js:

(WI.Resource.displayNameForType):

  • UserInterface/Views/NetworkTableContentView.js:

(WI.NetworkTableContentView.displayNameForResource):

Canonical link: https://commits.webkit.org/250668@main

6:09 PM Changeset in webkit [294373] by mmaxfield@apple.com
  • 3 edits in trunk/Source/WebCore/Modules/WebGPU

[WebGPU] Work around https://bugs.webkit.org/show_bug.cgi?id=240219
https://bugs.webkit.org/show_bug.cgi?id=240441

https://bugs.webkit.org/show_bug.cgi?id=240219 is about a bug where we can't
say "optional thingy = 0" in an IDL file. This patch works around that in WebGPU
by replacing it with "optional thingy" and then "thingy.value_or(0)" in the C++
code. This is temporary, until https://bugs.webkit.org/show_bug.cgi?id=240219 is
fixed.

No new tests because there is no behavior change.

  • Modules/WebGPU/GPUBuffer.cpp:

(WebCore::GPUBuffer::mapAsync):
(WebCore::GPUBuffer::getMappedRange):

  • Modules/WebGPU/GPUBuffer.h:
  • Modules/WebGPU/GPUBuffer.idl:

Canonical link: https://commits.webkit.org/250668@main

5:59 PM Changeset in webkit [294372] by Russell Epstein
  • 1 copy in tags/WebKit-7614.1.14.11.2

Tag WebKit-7614.1.14.11.2.

5:55 PM Changeset in webkit [294371] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit

Private relay should fail closed for third party loads if the main resource was loaded over private relay
https://bugs.webkit.org/show_bug.cgi?id=240483
<rdar://92697007>

Patch by Alex Christensen <achristensen@webkit.org> on 2022-05-17
Reviewed by Chris Dumez.

This re-lands the change from r293861 along with r293481 which should fix problems related to rdar://92336270
along with r293591 which should fix performance regressions related to rdar://92458995 but was insufficient.
During a basic browsing test, I found two more places where we were making a NetworkDataTask without setting the
parameters' top origin, one in the SpeculativeLoad constructor and another in WebLoaderStrategy::preconnectTo.

  • Source/WebKit/NetworkProcess/NetworkCORSPreflightChecker.cpp:

(WebKit::NetworkCORSPreflightChecker::startPreflight):

  • Source/WebKit/NetworkProcess/cache/NetworkCacheSpeculativeLoad.cpp:

(WebKit::NetworkCache::SpeculativeLoad::SpeculativeLoad):

  • Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm:

(WebKit::NetworkDataTaskCocoa::NetworkDataTaskCocoa):

  • Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm:

(-[WKNetworkSessionDelegate URLSession:dataTask:didReceiveResponse:completionHandler:]):
(WebKit::NetworkSessionCocoa::createWebSocketTask):

  • Source/WebKit/WebProcess/Network/WebLoaderStrategy.cpp:

(WebKit::WebLoaderStrategy::preconnectTo):

5:50 PM Changeset in webkit [294370] by Russell Epstein
  • 9 edits in branches/safari-7614.1.14.11-branch/Source

Versioning.

WebKit-7614.1.14.11.2

5:37 PM Changeset in webkit [294369] by Chris Dumez
  • 1 edit in trunk/Source/WebCore/platform/graphics/FontCascade.cpp

Stop using ASCIILiteral::fromLiteralUnsafe() in FontCascade.cpp https://bugs.webkit.org/show_bug.cgi?id=240548

Reviewed by Myles C. Maxfield.

Stop using ASCIILiteral::fromLiteralUnsafe() in FontCascade.cpp and use ASCIILiteral
directly.

  • Source/WebCore/platform/graphics/FontCascade.cpp:

(WebCore::useBackslashAsYenSignForFamily):

Canonical link: https://commits.webkit.org/250668@main

5:27 PM Changeset in webkit [294368] by Alan Coon
  • 9 edits in branches/safari-7614.1.12-branch/Source

Versioning.

WebKit-7614.1.12.5

5:20 PM Changeset in webkit [294367] by Jonathan Bedard
  • 5 edits in trunk/Tools/Scripts/libraries/webkitscmpy

[git-webkit] Use --date=unix in log commands
https://bugs.webkit.org/show_bug.cgi?id=240537

Reviewed by Stephanie Lewis.

Override any local configuration for git log's date format,
use a simpler date format.

  • Tools/Scripts/libraries/webkitscmpy/setup.py: Bump version.
  • Tools/Scripts/libraries/webkitscmpy/webkitscmpy/init.py: Ditto.
  • Tools/Scripts/libraries/webkitscmpy/webkitscmpy/local/git.py:

(Git.Cache.populate): Use --date=unix.
(Git.commit): Ditto.
(Git._args_from_content): Parse --date=unix.
(Git.commits): Use --date=unix.

  • Tools/Scripts/libraries/webkitscmpy/webkitscmpy/mocks/local/git.py:
  • Tools/Scripts/libraries/webkitscmpy/webkitscmpy/test/git_unittest.py:

(TestGit.test_log):

Canonical link: https://commits.webkit.org/250668@main

5:05 PM Changeset in webkit [294366] by Alan Coon
  • 1 copy in tags/WebKit-7614.1.14.0.3

Tag WebKit-7614.1.14.0.3.

4:58 PM Changeset in webkit [294365] by Alan Coon
  • 1 copy in tags/WebKit-7614.1.14.1.3

Tag WebKit-7614.1.14.1.3.

4:54 PM Changeset in webkit [294364] by basuke.suzuki@sony.com
  • 1 edit in trunk/Source/bmalloc/libpas/src/libpas/pas_utils.c

[libpas] Suppress warnings for %llu format specifier for uint64_t.
https://bugs.webkit.org/show_bug.cgi?id=240541

Reviewed by Yusuke Suzuki.

Use PRIu64 instead.

  • libpas/src/libpas/pas_utils.c:

(pas_assertion_failed_no_inline_with_extra_detail):

Canonical link: https://commits.webkit.org/250667@main

4:50 PM Changeset in webkit [294363] by Karl Rackler
  • 1 edit in trunk/LayoutTests/platform/ios/TestExpectations

[Gardening]: REGRESSION (r294215): [ iOS ] Nine focus ring tests are a consistent image failure
https://bugs.webkit.org/show_bug.cgi?id=240495

Unreviewed test gardening.

  • LayoutTests/platform/ios/TestExpectations:

Canonical link: https://commits.webkit.org/250666@main

4:45 PM Changeset in webkit [294362] by pvollan@apple.com
  • 1 edit in trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in

[macOS][WP] Add required methods to graphics filters
https://bugs.webkit.org/show_bug.cgi?id=240398
<rdar://92460835>

Reviewed by Geoffrey Garen.

Add required methods to graphics filters. These have been observed being used in telemetry.

  • Source/WebKit/WebProcess/com.apple.WebProcess.sb.in:

Canonical link: https://commits.webkit.org/250665@main

4:23 PM Changeset in webkit [294361] by Patrick Angle
  • 3 edits in trunk/Source/JavaScriptCore/inspector/remote

[Cocoa] Web Driver: RemoteAutomationTargets marked for termination and targets that have never been paired may briefly be indistinguishable in application target listing
https://bugs.webkit.org/show_bug.cgi?id=240524
<rdar://93430106>

Reviewed by BJ Burg and Devin Rousso.

A RemoteAutomationTarget has multiple possible entries it may provide in an application listing to webinspectord,
which are then interpreted by webinspectord to determine the current state of that target. The key pieces for this bug
are that a WIRConnectionIdentifierKey which when present is taken to mean that the target is no longer pristine and
WIRAutomationTargetIsPairedKey which when true indicates that the target is paired. When a connection identifier is
present and we are no longer paired, the connection is considered terminated.

There exists a race condition where webinspectord preemptively set the targets state to "Terminated" upon sending a
close request in order to make sure that the target is no longer used. Upon receiving the close message for the target
the connection identifier is removed from the map of known connection identifiers before scheduling the actual target to
be torn down asyncronously. In most cases this works fine, but sometimes an application listing is created and sent
between removing the identifier from the map of known connections and actually tearing down the target, and that is
where this issue occurs. We will in that case send a listing for the automation target with no connection identifier
(since we removed it from the map already), which is then interpreted as a listing for a pristine automation target. At
that point, it is possible that automation sessions that are being rapidly created and destroyed will attempt to pair
with the seemingly pristine existing session, even though that session is about to be torn down.

  • Source/JavaScriptCore/inspector/remote/RemoteAutomationTarget.h:
  • Source/JavaScriptCore/inspector/remote/cocoa/RemoteConnectionToTargetCocoa.mm:

(Inspector::RemoteConnectionToTarget::close):

  • Source/JavaScriptCore/inspector/remote/cocoa/RemoteInspectorCocoa.mm:

(Inspector::RemoteInspector::listingForAutomationTarget const):

Canonical link: https://commits.webkit.org/250664@main

4:19 PM Changeset in webkit [294360] by Adrian Perez de Castro
  • 1 copy in releases/WebKitGTK/webkit-2.36.2

WebKitGTK 2.36.2

4:17 PM Changeset in webkit [294359] by Adrian Perez de Castro
  • 4 edits in releases/WebKitGTK/webkit-2.36

Unreviewed. Update OptionsGTK.cmake and NEWS for 2.36.2 release

.:

  • Source/cmake/OptionsGTK.cmake: Bump version numbers.

Source/WebKit:

  • gtk/NEWS: Add release notes for 2.36.2.
4:17 PM Changeset in webkit [294358] by Adrian Perez de Castro
  • 1 edit in trunk/Tools/Scripts/check-for-invalid-symbols-in-version-script

[Python3] Fix Tools/Scripts/check-for-invalid-symbols-in-version-script
https://bugs.webkit.org/show_bug.cgi?id=240543

Reviewed by Michael Catanzaro.

  • Tools/Scripts/check-for-invalid-symbols-in-version-script: Change shebang to use "python3", and pass an "encoding" argument to the Popen constructor to read strings instead of bytes from the subprocess pipe.

Canonical link: https://commits.webkit.org/250663@main

4:17 PM Changeset in webkit [294357] by Adrian Perez de Castro
  • 2 edits in releases/WebKitGTK/webkit-2.36/Tools

Fix Tools/Scripts/check-for-invalid-symbols-in-version-script
https://bugs.webkit.org/show_bug.cgi?id=240543

Unreviewed build fix.

  • Tools/Scripts/check-for-invalid-symbols-in-version-script: Change

shebang to use "python3", and pass an "encoding" argument to the Popen
constructor to read strings instead of bytes from the subprocess pipe.

4:17 PM Changeset in webkit [294356] by Adrian Perez de Castro
  • 7 edits in releases/WebKitGTK/webkit-2.36/Tools

Merge r290799 - [Python3] Switch a few more glib scripts to Python3
https://bugs.webkit.org/show_bug.cgi?id=237442

Reviewed by Adrian Perez de Castro.

  • Scripts/check-for-global-bss-symbols-in-webkitgtk-libs: Update

shebang.
(bss_symbols): Decode Popen bytes output.

  • gtk/jhbuildrc: Update shebang.
  • gtk/ycm_extra_conf.py: Ditto.
  • jhbuild/jhbuild-wrapper: Ditto.

(jhbuild_at_expected_revision): Decode Popen bytes output.

  • jhbuild/jhbuildrc_common.py: Remove uneeded shebang.
  • wpe/jhbuildrc: Update shebang.
3:41 PM Changeset in webkit [294355] by Matt Woodrow
  • 1 edit in trunk/Source/WebKit/WebProcess/GPU/graphics/RemoteImageBufferProxy.h

Don't synchronously flush when destroying RemoteImageBufferProxy

Reviewed by Said Abou-Hallawa.

No correctness tests added, since this should just be a performance improvement.

  • WebProcess/GPU/graphics/RemoteImageBufferProxy.h:

(WebKit::RemoteImageBufferProxy::~RemoteImageBufferProxy):

3:31 PM Changeset in webkit [294354] by Karl Rackler
  • 1 delete in trunk/LayoutTests/platform/ios/imported/w3c/web-platform-tests/html/semantics/forms/constraints

[Gardening]: REGRESSION (r294317): [ iOS ] Eight imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation are a consistent failure
https://bugs.webkit.org/show_bug.cgi?id=240538

Unreviewed test gardening.

  • LayoutTests/platform/ios/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-checkValidity-expected.txt: Removed.
  • LayoutTests/platform/ios/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-badInput-expected.txt: Removed.
  • LayoutTests/platform/ios/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-rangeOverflow-expected.txt: Removed.
  • LayoutTests/platform/ios/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-rangeUnderflow-expected.txt: Removed.
  • LayoutTests/platform/ios/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-stepMismatch-expected.txt: Removed.
  • LayoutTests/platform/ios/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valid-expected.txt: Removed.
  • LayoutTests/platform/ios/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valueMissing-expected.txt: Removed.
  • LayoutTests/platform/ios/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate-expected.txt: Removed.

Canonical link: https://commits.webkit.org/250661@main

3:11 PM Changeset in webkit [294353] by yurys@chromium.org
  • 2 edits in trunk/Tools/Scripts/webkitpy/style/checkers

check-webkit-style: allow all upper case value in ResourceRequestBase::Requester
https://bugs.webkit.org/show_bug.cgi?id=240532

Reviewed by Devin Rousso.

  • Tools/Scripts/webkitpy/style/checkers/cpp.py:add style checker exception for

ResourceRequestBase::Requester enum as it contains XHR value which is all
upper case.

  • Tools/Scripts/webkitpy/style/checkers/cpp_unittest.py:

(NoNonVirtualDestructorsTest):

Canonical link: https://commits.webkit.org/250660@main

3:08 PM Changeset in webkit [294352] by Alan Coon
  • 1 copy in tags/WebKit-7614.1.12.4

Tag WebKit-7614.1.12.4.

3:00 PM Changeset in webkit [294351] by yurys@chromium.org
  • 2 edits in trunk/Tools/Scripts/webkitpy/style/checkers

check-webkit-style: validate enums declared with explicit type
https://bugs.webkit.org/show_bug.cgi?id=240478

Reviewed by Devin Rousso.

check-webkit-style now validates case of the enums delcared with explicit
type specifier.

  • Tools/Scripts/webkitpy/style/checkers/cpp.py:

(_EnumState.process_clean_line):

  • Tools/Scripts/webkitpy/style/checkers/cpp_unittest.py:

(NoNonVirtualDestructorsTest):

Canonical link: https://commits.webkit.org/250659@main

2:34 PM Changeset in webkit [294350] by Alan Coon
  • 2 edits in branches/safari-7614.1.14.1-branch/Source/WebCore/accessibility/isolatedtree

Cherry-pick r294328. rdar://problem/92822756

AX: Lazily retrieve AXPropertyName::SupportsPressAction, AXPropertyName::ColumnHeaders, and AXPropertyName::RowHeaders
https://bugs.webkit.org/show_bug.cgi?id=240473

Reviewed by Chris Fleizach.

These properties can be expensive to compute up-front, so retrieve them
lazily.

No test because there is no user-facing behavior change.

  • accessibility/isolatedtree/AXIsolatedObject.cpp: (WebCore::AXIsolatedObject::initializeProperties): (WebCore::AXIsolatedObject::getOrRetrievePropertyValue): (WebCore::AXIsolatedObject::columnHeaders): (WebCore::AXIsolatedObject::rowHeaders): (WebCore::AXIsolatedObject::supportsPressAction const):
  • accessibility/isolatedtree/AXIsolatedObject.h:

Canonical link: https://commits.webkit.org/250648@main

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@294328 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2:34 PM Changeset in webkit [294349] by Alan Coon
  • 7 edits in branches/safari-7614.1.14.1-branch

Cherry-pick r294285. rdar://problem/93385094

Demote -[WKWebView retrieveAccessibilityTreeData:] to SPI
https://bugs.webkit.org/show_bug.cgi?id=240494
rdar://93385094

Reviewed by Tim Horton.

This method was only intended for use in MiniBrowser, and should ship as public API on WKWebView. Move the
declaration and implementation of this over to WKWebViewPrivateForTestingMac.h and WKWebViewTestingMac.mm
(respectively), and additionally prefix this testing-only SPI with an underscore.

  • UIProcess/API/Cocoa/WKWebView.h:
  • UIProcess/API/Cocoa/WKWebView.mm: (-[WKWebView retrieveAccessibilityTreeData:]): Deleted.
  • UIProcess/API/mac/WKWebViewPrivateForTestingMac.h:
  • UIProcess/API/mac/WKWebViewTestingMac.mm: (-[WKWebView _retrieveAccessibilityTreeData:]): Demote -[WKWebView retrieveAccessibilityTreeData:] to SPI https://bugs.webkit.org/show_bug.cgi?id=240494 rdar://93385094

Reviewed by Tim Horton.

See WebKit/ChangeLog for more details.

  • MiniBrowser/mac/WK2BrowserWindowController.m: (-[WK2BrowserWindowController logAccessibilityTrees:]):

Canonical link: https://commits.webkit.org/250629@main

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@294285 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2:34 PM Changeset in webkit [294348] by Alan Coon
  • 66 edits
    2 adds
    2 deletes in branches/safari-7614.1.14.1-branch/Source/WebKit

Cherry-pick r294190. rdar://problem/91006582

SharedBuffer should be copied and then attributed back to WebContent
https://bugs.webkit.org/show_bug.cgi?id=240223
rdar://91006582

Patch by Jean-Yves Avenard <jean-yves.avenard@apple.com> on 2022-05-14
Reviewed by Jer Noble.

Ideally, when mapping an IPCHandle we would prefer to use Copy On Write.
However, there's no support for COW with explicitly-owned memory such as
those created with VM_FLAGS_PURGABLE flag.
As such, when calling mach_vm_map with copy=true argument is set the
entire page will be copied.
It is therefore more performant to manually create a new buffer and copy
the actual content.
The memory can then be blamed on a particular process.

Rework FragmentedSharedBuffer/SharedBuffer IPC's serializer to perform
a copy, partially reverting changes made in bug 233401.

We replace the unnecessary use of SharedMemory::IPCHandle and directly
send SharedBuffer in clipboard and PDF related methods.
Rename SharedBufferCopy to SharedBufferReference to more accurately
describe what it does.

Make new use of the SharedBufferReference class, replacing the use of IPCHandle
in RemoteSourceBufferProxy and RemoteMediaResourceManager.

Rename SharedBufferReference::buffer() into
SharedBufferReference::unsafeBuffer() to give better clarity that accessing
SharedBuffer and SharedMemory should be treated with care.

SharedBuffer sent from trusted processes such as network process should
prefer the use of SharedBufferReference over directly using IPCHandle or
SharedBuffer, it makes optimisation easier and avoid duplicating code.

No observable change, covered by existing tests.

  • GPUProcess/GPUConnectionToWebProcess.cpp: (WebKit::GPUConnectionToWebProcess::remoteMediaResourceManager):
  • GPUProcess/media/RemoteCDMInstanceProxy.h:
  • GPUProcess/media/RemoteImageDecoderAVFProxy.cpp: (WebKit::RemoteImageDecoderAVFProxy::createDecoder): (WebKit::RemoteImageDecoderAVFProxy::setData):
  • GPUProcess/media/RemoteImageDecoderAVFProxy.h:
  • GPUProcess/media/RemoteImageDecoderAVFProxy.messages.in:
  • GPUProcess/media/RemoteMediaResourceManager.cpp: (WebKit::RemoteMediaResourceManager::RemoteMediaResourceManager): (WebKit::RemoteMediaResourceManager::dataReceived):
  • GPUProcess/media/RemoteMediaResourceManager.h:
  • GPUProcess/media/RemoteMediaResourceManager.messages.in:
  • GPUProcess/media/RemoteSourceBufferProxy.cpp: (WebKit::RemoteSourceBufferProxy::append):
  • GPUProcess/media/RemoteSourceBufferProxy.h:
  • GPUProcess/media/RemoteSourceBufferProxy.messages.in:
  • NetworkProcess/NetworkResourceLoader.cpp: (WebKit::NetworkResourceLoader::bufferingTimerFired): (WebKit::NetworkResourceLoader::sendBuffer): (WebKit::NetworkResourceLoader::dataReceivedThroughContentFilter):
  • NetworkProcess/ServiceWorker/ServiceWorkerDownloadTask.cpp: (WebKit::ServiceWorkerDownloadTask::didReceiveData):
  • NetworkProcess/ServiceWorker/ServiceWorkerDownloadTask.h:
  • NetworkProcess/ServiceWorker/ServiceWorkerDownloadTask.messages.in:
  • NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp: (WebKit::ServiceWorkerFetchTask::didReceiveData): (WebKit::ServiceWorkerFetchTask::loadBodyFromPreloader):
  • NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.h:
  • NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.messages.in:
  • Platform/IPC/SharedBufferCopy.cpp: Removed.
  • Platform/IPC/SharedBufferCopy.h: Removed.
  • Platform/IPC/SharedBufferReference.cpp: Added. (IPC::SharedBufferReference::encode const): (IPC::SharedBufferReference::decode): (IPC::SharedBufferReference::unsafeBuffer const): (IPC::SharedBufferReference::data const): (IPC::SharedBufferReference::bufferWithOwner const):
  • Platform/IPC/SharedBufferReference.h: Added. (IPC::SharedBufferReference::SharedBufferReference): (IPC::SharedBufferReference::size const): (IPC::SharedBufferReference::isEmpty const): (IPC::SharedBufferReference::isNull const):
  • Platform/SharedMemory.cpp: (WebKit::transferOwnershipOfMemory const):
  • Platform/SharedMemory.h:
  • Platform/cocoa/SharedMemoryCocoa.cpp: (WebKit::changeOwnershipOfMemory): (WebKit::SharedMemory::Handle::takeOwnershipOfMemory const): (WebKit::SharedMemory::Handle::transferOwnershipOfMemory const): (WebKit::machProtection): (WebKit::SharedMemory::map):
  • Scripts/process-entitlements.sh:
  • Shared/RemoteLayerTree/CGDisplayListImageBufferBackend.cpp: (WebKit::CGDisplayListImageBufferBackend::createBackendHandle const):
  • Shared/RemoteLayerTree/RemoteLayerBackingStore.mm: (WebKit::RemoteLayerBackingStore::applyBackingStoreToLayer):
  • Shared/WebCoreArgumentCoders.cpp: (IPC::encodeSharedBuffer): (IPC::decodeSharedBuffer):
  • Sources.txt:
  • UIProcess/API/Cocoa/WKWebView.mm: (-[WKWebView createPDFWithConfiguration:completionHandler:]):
  • UIProcess/Cocoa/WebPageProxyCocoa.mm: (WebKit::WebPageProxy::platformRegisterAttachment):
  • UIProcess/Cocoa/WebPasteboardProxyCocoa.mm: (WebKit::WebPasteboardProxy::getPasteboardBufferForType): (WebKit::WebPasteboardProxy::setPasteboardBufferForType): (WebKit::WebPasteboardProxy::readBufferFromPasteboard):
  • UIProcess/Cocoa/WebProcessProxyCocoa.mm: (WebKit::WebProcessProxy::sendAudioComponentRegistrations):
  • UIProcess/WebPageProxy.cpp: (WebKit::CompletionHandler<void): (WebKit::WebPageProxy::drawPagesToPDF): (WebKit::WebPageProxy::drawToPDF): (WebKit::WebPageProxy::getLoadDecisionForIcon): (WebKit::WebPageProxy::updateAttachmentAttributes): (WebKit::WebPageProxy::registerAttachmentIdentifierFromData): (WebKit::WebPageProxy::platformRegisterAttachment):
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/WebPasteboardProxy.cpp: (WebKit::WebPasteboardProxy::readBufferFromPasteboard):
  • UIProcess/WebPasteboardProxy.h:
  • UIProcess/WebPasteboardProxy.messages.in:
  • UIProcess/WebURLSchemeTask.cpp: (WebKit::WebURLSchemeTask::didReceiveData):
  • UIProcess/gtk/WebPasteboardProxyGtk.cpp: (WebKit::WebPasteboardProxy::readBuffer):
  • UIProcess/ios/WKContentView.mm: (-[WKContentView _wk_pageCountForPrintFormatter:]):
  • UIProcess/ios/WebPageProxyIOS.mm: (WebKit::WebPageProxy::drawToPDFiOS):
  • UIProcess/mac/WebPageProxyMac.mm: (WebKit::WebPageProxy::dataSelectionForPasteboard):
  • WebKit.xcodeproj/project.pbxproj:
  • WebProcess/GPU/graphics/ImageBufferBackendHandle.h:
  • WebProcess/GPU/media/RemoteImageDecoderAVF.cpp: (WebKit::RemoteImageDecoderAVF::setData):
  • WebProcess/GPU/media/RemoteImageDecoderAVFManager.cpp: (WebKit::RemoteImageDecoderAVFManager::createImageDecoder):
  • WebProcess/GPU/media/RemoteMediaResourceProxy.cpp: (WebKit::RemoteMediaResourceProxy::dataReceived):
  • WebProcess/GPU/media/SourceBufferPrivateRemote.cpp: (WebKit::SourceBufferPrivateRemote::append):
  • WebProcess/Network/WebResourceLoader.cpp: (WebKit::WebResourceLoader::didReceiveData):
  • WebProcess/Network/WebResourceLoader.h:
  • WebProcess/Network/WebResourceLoader.messages.in:
  • WebProcess/Plugins/PDF/PDFPlugin.mm: (WebKit::PDFPlugin::writeItemsToPasteboard):
  • WebProcess/Storage/WebServiceWorkerFetchTaskClient.cpp: (WebKit::WebServiceWorkerFetchTaskClient::didReceiveData): (WebKit::WebServiceWorkerFetchTaskClient::didReceiveBlobChunk):
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:
  • WebProcess/WebCoreSupport/WebEditorClient.cpp: (WebKit::WebEditorClient::registerAttachmentIdentifier):
  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: (WebKit::WebPlatformStrategies::bufferForType): (WebKit::WebPlatformStrategies::setBufferForType): (WebKit::WebPlatformStrategies::readBufferFromClipboard): (WebKit::WebPlatformStrategies::readBufferFromPasteboard):
  • WebProcess/WebCoreSupport/mac/WebDragClientMac.mm: (WebKit::WebDragClient::declareAndWriteDragImage):
  • WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::getContentsAsMHTMLData): (WebKit::WebPage::getSelectionAsWebArchiveData): (WebKit::WebPage::getMainResourceDataOfFrame): (WebKit::WebPage::getResourceDataFromFrame): (WebKit::WebPage::getWebArchiveOfFrame): (WebKit::WebPage::getAccessibilityTreeData): (WebKit::WebPage::drawToPDF): (WebKit::WebPage::drawPagesToPDF): (WebKit::WebPage::didGetLoadDecisionForIcon): (WebKit::WebPage::urlSchemeTaskDidReceiveData): (WebKit::WebPage::updateAttachmentAttributes):
  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
  • WebProcess/WebPage/ios/WebPageIOS.mm: (WebKit::WebPage::getDataSelectionForPasteboard): (WebKit::WebPage::performActionOnElement): (WebKit::WebPage::drawToPDFiOS): (WebKit::WebPage::didFinishLoadForQuickLookDocumentInMainFrame):
  • WebProcess/WebPage/mac/WebPageMac.mm: (WebKit::WebPage::getDataSelectionForPasteboard):
  • WebProcess/WebProcess.h:
  • WebProcess/WebProcess.messages.in:
  • WebProcess/cocoa/WebProcessCocoa.mm: (WebKit::WebProcess::consumeAudioComponentRegistrations):

# Please populate the above commit message. Lines starting
# with '#' will be ignored

# 13 Tim Horton <timothy_horton@apple.com>
#
# ApplePayLogoSystemImage needlessly loads PassKit in WebKit child processes on iOS
# https://bugs.webkit.org/show_bug.cgi?id=240404
# <rdar://93070349>
#
# Reviewed by Chris Dumez.
#
# * UIProcess/Launcher/cocoa/ProcessLauncherCocoa.mm:
# (WebKit::ProcessLauncher::launchProcess): Adopt the WTF implementation of systemDirectoryPath.
# (WebKit::systemDirectoryPath): Moved to WTF.
#
# 13 Wenson Hsieh <Wenson Hsieh>
#
# ImageAnalysisQueue should reanalyze image elements whose image sources have changed
# https://bugs.webkit.org/show_bug.cgi?id=240371
# rdar://93175651
#
# Reviewed by Tim Horton.
#
# To aid with debugging similar issues in the future, plumb the image URL through to
# requestImageAnalysisWithIdentifier, which (if an engineering default is specified) will additionally reveal
# the URL in system logs.
#
# * Platform/cocoa/ImageAnalysisUtilities.h:
# * UIProcess/Cocoa/WebViewImpl.mm:
# (WebKit::WebViewImpl::requestTextRecognition):
# * UIProcess/ios/WKContentViewInteraction.mm:
# (-[WKContentView requestTextRecognition:imageData:identifier:completionHandler:]):
#
# 13 Aditya Keerthi <Aditya Keerthi>
#
# [iOS] Multiple visible find highlights when searching for text after beginning a "find from selection"
# https://bugs.webkit.org/show_bug.cgi?id=240393
# rdar://91441895
#
# Reviewed by Wenson Hsieh.
#
# Some WebKit clients use SPI on WKWebView to support "find from selection"
# functionality (the Cmd+E shortcut). However, to support general
# find functionality, they use new find API that uses a different codepath
# to draw highlights. Mixing use of the API and SPI can currently result
# in two highlights showing up.
#
# To fix, ensure SPI highlights are removed once the API is being used.
# The long term solution is for clients to adopt API for the
# "find from selection" functionality, but in the short term the SPI
# should remain supported.
#
# * WebProcess/WebPage/WebPage.cpp:
# (WebKit::WebPage::clearAllDecoratedFoundText):
#
# 13 Kimmo Kinnunen <kkinnunen@apple.com>
#
# IPC cannot encode, decode Ref<>, causing duplicate code
# https://bugs.webkit.org/show_bug.cgi?id=240160
#
# Reviewed by Antti Koivisto.
#
# Consider reference counted type T:
# Encoding is of signature encode(const T&)
# Decoding is of signature std::optional<Ref<T>> decode()
# This is usable for both RefPtr and Ref use-cases.
#
# Add Ref<T> encoder that is polymorphic to T.
# This way clients do not need to write encoders for
# Ref<T>, RefPtr<T>. They just need one encoder, for T.
#
# When clients do not need to write RefPtr<T>, they make less
# bugs. These will be corrected in future patches.
#
# Having Ref<T> encoders allows clients to use Vector<Ref<T>> encoding
# via Vector<U> encoder, and they would not need to duplicate that
# logic, making less bugs. These will be corrected in future patches.
#
# Remove most IPC::ArgumentCoder<Ref<..>> in favor of IPC::ArgumentCoder<..>.
# In the cases where removal was done, remove also redundant
# IPC::ArgumentCoder<RefPtr<..>>.
#
# * Platform/IPC/ArgumentCoders.h:
# (IPC::ArgumentCoder<RefPtr<T>>::decode):
# (IPC::ArgumentCoder<Ref<T>>::encode):
# (IPC::ArgumentCoder<Ref<T>>::decode):
# * Shared/Cocoa/WebCoreArgumentCodersCocoa.mm:
# (IPC::ArgumentCoder<WebCore::Font>::encodePlatformData):
# (IPC::ArgumentCoder<WebCore::Font>::decodePlatformData):
# * Shared/WebCoreArgumentCoders.cpp:
# (IPC::ArgumentCoder<WebCore::Font>::encode):
# (IPC::ArgumentCoder<Font>::decode):
# (IPC::ArgumentCoder<SystemImage>::encode):
# (IPC::ArgumentCoder<SystemImage>::decode):
# * Shared/WebCoreArgumentCoders.h:
# * Shared/playstation/WebCoreArgumentCodersPlayStation.cpp:
# (IPC::ArgumentCoder<Font>::encodePlatformData):
# (IPC::ArgumentCoder<Font>::decodePlatformData):
# * Shared/soup/WebCoreArgumentCodersSoup.cpp:
# (IPC::ArgumentCoder<Font>::encodePlatformData):
# (IPC::ArgumentCoder<Font>::decodePlatformData):
# * Shared/win/WebCoreArgumentCodersWin.cpp:
# (IPC::ArgumentCoder<Font>::encodePlatformData):
# (IPC::ArgumentCoder<Font>::decodePlatformData):
#
# 13 Tim Horton <timothy_horton@apple.com>
#
# Add UI-side layers for optionally indicating interaction regions
# https://bugs.webkit.org/show_bug.cgi?id=240372
# <rdar://problem/87170289>
#
# Reviewed by Dean Jackson.
#
# * Shared/RemoteLayerTree/RemoteLayerTreePropertyApplier.mm:
# (WebKit::RemoteLayerTreePropertyApplier::applyPropertiesToLayer):
# (WebKit::RemoteLayerTreePropertyApplier::applyHierarchyUpdates):
# Allow RemoteLayerTreeInteractionRegionLayers to add and maintain layers for interaction regions.
#
# * SourcesCocoa.txt:
# * UIProcess/RemoteLayerTree/RemoteLayerTreeInteractionRegionLayers.h: Added.
# * UIProcess/RemoteLayerTree/RemoteLayerTreeInteractionRegionLayers.mm: Added.
# (configureLayerForInteractionRegion):
# (WebKit::interactionRegionForLayer):
# (WebKit::isInteractionRegionLayer):
# (WebKit::setInteractionRegion):
# Box WebCore::InteractionRegion in a Objective-C object and store it on the layer.
# Use this as a key to indicate that a given layer is an interaction region.
#
# (WebKit::appendInteractionRegionLayersForLayer):
# Make sure that interaction region layers are always at the end of the layer's sublayers array.
#
# (WebKit::updateLayersForInteractionRegions):
# Add new layers for interaction regions.
# Maintain the same layer for regions that cover the same area.
# Add a green wash if the default WKInteractionRegionDebugFill is set.
#
# * WebKit.xcodeproj/project.pbxproj:
#
# 13 Simon Fraser <Simon Fraser>
#
# Simplify the usage of DrawGlyphsRecorder
# https://bugs.webkit.org/show_bug.cgi?id=240363
#
# Reviewed by Myles Maxfield.
#
# Move the DeconstructDrawGlyphs switch from inside DrawGlyphsRecorder to
# DisplayList::Recorder, so that DrawGlyphsRecorder is only ever used when deconstructing
# glyphs.
#
# Also, ensure that the only time that glyph deconstruction is enabled is when
# recording display lists via RemoteDisplayListRecorderProxy. There's no reason for
# paintAttachmentText() to need glyph deconstruction.
#
# This is a small perf improvement on the MotionMark Design subtest.
#
# * WebProcess/GPU/graphics/RemoteDisplayListRecorderProxy.cpp:
# (WebKit::RemoteDisplayListRecorderProxy::RemoteDisplayListRecorderProxy):
# (WebKit::m_renderingBackend):
# * WebProcess/GPU/graphics/RemoteDisplayListRecorderProxy.h:
#
# it takes from the XPC message is sent until the XPC reply is received. Add reporting when this happens

# On branch bz/240223
# Your branch is ahead of 'origin/main' by 1 commit.
# (use "git push" to publish your local commits)
#
# Changes to be committed:
# (use "git restore --staged <file>..." to unstage)
# modified: Source/WebKit/ChangeLog
#
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
# 0001-SharedBuffer-should-be-copied-and-then-attributed-ba.patch
#

Canonical link: https://commits.webkit.org/250556@main

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@294190 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2:31 PM Changeset in webkit [294347] by Alan Coon
  • 2 edits in branches/safari-7614.1.14.1-branch/Source/WebKit

Cherry-pick r294175. rdar://problem/91441895

[iOS] Multiple visible find highlights when searching for text after beginning a "find from selection"
https://bugs.webkit.org/show_bug.cgi?id=240393
rdar://91441895

Reviewed by Wenson Hsieh.

Some WebKit clients use SPI on WKWebView to support "find from selection"
functionality (the Cmd+E shortcut). However, to support general
find functionality, they use new find API that uses a different codepath
to draw highlights. Mixing use of the API and SPI can currently result
in two highlights showing up.

To fix, ensure SPI highlights are removed once the API is being used.
The long term solution is for clients to adopt API for the
"find from selection" functionality, but in the short term the SPI
should remain supported.

  • WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::clearAllDecoratedFoundText):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@294175 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2:24 PM Changeset in webkit [294346] by Chris Dumez
  • 91 edits in trunk/Source

Use ASCIILiteral for JSC::HashTableValue::m_key
https://bugs.webkit.org/show_bug.cgi?id=240492

Reviewed by Geoffrey Garen.

Use ASCIILiteral for JSC::HashTableValue::m_key since the key is always a string literal. This
allows JSC::reifyStaticProperties() to call a more optimal Identifier::fromString(VM&, ASCIILiteral)
overload.

  • Source/JavaScriptCore/create_hash_table:
  • Source/JavaScriptCore/runtime/Lookup.h:

(JSC::HashTable::ConstIterator::key const):
(JSC::HashTable::ConstIterator::skipInvalidKeys):
(JSC::reifyStaticProperties):

  • Source/JavaScriptCore/tools/JSDollarVM.cpp:
  • Source/WebCore/bindings/scripts/CodeGeneratorJS.pm:

(GenerateHashTableValueArray):

  • Source/WebCore/bindings/scripts/test/JS/JSDOMWindow.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSDedicatedWorkerGlobalScope.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSExposedStar.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSExposedToWorkerAndWindow.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSPaintWorkletGlobalScope.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSServiceWorkerGlobalScope.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSShadowRealmGlobalScope.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSSharedWorkerGlobalScope.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestCEReactions.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestCEReactionsStringifier.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestCallTracer.cpp:

(WebCore::JSTestCallTracerDOMConstructor::prototypeForStructure):

  • Source/WebCore/bindings/scripts/test/JS/JSTestCallbackInterface.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestClassWithJSBuiltinConstructor.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestConditionalIncludes.cpp:

(WebCore::JSTestConditionalIncludesDOMConstructor::prototypeForStructure):

  • Source/WebCore/bindings/scripts/test/JS/JSTestConditionallyReadWrite.cpp:

(WebCore::JSTestConditionallyReadWriteDOMConstructor::prototypeForStructure):

  • Source/WebCore/bindings/scripts/test/JS/JSTestDOMJIT.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestDefaultToJSON.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestDefaultToJSONFilteredByExposed.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestDefaultToJSONIndirectInheritance.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestDefaultToJSONInherit.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestDefaultToJSONInheritFinal.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestDelegateToSharedSyntheticAttribute.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestDomainSecurity.cpp:

(WebCore::JSTestDomainSecurityDOMConstructor::prototypeForStructure):

  • Source/WebCore/bindings/scripts/test/JS/JSTestEnabledBySetting.cpp:

(WebCore::JSTestEnabledBySettingDOMConstructor::prototypeForStructure):

  • Source/WebCore/bindings/scripts/test/JS/JSTestEnabledForContext.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestEventConstructor.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestEventTarget.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestException.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestGenerateAddOpaqueRoot.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestGlobalObject.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestIndexedSetterNoIdentifier.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestIndexedSetterThrowingException.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestIndexedSetterWithIdentifier.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestInterface.cpp:

(WebCore::JSTestInterfaceDOMConstructor::construct):

  • Source/WebCore/bindings/scripts/test/JS/JSTestInterfaceLeadingUnderscore.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestIterable.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestJSBuiltinConstructor.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestLegacyFactoryFunction.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestLegacyNoInterfaceObject.cpp:

(WebCore::JSTestLegacyNoInterfaceObjectPrototype::finishCreation):

  • Source/WebCore/bindings/scripts/test/JS/JSTestLegacyOverrideBuiltIns.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestMapLike.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestMapLikeWithOverriddenOperations.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedAndIndexedSetterNoIdentifier.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedAndIndexedSetterThrowingException.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedAndIndexedSetterWithIdentifier.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedDeleterNoIdentifier.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedDeleterThrowingException.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedDeleterWithIdentifier.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedDeleterWithIndexedGetter.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedGetterCallWith.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedGetterNoIdentifier.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedGetterWithIdentifier.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedSetterNoIdentifier.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedSetterThrowingException.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedSetterWithIdentifier.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedSetterWithIndexedGetter.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedSetterWithIndexedGetterAndSetter.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedSetterWithLegacyOverrideBuiltIns.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedSetterWithLegacyUnforgeableProperties.cpp:

(WebCore::JSTestNamedSetterWithLegacyUnforgeablePropertiesDOMConstructor::prototypeForStructure):

  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedSetterWithLegacyUnforgeablePropertiesAndLegacyOverrideBuiltIns.cpp:

(WebCore::JSTestNamedSetterWithLegacyUnforgeablePropertiesAndLegacyOverrideBuiltInsDOMConstructor::prototypeForStructure):

  • Source/WebCore/bindings/scripts/test/JS/JSTestNamespaceConst.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestNamespaceObject.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestNode.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp:

(WebCore::JSTestObjDOMConstructor::construct):

  • Source/WebCore/bindings/scripts/test/JS/JSTestOperationConditional.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestOverloadedConstructorsWithSequence.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestPluginInterface.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestPromiseRejectionEvent.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestReadOnlyMapLike.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestReadOnlySetLike.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestReportExtraMemoryCost.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestSetLike.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestSetLikeWithOverriddenOperations.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestStringifier.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestStringifierAnonymousOperation.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestStringifierNamedOperation.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestStringifierOperationImplementedAs.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestStringifierOperationNamedToString.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestStringifierReadOnlyAttribute.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestStringifierReadWriteAttribute.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestTaggedWrapper.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSTestTypedefs.cpp:

(WebCore::JSTestTypedefsDOMConstructor::construct):

  • Source/WebCore/bindings/scripts/test/JS/JSWorkerGlobalScope.cpp:
  • Source/WebCore/bindings/scripts/test/JS/JSWorkletGlobalScope.cpp:

Canonical link: https://commits.webkit.org/250658@main

2:23 PM Changeset in webkit [294345] by Alan Coon
  • 9 edits in branches/safari-7614.1.14.1-branch/Source

Versioning.

WebKit-7614.1.14.1.3

2:18 PM Changeset in webkit [294344] by Alan Coon
  • 9 edits in branches/safari-7614.1.14.0-branch/Source

Versioning.

WebKit-7614.1.14.0.3

2:12 PM Changeset in webkit [294343] by Alan Coon
  • 1 copy in tags/WebKit-7614.1.14.1.2

Tag WebKit-7614.1.14.1.2.

2:11 PM Changeset in webkit [294342] by yurys@chromium.org
  • 1 edit in trunk/metadata/contributors.json

Add my github username to contributors.json
https://bugs.webkit.org/show_bug.cgi?id=240539

Reviewed by Jonathan Bedard.

  • metadata/contributors.json: add my github username.

Canonical link: https://commits.webkit.org/250657@main

1:42 PM Changeset in webkit [294341] by Russell Epstein
  • 1 copy in tags/WebKit-7614.1.14.11.1

Tag WebKit-7614.1.14.11.1.

1:37 PM Changeset in webkit [294340] by Alan Coon
  • 9 edits in branches/safari-7614.1.14.11-branch/Source

Versioning.

WebKit-7614.1.14.11.1

1:22 PM Changeset in webkit [294339] by Jenner@apple.com
  • 1 edit in trunk/LayoutTests/platform/ios-wk2/TestExpectations

[ Gardening ] REGRESSION (250413@main): [ iOS ] system-preview/badge.html is a consistent image failure (240352)
https://bugs.webkit.org/show_bug.cgi?id=240352

Unreviewed test gardening.

  • LayoutTests/platform/ios-wk2/TestExpectations:

Canonical link: https://commits.webkit.org/250656@main

1:15 PM Changeset in webkit [294338] by Russell Epstein
  • 1 copy in branches/safari-7614.1.14.11-branch

New branch.

1:12 PM Changeset in webkit [294337] by Alan Coon
  • 1 copy in tags/WebKit-7614.1.14.0.2

Tag WebKit-7614.1.14.0.2.

1:10 PM Changeset in webkit [294336] by Jonathan Bedard
  • 2 edits in trunk/Tools/CISupport/ews-build

Forbid ChangeLog modification (Follow-up fix)
https://bugs.webkit.org/show_bug.cgi?id=240461
<rdar://93351783>

Reviewed by Aakash Jain.

Run Canonicalize on committed patches.

  • Tools/CISupport/ews-build/steps.py:

(Canonicalize.doStepIf): Deleted.
(Canonicalize.hideStepIf): Deleted.

  • Tools/CISupport/ews-build/steps_unittest.py:
12:58 PM Changeset in webkit [294335] by Russell Epstein
  • 9 edits in branches/safari-7614.1.13-branch/Source

Versioning.

WebKit-7614.1.13.5

12:46 PM Changeset in webkit [294334] by commit-queue@webkit.org
  • 1 edit in trunk/Source/WebCore/platform/mediastream/mac/MockAudioSharedUnit.mm

MockAudioSharedInternalUnit::render should return kAudio_ParamError if input buffer is too small
https://bugs.webkit.org/show_bug.cgi?id=240518
rdar://93409662

Patch by Youenn Fablet <youennf@gmail.com> on 2022-05-17
Reviewed by Eric Carlson.

The input buffer given to render should be large enough to copy enough frameCount samples.
If that is not the case, mimick what the real audio unit is doing and return kAudio_ParamError.
We also more closely mimick the real audio unit by sending chunks of at most AudioSession::sharedSession().bufferSize().

Covered by existing tests.

  • Source/WebCore/platform/mediastream/mac/MockAudioSharedUnit.mm:

(WebCore::MockAudioSharedInternalUnit::generateSampleBuffers):
(WebCore::MockAudioSharedInternalUnit::render):

Canonical link: https://commits.webkit.org/250654@main

12:39 PM Changeset in webkit [294333] by ap@apple.com
  • 1 edit in trunk/ReadMe.md

Clearly recommend checking out from GitHub using https
https://bugs.webkit.org/show_bug.cgi?id=240528

Reviewed by Jonathan Bedard.

  • ReadMe.md:

Canonical link: https://commits.webkit.org/250653@main

12:09 PM Changeset in webkit [294332] by J Pascoe
  • 3 edits in trunk

[WebAuthn] Add SPI to update platform credential's displayName
https://bugs.webkit.org/show_bug.cgi?id=240471
<rdar://93362894>

Reviewed by Brent Fulgham.

  • Tools/TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:

(TestWebKitAPI::TEST):
Updated API test.

  • Source/WebKit/UIProcess/API/Cocoa/_WKWebAuthenticationPanel.h:
  • Source/WebKit/UIProcess/API/Cocoa/_WKWebAuthenticationPanel.mm:

(+[_WKWebAuthenticationPanel setUsernameForLocalCredentialWithGroupAndID:credential:username:]):
(+[_WKWebAuthenticationPanel setDisplayNameForLocalCredentialWithGroupAndID:credential:displayName:]):
This change introduces setDisplayNameForLocalCredentialWithGroupAndID, which will supercede
the existing setUsernameForLocalCredentialWithGroupAndID once all callers are updated.

Canonical link: https://commits.webkit.org/250652@main

12:02 PM Changeset in webkit [294331] by J Pascoe
  • 2 edits in trunk

[WebAuthn] Set displayName in AuthenticatorAssertionResponse for platform authenticator
https://bugs.webkit.org/show_bug.cgi?id=240459
<rdar://93350479>

Reviewed by Brent Fulgham.

  • Tools/TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:

(-[TestWebAuthenticationPanelDelegate panel:selectAssertionResponse:source:completionHandler:]):
(TestWebKitAPI::TEST):
Updated API test to account for displayName.

  • Source/WebKit/UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.mm:

(WebKit::LocalAuthenticatorInternal::getExistingCredentials):

Canonical link: https://commits.webkit.org/250651@main

10:53 AM Changeset in webkit [294330] by commit-queue@webkit.org
  • 66 edits
    2 adds
    2 deletes in trunk/Source

Update to PDF.js v2.14.305
https://bugs.webkit.org/show_bug.cgi?id=240482

Patch by Michael Catanzaro <mcatanzaro@redhat.com> on 2022-05-17
Reviewed by Tim Nguyen.

Besides updating the upstream sources, this commit also adds a
README.webkit to explain the update procedure, and adds
CONFIGURE_DEPENDS to the GLOB_RECURSE command in PdfJSGResources.cmake
to force make/ninja to watch for changes to the files and rerun cmake if
needed, to keep incremental builds happy. Downside: this is probably
slow, and the CMake documentation explicitly warns against doing so. We
may want to generate a .cmake file that manually lists all files instead.

  • Source/ThirdParty/pdfjs/README.webkit: Added.
  • Source/ThirdParty/pdfjs/build/pdf.js:

(webpackUniversalModuleDefinition):
(return.):
(return):

  • Source/ThirdParty/pdfjs/build/pdf.sandbox.js:

(webpackUniversalModuleDefinition):
(return.):

  • Source/ThirdParty/pdfjs/build/pdf.worker.js:

(webpackUniversalModuleDefinition):
(return.):

  • Source/ThirdParty/pdfjs/web/debugger.css: Added.

(#PDFBug):
(#PDFBug .controls):
(#PDFBug .panels):
(#PDFBug .panels > div):
(#PDFBug button.active):
(.debuggerShowText,):
(#PDFBug .stats):
(#PDFBug .stats .title):
(#PDFBug table):
(#PDFBug table.showText):
(#PDFBug table.showText,):
(#PDFBug table.showText td.advance):
(#viewer.textLayer-visible .textLayer):
(#viewer.textLayer-visible .canvasWrapper):
(#viewer.textLayer-visible .canvasWrapper canvas):
(#viewer.textLayer-visible .textLayer span):
(#viewer.textLayer-hover .textLayer span:hover):
(#viewer.textLayer-shadow .textLayer span):

  • Source/ThirdParty/pdfjs/web/debugger.js:

(const.FontInspector.FontInspectorClosure.textLayerClick):
(const.FontInspector.FontInspectorClosure.return.properties):
(const.FontInspector):
(const.StepperManager):
(const.Stepper.StepperClosure.Stepper.prototype.updateOperatorList):
(const.Stepper.StepperClosure.Stepper.prototype.getNextBreakPoint):
(const.Stepper.StepperClosure.Stepper.prototype.goTo):
(const.Stepper.StepperClosure.Stepper):
(const.Stepper):
(const.Stats.Stats.getStatIndex):
(const.Stats):
(const.PDFBug):
(FontInspector.FontInspectorClosure.removeSelection): Deleted.
(FontInspector.FontInspectorClosure.resetSelection): Deleted.
(FontInspector.FontInspectorClosure.selectFont): Deleted.
(FontInspector.FontInspectorClosure.textLayerClick): Deleted.
(FontInspector.FontInspectorClosure.return.init): Deleted.
(FontInspector.FontInspectorClosure.return.cleanup): Deleted.
(FontInspector.FontInspectorClosure.return.get active): Deleted.
(FontInspector.FontInspectorClosure.return.set active): Deleted.
(FontInspector.FontInspectorClosure.return.properties): Deleted.
(FontInspector.FontInspectorClosure.return.fontAdded): Deleted.
(FontInspector): Deleted.
(StepperManager.StepperManagerClosure.return.init): Deleted.
(StepperManager.StepperManagerClosure.return.cleanup): Deleted.
(StepperManager.StepperManagerClosure.return.create): Deleted.
(StepperManager.StepperManagerClosure.return.selectStepper): Deleted.
(StepperManager.StepperManagerClosure.return.saveBreakPoints): Deleted.
(StepperManager): Deleted.
(Stats.Stats): Deleted.
(Stats.Stats.getStatIndex): Deleted.
(Stats): Deleted.
(window.PDFBug): Deleted.

  • Source/ThirdParty/pdfjs/web/images/grab.cur: Removed.
  • Source/ThirdParty/pdfjs/web/images/grabbing.cur: Removed.
  • Source/ThirdParty/pdfjs/web/locale/be/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/ca/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/cs/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/cy/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/da/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/de/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/dsb/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/el/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/en-CA/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/en-GB/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/en-US/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/eo/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/es-AR/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/es-CL/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/es-ES/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/es-MX/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/et/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/eu/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/fr/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/fy-NL/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/ga-IE/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/gn/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/hr/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/hsb/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/hu/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/hye/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/ia/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/id/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/is/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/it/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/ja/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/ka/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/kab/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/kk/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/ko/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/nb-NO/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/nl/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/nn-NO/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/oc/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/pa-IN/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/pl/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/pt-BR/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/pt-PT/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/rm/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/ru/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/sat/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/sc/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/sk/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/sl/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/sv-SE/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/szl/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/tg/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/th/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/tr/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/uk/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/vi/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/zh-CN/viewer.properties:
  • Source/ThirdParty/pdfjs/web/locale/zh-TW/viewer.properties:
  • Source/ThirdParty/pdfjs/web/viewer.css:

(.textLayer):
(:root):
(.pdfViewer .dummyPage):
([dir="rtl"]:root):
(@media (prefers-color-scheme: dark) :root):
(@media screen and (forced-colors: active) :root):
(html,):
(body):
(.hidden,):
([dir="ltr"] #sidebarContainer):
([dir="rtl"] #sidebarContainer):
(#sidebarContainer):
([dir="ltr"] #outerContainer.sidebarOpen #sidebarContainer):
([dir="rtl"] #outerContainer.sidebarOpen #sidebarContainer):
(#outerContainer.sidebarOpen #sidebarContainer):
([dir="ltr"] #sidebarContent):
([dir="rtl"] #sidebarContent):
(#sidebarContent):
(#viewerContainer):
([dir="ltr"] #outerContainer.sidebarOpen #viewerContainer:not(.pdfPresentationMode)):
([dir="rtl"] #outerContainer.sidebarOpen #viewerContainer:not(.pdfPresentationMode)):
(#outerContainer.sidebarOpen #viewerContainer:not(.pdfPresentationMode)):
(#toolbarSidebar):
([dir="ltr"] #sidebarResizer):
([dir="rtl"] #sidebarResizer):
(#sidebarResizer):
([dir="ltr"] #loadingBar):
([dir="rtl"] #loadingBar):
(#loadingBar):
([dir="ltr"] #outerContainer.sidebarOpen #loadingBar):
([dir="rtl"] #outerContainer.sidebarOpen #loadingBar):
(#outerContainer.sidebarOpen #loadingBar):
(#loadingBar .progress):
(#loadingBar .progress.indeterminate):
(#outerContainer.sidebarResizing #sidebarContainer,):
(.findbar,):
([dir="ltr"] .findbar):
([dir="rtl"] .findbar):
(.findbar):
(.findbar > div):
([dir="ltr"] .findbar > div#findbarInputContainer):
([dir="rtl"] .findbar > div#findbarInputContainer):
(.findbar > div#findbarInputContainer):
(.findbar.wrapContainers > div,):
(.findbar.wrapContainers > div#findbarMessageContainer):
(.findbar label:hover,):
(#findInput[data-status="pending"]):
([dir="ltr"] .secondaryToolbar):
([dir="rtl"] .secondaryToolbar):
(.secondaryToolbar):
(#secondaryToolbarButtonContainer):
(.doorHanger:after,):
([dir="ltr"] .doorHanger:after):
([dir="rtl"] .doorHanger:after):
(.doorHanger:after):
([dir="ltr"] .doorHangerRight:after):
([dir="rtl"] .doorHangerRight:after):
(.doorHangerRight:after):
([dir="ltr"] .doorHanger:before):
([dir="rtl"] .doorHanger:before):
(.doorHanger:before):
([dir="ltr"] .doorHangerRight:before):
([dir="rtl"] .doorHangerRight:before):
(.doorHangerRight:before):
(#findResultsCount:empty,):
([dir="ltr"] #toolbarViewerLeft,[dir="ltr"]):
([dir="rtl"] #toolbarViewerLeft,[dir="rtl"]):
(#toolbarViewerLeft,):
([dir="ltr"] #toolbarViewerRight,[dir="ltr"]):
([dir="rtl"] #toolbarViewerRight,[dir="rtl"]):
(#toolbarViewerRight,):
([dir="ltr"] #toolbarViewerLeft > *,[dir="ltr"]):
([dir="rtl"] #toolbarViewerLeft > *,[dir="rtl"]):
(#toolbarViewerLeft > *,):
([dir="ltr"] #toolbarViewerLeft):
([dir="rtl"] #toolbarViewerLeft):
(#toolbarViewerLeft):
([dir="ltr"] #toolbarViewerRight):
([dir="rtl"] #toolbarViewerRight):
(#toolbarViewerRight):
([dir="ltr"] #toolbarSidebarRight):
([dir="rtl"] #toolbarSidebarRight):
(#toolbarSidebarRight):
(.splitToolbarButton):
([dir="ltr"] .splitToolbarButton > .toolbarButton):
([dir="rtl"] .splitToolbarButton > .toolbarButton):
(.splitToolbarButton > .toolbarButton):
(.toolbarButton,):
(.dialogButton:hover,):
(.dialogButton:hover > span,):
(.toolbarButton[disabled],):
(.splitToolbarButton > .toolbarButton:hover,):
([dir="ltr"] #toolbarSidebar .splitToolbarButton > .toolbarButton):
([dir="rtl"] #toolbarSidebar .splitToolbarButton > .toolbarButton):
(#toolbarSidebar .splitToolbarButton > .toolbarButton):
([dir="ltr"] .splitToolbarButtonSeparator):
([dir="rtl"] .splitToolbarButtonSeparator):
(.splitToolbarButtonSeparator):
(.toolbarButton:hover,):
(.secondaryToolbarButton:hover,):
(.toolbarButton.toggled::before,):
(.dropdownToolbarButton):
([dir="ltr"] .dropdownToolbarButton::after):
([dir="rtl"] .dropdownToolbarButton::after):
(.dropdownToolbarButton::after):
([dir="ltr"] .dropdownToolbarButton > select):
([dir="rtl"] .dropdownToolbarButton > select):
(.dropdownToolbarButton > select):
(.dropdownToolbarButton > select:hover,):
(.toolbarButton::before,):
(.dropdownToolbarButton:hover::after,):
(.toolbarButton:hover::before,):
([dir="ltr"] .secondaryToolbarButton::before):
([dir="rtl"] .secondaryToolbarButton::before):
(.secondaryToolbarButton::before):
(#sidebarToggle::before):
(#secondaryToolbarToggle::before):
(#findPrevious::before):
(#findNext::before):
(#previous::before):
(#next::before):
(#zoomOut::before):
(#zoomIn::before):
(#presentationMode::before,):
(#print::before,):
(#openFile::before,):
(#download::before,):
(a.secondaryToolbarButton):
(a.toolbarButton[href="#"],):
(#viewBookmark::before,):
(#viewThumbnail::before):
(#viewOutline::before):
(#viewAttachments::before):
(#viewLayers::before):
(#currentOutlineItem::before):
(#viewFind::before):
([dir="ltr"] .pdfSidebarNotification::after):
([dir="rtl"] .pdfSidebarNotification::after):
(.pdfSidebarNotification::after):
([dir="ltr"] .secondaryToolbarButton):
([dir="rtl"] .secondaryToolbarButton):
(.secondaryToolbarButton):
([dir="ltr"] .secondaryToolbarButton > span):
([dir="rtl"] .secondaryToolbarButton > span):
(.secondaryToolbarButton > span):
(#firstPage::before):
(#lastPage::before):
(#pageRotateCcw::before):
(#pageRotateCw::before):
(#cursorSelectTool::before):
(#cursorHandTool::before):
(#scrollPage::before):
(#scrollVertical::before):
(#scrollHorizontal::before):
(#scrollWrapped::before):
(#spreadNone::before):
(#spreadOdd::before):
(#spreadEven::before):
(#documentProperties::before):
(.verticalToolbarSeparator):
(.horizontalToolbarSeparator):
(.toolbarField):
([dir="ltr"] .toolbarField[type="checkbox"]):
([dir="rtl"] .toolbarField[type="checkbox"]):
(.toolbarField[type="checkbox"]):
(#pageNumber):
(#pageNumber.visiblePageIsLoading):
(#pageNumber::-webkit-inner-spin-button):
([dir="ltr"] #numPages.toolbarLabel):
([dir="rtl"] #numPages.toolbarLabel):
(#numPages.toolbarLabel):
(#thumbnailView,):
(#thumbnailView):
([dir="ltr"] .thumbnail):
([dir="rtl"] .thumbnail):
(.thumbnail):
(#thumbnailView > a:last-of-type > .thumbnail):
([dir="ltr"] .treeWithDeepNesting > .treeItem,[dir="ltr"]):
([dir="rtl"] .treeWithDeepNesting > .treeItem,[dir="rtl"]):
(.treeWithDeepNesting > .treeItem,):
([dir="ltr"] .treeItem > a):
([dir="rtl"] .treeItem > a):
(.treeItem > a):
([dir="ltr"] #layersView .treeItem > a > label):
([dir="rtl"] #layersView .treeItem > a > label):
(#layersView .treeItem > a > label):
([dir="ltr"] .treeItemToggler):
([dir="rtl"] .treeItemToggler):
(.treeItemToggler):
([dir="ltr"] .treeItemToggler::before):
([dir="rtl"] .treeItemToggler::before):
(.treeItemToggler::before):
(.treeItemToggler.treeItemsHidden::before):
(.treeItemToggler.treeItemsHidden ~ .treeItems):
(#errorWrapper):
(#errorMessageLeft):
(#errorSpacer):
(.dialogButton):
(dialog):
(dialog::-webkit-backdrop):
(dialog::backdrop):
(dialog > .row):
(dialog > .row > *):
(dialog .toolbarField):
(dialog .separator):
(dialog .buttonRow):
(dialog :link):
(#passwordDialog):
(#passwordDialog .toolbarField):
(#documentPropertiesDialog):
([dir="ltr"] #documentPropertiesDialog .row > *):
([dir="rtl"] #documentPropertiesDialog .row > *):
(#documentPropertiesDialog .row > *):
(#documentPropertiesDialog .row > span):
(#documentPropertiesDialog .row > p):
(#documentPropertiesDialog .buttonRow):
(.grab-to-pan-grab):
(.grab-to-pan-grab:active,):
(@media print body):
(@media all and (max-width: 840px) [dir="ltr"] #outerContainer.sidebarOpen #viewerContainer):
(@media all and (max-width: 840px) [dir="rtl"] #outerContainer.sidebarOpen #viewerContainer):
(@media all and (max-width: 840px) #outerContainer.sidebarOpen #viewerContainer):
(@media all and (max-width: 640px) [dir="ltr"] .findbar):
(@media all and (max-width: 640px) [dir="rtl"] .findbar):
(@media all and (max-width: 640px) .findbar):
(html): Deleted.
(.hidden): Deleted.
([hidden]): Deleted.
(html[dir="ltr"] #sidebarContainer): Deleted.
(html[dir="rtl"] #sidebarContainer): Deleted.
(#outerContainer.sidebarResizing #sidebarContainer): Deleted.
(html[dir="ltr"] #outerContainer.sidebarOpen #sidebarContainer): Deleted.
(html[dir="rtl"] #outerContainer.sidebarOpen #sidebarContainer): Deleted.
(html[dir="ltr"] #sidebarContent): Deleted.
(html[dir="rtl"] #sidebarContent): Deleted.
(#outerContainer.sidebarResizing #viewerContainer): Deleted.
(html[dir="ltr"]): Deleted.
(html[dir="rtl"]): Deleted.
(html[dir="ltr"] #toolbarSidebar): Deleted.
(html[dir="rtl"] #toolbarSidebar): Deleted.
(html[dir="ltr"] #toolbarSidebar .toolbarButton): Deleted.
(html[dir="rtl"] #toolbarSidebar .toolbarButton): Deleted.
(html[dir="ltr"] #toolbarSidebarRight .toolbarButton): Deleted.
(html[dir="rtl"] #toolbarSidebarRight .toolbarButton): Deleted.
(html[dir="ltr"] #sidebarResizer): Deleted.
(html[dir="rtl"] #sidebarResizer): Deleted.
(html[dir="ltr"] #loadingBar): Deleted.
(html[dir="rtl"] #loadingBar): Deleted.
(html[dir="ltr"] #outerContainer.sidebarOpen #loadingBar): Deleted.
(html[dir="rtl"] #outerContainer.sidebarOpen #loadingBar): Deleted.
(#outerContainer.sidebarResizing #loadingBar): Deleted.
(.findbar.wrapContainers > div): Deleted.
(html[dir="ltr"] .findbar): Deleted.
(html[dir="rtl"] .findbar): Deleted.
(.findbar .splitToolbarButton): Deleted.
(html[dir="ltr"] .findbar .splitToolbarButton): Deleted.
(html[dir="rtl"] .findbar .splitToolbarButton): Deleted.
(.findbar .splitToolbarButton > .toolbarButton): Deleted.
(.findbar .splitToolbarButton > .toolbarButton::before): Deleted.
(.findbar .splitToolbarButton > .findNext): Deleted.
(html[dir="ltr"] .findbar .splitToolbarButton > .findNext): Deleted.
(html[dir="rtl"] .findbar .splitToolbarButton > .findNext): Deleted.
(html[dir="ltr"] #findInput): Deleted.
(html[dir="rtl"] #findInput): Deleted.
(html[dir="rtl"] #findInput[data-status="pending"]): Deleted.
(html[dir="ltr"] .secondaryToolbar): Deleted.
(html[dir="rtl"] .secondaryToolbar): Deleted.
(html[dir="ltr"] .doorHanger:after,): Deleted.
(html[dir="ltr"] .doorHanger:before,): Deleted.
(html[dir="rtl"] .doorHanger:after,): Deleted.
(html[dir="rtl"] .doorHanger:before,): Deleted.
(#findMsg:empty): Deleted.
(html[dir="ltr"] #toolbarViewerLeft,): Deleted.
(html[dir="ltr"] #toolbarViewerRight,): Deleted.
(html[dir="ltr"] #toolbarViewerLeft > *,): Deleted.
(html[dir="rtl"] #toolbarViewerLeft > *,): Deleted.
(html[dir="ltr"] .splitToolbarButton > .toolbarButton): Deleted.
(html[dir="rtl"] .splitToolbarButton > .toolbarButton): Deleted.
(.overlayButton:hover,): Deleted.
(.overlayButton:hover > span,): Deleted.
(.splitToolbarButton.toggled .toolbarButton): Deleted.
(html[dir="ltr"] .splitToolbarButton > .toolbarButton:first-child,): Deleted.
(html[dir="ltr"] .splitToolbarButton > .toolbarButton:last-child,): Deleted.
(.findbar .splitToolbarButtonSeparator): Deleted.
(html[dir="ltr"] .splitToolbarButtonSeparator): Deleted.
(html[dir="rtl"] .splitToolbarButtonSeparator): Deleted.
(html[dir="ltr"] #toolbarViewerLeft > .toolbarButton:first-child,): Deleted.
(html[dir="ltr"] #toolbarViewerRight > .toolbarButton:last-child,): Deleted.
(.secondaryToolbarButton.toggled::before): Deleted.
(.toolbarButton.toggled::before): Deleted.
(html[dir="ltr"] .dropdownToolbarButton::after): Deleted.
(html[dir="rtl"] .dropdownToolbarButton::after): Deleted.
(html[dir="ltr"] .dropdownToolbarButton > select): Deleted.
(html[dir="rtl"] .dropdownToolbarButton > select): Deleted.
(#customScaleOption): Deleted.
(#pageWidthOption): Deleted.
(html[dir="ltr"] .secondaryToolbarButton::before): Deleted.
(html[dir="rtl"] .secondaryToolbarButton::before): Deleted.
(.toolbarButton#sidebarToggle::before): Deleted.
(html[dir="rtl"] .toolbarButton#sidebarToggle::before): Deleted.
(.toolbarButton#secondaryToolbarToggle::before): Deleted.
(html[dir="rtl"] .toolbarButton#secondaryToolbarToggle::before): Deleted.
(.toolbarButton.findPrevious::before): Deleted.
(.toolbarButton.findNext::before): Deleted.
(.toolbarButton.pageUp::before): Deleted.
(.toolbarButton.pageDown::before): Deleted.
(.toolbarButton.zoomOut::before): Deleted.
(.toolbarButton.zoomIn::before): Deleted.
(.toolbarButton.presentationMode::before,): Deleted.
(.toolbarButton.print::before,): Deleted.
(.toolbarButton.openFile::before,): Deleted.
(.toolbarButton.download::before,): Deleted.
(.secondaryToolbarButton.bookmark): Deleted.
(.bookmark[href="#"]): Deleted.
(.toolbarButton.bookmark::before,): Deleted.
(#viewThumbnail.toolbarButton::before): Deleted.
(#viewOutline.toolbarButton::before): Deleted.
(html[dir="rtl"] #viewOutline.toolbarButton::before): Deleted.
(#viewAttachments.toolbarButton::before): Deleted.
(#viewLayers.toolbarButton::before): Deleted.
(#currentOutlineItem.toolbarButton::before): Deleted.
(html[dir="rtl"] #currentOutlineItem.toolbarButton::before): Deleted.
(#viewFind.toolbarButton::before): Deleted.
(.toolbarButton.pdfSidebarNotification::after): Deleted.
(html[dir="ltr"] .toolbarButton.pdfSidebarNotification::after): Deleted.
(html[dir="rtl"] .toolbarButton.pdfSidebarNotification::after): Deleted.
(html[dir="ltr"] .secondaryToolbarButton): Deleted.
(html[dir="rtl"] .secondaryToolbarButton): Deleted.
(html[dir="ltr"] .secondaryToolbarButton > span): Deleted.
(html[dir="rtl"] .secondaryToolbarButton > span): Deleted.
(.secondaryToolbarButton.firstPage::before): Deleted.
(.secondaryToolbarButton.lastPage::before): Deleted.
(.secondaryToolbarButton.rotateCcw::before): Deleted.
(.secondaryToolbarButton.rotateCw::before): Deleted.
(.secondaryToolbarButton.selectTool::before): Deleted.
(.secondaryToolbarButton.handTool::before): Deleted.
(.secondaryToolbarButton.scrollPage::before): Deleted.
(.secondaryToolbarButton.scrollVertical::before): Deleted.
(.secondaryToolbarButton.scrollHorizontal::before): Deleted.
(.secondaryToolbarButton.scrollWrapped::before): Deleted.
(.secondaryToolbarButton.spreadNone::before): Deleted.
(.secondaryToolbarButton.spreadOdd::before): Deleted.
(.secondaryToolbarButton.spreadEven::before): Deleted.
(.secondaryToolbarButton.documentProperties::before): Deleted.
(html[dir="ltr"] .verticalToolbarSeparator): Deleted.
(html[dir="rtl"] .verticalToolbarSeparator): Deleted.
(html[dir="ltr"] .toolbarField[type="checkbox"]): Deleted.
(html[dir="rtl"] .toolbarField[type="checkbox"]): Deleted.
(.toolbarField.pageNumber): Deleted.
(.toolbarField.pageNumber.visiblePageIsLoading): Deleted.
(.toolbarField.pageNumber::-webkit-inner-spin-button,): Deleted.
(html[dir="ltr"] #numPages.toolbarLabel): Deleted.
(html[dir="rtl"] #numPages.toolbarLabel): Deleted.
(html[dir="ltr"] .thumbnail): Deleted.
(html[dir="rtl"] .thumbnail): Deleted.
(#outlineView,): Deleted.
(html[dir="ltr"] .treeWithDeepNesting > .treeItem,): Deleted.
(html[dir="rtl"] .treeWithDeepNesting > .treeItem,): Deleted.
(html[dir="ltr"] .treeItem > a): Deleted.
(html[dir="rtl"] .treeItem > a): Deleted.
(html[dir="ltr"] #layersView .treeItem > a > label): Deleted.
(html[dir="rtl"] #layersView .treesItem > a > label): Deleted.
(html[dir="rtl"] .treeItemToggler.treeItemsHidden::before): Deleted.
(html[dir="ltr"] .treeItemToggler): Deleted.
(html[dir="rtl"] .treeItemToggler): Deleted.
(html[dir="ltr"] .treeItemToggler::before): Deleted.
(html[dir="rtl"] .treeItemToggler::before): Deleted.
(.overlayButton): Deleted.
(#overlayContainer): Deleted.
(#overlayContainer > *): Deleted.
(#overlayContainer > .container): Deleted.
(#overlayContainer > .container > .dialog): Deleted.
(.dialog > .row): Deleted.
(.dialog > .row > *): Deleted.
(.dialog .toolbarField): Deleted.
(.dialog .separator): Deleted.
(.dialog .buttonRow): Deleted.
(.dialog :link): Deleted.
(#passwordOverlay > .dialog): Deleted.
(#passwordOverlay .toolbarField): Deleted.
(#documentPropertiesOverlay > .dialog): Deleted.
(#documentPropertiesOverlay .row > *): Deleted.
(html[dir="ltr"] #documentPropertiesOverlay .row > *): Deleted.
(html[dir="rtl"] #documentPropertiesOverlay .row > *): Deleted.
(#documentPropertiesOverlay .row > span): Deleted.
(#documentPropertiesOverlay .row > p): Deleted.
(#documentPropertiesOverlay .buttonRow): Deleted.
(.clearBoth): Deleted.
(.fileInput): Deleted.
(#PDFBug): Deleted.
(#PDFBug .controls): Deleted.
(#PDFBug .panels): Deleted.
(#PDFBug .panels > div): Deleted.
(#PDFBug button.active): Deleted.
(.debuggerShowText): Deleted.
(.debuggerHideText:hover): Deleted.
(#PDFBug .stats): Deleted.
(#PDFBug .stats .title): Deleted.
(#PDFBug table): Deleted.
(#PDFBug table.showText): Deleted.
(#PDFBug table.showText,): Deleted.
(#PDFBug table.showText td.advance): Deleted.
(#viewer.textLayer-visible .textLayer): Deleted.
(#viewer.textLayer-visible .canvasWrapper): Deleted.
(#viewer.textLayer-visible .canvasWrapper canvas): Deleted.
(#viewer.textLayer-visible .textLayer span): Deleted.
(#viewer.textLayer-hover .textLayer span:hover): Deleted.
(#viewer.textLayer-shadow .textLayer span): Deleted.
(@media print #sidebarContainer,): Deleted.
(@media print #viewerContainer): Deleted.
(@media print #mainContainer,): Deleted.
(@media print .page): Deleted.
(@media print .page[data-loaded]): Deleted.
(@media print .fileInput): Deleted.
(@media all and (max-width: 840px) html[dir="ltr"] #outerContainer.sidebarOpen #viewerContainer): Deleted.
(@media all and (max-width: 840px) html[dir="rtl"] #outerContainer.sidebarOpen #viewerContainer): Deleted.
(@media all and (max-width: 840px) #outerContainer .hiddenLargeView,): Deleted.
(@media all and (max-width: 840px) #outerContainer .visibleLargeView,): Deleted.
(@media all and (max-width: 640px) html[dir="ltr"] .findbar): Deleted.
(@media all and (max-width: 640px) html[dir="rtl"] .findbar): Deleted.

  • Source/ThirdParty/pdfjs/web/viewer.html:
  • Source/ThirdParty/pdfjs/web/viewer.js:

(webpack_require.const.PDFViewerApplication.async initialize):
(webpack_require.const.PDFViewerApplication.async _parseHashParameters):
(webpack_require.const.PDFViewerApplication.async _initializeViewerComponents):
(webpack_require.const.PDFViewerApplication.get supportsFullscreen):
(webpack_require.const.PDFViewerApplication.async close):
(webpack_require.):
(webpack_require):
(exports.checkOnBlobSupport): Deleted.
(webpack_require.DefaultExternalServices.async fallback): Deleted.

  • Source/WebKit/PdfJSGResources.cmake:

Canonical link: https://commits.webkit.org/250650@main

10:49 AM Changeset in webkit [294329] by commit-queue@webkit.org
  • 1 edit in trunk/Source/WebCore/rendering/RenderElement.h

Remove some RenderElement API
https://bugs.webkit.org/show_bug.cgi?id=240520

Patch by Rob Buis <rbuis@igalia.com> on 2022-05-17
Reviewed by Alan Bujtas.

Remove some unused RenderElement API, instead attachRendererInternal/detachRendererInternal are used.

  • Source/WebCore/rendering/RenderElement.h:

(WebCore::RenderElement::setFirstChild): Deleted.
(WebCore::RenderElement::setLastChild): Deleted.

10:47 AM Changeset in webkit [294328] by Tyler Wilcock
  • 2 edits in trunk/Source/WebCore/accessibility/isolatedtree

AX: Lazily retrieve AXPropertyName::SupportsPressAction, AXPropertyName::ColumnHeaders, and AXPropertyName::RowHeaders
https://bugs.webkit.org/show_bug.cgi?id=240473

Reviewed by Chris Fleizach.

These properties can be expensive to compute up-front, so retrieve them
lazily.

No test because there is no user-facing behavior change.

  • accessibility/isolatedtree/AXIsolatedObject.cpp:

(WebCore::AXIsolatedObject::initializeProperties):
(WebCore::AXIsolatedObject::getOrRetrievePropertyValue):
(WebCore::AXIsolatedObject::columnHeaders):
(WebCore::AXIsolatedObject::rowHeaders):
(WebCore::AXIsolatedObject::supportsPressAction const):

  • accessibility/isolatedtree/AXIsolatedObject.h:

Canonical link: https://commits.webkit.org/250648@main

10:35 AM Changeset in webkit [294327] by Jonathan Bedard
  • 4 edits in trunk/Tools/CISupport/ews-build

Forbid ChangeLog modification
https://bugs.webkit.org/show_bug.cgi?id=240461
<rdar://93351783>

Rubber-stamped by Aakash Jain.

  • Tools/CISupport/ews-build/factories.py:

(CommitQueueFactory.init): Only accept patches with commit messages,
respect those commit messages.
(MergeQueueFactoryBase.init): Use commit author in commit.

  • Tools/CISupport/ews-build/factories_unittest.py:

(TestExpectedBuildSteps.test_all_expected_steps):

  • CISupport/ews-build/steps.py:

(CommitPatch): Add step which commits a patch, including it's commit message.
(PushCommitToWebKitRepo.evaluateCommand): Use GitHub checkout on Commit-Queue.
(ValidateSquashed.start): Support committed patches.
(AddReviewerToCommitMessage.start): Ditto.
(DetermineAuthor): Extract author from local commit.
(AddAuthorToCommitMessage): Use 'author' property as set by 'DetermineAuthor'.
(ValidateCommitMessage._files): Support patches.
(ValidateCommitMessage.run): Support committed patches.
(ValidateCommitMessage.getResultSummary): Support patches.
(Canonicalize.run): Support committed patches.
(ValidateSquashed.doStepIf): Deleted.
(ValidateSquashed.hideStepIf): Deleted.
(AddAuthorToCommitMessage.author): Deleted.
(ValidateCommitMessage.doStepIf): Deleted.
(ValidateCommitMessage.hideStepIf): Deleted.

  • Tools/CISupport/ews-build/steps_unittest.py:
10:31 AM Changeset in webkit [294326] by commit-queue@webkit.org
  • 1 edit in trunk/Source/WebKit/UIProcess/Launcher/glib/ProcessLauncherGLib.cpp

Unreviewed, fix typo in comment

Patch by Michael Catanzaro <mcatanzaro@redhat.com> on 2022-05-17

  • Source/WebKit/UIProcess/Launcher/glib/ProcessLauncherGLib.cpp:

(WebKit::ProcessLauncher::launchProcess):

Canonical link: https://commits.webkit.org/250646@main

9:38 AM Changeset in webkit [294325] by Wenson Hsieh
  • 23 edits in trunk

Refactor ImageAnalysisQueue to take source and target identifier strings
https://bugs.webkit.org/show_bug.cgi?id=240485
rdar://93280471

Reviewed by Tim Horton.

Plumb a source identifier string alongside the existing target identifier string when kicking off the image
analysis queue. See WebKit changes for more details.

  • html/shadow/imageOverlay.css:

(div.image-overlay-block):

Drive-by fix: tweak some styles in the image overlay, related to block-style image overlays installed by the
image analysis queue.

  • page/ImageAnalysisQueue.cpp:

(WebCore::ImageAnalysisQueue::enqueueAllImages):
(WebCore::ImageAnalysisQueue::resumeProcessing):
(WebCore::ImageAnalysisQueue::clear):

  • page/ImageAnalysisQueue.h:
  • platform/TextRecognitionOptions.h:

Change -[WKWebView _startImageAnalysis:] to -[WKWebView _startImageAnalysis:target:], and have it take
separate source and target identifier strings. We pass these strings through to the page and store them on
ImageAnalysisQueue, where they eventually bubble back up to the UI process when trigger batch image analysis,
via the new source and target arguments on requestTextRecognition().

No change in behavior; covered by adjusting existing API tests to use the adjusted SPI.

  • Platform/cocoa/ImageAnalysisUtilities.h:
  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _startImageAnalysis:target:]):
(-[WKWebView _startImageAnalysis:]): Deleted.

Rename this SPI entirely; this is safe to rename because the only existing client of this method (apart from API
tests) will simultaneously adopt the new SPI method with both source and target arguments.

  • UIProcess/API/Cocoa/WKWebViewPrivate.h:
  • UIProcess/Cocoa/WebViewImpl.h:
  • UIProcess/Cocoa/WebViewImpl.mm:

(WebKit::WebViewImpl::requestTextRecognition):

  • UIProcess/PageClient.h:

(WebKit::PageClient::requestTextRecognition):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::requestTextRecognition):
(WebKit::WebPageProxy::startImageAnalysis):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/ios/PageClientImplIOS.h:
  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::requestTextRecognition):

  • UIProcess/ios/WKContentViewInteraction.h:
  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView requestTextRecognition:imageData:source:target:completionHandler:]):
(-[WKContentView requestTextRecognition:imageData:identifier:completionHandler:]): Deleted.

  • UIProcess/mac/PageClientImplMac.h:
  • UIProcess/mac/PageClientImplMac.mm:

(WebKit::PageClientImpl::requestTextRecognition):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::requestTextRecognition):
(WebKit::WebPage::startImageAnalysis):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:

See WebKit changes for more information.

  • TestWebKitAPI/Tests/WebKitCocoa/ImageAnalysisTests.mm:

(TestWebKitAPI::TEST):

Canonical link: https://commits.webkit.org/250645@main

8:40 AM Changeset in webkit [294324] by commit-queue@webkit.org
  • 1 edit in trunk/Source/WebCore/rendering/updating/RenderTreeBuilderFirstLetter.cpp

[GTK] Fix build after 250633@main
https://bugs.webkit.org/show_bug.cgi?id=240521

Patch by Philippe Normand <pnormand@igalia.com> on 2022-05-17
Unreviewed, fix GTK build.

  • rendering/updating/RenderTreeBuilderFirstLetter.cpp:

Canonical link: https://commits.webkit.org/250644@main

7:10 AM Changeset in webkit [294323] by Jonathan Bedard
  • 5 edits in trunk/Tools

[Merge-Queue] Forbid ChangeLog modification
https://bugs.webkit.org/show_bug.cgi?id=239413
<rdar://problem/91839553>

Reviewed by Aakash Jain.

  • Tools/CISupport/ews-build/factories.py:

(MergeQueueFactoryBase.init): Remove AddReviewerToChangeLog and ValidateChangeLogAndReviewer.

  • CISupport/ews-build/factories_unittest.py:

(TestExpectedBuildSteps):

  • Tools/CISupport/ews-build/steps.py:

(PushCommitToWebKitRepo.evaluateCommand): Remove AddReviewerToChangeLog.
(ValidateCommitMessage._files): List all modified files.
(ValidateCommitMessage.evaluateCommand): Fail step if no ChangeLog modified.
(AddReviewerToChangeLog): Deleted.

  • Tools/CISupport/ews-build/steps_unittest.py:

Canonical link: https://commits.webkit.org/250643@main

6:22 AM Changeset in webkit [294322] by Chris Lord
  • 15 edits in trunk/Source/WebKit

[WPE] Use new libwpe API to synchronise display refreshes fully to the screen refresh rate
https://bugs.webkit.org/show_bug.cgi?id=240453

Reviewed by Adrian Perez de Castro.

Use new libwpe API to track the target refresh rate and use it in
ThreadedDisplayRefreshMonitor for DisplayUpdate objects.

  • Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:

(WebKit::ThreadedCompositor::targetRefreshRateDidChange):

  • Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h:
  • Shared/CoordinatedGraphics/threadedcompositor/ThreadedDisplayRefreshMonitor.cpp:

(WebKit::ThreadedDisplayRefreshMonitor::ThreadedDisplayRefreshMonitor):
(WebKit::ThreadedDisplayRefreshMonitor::setTargetRefreshRate):

  • Shared/CoordinatedGraphics/threadedcompositor/ThreadedDisplayRefreshMonitor.h:
  • UIProcess/API/wpe/WPEView.cpp:

(WKWPE::m_backend):

  • UIProcess/CoordinatedGraphics/DrawingAreaProxyCoordinatedGraphics.cpp:

(WebKit::DrawingAreaProxyCoordinatedGraphics::targetRefreshRateDidChange):

  • UIProcess/CoordinatedGraphics/DrawingAreaProxyCoordinatedGraphics.h:
  • UIProcess/DrawingAreaProxy.h:
  • WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphics.cpp:

(WebKit::DrawingAreaCoordinatedGraphics::targetRefreshRateDidChange):

  • WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphics.h:
  • WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.cpp:

(WebKit::LayerTreeHost::targetRefreshRateDidChange):

  • WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.h:
  • WebProcess/WebPage/DrawingArea.h:

(WebKit::DrawingArea::targetRefreshRateDidChange):

  • WebProcess/WebPage/DrawingArea.messages.in:
6:22 AM Changeset in webkit [294321] by commit-queue@webkit.org
  • 2 edits in trunk

[GTK] Build MiniBrowser by default
https://bugs.webkit.org/show_bug.cgi?id=240515

Patch by Michael Catanzaro <Michael Catanzaro> on 2022-05-17
Reviewed by Philippe Normand.

  • Source/cmake/OptionsGTK.cmake:

Canonical link: https://commits.webkit.org/250641@main

6:13 AM Changeset in webkit [294320] by aakash_jain@apple.com
  • 1 edit in trunk/Tools/CISupport/ews-build/config.json

[ews] Move few bots from mac wk1 queues to wk2 queue
https://bugs.webkit.org/show_bug.cgi?id=240513

Reviewed by Jonathan Bedard.

  • Tools/CISupport/ews-build/config.json:

Canonical link: https://commits.webkit.org/250640@main

5:12 AM Changeset in webkit [294319] by ysuzuki@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

[JSC] Always have non nullptr for WebAssembly.Memory buffer
https://bugs.webkit.org/show_bug.cgi?id=240510

Reviewed by Mark Lam.

This patch adds CagedUniquePtr to allocate a pointer for that.

  • Source/JavaScriptCore/runtime/ArrayBuffer.cpp:

(JSC::ArrayBuffer::makeShared):

  • Source/JavaScriptCore/wasm/js/JSWebAssemblyMemory.cpp:

(JSC::JSWebAssemblyMemory::buffer):

Canonical link: https://commits.webkit.org/250639@main

4:05 AM Changeset in webkit [294318] by ntim@apple.com
  • 1 edit
    2 adds in trunk/LayoutTests

[iOS] Rebaseline 2 tests in imported/w3c/web-platform-tests/html/semantics/forms/
https://bugs.webkit.org/show_bug.cgi?id=240512

Unreviewed test gardening.

  • LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/beforeinput.tentative-expected.txt: Added.
  • LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/input-whitespace-expected.txt: Added.

Canonical link: https://commits.webkit.org/250638@main

2:47 AM Changeset in webkit [294317] by commit-queue@webkit.org
  • 12 edits in trunk/Source

ImageBufferIOSurfaceBackend context setup and teardown functions are redundant and error-prone
https://bugs.webkit.org/show_bug.cgi?id=240452

Patch by Kimmo Kinnunen <kkinnunen@apple.com> on 2022-05-17
Reviewed by Simon Fraser.

Source/WebCore:

Remove ImageBuffer::releaseGraphicsContext().
It only made sense to be used before ImageBuffer::setVolatile().
The call setVolatile only made sense after releaseGraphicsContext().
Instead, make releasing the graphics context part of the
setVolatile() contract.

ImageBufferBackend::applyBaseTransformToContext() invoked a virtual
function context(). This was called from the middle of the inheritance chain,
from a constructor.
If a class later in the inheritance chain would override context(), the
call would not be invoked correctly. Currently no class suffered from this, but
in future some might.
ImageBufferIOSurfaceBackend call to applyBaseTransformToContext() would also
recurse through context() back to applyBaseTransformToContext() in non-intuitive
way through overridden ::context() which would re-enter applyBaseTransformToContext().
Based on current knowledge doubly invoking the logic did not cause any harm.

  • platform/graphics/ConcreteImageBuffer.h:
  • platform/graphics/ImageBuffer.h:
  • platform/graphics/ImageBufferBackend.cpp:

(WebCore::ImageBufferBackend::applyBaseTransform):
(WebCore::ImageBufferBackend::applyBaseTransformToContext const): Deleted.

  • platform/graphics/ImageBufferBackend.h:

(WebCore::ImageBufferBackend::isInUse const):
(WebCore::ImageBufferBackend::releaseGraphicsContext): Deleted.

  • platform/graphics/cg/ImageBufferCGBitmapBackend.cpp:

(WebCore::ImageBufferCGBitmapBackend::ImageBufferCGBitmapBackend):

  • platform/graphics/cg/ImageBufferIOSurfaceBackend.cpp:

(WebCore::ImageBufferIOSurfaceBackend::ImageBufferIOSurfaceBackend):
(WebCore::ImageBufferIOSurfaceBackend::context const):
(WebCore::ImageBufferIOSurfaceBackend::setVolatile):
(WebCore::ImageBufferIOSurfaceBackend::setNonVolatile):
(WebCore::ImageBufferIOSurfaceBackend::initializeContext):
(WebCore::ImageBufferIOSurfaceBackend::releaseGraphicsContext): Deleted.

  • platform/graphics/cg/ImageBufferIOSurfaceBackend.h:

Source/WebKit:

Adjust after removing ImageBuffer::releaseGraphicsContext().

  • GPUProcess/graphics/RemoteRenderingBackend.cpp:

(WebKit::RemoteRenderingBackend::markSurfacesVolatile):

  • Shared/RemoteLayerTree/RemoteLayerBackingStore.mm:

(WebKit::RemoteLayerBackingStore::setBufferVolatile):

  • WebProcess/GPU/graphics/ImageBufferShareableBitmapBackend.h:
2:08 AM Changeset in webkit [294316] by Ziran Sun
  • 11 edits
    5 deletes in trunk/LayoutTests

tidy up some test expectations files after resync html/semantics/forms tests
https://bugs.webkit.org/show_bug.cgi?id=240451

Reviewed by Tim Nguyen.

LayoutTests/imported/w3c:

  • web-platform-tests/html/semantics/forms/constraints/form-validation-checkValidity-expected.txt:
  • web-platform-tests/html/semantics/forms/constraints/form-validation-reportValidity-expected.txt:
  • web-platform-tests/html/semantics/forms/constraints/form-validation-validity-badInput-expected.txt:
  • web-platform-tests/html/semantics/forms/constraints/form-validation-validity-rangeOverflow-expected.txt:
  • web-platform-tests/html/semantics/forms/constraints/form-validation-validity-rangeUnderflow-expected.txt:
  • web-platform-tests/html/semantics/forms/constraints/form-validation-validity-stepMismatch-expected.txt:
  • web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valid-expected.txt:
  • web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valueMissing-expected.txt:
  • web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate-expected.txt:

LayoutTests:

This is to tidy up some test expectation files are WPT upstream resync at bug 240301.

  • platform/gtk/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-checkValidity-expected.txt: Removed.
  • platform/gtk/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-reportValidity-expected.txt: Removed.
  • platform/gtk/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-badInput-expected.txt: Removed.
  • platform/gtk/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-rangeOverflow-expected.txt: Removed.
  • platform/gtk/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-rangeUnderflow-expected.txt: Removed.
  • platform/gtk/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-stepMismatch-expected.txt: Removed.
  • platform/gtk/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valid-expected.txt: Removed.
  • platform/gtk/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valueMissing-expected.txt: Removed.
  • platform/gtk/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate-expected.txt: Removed.
  • platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-checkValidity-expected.txt: Removed.
  • platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-reportValidity-expected.txt: Removed.
  • platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-badInput-expected.txt: Removed.
  • platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-rangeOverflow-expected.txt: Removed.
  • platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-rangeUnderflow-expected.txt: Removed.
  • platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-stepMismatch-expected.txt: Removed.
  • platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valid-expected.txt: Removed.
  • platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valueMissing-expected.txt: Removed.
  • platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate-expected.txt: Removed.
  • platform/ios/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-reportValidity-expected.txt: Removed.
  • platform/mac-wk1/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-badInput-expected.txt: Removed.
  • platform/mac-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-checkValidity-expected.txt: Removed.
  • platform/mac-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-reportValidity-expected.txt: Removed.
  • platform/mac-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-badInput-expected.txt: Removed.
  • platform/mac-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-rangeOverflow-expected.txt: Removed.
  • platform/mac-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-rangeUnderflow-expected.txt: Removed.
  • platform/mac-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-stepMismatch-expected.txt: Removed.
  • platform/mac-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valid-expected.txt: Removed.
  • platform/mac-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-validity-valueMissing-expected.txt: Removed.
  • platform/mac-wk2/imported/w3c/web-platform-tests/html/semantics/forms/constraints/form-validation-willValidate-expected.txt: Removed.
1:38 AM Changeset in webkit [294315] by commit-queue@webkit.org
  • 3 edits in trunk

Allow Service Workers to run for a little longer in case of functional events
https://bugs.webkit.org/show_bug.cgi?id=240454

Patch by Youenn Fablet <youennf@gmail.com> on 2022-05-17
Reviewed by Chris Dumez.

Functional events should usually trigger opening a new web page on the same origin as the service worker.
There are good chances that the service worker will control the new web page, it is thus potentially useful to
keep the service worker around for a bit, to not pay the cost of stopping and restarting it.
To do so, we introduce a timer in SWServerWorker that handles the termination in case of functional events/debugger.

Covered by updated API test.

  • Tools/TestWebKitAPI/Tests/WebKitCocoa/PushAPI.mm:
  • Source/WebCore/workers/service/server/SWServerWorker.cpp:

(WebCore::SWServerWorker::startTermination):
(WebCore::SWServerWorker::shouldBeTerminated const):
(WebCore::SWServerWorker::terminateIfPossible):
(WebCore::SWServerWorker::terminationIfPossibleTimerFired):

  • Source/WebCore/workers/service/server/SWServerWorker.h:

Canonical link: https://commits.webkit.org/250635@main

May 16, 2022:

11:18 PM Changeset in webkit [294314] by Alan Coon
  • 2 edits in branches/safari-7614.1.14.0-branch/Source/WTF

Cherry-pick r294272. rdar://problem/93118830

Correct erroneous guard in Platform file
https://bugs.webkit.org/show_bug.cgi?id=240469
<rdar://problem/93358873>

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@294272 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11:18 PM Changeset in webkit [294313] by Alan Coon
  • 3 edits in branches/safari-7614.1.14.0-branch/Source/WTF

Cherry-pick r294265. rdar://problem/93118830

Remove abandoned WebKitAdditionsFeature1 flag (240462)
https://bugs.webkit.org/show_bug.cgi?id=240462
<rdar://93353298>

Reviewed by Alex Christensen.

Remove the abandoned WebKitAdditionsFeature1 preference, since
it ended up not being needed and now just complicates the build
and generated preferences.

  • Scripts/Preferences/WebPreferencesExperimental.yaml:
  • wtf/ExperimentalFeatureNames.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@294265 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11:17 PM Changeset in webkit [294312] by Alan Coon
  • 18 edits in branches/safari-7614.1.14.0-branch

Cherry-pick r294264. rdar://problem/93118830

Remove abandoned UseScreenCaptureKit preference
https://bugs.webkit.org/show_bug.cgi?id=240460
<rdar://problem/93351960>

Reviewed by Youenn Fablet.

We no longer need this switch to activate ScreenCaptureKit, and this code is no
longer used. We should remove it to simplify the build and reduce complexity.

Source/WebCore:

  • platform/mediastream/RealtimeMediaSourceCenter.h: (WebCore::RealtimeMediaSourceCenter::useScreenCaptureKit const): Deleted. (WebCore::RealtimeMediaSourceCenter::setUseScreenCaptureKit): Deleted.

Source/WebKit:

  • GPUProcess/GPUProcess.cpp: (WebKit::GPUProcess::setUseScreenCaptureKit): Deleted.
  • GPUProcess/GPUProcess.h:
  • GPUProcess/GPUProcess.messages.in:
  • Shared/WebPreferencesDefaultValues.cpp: (WebKit::defaultScreenCaptureKitEnabled): Deleted.
  • Shared/WebPreferencesDefaultValues.h:
  • UIProcess/API/Cocoa/WKPreferences.mm: (-[WKPreferences _useScreenCaptureKit]): Deleted. (-[WKPreferences _setUseScreenCaptureKit:]): Deleted.
  • UIProcess/API/Cocoa/WKPreferencesPrivate.h:
  • UIProcess/GPU/GPUProcessProxy.cpp: (WebKit::GPUProcessProxy::updatePreferences):
  • UIProcess/UserMediaPermissionRequestManagerProxy.cpp: (WebKit::UserMediaPermissionRequestManagerProxy::syncWithWebCorePrefs const):

Source/WTF:

  • Scripts/Preferences/WebPreferencesExperimental.yaml:

Tools:

  • TestWebKitAPI/Tests/WebKitCocoa/GetDisplayMediaWindowAndScreen.mm: (TestWebKitAPI::TEST):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@294264 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11:17 PM Changeset in webkit [294311] by Alan Coon
  • 10 edits in branches/safari-7614.1.14.0-branch

Cherry-pick r294208. rdar://problem/93118830

AX: Remove CSSDisplayContentsAXSupportEnabled flag
https://bugs.webkit.org/show_bug.cgi?id=240409

Reviewed by Chris Fleizach.

Source/WebCore:

We added initial support without using this flag and will continue to
fix bugs as we find them, making this flag unnecessary.

  • page/RuntimeEnabledFeatures.h: (WebCore::RuntimeEnabledFeatures::setCSSDisplayContentsAXSupportEnabled): Deleted. (WebCore::RuntimeEnabledFeatures::cssDisplayContentsAXSupportEnabled const): Deleted.

Source/WebKitLegacy/mac:

We added initial support without using this flag and will continue to
fix bugs as we find them, making this flag unnecessary.

  • WebView/WebPreferenceKeysPrivate.h:
  • WebView/WebPreferences.mm: (-[WebPreferences cssDisplayContentsAXSupportEnabled]): Deleted. (-[WebPreferences setCSSDisplayContentsAXSupportEnabled:]): Deleted.
  • WebView/WebPreferencesPrivate.h:

Source/WTF:

  • Scripts/Preferences/WebPreferencesInternal.yaml:

Tools:

  • DumpRenderTree/TestOptions.cpp: (WTR::TestOptions::defaults):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@294208 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11:17 PM Changeset in webkit [294310] by Alan Coon
  • 2 edits in branches/safari-7614.1.14.1-branch/Source/WTF

Cherry-pick r294272. rdar://problem/93118830

Correct erroneous guard in Platform file
https://bugs.webkit.org/show_bug.cgi?id=240469
<rdar://problem/93358873>

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@294272 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11:17 PM Changeset in webkit [294309] by Alan Coon
  • 3 edits in branches/safari-7614.1.14.1-branch/Source/WTF

Cherry-pick r294265. rdar://problem/93118830

Remove abandoned WebKitAdditionsFeature1 flag (240462)
https://bugs.webkit.org/show_bug.cgi?id=240462
<rdar://93353298>

Reviewed by Alex Christensen.

Remove the abandoned WebKitAdditionsFeature1 preference, since
it ended up not being needed and now just complicates the build
and generated preferences.

  • Scripts/Preferences/WebPreferencesExperimental.yaml:
  • wtf/ExperimentalFeatureNames.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@294265 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11:17 PM Changeset in webkit [294308] by Alan Coon
  • 18 edits in branches/safari-7614.1.14.1-branch

Cherry-pick r294264. rdar://problem/93118830

Remove abandoned UseScreenCaptureKit preference
https://bugs.webkit.org/show_bug.cgi?id=240460
<rdar://problem/93351960>

Reviewed by Youenn Fablet.

We no longer need this switch to activate ScreenCaptureKit, and this code is no
longer used. We should remove it to simplify the build and reduce complexity.

Source/WebCore:

  • platform/mediastream/RealtimeMediaSourceCenter.h: (WebCore::RealtimeMediaSourceCenter::useScreenCaptureKit const): Deleted. (WebCore::RealtimeMediaSourceCenter::setUseScreenCaptureKit): Deleted.

Source/WebKit:

  • GPUProcess/GPUProcess.cpp: (WebKit::GPUProcess::setUseScreenCaptureKit): Deleted.
  • GPUProcess/GPUProcess.h:
  • GPUProcess/GPUProcess.messages.in:
  • Shared/WebPreferencesDefaultValues.cpp: (WebKit::defaultScreenCaptureKitEnabled): Deleted.
  • Shared/WebPreferencesDefaultValues.h:
  • UIProcess/API/Cocoa/WKPreferences.mm: (-[WKPreferences _useScreenCaptureKit]): Deleted. (-[WKPreferences _setUseScreenCaptureKit:]): Deleted.
  • UIProcess/API/Cocoa/WKPreferencesPrivate.h:
  • UIProcess/GPU/GPUProcessProxy.cpp: (WebKit::GPUProcessProxy::updatePreferences):
  • UIProcess/UserMediaPermissionRequestManagerProxy.cpp: (WebKit::UserMediaPermissionRequestManagerProxy::syncWithWebCorePrefs const):

Source/WTF:

  • Scripts/Preferences/WebPreferencesExperimental.yaml:

Tools:

  • TestWebKitAPI/Tests/WebKitCocoa/GetDisplayMediaWindowAndScreen.mm: (TestWebKitAPI::TEST):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@294264 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11:17 PM Changeset in webkit [294307] by Alan Coon
  • 10 edits in branches/safari-7614.1.14.1-branch

Cherry-pick r294208. rdar://problem/93118830

AX: Remove CSSDisplayContentsAXSupportEnabled flag
https://bugs.webkit.org/show_bug.cgi?id=240409

Reviewed by Chris Fleizach.

Source/WebCore:

We added initial support without using this flag and will continue to
fix bugs as we find them, making this flag unnecessary.

  • page/RuntimeEnabledFeatures.h: (WebCore::RuntimeEnabledFeatures::setCSSDisplayContentsAXSupportEnabled): Deleted. (WebCore::RuntimeEnabledFeatures::cssDisplayContentsAXSupportEnabled const): Deleted.

Source/WebKitLegacy/mac:

We added initial support without using this flag and will continue to
fix bugs as we find them, making this flag unnecessary.

  • WebView/WebPreferenceKeysPrivate.h:
  • WebView/WebPreferences.mm: (-[WebPreferences cssDisplayContentsAXSupportEnabled]): Deleted. (-[WebPreferences setCSSDisplayContentsAXSupportEnabled:]): Deleted.
  • WebView/WebPreferencesPrivate.h:

Source/WTF:

  • Scripts/Preferences/WebPreferencesInternal.yaml:

Tools:

  • DumpRenderTree/TestOptions.cpp: (WTR::TestOptions::defaults):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@294208 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11:17 PM Changeset in webkit [294306] by Ross Kirsling
  • 6 edits in trunk

ISO8601::parseCalendarTime must throw in cases of time/date ambiguity
https://bugs.webkit.org/show_bug.cgi?id=240498

Reviewed by Yusuke Suzuki.

The CalendarTime production (https://tc39.es/proposal-temporal/#prod-CalendarTime) goes to a lot of trouble
to ensure that ambiguous parses are not allowed; this patch ensures that our implementation does so too.

In short:

  • CalendarTime is basically TimeDesignator[opt] TimeSpec TimeZone[opt] Calendar[opt].
  • When we don't have a TimeDesignator or a Calendar, we're in danger of ambiguity: YYYY-MM, YYYYMM, MM-DD, MMDD look the same as HHMM-UU, HHMMSS, HH-UU, HHMM (where UU is a UTC offset).
  • The solution is to attempt to reparse the string as one of these date formats and throw if we succeed.
  • stress/temporal-plaintime.js: Adjust expectations.
  • test262/expectations.yaml: Mark 10 test cases as passing.
  • runtime/ISO8601.cpp:

(JSC::ISO8601::isAmbiguousCalendarTime):
(JSC::ISO8601::parseCalendarTime):
(JSC::ISO8601::daysInMonth):

  • runtime/ISO8601.h:

Canonical link: https://commits.webkit.org/250634@main

11:11 PM Changeset in webkit [294305] by Alan Coon
  • 4 edits
    3 adds in branches/safari-613-branch

Cherry-pick r294012. rdar://problem/92425915

Fix inertness of pseudo-elements
https://bugs.webkit.org/show_bug.cgi?id=239831

Reviewed by Antti Koivisto.

When we adjust style for a pseudo-element, m_element and document().activeModalDialog() are both null. So we accidentally reset inertness to false in those cases.

Fix this by making checking for m_element's existence too.

LayoutTests/imported/w3c:

  • web-platform-tests/inert/inert-pseudo-element-hittest-expected.txt: Added.
  • web-platform-tests/inert/inert-pseudo-element-hittest.html: Added.

Source/WebCore:

Test: imported/w3c/web-platform-tests/inert/inert-pseudo-element-hittest.html

  • style/StyleAdjuster.cpp: (WebCore::Style::Adjuster::adjust const):

LayoutTests:

  • platform/ios-wk2/imported/w3c/web-platform-tests/inert/inert-pseudo-element-hittest-expected.txt: Added.

Canonical link: https://commits.webkit.org/250446@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@294012 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11:11 PM Changeset in webkit [294304] by Alan Coon
  • 16 edits
    2 adds in branches/safari-613-branch

Cherry-pick r293987. rdar://problem/92775435

Implement CSS :modal pseudo class
https://bugs.webkit.org/show_bug.cgi?id=240109

Reviewed by Simon Fraser.

LayoutTests/imported/w3c:

Add and extend tests for :modal pseudo-class.

  • web-platform-tests/css/selectors/invalidation/modal-pseudo-class-in-has-expected.txt: Added.
  • web-platform-tests/css/selectors/invalidation/modal-pseudo-class-in-has.html: Added.
  • web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-show-modal.html:

Source/WebCore:

Test: imported/w3c/web-platform-tests/css/selectors/invalidation/modal-pseudo-class-in-has.html

Renames :-internal-modal-dialog to :modal and adds :has() invalidation support.

  • css/CSSSelector.cpp: (WebCore::CSSSelector::selectorText const):
  • css/CSSSelector.h:
  • css/SelectorChecker.cpp: (WebCore::SelectorChecker::checkOne const):
  • css/SelectorCheckerTestFunctions.h: (WebCore::matchesModalPseudoClass): (WebCore::matchesModalDialogPseudoClass): Deleted.
  • css/SelectorPseudoClassAndCompatibilityElementMap.in:
  • css/dialog.css: (dialog:modal): (dialog:-internal-modal-dialog): Deleted.
  • css/parser/CSSSelectorParser.cpp: (WebCore::CSSSelectorParser::consumePseudo):
  • cssjit/SelectorCompiler.cpp: (WebCore::SelectorCompiler::JSC_DEFINE_JIT_OPERATION): (WebCore::SelectorCompiler::addPseudoClassType):
  • html/HTMLDialogElement.cpp: (WebCore::HTMLDialogElement::showModal): (WebCore::HTMLDialogElement::close): (WebCore::HTMLDialogElement::removedFromAncestor): (WebCore::HTMLDialogElement::setIsModal):
  • html/HTMLDialogElement.h:

LayoutTests:

Removes :-internal-modal-dialog from internal pseudo classes.

  • fast/css/pseudo-class-internal-expected.txt:
  • fast/css/pseudo-class-internal.html:

Canonical link: https://commits.webkit.org/250424@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@293987 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11:11 PM Changeset in webkit [294303] by Alan Coon
  • 2 edits in branches/safari-613-branch/Source/WebCore

Cherry-pick r293981. rdar://problem/92084291

ASSERT in WebCore::RenderTreeUpdater::updateRenderTree
https://bugs.webkit.org/show_bug.cgi?id=240237

Reviewed by Antti Koivisto.

There are instances where calling findRenderingRoots() in RenderTreeUpdater::commit will
returns two rendering roots, with one of them being an ancestor of the other.

Calling updateRenderTree on the ancestor rendering root could end up removing
the renderer of the descendant rendering root.

This patch merges findRenderingRoots() to RenderTreeUpdater::commit() which, and now we will
ignore the nested root if there is no longer a renderer when it is being processed.

  • rendering/updating/RenderTreeUpdater.cpp:

Canonical link: https://commits.webkit.org/250419@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@293981 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11:10 PM Changeset in webkit [294302] by Alan Coon
  • 2 edits in branches/safari-613-branch/Source/bmalloc

Cherry-pick r293952. rdar://problem/92913312

Force PAS_ASSERT to generate different crash sites for each assertion.
https://bugs.webkit.org/show_bug.cgi?id=240209

Reviewed by Yusuke Suzuki.

Clang currently optimizes all crash sites into one in each function. Hence, if we
get a crash address at the 1 crash site, we don't know which failed assertion got
us there. This patch uses an asm statement to force Clang to emit a different
crash site for each assertion.

Benchmarks show that performance is neutral on both Jetstream2 and Speedometer2.

Size-wise, there is some increase. The following is the "size" output on
JavaScriptCore on M1:

TEXT. DATA OBJC others dec hex

old 19628032 180224 0 18792448 38600704 24d0000
new 19644416 180224 0 19251200 39075840 2544000

diff 16384 0 0 458752 475136

The increase in the "others" categories are mostly in the String Table, Symbol
Table, and Function Start Addresses. These take up disk space but should not
impact RAM usage unless they are accessed by a a debugger.

  • libpas/src/libpas/pas_utils.h: (pas_assertion_failed):

Canonical link: https://commits.webkit.org/250398@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@293952 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11:10 PM Changeset in webkit [294301] by Alan Coon
  • 4 edits in branches/safari-613-branch/Source

Cherry-pick r293894. rdar://problem/74201964

[iOS] Infinite recursion at -[WKFullScreenWindowController _exitFullscreenImmediately]
https://bugs.webkit.org/show_bug.cgi?id=239744
<rdar://74201964>

Reviewed by Eric Carlson.

Source/WebCore:

Even after fullscreen is correctly torn down during an immediate exit, fullscreen can never again
be entered for the lifetime of the page. This is due to the ivar m_pendingExitFullscreen being set
to true with no opportunity for that state to be cleared. This occurs because the callbacks for
exiting fullscreen are performed before the lambda form FullscreenManager::exitFullscreen() is
called.

Set m_pendingExitFullscreen inside exitFullscreen(), rather than the lambda, and clear it explicitly
in the cases where fullscreen exiting is not actually necessary.

The mock behavior of Fullscreen inside DumpRenderTree and WebKitTestRunner are not able to exercise
this same path. Track improvements to this mock in bug #239747.

  • dom/FullscreenManager.cpp: (WebCore::FullscreenManager::requestFullscreenForElement): (WebCore::FullscreenManager::exitFullscreen): (WebCore::FullscreenManager::setAnimatingFullscreen): (WebCore::FullscreenManager::setFullscreenControlsHidden):

Source/WebKit:

When exiting fullscreen immediately, we trigger the correct state transition by calling
-[self exitFullScreen]. However, when no fullscreen manager exists (as may happen during
navigation), -exitFullscreen may itself call -_exitFullscreenImmediately, which causes an
infinite recursion and stack overflow.

Unroll the implementation by performing all the same pieces as would have been done by
-exitFullScreen, but inline. Refactor out common behavior into -_reinsertWebViewUnderPlaceholder,
and call that both from -_exitFullscreenImmediately and _completedExitFullScreen.

Unfortunately, no API tests are possible here because TestWebKitAPI is not an actual iOS UI
application.

  • UIProcess/ios/fullscreen/WKFullScreenWindowControllerIOS.mm: (-[WKFullScreenWindowController exitFullScreen]): (-[WKFullScreenWindowController _reinsertWebViewUnderPlaceholder]): (-[WKFullScreenWindowController _completedExitFullScreen]): (-[WKFullScreenWindowController _exitFullscreenImmediately]):

Canonical link: https://commits.webkit.org/250352@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@293894 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11:10 PM Changeset in webkit [294300] by Alan Coon
  • 2 edits in branches/safari-613-branch/Source/WebCore/platform/graphics/avfoundation/objc

Cherry-pick r293877. rdar://problem/92676179

[Cocoa] QueuedVideoOutput constructor missing nil check
https://bugs.webkit.org/show_bug.cgi?id=240149

Reviewed by Eric Carlson.

Covered by existing tests.

  • Source/WebCore/platform/graphics/avfoundation/objc/QueuedVideoOutput.h:
  • Source/WebCore/platform/graphics/avfoundation/objc/QueuedVideoOutput.mm: (WebCore::QueuedVideoOutput::create): (WebCore::QueuedVideoOutput::QueuedVideoOutput): (WebCore::QueuedVideoOutput::valid):

Canonical link: https://commits.webkit.org/250335@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@293877 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11:10 PM Changeset in webkit [294299] by Alan Coon
  • 2 edits in branches/safari-613-branch/Source/WebCore

Cherry-pick r293647. rdar://problem/92257660

Only stretch the percent height <body> when it is the document element's child
https://bugs.webkit.org/show_bug.cgi?id=239932
<rdar://92257660>

Reviewed by Antti Koivisto.

This IE quirk should only be applied to when the body is actually the document element's child (stretching case).

  • rendering/RenderBox.cpp: (WebCore::RenderBox::computeLogicalHeight const):
  • rendering/RenderBox.h: (WebCore::RenderBox::parentBox const):

Canonical link: https://commits.webkit.org/250151@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@293647 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11:10 PM Changeset in webkit [294298] by Alan Coon
  • 2 edits in branches/safari-613-branch/Source/WebKit

Cherry-pick r293433. rdar://problem/91981865

[WebAuthn] Do not pass ASCCredentialRequestTypePlatform... if LocalService unavailable
https://bugs.webkit.org/show_bug.cgi?id=239746
rdar://91981865

Reviewed by Brent Fulgham.

Passing platform in requestTypes breaks the UI in registerations with the syncing platform
authenticator off and local service is unavailable. This patch stops passing it in this case.

  • UIProcess/WebAuthentication/Cocoa/WebAuthenticatorCoordinatorProxy.mm: (WebKit::configureRegistrationRequestContext): (WebKit::WebAuthenticatorCoordinatorProxy::performRequest):

Canonical link: https://commits.webkit.org/249993@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@293433 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11:10 PM Changeset in webkit [294297] by Alan Coon
  • 9 edits in branches/safari-613-branch

Cherry-pick r293264. rdar://problem/92130849

Web Inspector: Regression(r287684) Resources from the memory cache show empty content in Network, Sources, and Search tabs
https://bugs.webkit.org/show_bug.cgi?id=239667

Reviewed by Devin Rousso.

Source/WebCore:

Updated tests:

  • http/tests/inspector/network/resource-response-source-disk-cache.html
  • http/tests/inspector/network/resource-response-source-memory-cache.html

r287684 introduced a subtle bug when calling InspectorInstrumentation::didReceiveData. We rely
on there being a difference between real, but empty, data buffer and not having a data buffer,
but after r287684 an empty SharedBuffer would be passed in the later case. Instead, we should
continue to pass nullptr if there is no buffer so that InspectorNetworkAgent::didReceiveData
can distiguish between the two.

The bug is the result of having a non-nullptr data in InspectorNetworkAgent::didReceiveData,
which causes us to call maybeAddResourceData, which means by the time
InspectorNetworkAgent::getResponseBody is called, the ResourceData for the request will have
an empty, not non-existant, content(), which means we will return the empty content instead,
since we believe the response had actual content.

  • inspector/InspectorInstrumentation.cpp: (WebCore::InspectorInstrumentation::didReceiveDataImpl):
  • inspector/InspectorInstrumentation.h: (WebCore::InspectorInstrumentation::didReceiveData):
  • loader/ResourceLoadNotifier.cpp: (WebCore::ResourceLoadNotifier::dispatchDidReceiveData):

LayoutTests:

Add test steps to ensure that the resource has content, and that the base64Encoded value matches our
expectations. While only the memory cache was affected by this regression, add the test steps to both
the memory and disk caches to defend this functionality.

  • http/tests/inspector/network/resource-response-source-memory-cache-expected.txt:
  • http/tests/inspector/network/resource-response-source-memory-cache.html:
  • http/tests/inspector/network/resource-response-source-disk-cache-expected.txt:
  • http/tests/inspector/network/resource-response-source-disk-cache.html:

Canonical link: https://commits.webkit.org/249905@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@293264 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11:10 PM Changeset in webkit [294296] by Alan Coon
  • 7 edits in branches/safari-613-branch/Source

Cherry-pick r293220. rdar://problem/91924480

Apply purifyNaN in more places.
https://bugs.webkit.org/show_bug.cgi?id=239619
<rdar://problem/91924480>

Reviewed by Yusuke Suzuki.

Source/JavaScriptCore:

  • wasm/js/JSWebAssemblyHelpers.h: (JSC::toJSValue):

Source/WebCore:

  • bindings/js/IDBBindingUtilities.cpp: (WebCore::toJS):
  • bindings/js/JSDOMConvertWebGL.cpp: (WebCore::convertToJSValue):
  • bindings/js/SerializedScriptValue.cpp: (WebCore::CloneDeserializer::readTerminal):
  • bridge/objc/objc_utility.mm: (JSC::Bindings::convertObjcValueToValue):

Canonical link: https://commits.webkit.org/249889@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@293220 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11:10 PM Changeset in webkit [294295] by Alan Coon
  • 7 edits
    2 adds in branches/safari-613-branch

Cherry-pick r293170. rdar://problem/91117803

AVSampleBufferRenderSynchronizer timeline sometimes goes backwards when playback begins
https://bugs.webkit.org/show_bug.cgi?id=239471
rdar://91117803

Reviewed by Jer Noble.

Source/WebCore:

Test: media/media-source/media-source-current-time.html

  • html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::mediaPlayerTimeChanged): Log current time and requested playback rate. (WebCore::HTMLMediaElement::setPausedInternal): Log.
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm: (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::MediaPlayerPrivateMediaSourceAVFObjC): If time has gone backward, clamp to the most recent seek time. (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::playInternal): INFO_LOG -> ALWAYS_LOG (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::pauseInternal): Ditto. (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::currentMediaTime const): Use clampTimeToLastSeekTime. (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::clampTimeToLastSeekTime const): New, clamp time value to the most recent seek time. (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setCurrentTimeDidChangeCallback): Use clampTimeToLastSeekTime. (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekWithTolerance): INFO_LOG -> ALWAYS_LOG (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekInternal): INFO_LOG -> ALWAYS_LOG (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::updateLastPixelBuffer): INFO_LOG -> ALWAYS_LOG (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setHasAvailableVideoFrame): INFO_LOG -> ALWAYS_LOG (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::durationChanged): INFO_LOG -> ALWAYS_LOG

Source/WebKit:

  • WebProcess/GPU/media/MediaPlayerPrivateRemote.cpp: (WebKit::MediaPlayerPrivateRemote::currentTimeChanged): Log when time jumps backwards.

LayoutTests:

  • media/media-source/media-source-current-time-expected.txt: Added.
  • media/media-source/media-source-current-time.html: Added.

Canonical link: https://commits.webkit.org/249852@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@293170 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11:10 PM Changeset in webkit [294294] by Alan Coon
  • 6 edits
    2 moves
    2 adds in branches/safari-613-branch

Cherry-pick r293126. rdar://problem/90483049

REGRESSION (r281913): Map toolbar flickers when dragging the map on https://gis.ee/
https://bugs.webkit.org/show_bug.cgi?id=238589
<rdar://90483049>

Reviewed by Alan Bujtas.
Source/WebCore:

If a layer has negative z-order descendants, and one of those descendants becomes
composited, then that layer also has to composite, because its foreground needs to render in
front of those descendants. But this is tricky, because the compositing toggle is
out-of-order; we only know that the layer has to get composited after processing
descendants.

In particular, this created a problem with the overlap map, which tracks sets of rectangles
in "compositing scopes" via LayerOverlapMap. The delayed compositing toggle of the layer
with negative z-order descendants meant that any layers processed up to that point had their
bounds added in the wrong overlap scope. This resulted in subsequent bad overlap testing,
and a failure to make later layers composited.

The previous fix in this area (r281913) was incorrect. Revert it, and do a better fix, which
is to speculatively push an overlap map entry for the layer with negative z-order
descendants, if necessary. If this layer ends up not getting composited, we unwind the
speculative push, which will merge that scope with its parent scope.

In addition give OverlapMapContainer (an "overlap scope") a RenderLayer& which we can use
for logging, and to assert on correct behavior; it is not otherwise used in release builds.

Tests: compositing/layer-creation/overlap-with-negative-z-layers.html

compositing/layer-creation/subtree-div-overlaps-multiple-negative-z-divs.html

  • rendering/LayerOverlapMap.cpp: (WebCore::OverlapMapContainer::OverlapMapContainer): (WebCore::OverlapMapContainer::scopeLayer const): (WebCore::OverlapMapContainer::dump const): (WebCore::LayerOverlapMap::LayerOverlapMap): (WebCore::LayerOverlapMap::add): (WebCore::LayerOverlapMap::pushCompositingContainer): (WebCore::LayerOverlapMap::popCompositingContainer):
  • rendering/LayerOverlapMap.h:
  • rendering/RenderLayerCompositor.cpp: (WebCore::RenderLayerCompositor::computeCompositingRequirements): (WebCore::RenderLayerCompositor::traverseUnchangedSubtree): (WebCore::RenderLayerCompositor::updateOverlapMap const):

LayoutTests:

Move subtree-div-overlaps-multiple-negative-z-divs.html into the layer-creation directory.
Add a new test.

  • compositing/layer-creation/overlap-with-negative-z-layers-expected.html: Added.
  • compositing/layer-creation/overlap-with-negative-z-layers.html: Added.
  • compositing/layer-creation/subtree-div-overlaps-multiple-negative-z-divs-expected.html: Renamed from LayoutTests/compositing/subtree-div-overlaps-multiple-negative-z-divs-expected.html.
  • compositing/layer-creation/subtree-div-overlaps-multiple-negative-z-divs.html: Renamed from LayoutTests/compositing/subtree-div-overlaps-multiple-negative-z-divs.html.
  • fast/harness/render-tree-as-text-options-expected.txt: Test progressed; update results.

Canonical link: https://commits.webkit.org/249828@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@293126 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11:10 PM Changeset in webkit [294293] by Alan Coon
  • 2 edits in branches/safari-613-branch/Source/WebKit

Cherry-pick r292738. rdar://problem/91295875

Use WebKit::blockedError instead of ResourceLoader::blockedError in WebLoaderStrategy::scheduleLoadFromNetworkProcess
https://bugs.webkit.org/show_bug.cgi?id=239089
<rdar://91295875>

Patch by Alex Christensen <achristensen@webkit.org> on 2022-04-11
Reviewed by Chris Dumez.

The latter dereferences the frame loader which can be null.

  • WebProcess/Network/WebLoaderStrategy.cpp: (WebKit::WebLoaderStrategy::scheduleLoadFromNetworkProcess):

Canonical link: https://commits.webkit.org/249522@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@292738 268f45cc-cd09-0410-ab3c-d52691b4dbfc

11:10 PM Changeset in webkit [294292] by Alan Coon
  • 3 edits
    2 adds in branches/safari-613-branch

Cherry-pick r292350. rdar://problem/90589355

intersectsWithAncestor should take fragmented boxes into account.
https://bugs.webkit.org/show_bug.cgi?id=238648

Reviewed by Dean Jackson.

Source/WebCore:

Test: compositing/backing/backing-store-columns-inside-position-fixed.html

  • rendering/RenderLayerBacking.cpp: (WebCore::intersectsWithAncestor):

Use boundingBox() for intersectsWithAncestor, so that we can explicitly request the box that contains
all fragment boxes.

LayoutTests:

  • compositing/backing/backing-store-columns-inside-position-fixed-expected.txt: Added.
  • compositing/backing/backing-store-columns-inside-position-fixed.html: Added.

Adds new test that scrolls content split into columns until the first column is offscreen, to confirm
that we still have a backing store.

Canonical link: https://commits.webkit.org/249215@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@292350 268f45cc-cd09-0410-ab3c-d52691b4dbfc

10:59 PM Changeset in webkit [294291] by Antti Koivisto
  • 14 edits
    1 copy
    1 add
    11 deletes in trunk

Resolve ::first-letter eagerly
https://bugs.webkit.org/show_bug.cgi?id=239844

Reviewed by Alan Bujtas.

Source/WebCore:

::first-letter pseudo-element should be resolved eagerly during style resolution, similar to ::first-line.
This will clean up the architecture. It also makes ::first-letter animatable.

  • rendering/RenderTextFragment.cpp:

(WebCore::RenderTextFragment::styleDidChange): Deleted.

  • rendering/RenderTextFragment.h:
  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::removeCachedPseudoStyle): Deleted.

We always create a new style. There is no need to removed pseudo element styles.

  • rendering/style/RenderStyle.h:
  • rendering/updating/RenderTreeBuilderFirstLetter.cpp:

(WebCore::styleForFirstLetter):

Pull first-letter style from the parent style instead of resolving it in the middle of render tree building.

(WebCore::RenderTreeBuilder::FirstLetter::updateAfterDescendants):
(WebCore::RenderTreeBuilder::FirstLetter::updateStyle):

Delete the renderer if we no longer have a style.

(WebCore::RenderTreeBuilder::FirstLetter::createRenderers):

  • rendering/updating/RenderTreeBuilderFirstLetter.h:
  • style/StyleTreeResolver.cpp:

(WebCore::Style::TreeResolver::resolveElement):

Resove first-letter.

(WebCore::Style::TreeResolver::resolvePseudoElement):
(WebCore::Style::TreeResolver::resolveInheritedPseudoElement):

Factor into a function.

(WebCore::Style::isChildInBlockFormattingContext):
(WebCore::Style::TreeResolver::resolveAncestorFirstLinePseudoElement):
(WebCore::Style::TreeResolver::resolveAncestorFirstLetterPseudoElement):

Resolving first-letter is similar to first-line except it is always a leaf and so won't be inherited from.

(WebCore::Style::TreeResolver::makeResolutionContextForPseudoElement):
(WebCore::Style::TreeResolver::makeResolutionContextForInheritedFirstLine):

  • style/StyleTreeResolver.h:

LayoutTests:

  • fast/css-generated-content/first-letter-in-nested-before-expected.html: Added.
  • fast/css-generated-content/first-letter-in-nested-before-expected.png: Removed.
  • fast/css-generated-content/first-letter-in-nested-before-expected.txt: Removed.
  • fast/css-generated-content/first-letter-in-nested-before-table-expected.html: Copied from LayoutTests/fast/css-generated-content/first-letter-in-nested-before-table.html.
  • fast/css-generated-content/first-letter-in-nested-before-table-expected.png: Removed.
  • fast/css-generated-content/first-letter-in-nested-before-table-expected.txt: Removed.
  • fast/css-generated-content/first-letter-in-nested-before-table.html:
  • fast/css-generated-content/first-letter-in-nested-before.html:

Make reftest and update the behavior. ::first-letter won't affect ::before/after with display:table,
matching Firefox behavior (and spec logic).

  • platform/glib/fast/css-generated-content/first-letter-in-nested-before-table-expected.txt: Removed.
  • platform/gtk/fast/css-generated-content/first-letter-in-nested-before-expected.png: Removed.
  • platform/gtk/fast/css-generated-content/first-letter-in-nested-before-table-expected.png: Removed.
  • platform/ios/fast/css-generated-content/first-letter-in-nested-before-table-expected.txt: Removed.
  • platform/mac/fast/css-generated-content/first-letter-in-nested-before-table-expected.txt: Removed.
  • platform/win/fast/css-generated-content/first-letter-in-nested-before-table-expected.txt: Removed.
  • platform/wincairo/fast/css-generated-content/first-letter-in-nested-before-table-expected.txt: Removed.
10:52 PM Changeset in webkit [294290] by zan@falconsigh.net
  • 4 edits in trunk/Source

[GTK][WPE] Current-context enforcement in ANGLE is expensive
https://bugs.webkit.org/show_bug.cgi?id=240392

Reviewed by Adrian Perez de Castro.

Source/WebCore:

ANGLE's current-context operations are relatively heavy and introduce
detectable overhead when executed for each of many WebGL operation. More
specifically, loads of the current-thread data from thread-local
storage are done under both EGL_GetCurrentContext() and
EGL_MakeCurrent() through the general TLS access model, relying on the
tls_get_addr function.

Instead, a static thread-local pointer variable is introduced, with the
initial-exec method, containing the address of the current
GraphicsContextGLANGLE object for a given thread. Instead of dipping
into ANGLE to retrieve the current context, the GraphicsContextGLANGLE
object's address is compared to the value of the thread-local variable
and an early return is done if they match.

This model is applied through the TLS_MODEL_INITIAL_EXEC macro that's
defined appropriately if the compiler is detected to support the
required tls_model attribute. This should be the case when targetting
platforms that use ELF, i.e. Unix-like systems but primarily Linux.

The initial-exec TLS model relies on early understanding from the
dynamic linker about what TLS data is required, which enables more
efficient allocation of and access into the required underlying memory.

Caching the current-context data into a static thread-specific variable
with the initial-exec TLS model is the same approach that's taken in the
Mesa library. More on this and other TLS models can be gathered from the
'ELF Handling For Thread-Local Storage' paper by Ulrich Drepper.

  • platform/graphics/gbm/GraphicsContextGLGBM.cpp:

(WebCore::GraphicsContextGLANGLE::makeContextCurrent):

Source/WTF:

  • wtf/Compiler.h: Define the TLS_MODEL_INITIAL_EXEC macro as the

tls_model attribute with the initial-exec value, to be used on variables
whose TLS model should be adjusted.

10:23 PM Changeset in webkit [294289] by Alan Coon
  • 17 edits
    2 adds in branches/safari-7614.1.14.100-branch/Source

Cherry-pick r294160. rdar://problem/87170289

Add UI-side layers for optionally indicating interaction regions
https://bugs.webkit.org/show_bug.cgi?id=240372
<rdar://problem/87170289>

Reviewed by Dean Jackson.

Source/WebCore:

  • page/DebugPageOverlays.cpp: (WebCore::pathsForRegion): Move inline rect inflation into InteractionRegion so that all clients get it.
  • page/Page.cpp: (WebCore::Page::shouldBuildInteractionRegions const):
  • page/Page.h:
  • page/Frame.cpp: (WebCore::Frame::invalidateContentEventRegionsIfNeeded):
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::paintObject):
  • rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::maintainsEventRegion const): (WebCore::RenderLayerBacking::updateEventRegion): If the ENABLE() and setting are both enabled, update event regions due to possible interaction region changes. We could make this more conservative later, but chances are high that most layers include interaction regions.

For now, compute interaction regions only for the root layer.
In a future patch, we will adopt the normal fake paint mechanism
and maintain them on the layer that owns them.

  • page/InteractionRegion.cpp: (WebCore::regionForElement): Move inline rect inflation into InteractionRegion so that all clients get it. Limit interaction rects to half of the viewport. Ignore regions that are larger.
  • page/InteractionRegion.h: (WebCore::operator==): Added. (WebCore::InteractionRegion::encode const): (WebCore::InteractionRegion::decode): Remove the isInline bit, since we only used it for rect inflation.
  • rendering/EventRegion.cpp: (WebCore::EventRegion::operator== const): (WebCore::EventRegion::translate): (WebCore::EventRegion::uniteInteractionRegions): (WebCore::EventRegion::computeInteractionRegions):
  • rendering/EventRegion.h: (WebCore::EventRegion::interactionRegions const): (WebCore::EventRegion::encode const): (WebCore::EventRegion::decode): Store interaction regions on EventRegion.

Source/WebKit:

  • Shared/RemoteLayerTree/RemoteLayerTreePropertyApplier.mm: (WebKit::RemoteLayerTreePropertyApplier::applyPropertiesToLayer): (WebKit::RemoteLayerTreePropertyApplier::applyHierarchyUpdates): Allow RemoteLayerTreeInteractionRegionLayers to add and maintain layers for interaction regions.
  • SourcesCocoa.txt:
  • UIProcess/RemoteLayerTree/RemoteLayerTreeInteractionRegionLayers.h: Added.
  • UIProcess/RemoteLayerTree/RemoteLayerTreeInteractionRegionLayers.mm: Added. (configureLayerForInteractionRegion): (WebKit::interactionRegionForLayer): (WebKit::isInteractionRegionLayer): (WebKit::setInteractionRegion): Box WebCore::InteractionRegion in a Objective-C object and store it on the layer. Use this as a key to indicate that a given layer is an interaction region.

(WebKit::appendInteractionRegionLayersForLayer):
Make sure that interaction region layers are always at the end of the layer's sublayers array.

(WebKit::updateLayersForInteractionRegions):
Add new layers for interaction regions.
Maintain the same layer for regions that cover the same area.
Add a green wash if the default WKInteractionRegionDebugFill is set.

  • WebKit.xcodeproj/project.pbxproj:

Source/WTF:

  • Scripts/Preferences/WebPreferencesInternal.yaml: Add a preference to toggle interaction region layers.

Canonical link: https://commits.webkit.org/250529@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@294160 268f45cc-cd09-0410-ab3c-d52691b4dbfc

10:22 PM Changeset in webkit [294288] by Alan Coon
  • 42 edits in branches/safari-7614.1.14.100-branch/Source/WebCore

Cherry-pick r293993. rdar://problem/92993954

Const-ify Node::willRespondTo*Events()
https://bugs.webkit.org/show_bug.cgi?id=240246

Reviewed by Wenson Hsieh.

Constify these four methods, because there's no
reason for them not to be, and because it makes
them usable in a const context in a future patch.

  • dom/EventNames.h: (WebCore::EventNames::isTouchRelatedEventType const):
  • dom/EventTarget.cpp: (WebCore::EventTarget::eventTypes const):
  • dom/EventTarget.h:
  • dom/Node.cpp: (WebCore::Node::willRespondToMouseMoveEvents const): (WebCore::Node::willRespondToTouchEvents const): (WebCore::Node::willRespondToMouseClickEvents const): (WebCore::Node::willRespondToMouseWheelEvents const):
  • dom/Node.h:
  • html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::willRespondToMouseClickEvents const):
  • html/HTMLAnchorElement.h:
  • html/HTMLButtonElement.cpp: (WebCore::HTMLButtonElement::willRespondToMouseClickEvents const):
  • html/HTMLButtonElement.h:
  • html/HTMLElement.cpp: (WebCore::HTMLElement::willRespondToMouseMoveEvents const): (WebCore::HTMLElement::willRespondToMouseWheelEvents const): (WebCore::HTMLElement::willRespondToMouseClickEvents const):
  • html/HTMLElement.h:
  • html/HTMLImageElement.cpp: (WebCore::HTMLImageElement::willRespondToMouseClickEvents const):
  • html/HTMLImageElement.h:
  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::willRespondToMouseClickEvents const):
  • html/HTMLInputElement.h:
  • html/HTMLLabelElement.cpp: (WebCore::HTMLLabelElement::willRespondToMouseClickEvents const):
  • html/HTMLLabelElement.h:
  • html/HTMLPlugInElement.cpp: (WebCore::HTMLPlugInElement::willRespondToMouseClickEvents const):
  • html/HTMLPlugInElement.h:
  • html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::willRespondToMouseClickEvents const):
  • html/HTMLSelectElement.h:
  • html/HTMLSummaryElement.cpp: (WebCore::HTMLSummaryElement::willRespondToMouseClickEvents const):
  • html/HTMLSummaryElement.h:
  • html/HTMLTextAreaElement.cpp: (WebCore::HTMLTextAreaElement::willRespondToMouseClickEvents const):
  • html/HTMLTextAreaElement.h:
  • html/TextFieldInputType.cpp: (WebCore::TextFieldInputType::shouldSpinButtonRespondToMouseEvents const): (WebCore::TextFieldInputType::shouldSpinButtonRespondToWheelEvents const):
  • html/TextFieldInputType.h:
  • html/shadow/SliderThumbElement.cpp: (WebCore::SliderThumbElement::willRespondToMouseMoveEvents const): (WebCore::SliderThumbElement::willRespondToMouseClickEvents const):
  • html/shadow/SliderThumbElement.h:
  • html/shadow/SpinButtonElement.cpp: (WebCore::SpinButtonElement::willRespondToMouseMoveEvents const): (WebCore::SpinButtonElement::willRespondToMouseClickEvents const): (WebCore::SpinButtonElement::shouldRespondToMouseEvents const):
  • html/shadow/SpinButtonElement.h:
  • html/shadow/TextControlInnerElements.cpp: (WebCore::SearchFieldResultsButtonElement::willRespondToMouseClickEvents const): (WebCore::SearchFieldCancelButtonElement::willRespondToMouseClickEvents const):
  • html/shadow/TextControlInnerElements.h:
  • mathml/MathMLElement.cpp: (WebCore::MathMLElement::willRespondToMouseClickEvents const):
  • mathml/MathMLElement.h:
  • mathml/MathMLSelectElement.cpp: (WebCore::MathMLSelectElement::willRespondToMouseClickEvents const):
  • mathml/MathMLSelectElement.h:
  • svg/SVGAElement.cpp: (WebCore::SVGAElement::willRespondToMouseClickEvents const):
  • svg/SVGAElement.h:

Canonical link: https://commits.webkit.org/250430@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@293993 268f45cc-cd09-0410-ab3c-d52691b4dbfc

10:21 PM Changeset in webkit [294287] by mark.lam@apple.com
  • 28 edits in trunk/Source

Add ARM64 disassembler support for symbolic dumping of some well known constants.
https://bugs.webkit.org/show_bug.cgi?id=240443

Reviewed by Yusuke Suzuki.

Source/JavaScriptCore:

  1. Added a Options::needDisassemblySupport() option. This option is true if any of the JSC disassembly options are enabled. This allows us to trivially check if we need to enable additional infrastructure (like those added in this patch) to support disassembly.
  1. Refactor the Disassembler's thunkLabelMap into a more generic labelMap. It can now map a pointer to a CString or a const char* label.
  1. Enable JITOperationList infrastructure when ENABLE(JIT_OPERATION_DISASSEMBLY) is true. This adds a name to the JITOperationAnnotation record. Since this is guarded by ENABLE(JIT_OPERATION_DISASSEMBLY), we can trivially turn this part off later if adding this name adds too much size burden (or if any unexpected issues arise). Turning this off will only disable disassembly of JIT operation names. Disassembly of other constants (see below) will still be supported.

If Options::needDisassemblySupport() is true, the JITOperationList will
register all JIT operations (and the LLInt ones as well) with the Disassembler
labelMap.

  1. Removed the < > brackets around branch target labels except for internal pc index labels (e.g. <716>) and <unknown> (when we don't know what the branch target is). The < > notation takes up space and doesn't add any info. The branch targets now look like this:

<32> 0x1180102c0: b.ne 0x1180101c0 -> thunk: native Tail With Saved Tags Call trampoline
<92> 0x11801c87c: b 0x118008980 -> thunk: LLInt function for call jump to prologue thunk

<3508> 0x1198e16b4: b 0x1198bc1a0 -> JIT PC

Internal pc index labels will still use the < > brackets:

<3476> 0x1198e1694: b.eq 0x1198e16a0 -> <3488>

  1. Added ARM64 disassembler support to compute the value of a constant being loaded into a register using "MoveWide" instructions e.g. movz and movk.

When the disassembler sees a movz or movn or mov (of the MoveWide variety),
the disassembler initializes a m_builtConstant value. With each subsequent
movk instruction with the same destination register, the disassembler splices
in the corresponding 16-bit immediate.

After disassembling a MoveWide instruction, it will check if the next
instruction is also a MoveWide instruction targeting the same destination
register. If so, the constant is still being build: hence, it does nothing and
continues.

If the next instruction is (a) a MoveWide instruction targeting a different
register, (b) not a MoveWide instruction, or (c) we've reached the end of the
LinkBuffer (i.e. there's no next instruction), then the constant building for
the current target register is complete.

  1. Added ARM64 disassembler support for looking up constants (built in (5) above) and printing symbolic info / names of those constants.

With ENABLE(JIT_OPERATION_DISASSEMBLY), we now have JIT operation names e.g.

<176> 0x118010270: movk x3, #0x9f6e, lsl #48 -> 0x102dc8950 operationVMHandleException
<164> 0x1180180a4: movk x8, #0xe5c, lsl #48 -> 0x102db9420 operationVirtualCall

Apart from looking up the constant in the Disassembler labelMap, it also looks
up some commonly used constants e.g.

  1. VM pointers:

<156> 0x11801105c: movk x0, #0x1, lsl #32 -> 0x139435000 vm

  1. Some VM internal pointers (more can be added later as needed):

<24> 0x118014d18: movk x17, #0x1, lsl #32 -> 0x13943ee78 vm +40568: vm.topCallFrame
<76> 0x118014d4c: movk x17, #0x1, lsl #32 -> 0x139441a10 vm +51728: vm.m_exception

<196> 0x118011244: movk x17, #0x1, lsl #32 -> 0x1394417d0 vm +51152: vm.targetMachinePCForThrow
<208> 0x1198e09d0: movk x17, #0x1, lsl #32 -> 0x104432cc0 vm +52416: vm.m_doesGC

  1. VM related pointers (only 1 for now; not VM fields, but hangs off of VM):

<12> 0x11801938c: movk x1, #0x1, lsl #32 -> 0x1052cd3c8 vm scratchBuffer.m_buffer

  1. Well known PtrTags:

<204> 0x11801124c: movz x16, #0x6f9b -> 0x6f9b ExceptionHandlerPtrTag ?
<212> 0x1180150d4: movz x16, #0x593 -> 0x593 JSEntryPtrTag ?
<168> 0x1180183a8: movz lr, #0xb389 -> 0xb389 OperationPtrTag ?

  • the ? is because we cannot be certain that the 16-bit constant is a PtrTag. It may just be a coincidence that the value is the same. However, the user can trivially look at the surrounding disassembled code, and be able to tell if the value is used as a PtrTag.

For constants that are not found in the known sets:

  1. Small 16-bit constant (prints decimal value for convenience):

<200> 0x1198e09c8: movz x17, #0x2cc0 -> 11456

  1. Unknown pointers that aren't in the JIT and LLINT regions will simply print the pointer / constant:

<88> 0x1198e0958: movz x17, #0x2088
<92> 0x1198e095c: movk x17, #0x30d, lsl #16
<96> 0x1198e0960: movk x17, #0x1, lsl #32 -> 0x1030d2088

<unknown> is only used in relative branches.

  1. Enhanced the Integrity::isSanePointer() check to reject pointer values that are less than 4G on CPU(ADDRESS64) targets for OS(DARWIN). No sane pointer should be in the lowest 4G address region.

This also helps the disassembler more quickly filter out constant values that
aren't pointers.

This change affects DFG's speculationFromCell(), which is the only place that
may affect user facing performance. However, I think the impact should be
insignificant (since the added check is cheap).

  • assembler/JITOperationList.cpp:

(JSC::JITOperationList::populatePointersInJavaScriptCore):
(JSC::llintOperations):
(JSC::JITOperationList::populatePointersInJavaScriptCoreForLLInt):
(JSC::JITOperationList::addDisassemblyLabels):
(JSC::JITOperationList::populateDisassemblyLabelsInJavaScriptCore):
(JSC::JITOperationList::populateDisassemblyLabelsInJavaScriptCoreForLLInt):
(JSC::JITOperationList::populateDisassemblyLabelsInEmbedder):

  • assembler/JITOperationList.h:

(JSC::JITOperationList::populatePointersInJavaScriptCore):
(JSC::JITOperationList::populatePointersInJavaScriptCoreForLLInt):

  • assembler/JITOperationValidation.h:
  • assembler/LinkBuffer.cpp:

(JSC::LinkBuffer::finalizeCodeWithDisassemblyImpl):

  • b3/testb3_1.cpp:

(main):

  • disassembler/ARM64/A64DOpcode.cpp:

(JSC::ARM64Disassembler::A64DOpcode::appendPCRelativeOffset):
(JSC::ARM64Disassembler::MoveWideFormatTrait::rejectedResult):
(JSC::ARM64Disassembler::MoveWideFormatTrait::acceptedResult):
(JSC::ARM64Disassembler::MoveWideIsValidTrait::rejectedResult):
(JSC::ARM64Disassembler::MoveWideIsValidTrait::acceptedResult):
(JSC::ARM64Disassembler::A64DOpcodeMoveWide::handlePotentialDataPointer):
(JSC::ARM64Disassembler::A64DOpcodeMoveWide::handlePotentialPtrTag):
(JSC::ARM64Disassembler::A64DOpcodeMoveWide::parse):
(JSC::ARM64Disassembler::A64DOpcodeMoveWide::format):
(JSC::ARM64Disassembler::A64DOpcodeMoveWide::isValid):

  • disassembler/ARM64/A64DOpcode.h:

(JSC::ARM64Disassembler::A64DOpcodeMoveWide::baseFormat):
(JSC::ARM64Disassembler::A64DOpcodeMoveWide::formatBuffer):

  • disassembler/Disassembler.cpp:

(JSC::Disassembler::ensureLabelMap):
(JSC::registerLabel):
(JSC::labelFor):
(JSC::ensureThunkLabelMap): Deleted.
(JSC::registerThunkLabel): Deleted.
(JSC::labelForThunk): Deleted.

  • disassembler/Disassembler.h:
  • jsc.cpp:

(jscmain):

  • runtime/Gate.h:
  • runtime/JSCPtrTag.cpp:

(JSC::ptrTagName):

  • runtime/JSCPtrTag.h:
  • runtime/Options.cpp:

(JSC::Options::recomputeDependentOptions):

  • runtime/OptionsList.h:
  • runtime/VM.cpp:

(JSC::VM::isScratchBuffer):

  • runtime/VM.h:
  • tools/Integrity.h:

(JSC::Integrity::isSanePointer):

Source/WebCore:

  • bindings/js/WebCoreJITOperations.cpp:

(WebCore::populateJITOperations):
(WebCore::populateDisassemblyLabels):

  • bindings/js/WebCoreJITOperations.h:

(WebCore::populateDisassemblyLabels):
(WebCore::populateJITOperations):

  • testing/js/WebCoreTestSupport.cpp:

(WebCoreTestSupport::populateJITOperations):
(WebCoreTestSupport::populateDisassemblyLabels):

  • testing/js/WebCoreTestSupport.h:

(WebCoreTestSupport::populateDisassemblyLabels):
(WebCoreTestSupport::populateJITOperations):

Source/WTF:

  1. Added a ENABLE(JIT_OPERATION_DISASSEMBLY) flag. Currently, this feature relies on an USE(APPLE_INTERNAL_SDK) for enumerating JIT operations similar to ENABLE(JIT_OPERATION_VALIDATION). It is also restricted to ENABLE(DISASSEMBLER) && CPU(ARM64E).
  • wtf/PlatformCallingConventions.h:
  • wtf/PlatformEnable.h:
8:36 PM Changeset in webkit [294286] by Chris Dumez
  • 2 edits in trunk/Source/WebKit/UIProcess/API/C

Expose Page identifier via WKPageRef SPI
https://bugs.webkit.org/show_bug.cgi?id=240400
<rdar://93269635>

Reviewed by Tim Horton.

  • Source/WebKit/UIProcess/API/C/WKPage.cpp:

(WKPageGetIdentifier):

  • Source/WebKit/UIProcess/API/C/WKPage.h:

Canonical link: https://commits.webkit.org/250630@main

8:29 PM Changeset in webkit [294285] by Wenson Hsieh
  • 7 edits in trunk

Demote -[WKWebView retrieveAccessibilityTreeData:] to SPI
https://bugs.webkit.org/show_bug.cgi?id=240494
rdar://93385094

Reviewed by Tim Horton.

This method was only intended for use in MiniBrowser, and should ship as public API on WKWebView. Move the
declaration and implementation of this over to WKWebViewPrivateForTestingMac.h and WKWebViewTestingMac.mm
(respectively), and additionally prefix this testing-only SPI with an underscore.

  • UIProcess/API/Cocoa/WKWebView.h:
  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView retrieveAccessibilityTreeData:]): Deleted.

  • UIProcess/API/mac/WKWebViewPrivateForTestingMac.h:
  • UIProcess/API/mac/WKWebViewTestingMac.mm:

(-[WKWebView _retrieveAccessibilityTreeData:]):
Demote -[WKWebView retrieveAccessibilityTreeData:] to SPI
https://bugs.webkit.org/show_bug.cgi?id=240494
rdar://93385094

Reviewed by Tim Horton.

See WebKit/ChangeLog for more details.

  • MiniBrowser/mac/WK2BrowserWindowController.m:

(-[WK2BrowserWindowController logAccessibilityTrees:]):

Canonical link: https://commits.webkit.org/250629@main

6:34 PM Changeset in webkit [294284] by sbarati@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Move around some NaN handling code
https://bugs.webkit.org/show_bug.cgi?id=240493
<rdar://92111504>

Reviewed by Yusuke Suzuki.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileValueRep):

  • ftl/FTLLowerDFGToB3.cpp:

(JSC::FTL::DFG::LowerDFGToB3::purifyNaN):
(JSC::FTL::DFG::LowerDFGToB3::compileValueRep):
(JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq):

Canonical link: https://commits.webkit.org/250628@main

6:32 PM Changeset in webkit [294283] by Karl Rackler
  • 2 edits in trunk/LayoutTests

REGRESSION (r294215): [ iOS ] Nine fast tests are a consistent image failure
https://bugs.webkit.org/show_bug.cgi?id=240495

Unreviewed test gardening.

  • LayoutTests/platform/ios/TestExpectations:

Canonical link: https://commits.webkit.org/250627@main

6:00 PM Changeset in webkit [294282] by pvollan@apple.com
  • 1 edit in trunk/Source/WebKit/NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in

[macOS] Fix mach syscall sandbox violation in the Network process
https://bugs.webkit.org/show_bug.cgi?id=240466
<rdar://93249176>

Reviewed by Chris Dumez.

Fix mach syscall sandbox violation in the Network process on macOS.

  • Source/WebKit/NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in:

Canonical link: https://commits.webkit.org/250626@main

4:58 PM Changeset in webkit [294281] by gnavamarino@apple.com
  • 2 edits in trunk/Source/WebCore

Crash in WebCore::InsertTextCommand::positionInsideTextNode
https://bugs.webkit.org/show_bug.cgi?id=240480

Reviewed by Ryosuke Niwa.

Calling pushAnchorElementDown in CompositeEditCommand::positionAvoidingSpecialElementBoundary can
end up removing the startPosition's container node which leaves an invalid endingSelection.

InsertTextCommand::doApply requires a real endingSelection, so we should check if this occurred and bail out.

  • editing/InsertTextCommand.cpp:

(WebCore::InsertTextCommand::doApply):

4:44 PM Changeset in webkit [294280] by Said Abou-Hallawa
  • 8 edits in trunk/Source

REGRESSION(r249162): CanvasRenderingContext2DBase::drawImage() crashes if the image is animated and the first frame cannot be decoded
https://bugs.webkit.org/show_bug.cgi?id=239113
rdar://87980543

Reviewed by Simon Fraser.

Source/WebCore:

CanvasRenderingContext2DBase::drawImage() needs to ensure the first frame
of the animated image can be decoded correctly before creating the temporary
static image. If the first frame can't be decoded, this function should return
immediately. This matches the behavior of this function before r249162.

The animated image decodes its frames asynchronously in a work queue. But
the first frame has to be decoded synchronously in the main run loop. So
to avoid running the image decoder in two different threads we are going
to keep the first and the current frame cached when we receive a memory
pressure warning. This should not increase the memory allocation of the
animated image because the numbers of cached frames increases quickly and
we keep all of them till a memory warning is received. But the memory
pressure warning will be received a little bit more often. This depends
on the memory size of the first frame.

To make the code more robust, make ImageSource take a Ref<NativeImage>
instead of taking a RefPtr<NativeImage>.

  • html/canvas/CanvasRenderingContext2DBase.cpp:

(WebCore::CanvasRenderingContext2DBase::drawImage):

  • platform/graphics/BitmapImage.cpp:

(WebCore::BitmapImage::BitmapImage):
(WebCore::BitmapImage::destroyDecodedData):

  • platform/graphics/BitmapImage.h:
  • platform/graphics/ImageSource.cpp:

(WebCore::ImageSource::ImageSource):
(WebCore::ImageSource::destroyDecodedData):
(WebCore::ImageSource::setNativeImage):

  • platform/graphics/ImageSource.h:

(WebCore::ImageSource::create):
(WebCore::ImageSource::isDecoderAvailable const):
(WebCore::ImageSource::destroyAllDecodedData): Deleted.
(WebCore::ImageSource::destroyAllDecodedDataExcludeFrame): Deleted.
(WebCore::ImageSource::destroyDecodedDataBeforeFrame): Deleted.

Source/WebKit:

  • GPUProcess/graphics/RemoteDisplayListRecorder.cpp:

(WebKit::RemoteDisplayListRecorder::drawSystemImage):

4:40 PM Changeset in webkit [294279] by Simon Fraser
  • 12 edits in trunk/Source/WebCore

rdar://93377867 (WebKit r294204: weird text rendering artifacts while pages are loading)

Revert r294204 and r294262

  • layout/integration/inline/InlineIteratorBox.cpp:

(WebCore::InlineIterator::Box::visualRect const): Deleted.

  • layout/integration/inline/InlineIteratorBox.h:

(WebCore::InlineIterator::Box::visualRect const):
(WebCore::InlineIterator::Box::containingBlock const): Deleted.

  • layout/integration/inline/InlineIteratorBoxLegacyPath.h:

(WebCore::InlineIterator::BoxLegacyPath::containingBlock const): Deleted.
(WebCore::InlineIterator::BoxLegacyPath::direction const): Deleted.
(WebCore::InlineIterator::BoxLegacyPath::isFirstLine const): Deleted.

  • layout/integration/inline/InlineIteratorBoxModernPath.h:

(WebCore::InlineIterator::BoxModernPath::direction const):
(WebCore::InlineIterator::BoxModernPath::containingBlock const): Deleted.
(WebCore::InlineIterator::BoxModernPath::isFirstLine const): Deleted.

  • layout/integration/inline/LayoutIntegrationLineLayout.cpp:

(WebCore::LayoutIntegration::LineLayout::paint):

  • rendering/InlineBoxPainter.cpp:

(WebCore::InlineBoxPainter::paintMask):
(WebCore::InlineBoxPainter::paintDecorations):

  • rendering/LegacyInlineFlowBox.cpp:

(WebCore::LegacyInlineFlowBox::addTextBoxVisualOverflow):

  • rendering/LegacyInlineTextBox.cpp:

(WebCore::LegacyInlineTextBox::paint):

  • rendering/LegacyInlineTextBox.h:
  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintMaskForTextFillBox):

  • rendering/TextBoxPainter.cpp:

(WebCore::TextBoxPainter::TextBoxPainter):
(WebCore::TextBoxPainter::~TextBoxPainter):
(WebCore::TextBoxPainter::paint):
(WebCore::TextBoxPainter::createMarkedTextFromSelectionInBox):
(WebCore::TextBoxPainter::paintBackground):
(WebCore::TextBoxPainter::paintForegroundAndDecorations):
(WebCore::TextBoxPainter::paintCompositionBackground):
(WebCore::TextBoxPainter::paintForeground):
(WebCore::TextBoxPainter::createDecorationPainter):
(WebCore::TextBoxPainter::paintBackgroundDecorations):
(WebCore::TextBoxPainter::paintForegroundDecorations):
(WebCore::TextBoxPainter::paintCompositionUnderlines):
(WebCore::textPosition):
(WebCore::TextBoxPainter::paintCompositionUnderline):
(WebCore::TextBoxPainter::paintPlatformDocumentMarkers):
(WebCore::TextBoxPainter::calculateUnionOfAllDocumentMarkerBounds):
(WebCore::TextBoxPainter::paintPlatformDocumentMarker):
(WebCore::TextBoxPainter::computePaintRect):
(WebCore::TextBoxPainter::calculateDocumentMarkerBounds):
(WebCore::TextBoxPainter::computeHaveSelection const):
(WebCore::TextBoxPainter::fontCascade const):
(WebCore::TextBoxPainter::textOriginFromPaintRect const):
(WebCore::TextBoxPainter::debugTextShadow const):
(WebCore::LegacyTextBoxPainter::LegacyTextBoxPainter): Deleted.
(): Deleted.
(WebCore::ModernTextBoxPainter::ModernTextBoxPainter): Deleted.
(WebCore::TextBoxPainter<TextBoxPath>::TextBoxPainter): Deleted.
(WebCore::TextBoxPainter<TextBoxPath>::~TextBoxPainter): Deleted.
(WebCore::TextBoxPainter<TextBoxPath>::makeIterator const): Deleted.
(WebCore::TextBoxPainter<TextBoxPath>::paint): Deleted.
(WebCore::TextBoxPainter<TextBoxPath>::createMarkedTextFromSelectionInBox): Deleted.
(WebCore::TextBoxPainter<TextBoxPath>::paintBackground): Deleted.
(WebCore::TextBoxPainter<TextBoxPath>::paintForegroundAndDecorations): Deleted.
(WebCore::TextBoxPainter<TextBoxPath>::paintCompositionBackground): Deleted.
(WebCore::TextBoxPainter<TextBoxPath>::paintForeground): Deleted.
(WebCore::TextBoxPainter<TextBoxPath>::createDecorationPainter): Deleted.
(WebCore::TextBoxPainter<TextBoxPath>::paintBackgroundDecorations): Deleted.
(WebCore::TextBoxPainter<TextBoxPath>::paintForegroundDecorations): Deleted.
(WebCore::TextBoxPainter<TextBoxPath>::paintCompositionUnderlines): Deleted.
(WebCore::TextBoxPainter<TextBoxPath>::textPosition): Deleted.
(WebCore::TextBoxPainter<TextBoxPath>::paintCompositionUnderline): Deleted.
(WebCore::TextBoxPainter<TextBoxPath>::paintPlatformDocumentMarkers): Deleted.
(WebCore::LegacyTextBoxPainter::calculateUnionOfAllDocumentMarkerBounds): Deleted.
(WebCore::TextBoxPainter<TextBoxPath>::paintPlatformDocumentMarker): Deleted.
(WebCore::TextBoxPainter<TextBoxPath>::computePaintRect): Deleted.
(WebCore::calculateDocumentMarkerBounds): Deleted.
(WebCore::TextBoxPainter<TextBoxPath>::computeHaveSelection const): Deleted.
(WebCore::TextBoxPainter<TextBoxPath>::fontCascade const): Deleted.
(WebCore::TextBoxPainter<TextBoxPath>::textOriginFromPaintRect const): Deleted.
(WebCore::TextBoxPainter<TextBoxPath>::debugTextShadow const): Deleted.

  • rendering/TextBoxPainter.h:

(WebCore::TextBoxPainter::textBox const):

4:40 PM Changeset in webkit [294278] by Karl Rackler
  • 2 edits in trunk/LayoutTests

[ iOS ] imported/w3c/web-platform-tests/html/browsers/browsing-the-web/unloading-documents/004.html is a flaky timeout
https://bugs.webkit.org/show_bug.cgi?id=240489

Unreviewed test gardening.

  • LayoutTests/platform/ios/TestExpectations:

Canonical link: https://commits.webkit.org/250622@main

4:13 PM Changeset in webkit [294277] by Alan Coon
  • 8 edits
    2 adds in branches/safari-613-branch

Apply patch. rdar://problem/88672183

4:13 PM Changeset in webkit [294276] by Alan Coon
  • 6 edits in branches/safari-613-branch/Source/WebCore

Apply patch. rdar://problem/88408231

4:03 PM Changeset in webkit [294275] by Oriol Brufau
  • 6 edits
    2 adds in trunk

Take intrinsicBorderForFieldset() into account in intrinsically sized fieldset
https://bugs.webkit.org/show_bug.cgi?id=240388

Reviewed by Darin Adler.

LayoutTests/imported/w3c:

Add test.

  • web-platform-tests/html/semantics/forms/the-fieldset-element/fieldset-intrinsic-size-expected.txt: Added.
  • web-platform-tests/html/semantics/forms/the-fieldset-element/fieldset-intrinsic-size.html: Added.

Source/WebCore:

With 'box-sizing: content-box', computeIntrinsicLogicalContentHeightUsing
was not taking intrinsicBorderForFieldset() into account. So a fieldset
with 'height: min-content' would ignore the extra space required by the
legend, and the contents would overflow.

This patch adds a RenderBox::adjustIntrinsicLogicalHeightForBoxSizing
method with the logic, and overrides it in RenderBlock to take
intrinsicBorderForFieldset() into account.

Test: imported/w3c/web-platform-tests/html/semantics/forms/the-fieldset-element/fieldset-intrinsic-size.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::adjustIntrinsicLogicalHeightForBoxSizing const):
Take intrinsicBorderForFieldset() into account.

  • rendering/RenderBlock.h:

Override adjustIntrinsicLogicalHeightForBoxSizing.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::adjustIntrinsicLogicalHeightForBoxSizing const):
(WebCore::RenderBox::computeIntrinsicLogicalContentHeightUsing const):
Move logic into a new method so that RenderBlock can override it.

  • rendering/RenderBox.h:

Declare adjustIntrinsicLogicalHeightForBoxSizing as virtual.
No need for computeIntrinsicLogicalContentHeightUsing to be virtual.

3:59 PM Changeset in webkit [294274] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit

Fix the build after 250556@main

  • Shared/RemoteLayerTree/RemoteLayerBackingStore.mm:

(WebKit::RemoteLayerBackingStore::applyBackingStoreToLayer):
Maintain the status quo here, for now, by adopting unsafeBuffer().

3:56 PM Changeset in webkit [294273] by Fujii Hironori
  • 2 edits in trunk/Source/WebCore

[CMake][VS] PrivateHeaders/WebCore/WebCoreJSBuiltinInternals.h is not updated in incremental build
https://bugs.webkit.org/show_bug.cgi?id=240297

Reviewed by Don Olmstead.

In CMake Visual Studio generator builds,
WebCoreJSBuiltinInternals.h was not copied to the private headers
directory as expected in incremental builds.

${WebCore_DERIVED_SOURCES_DIR}/WebCoreJSBuiltinInternals.h was
added to both WebCore_SOURCES and WebCore_PRIVATE_FRAMEWORK_HEADERS.
This caused the incremental build problem. Don't add the headers
to WebCore_SOURCES.

There was another minor problem. ${WebCore_BUILTINS_SOURCES} was
passed to the MAIN_DEPENDENCY argument of add_custom_command.
However, MAIN_DEPENDENCY argument should take a single file. It
should be passed to DEPENDS argument.

  • CMakeLists.txt:
3:43 PM Changeset in webkit [294272] by Brent Fulgham
  • 2 edits in trunk/Source/WTF

Correct erroneous guard in Platform file
https://bugs.webkit.org/show_bug.cgi?id=240469
<rdar://problem/93358873>

3:35 PM Changeset in webkit [294271] by commit-queue@webkit.org
  • 2 edits in trunk/Source/ThirdParty/ANGLE

-Wdangling-pointer warning when building ANGLE with GCC 12
https://bugs.webkit.org/show_bug.cgi?id=239339

Patch by Michael Catanzaro <Michael Catanzaro> on 2022-05-16
Reviewed by Yusuke Suzuki and Kenneth Russell.

  • Source/ThirdParty/ANGLE/CMakeLists.txt:

Canonical link: https://commits.webkit.org/250617@main

3:26 PM Changeset in webkit [294270] by Alan Coon
  • 9 edits in branches/safari-613-branch/Source

Versioning.

WebKit-7613.3.2

3:26 PM Changeset in webkit [294269] by Alan Coon
  • 9 edits in branches/safari-613-branch/Source

Revert "Versioning."

This reverts r294068.

3:25 PM Changeset in webkit [294268] by yurys@chromium.org
  • 2 edits in trunk/Source/WebKit

[SOUP2] Compute number of header bytes whe using soup 2
https://bugs.webkit.org/show_bug.cgi?id=240200

Reviewed by Michael Catanzaro.

SOUP 2 lacks methods that allow to get computed head sizes (only present in v3),
calculate the sizes manually when libsoup 2 is used.

No new tests, covered by LayoutTests/http/tests/inspector/network/resource-sizes-network.html
when compiled with SOUP 2.

  • NetworkProcess/soup/NetworkDataTaskSoup.cpp:

(WebKit::addHeaderSizes):
(WebKit::NetworkDataTaskSoup::didGetHeaders):

3:25 PM Changeset in webkit [294267] by ntim@apple.com
  • 4 edits in trunk

[css-ui] Unexpose attachment and borderless-attachment appearance values
https://bugs.webkit.org/show_bug.cgi?id=240447

Reviewed by Tim Horton.

Hide them behind the attachmentElementEnabled setting.

Test: imported/w3c/web-platform-tests/css/css-ui/appearance-cssom-001.html

LayoutTests:

  • imported/w3c/web-platform-tests/css/css-ui/appearance-cssom-001-expected.txt:

Source/WebCore:

  • css/parser/CSSParserFastPaths.cpp:

(WebCore::CSSParserFastPaths::isValidKeywordPropertyAndValue):

Canonical link: https://commits.webkit.org/250615@main

3:18 PM Changeset in webkit [294266] by ntim@apple.com
  • 5 edits in trunk/Source

[css-ui] Update documentation for appearance CSS property
https://bugs.webkit.org/show_bug.cgi?id=240481

Reviewed by Devin Rousso.

Account for r294226, r294187 and r294170.

Source/WebCore:

  • css/CSSProperties.json:

Source/WebInspectorUI:

  • UserInterface/External/CSSDocumentation/CSSDocumentation-overrides.json:
  • UserInterface/External/CSSDocumentation/CSSDocumentation.js:

Canonical link: https://commits.webkit.org/250614@main

2:53 PM Changeset in webkit [294265] by Brent Fulgham
  • 3 edits in trunk/Source/WTF

Remove abandoned WebKitAdditionsFeature1 flag (240462)
https://bugs.webkit.org/show_bug.cgi?id=240462
<rdar://93353298>

Reviewed by Alex Christensen.

Remove the abandoned WebKitAdditionsFeature1 preference, since
it ended up not being needed and now just complicates the build
and generated preferences.

  • Scripts/Preferences/WebPreferencesExperimental.yaml:
  • wtf/ExperimentalFeatureNames.h:
2:44 PM Changeset in webkit [294264] by Brent Fulgham
  • 18 edits in trunk

Remove abandoned UseScreenCaptureKit preference
https://bugs.webkit.org/show_bug.cgi?id=240460
<rdar://problem/93351960>

Reviewed by Youenn Fablet.

We no longer need this switch to activate ScreenCaptureKit, and this code is no
longer used. We should remove it to simplify the build and reduce complexity.

Source/WebCore:

  • platform/mediastream/RealtimeMediaSourceCenter.h:

(WebCore::RealtimeMediaSourceCenter::useScreenCaptureKit const): Deleted.
(WebCore::RealtimeMediaSourceCenter::setUseScreenCaptureKit): Deleted.

Source/WebKit:

  • GPUProcess/GPUProcess.cpp:

(WebKit::GPUProcess::setUseScreenCaptureKit): Deleted.

  • GPUProcess/GPUProcess.h:
  • GPUProcess/GPUProcess.messages.in:
  • Shared/WebPreferencesDefaultValues.cpp:

(WebKit::defaultScreenCaptureKitEnabled): Deleted.

  • Shared/WebPreferencesDefaultValues.h:
  • UIProcess/API/Cocoa/WKPreferences.mm:

(-[WKPreferences _useScreenCaptureKit]): Deleted.
(-[WKPreferences _setUseScreenCaptureKit:]): Deleted.

  • UIProcess/API/Cocoa/WKPreferencesPrivate.h:
  • UIProcess/GPU/GPUProcessProxy.cpp:

(WebKit::GPUProcessProxy::updatePreferences):

  • UIProcess/UserMediaPermissionRequestManagerProxy.cpp:

(WebKit::UserMediaPermissionRequestManagerProxy::syncWithWebCorePrefs const):

Source/WTF:

  • Scripts/Preferences/WebPreferencesExperimental.yaml:

Tools:

  • TestWebKitAPI/Tests/WebKitCocoa/GetDisplayMediaWindowAndScreen.mm:

(TestWebKitAPI::TEST):

2:43 PM Changeset in webkit [294263] by Adrian Perez de Castro
  • 2 edits in trunk/Tools/buildstream

[Flatpak SDK] Update libwpe to version 1.13.2
https://bugs.webkit.org/show_bug.cgi?id=240470

Reviewed by Philippe Normand.

  • elements/sdk/libwpe.bst: Update to version 1.13.2, switch download URL to the

canonical release site while at it.

Canonical link: https://commits.webkit.org/250611@main

2:41 PM Changeset in webkit [294262] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Unreviewed, fix build after 250565@main
https://bugs.webkit.org/show_bug.cgi?id=240416

Patch by Michael Catanzaro <Michael Catanzaro> on 2022-05-16

  • Source/WebCore/rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintMaskForTextFillBox):

  • Source/WebCore/rendering/TextBoxPainter.cpp:

(WebCore::TextBoxPainter<TextBoxPath>::debugTextShadow const):

Canonical link: https://commits.webkit.org/250610@main

2:37 PM Changeset in webkit [294261] by Ryan Haddad
  • 9 edits in trunk

Unreviewed, reverting r294238.

Breaks internal builds

Reverted changeset:

"Use _adoptEffectiveConfiguration instead of a separate
NSURLSession without credentials"
https://bugs.webkit.org/show_bug.cgi?id=240362
https://commits.webkit.org/r294238

2:21 PM Changeset in webkit [294260] by Alan Coon
  • 31 edits in branches/safari-7614.1.14.1-branch

Cherry-pick r294225. rdar://problem/92978482

Make sure calling showNotification will extend the service worker lifetime
https://bugs.webkit.org/show_bug.cgi?id=240273
<rdar://92978482>

Reviewed by Chris Dumez.

Source/WebCore:

Update NotificationClient API so that show is taking a completion handler.
Make use of this completion handler to resolve the promise when the show notification steps are done, as per spec.
Register push event to ServiceWorkerGlobalScope when the event handlers are called.
When ServiceWorkerRegistration::show is called during one of the push event handlers,
extend the push event lifetime by adding the show notification promise to the push event.

Covered by API test.

  • Modules/notifications/Notification.cpp:
  • Modules/notifications/Notification.h:
  • Modules/notifications/NotificationClient.h:
  • dom/ScriptExecutionContext.cpp:
  • dom/ScriptExecutionContext.h:
  • workers/service/ServiceWorkerGlobalScope.cpp:
  • workers/service/ServiceWorkerGlobalScope.h:
  • workers/service/ServiceWorkerRegistration.cpp:
  • workers/service/ServiceWorkerRegistration.h:
  • workers/service/context/ServiceWorkerThread.cpp:

Source/WebKit:

On WebProcess side, implement the new NoficationClient::show API that takes a callback.
Delay calling this callback until UIProcess tells us so through async IPC.
On UIProcess side, take a callback and call it when the show notification steps are done.

  • NetworkProcess/Notifications/NetworkNotificationManager.cpp:
  • NetworkProcess/Notifications/NetworkNotificationManager.h:
  • Shared/Notifications/NotificationManagerMessageHandler.h:
  • Shared/Notifications/NotificationManagerMessageHandler.messages.in:
  • UIProcess/Notifications/ServiceWorkerNotificationHandler.cpp:
  • UIProcess/Notifications/ServiceWorkerNotificationHandler.h:
  • UIProcess/Notifications/WebNotificationManagerMessageHandler.cpp:
  • UIProcess/Notifications/WebNotificationManagerMessageHandler.h:
  • WebProcess/GPU/webrtc/RemoteVideoFrameObjectHeapProxyProcessor.cpp:
  • WebProcess/Notifications/WebNotificationManager.cpp:
  • WebProcess/Notifications/WebNotificationManager.h:
  • WebProcess/WebCoreSupport/WebNotificationClient.cpp:
  • WebProcess/WebCoreSupport/WebNotificationClient.h:

Source/WebKitLegacy/mac:

  • WebCoreSupport/WebNotificationClient.h:
  • WebCoreSupport/WebNotificationClient.mm:

Tools:

  • TestWebKitAPI/TestNotificationProvider.cpp:
  • TestWebKitAPI/TestNotificationProvider.h:
  • TestWebKitAPI/Tests/WebKitCocoa/PushAPI.mm:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@294225 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2:21 PM Changeset in webkit [294259] by mmaxfield@apple.com
  • 1 edit in trunk/Source/WebCore/css/CSSProperties.json

Fix URL to offset-rotate property in CSSProperties.json
https://bugs.webkit.org/show_bug.cgi?id=240474

Reviewed by Myles C. Maxfield.

No new tests, not a functional change.

  • Source/WebCore/css/CSSProperties.json:

Canonical link: https://commits.webkit.org/250608@main

2:21 PM Changeset in webkit [294258] by Alan Coon
  • 8 edits in branches/safari-7614.1.14.1-branch

Cherry-pick r294218. rdar://problem/90400867

Right click > "Open Link" should trigger a navigation action with WKNavigationTypeLinkActivated
https://bugs.webkit.org/show_bug.cgi?id=240427
rdar://90400867

Reviewed by Tim Horton.

Add a new linked-on-or-after check to guard this new behavior for apps built against newer SDK versions.

Reviewed by Tim Horton.

Make a couple of minor adjustments to ContextMenuController to ensure that right clicking a link and choosing
"Open Link" or "Open Link in New Window" surfaces a navigation action with WKNavigationTypeLinkActivated,
rather than WKNavigationTypeOther.

Test: ContextMenuTests.NavigationTypeWhenOpeningLink

  • page/ContextMenuContext.cpp: (WebCore::ContextMenuContext::ContextMenuContext):
  • page/ContextMenuContext.h: (WebCore::ContextMenuContext::event const):

Save a reference to the Event of type "contextmenu" that's triggering context menu presentation in the
ContextMenuContext.

  • page/ContextMenuController.cpp: (WebCore::ContextMenuController::maybeCreateContextMenu): (WebCore::openNewWindow):

Plumb the "contextmenu" event through to FrameLoader::loadFrameRequest when opening links via context menu.

(WebCore::ContextMenuController::contextMenuItemSelected):
Right click > "Open Link" should trigger a navigation action with WKNavigationTypeLinkActivated
https://bugs.webkit.org/show_bug.cgi?id=240427
rdar://90400867

Reviewed by Tim Horton.

Add an API test to verify that right clicking a link and selecting "Open Link" triggers a navigation action with
the type WKNavigationTypeLinkActivated.

  • TestWebKitAPI/Tests/mac/ContextMenuTests.mm: (TestWebKitAPI::TEST):

Canonical link: https://commits.webkit.org/250576@main

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@294218 268f45cc-cd09-0410-ab3c-d52691b4dbfc

2:19 PM Changeset in webkit [294257] by Adrian Perez de Castro
  • 5 edits in releases/WebKitGTK/webkit-2.36/Source

Merge r294177 - Non-unified build broken in debug mode
https://bugs.webkit.org/show_bug.cgi?id=240378

Unreviewed non-unified build fixes.

  • heap/StructureAlignedMemoryAllocator.cpp: Include <sys/mman.h> if needed.

Non-unified build broken in debug mode
https://bugs.webkit.org/show_bug.cgi?id=240378

Unreviewed non-unified build fixes.

  • contentextensions/ContentExtensionCompiler.cpp: Add missing wtf/CrossThreadCopier.h header.
  • workers/service/ServiceWorkerClients.cpp: Add missing Logging.h header.

Canonical link: https://commits.webkit.org/250544@main

2:19 PM Changeset in webkit [294256] by Adrian Perez de Castro
  • 5 edits in releases/WebKitGTK/webkit-2.36/Source

Merge r294154 - Unreviewed, non-unified build fixes
https://bugs.webkit.org/show_bug.cgi?id=240369

Source/JavaScriptCore:

  • runtime/DateConversion.cpp:

Source/WebCore:

  • Modules/highlight/HighlightRegister.h:
  • rendering/TextPainter.h:
2:15 PM Changeset in webkit [294255] by Alan Coon
  • 9 edits in branches/safari-7614.1.14.1-branch/Source

Versioning.

WebKit-7614.1.14.1.2

2:01 PM Changeset in webkit [294254] by ntim@apple.com
  • 1 edit in trunk/metadata/contributors.json

Add myself to contributors.json
https://bugs.webkit.org/show_bug.cgi?id=240475

Reviewed by Myles C. Maxfield.

  • metadata/contributors.json:

Canonical link: https://commits.webkit.org/250607@main

1:45 PM Changeset in webkit [294253] by Alan Coon
  • 66 edits
    2 adds
    2 deletes in branches/safari-7614.1.14.0-branch/Source/WebKit

Cherry-pick r294190. rdar://problem/91006582

SharedBuffer should be copied and then attributed back to WebContent
https://bugs.webkit.org/show_bug.cgi?id=240223
rdar://91006582

Patch by Jean-Yves Avenard <jean-yves.avenard@apple.com> on 2022-05-14
Reviewed by Jer Noble.

Ideally, when mapping an IPCHandle we would prefer to use Copy On Write.
However, there's no support for COW with explicitly-owned memory such as
those created with VM_FLAGS_PURGABLE flag.
As such, when calling mach_vm_map with copy=true argument is set the
entire page will be copied.
It is therefore more performant to manually create a new buffer and copy
the actual content.
The memory can then be blamed on a particular process.

Rework FragmentedSharedBuffer/SharedBuffer IPC's serializer to perform
a copy, partially reverting changes made in bug 233401.

We replace the unnecessary use of SharedMemory::IPCHandle and directly
send SharedBuffer in clipboard and PDF related methods.
Rename SharedBufferCopy to SharedBufferReference to more accurately
describe what it does.

Make new use of the SharedBufferReference class, replacing the use of IPCHandle
in RemoteSourceBufferProxy and RemoteMediaResourceManager.

Rename SharedBufferReference::buffer() into
SharedBufferReference::unsafeBuffer() to give better clarity that accessing
SharedBuffer and SharedMemory should be treated with care.

SharedBuffer sent from trusted processes such as network process should
prefer the use of SharedBufferReference over directly using IPCHandle or
SharedBuffer, it makes optimisation easier and avoid duplicating code.

No observable change, covered by existing tests.

  • GPUProcess/GPUConnectionToWebProcess.cpp: (WebKit::GPUConnectionToWebProcess::remoteMediaResourceManager):
  • GPUProcess/media/RemoteCDMInstanceProxy.h:
  • GPUProcess/media/RemoteImageDecoderAVFProxy.cpp: (WebKit::RemoteImageDecoderAVFProxy::createDecoder): (WebKit::RemoteImageDecoderAVFProxy::setData):
  • GPUProcess/media/RemoteImageDecoderAVFProxy.h:
  • GPUProcess/media/RemoteImageDecoderAVFProxy.messages.in:
  • GPUProcess/media/RemoteMediaResourceManager.cpp: (WebKit::RemoteMediaResourceManager::RemoteMediaResourceManager): (WebKit::RemoteMediaResourceManager::dataReceived):
  • GPUProcess/media/RemoteMediaResourceManager.h:
  • GPUProcess/media/RemoteMediaResourceManager.messages.in:
  • GPUProcess/media/RemoteSourceBufferProxy.cpp: (WebKit::RemoteSourceBufferProxy::append):
  • GPUProcess/media/RemoteSourceBufferProxy.h:
  • GPUProcess/media/RemoteSourceBufferProxy.messages.in:
  • NetworkProcess/NetworkResourceLoader.cpp: (WebKit::NetworkResourceLoader::bufferingTimerFired): (WebKit::NetworkResourceLoader::sendBuffer): (WebKit::NetworkResourceLoader::dataReceivedThroughContentFilter):
  • NetworkProcess/ServiceWorker/ServiceWorkerDownloadTask.cpp: (WebKit::ServiceWorkerDownloadTask::didReceiveData):
  • NetworkProcess/ServiceWorker/ServiceWorkerDownloadTask.h:
  • NetworkProcess/ServiceWorker/ServiceWorkerDownloadTask.messages.in:
  • NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp: (WebKit::ServiceWorkerFetchTask::didReceiveData): (WebKit::ServiceWorkerFetchTask::loadBodyFromPreloader):
  • NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.h:
  • NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.messages.in:
  • Platform/IPC/SharedBufferCopy.cpp: Removed.
  • Platform/IPC/SharedBufferCopy.h: Removed.
  • Platform/IPC/SharedBufferReference.cpp: Added. (IPC::SharedBufferReference::encode const): (IPC::SharedBufferReference::decode): (IPC::SharedBufferReference::unsafeBuffer const): (IPC::SharedBufferReference::data const): (IPC::SharedBufferReference::bufferWithOwner const):
  • Platform/IPC/SharedBufferReference.h: Added. (IPC::SharedBufferReference::SharedBufferReference): (IPC::SharedBufferReference::size const): (IPC::SharedBufferReference::isEmpty const): (IPC::SharedBufferReference::isNull const):
  • Platform/SharedMemory.cpp: (WebKit::transferOwnershipOfMemory const):
  • Platform/SharedMemory.h:
  • Platform/cocoa/SharedMemoryCocoa.cpp: (WebKit::changeOwnershipOfMemory): (WebKit::SharedMemory::Handle::takeOwnershipOfMemory const): (WebKit::SharedMemory::Handle::transferOwnershipOfMemory const): (WebKit::machProtection): (WebKit::SharedMemory::map):
  • Scripts/process-entitlements.sh:
  • Shared/RemoteLayerTree/CGDisplayListImageBufferBackend.cpp: (WebKit::CGDisplayListImageBufferBackend::createBackendHandle const):
  • Shared/RemoteLayerTree/RemoteLayerBackingStore.mm: (WebKit::RemoteLayerBackingStore::applyBackingStoreToLayer):
  • Shared/WebCoreArgumentCoders.cpp: (IPC::encodeSharedBuffer): (IPC::decodeSharedBuffer):
  • Sources.txt:
  • UIProcess/API/Cocoa/WKWebView.mm: (-[WKWebView createPDFWithConfiguration:completionHandler:]):
  • UIProcess/Cocoa/WebPageProxyCocoa.mm: (WebKit::WebPageProxy::platformRegisterAttachment):
  • UIProcess/Cocoa/WebPasteboardProxyCocoa.mm: (WebKit::WebPasteboardProxy::getPasteboardBufferForType): (WebKit::WebPasteboardProxy::setPasteboardBufferForType): (WebKit::WebPasteboardProxy::readBufferFromPasteboard):
  • UIProcess/Cocoa/WebProcessProxyCocoa.mm: (WebKit::WebProcessProxy::sendAudioComponentRegistrations):
  • UIProcess/WebPageProxy.cpp: (WebKit::CompletionHandler<void): (WebKit::WebPageProxy::drawPagesToPDF): (WebKit::WebPageProxy::drawToPDF): (WebKit::WebPageProxy::getLoadDecisionForIcon): (WebKit::WebPageProxy::updateAttachmentAttributes): (WebKit::WebPageProxy::registerAttachmentIdentifierFromData): (WebKit::WebPageProxy::platformRegisterAttachment):
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/WebPasteboardProxy.cpp: (WebKit::WebPasteboardProxy::readBufferFromPasteboard):
  • UIProcess/WebPasteboardProxy.h:
  • UIProcess/WebPasteboardProxy.messages.in:
  • UIProcess/WebURLSchemeTask.cpp: (WebKit::WebURLSchemeTask::didReceiveData):
  • UIProcess/gtk/WebPasteboardProxyGtk.cpp: (WebKit::WebPasteboardProxy::readBuffer):
  • UIProcess/ios/WKContentView.mm: (-[WKContentView _wk_pageCountForPrintFormatter:]):
  • UIProcess/ios/WebPageProxyIOS.mm: (WebKit::WebPageProxy::drawToPDFiOS):
  • UIProcess/mac/WebPageProxyMac.mm: (WebKit::WebPageProxy::dataSelectionForPasteboard):
  • WebKit.xcodeproj/project.pbxproj:
  • WebProcess/GPU/graphics/ImageBufferBackendHandle.h:
  • WebProcess/GPU/media/RemoteImageDecoderAVF.cpp: (WebKit::RemoteImageDecoderAVF::setData):
  • WebProcess/GPU/media/RemoteImageDecoderAVFManager.cpp: (WebKit::RemoteImageDecoderAVFManager::createImageDecoder):
  • WebProcess/GPU/media/RemoteMediaResourceProxy.cpp: (WebKit::RemoteMediaResourceProxy::dataReceived):
  • WebProcess/GPU/media/SourceBufferPrivateRemote.cpp: (WebKit::SourceBufferPrivateRemote::append):
  • WebProcess/Network/WebResourceLoader.cpp: (WebKit::WebResourceLoader::didReceiveData):
  • WebProcess/Network/WebResourceLoader.h:
  • WebProcess/Network/WebResourceLoader.messages.in:
  • WebProcess/Plugins/PDF/PDFPlugin.mm: (WebKit::PDFPlugin::writeItemsToPasteboard):
  • WebProcess/Storage/WebServiceWorkerFetchTaskClient.cpp: (WebKit::WebServiceWorkerFetchTaskClient::didReceiveData): (WebKit::WebServiceWorkerFetchTaskClient::didReceiveBlobChunk):
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:
  • WebProcess/WebCoreSupport/WebEditorClient.cpp: (WebKit::WebEditorClient::registerAttachmentIdentifier):
  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: (WebKit::WebPlatformStrategies::bufferForType): (WebKit::WebPlatformStrategies::setBufferForType): (WebKit::WebPlatformStrategies::readBufferFromClipboard): (WebKit::WebPlatformStrategies::readBufferFromPasteboard):
  • WebProcess/WebCoreSupport/mac/WebDragClientMac.mm: (WebKit::WebDragClient::declareAndWriteDragImage):
  • WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::getContentsAsMHTMLData): (WebKit::WebPage::getSelectionAsWebArchiveData): (WebKit::WebPage::getMainResourceDataOfFrame): (WebKit::WebPage::getResourceDataFromFrame): (WebKit::WebPage::getWebArchiveOfFrame): (WebKit::WebPage::getAccessibilityTreeData): (WebKit::WebPage::drawToPDF): (WebKit::WebPage::drawPagesToPDF): (WebKit::WebPage::didGetLoadDecisionForIcon): (WebKit::WebPage::urlSchemeTaskDidReceiveData): (WebKit::WebPage::updateAttachmentAttributes):
  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
  • WebProcess/WebPage/ios/WebPageIOS.mm: (WebKit::WebPage::getDataSelectionForPasteboard): (WebKit::WebPage::performActionOnElement): (WebKit::WebPage::drawToPDFiOS): (WebKit::WebPage::didFinishLoadForQuickLookDocumentInMainFrame):
  • WebProcess/WebPage/mac/WebPageMac.mm: (WebKit::WebPage::getDataSelectionForPasteboard):
  • WebProcess/WebProcess.h:
  • WebProcess/WebProcess.messages.in:
  • WebProcess/cocoa/WebProcessCocoa.mm: (WebKit::WebProcess::consumeAudioComponentRegistrations):

# Please populate the above commit message. Lines starting
# with '#' will be ignored

# 13 Tim Horton <timothy_horton@apple.com>
#
# ApplePayLogoSystemImage needlessly loads PassKit in WebKit child processes on iOS
# https://bugs.webkit.org/show_bug.cgi?id=240404
# <rdar://93070349>
#
# Reviewed by Chris Dumez.
#
# * UIProcess/Launcher/cocoa/ProcessLauncherCocoa.mm:
# (WebKit::ProcessLauncher::launchProcess): Adopt the WTF implementation of systemDirectoryPath.
# (WebKit::systemDirectoryPath): Moved to WTF.
#
# 13 Wenson Hsieh <Wenson Hsieh>
#
# ImageAnalysisQueue should reanalyze image elements whose image sources have changed
# https://bugs.webkit.org/show_bug.cgi?id=240371
# rdar://93175651
#
# Reviewed by Tim Horton.
#
# To aid with debugging similar issues in the future, plumb the image URL through to
# requestImageAnalysisWithIdentifier, which (if an engineering default is specified) will additionally reveal
# the URL in system logs.
#
# * Platform/cocoa/ImageAnalysisUtilities.h:
# * UIProcess/Cocoa/WebViewImpl.mm:
# (WebKit::WebViewImpl::requestTextRecognition):
# * UIProcess/ios/WKContentViewInteraction.mm:
# (-[WKContentView requestTextRecognition:imageData:identifier:completionHandler:]):
#
# 13 Aditya Keerthi <Aditya Keerthi>
#
# [iOS] Multiple visible find highlights when searching for text after beginning a "find from selection"
# https://bugs.webkit.org/show_bug.cgi?id=240393
# rdar://91441895
#
# Reviewed by Wenson Hsieh.
#
# Some WebKit clients use SPI on WKWebView to support "find from selection"
# functionality (the Cmd+E shortcut). However, to support general
# find functionality, they use new find API that uses a different codepath
# to draw highlights. Mixing use of the API and SPI can currently result
# in two highlights showing up.
#
# To fix, ensure SPI highlights are removed once the API is being used.
# The long term solution is for clients to adopt API for the
# "find from selection" functionality, but in the short term the SPI
# should remain supported.
#
# * WebProcess/WebPage/WebPage.cpp:
# (WebKit::WebPage::clearAllDecoratedFoundText):
#
# 13 Kimmo Kinnunen <kkinnunen@apple.com>
#
# IPC cannot encode, decode Ref<>, causing duplicate code
# https://bugs.webkit.org/show_bug.cgi?id=240160
#
# Reviewed by Antti Koivisto.
#
# Consider reference counted type T:
# Encoding is of signature encode(const T&)
# Decoding is of signature std::optional<Ref<T>> decode()
# This is usable for both RefPtr and Ref use-cases.
#
# Add Ref<T> encoder that is polymorphic to T.
# This way clients do not need to write encoders for
# Ref<T>, RefPtr<T>. They just need one encoder, for T.
#
# When clients do not need to write RefPtr<T>, they make less
# bugs. These will be corrected in future patches.
#
# Having Ref<T> encoders allows clients to use Vector<Ref<T>> encoding
# via Vector<U> encoder, and they would not need to duplicate that
# logic, making less bugs. These will be corrected in future patches.
#
# Remove most IPC::ArgumentCoder<Ref<..>> in favor of IPC::ArgumentCoder<..>.
# In the cases where removal was done, remove also redundant
# IPC::ArgumentCoder<RefPtr<..>>.
#
# * Platform/IPC/ArgumentCoders.h:
# (IPC::ArgumentCoder<RefPtr<T>>::decode):
# (IPC::ArgumentCoder<Ref<T>>::encode):
# (IPC::ArgumentCoder<Ref<T>>::decode):
# * Shared/Cocoa/WebCoreArgumentCodersCocoa.mm:
# (IPC::ArgumentCoder<WebCore::Font>::encodePlatformData):
# (IPC::ArgumentCoder<WebCore::Font>::decodePlatformData):
# * Shared/WebCoreArgumentCoders.cpp:
# (IPC::ArgumentCoder<WebCore::Font>::encode):
# (IPC::ArgumentCoder<Font>::decode):
# (IPC::ArgumentCoder<SystemImage>::encode):
# (IPC::ArgumentCoder<SystemImage>::decode):
# * Shared/WebCoreArgumentCoders.h:
# * Shared/playstation/WebCoreArgumentCodersPlayStation.cpp:
# (IPC::ArgumentCoder<Font>::encodePlatformData):
# (IPC::ArgumentCoder<Font>::decodePlatformData):
# * Shared/soup/WebCoreArgumentCodersSoup.cpp:
# (IPC::ArgumentCoder<Font>::encodePlatformData):
# (IPC::ArgumentCoder<Font>::decodePlatformData):
# * Shared/win/WebCoreArgumentCodersWin.cpp:
# (IPC::ArgumentCoder<Font>::encodePlatformData):
# (IPC::ArgumentCoder<Font>::decodePlatformData):
#
# 13 Tim Horton <timothy_horton@apple.com>
#
# Add UI-side layers for optionally indicating interaction regions
# https://bugs.webkit.org/show_bug.cgi?id=240372
# <rdar://problem/87170289>
#
# Reviewed by Dean Jackson.
#
# * Shared/RemoteLayerTree/RemoteLayerTreePropertyApplier.mm:
# (WebKit::RemoteLayerTreePropertyApplier::applyPropertiesToLayer):
# (WebKit::RemoteLayerTreePropertyApplier::applyHierarchyUpdates):
# Allow RemoteLayerTreeInteractionRegionLayers to add and maintain layers for interaction regions.
#
# * SourcesCocoa.txt:
# * UIProcess/RemoteLayerTree/RemoteLayerTreeInteractionRegionLayers.h: Added.
# * UIProcess/RemoteLayerTree/RemoteLayerTreeInteractionRegionLayers.mm: Added.
# (configureLayerForInteractionRegion):
# (WebKit::interactionRegionForLayer):
# (WebKit::isInteractionRegionLayer):
# (WebKit::setInteractionRegion):
# Box WebCore::InteractionRegion in a Objective-C object and store it on the layer.
# Use this as a key to indicate that a given layer is an interaction region.
#
# (WebKit::appendInteractionRegionLayersForLayer):
# Make sure that interaction region layers are always at the end of the layer's sublayers array.
#
# (WebKit::updateLayersForInteractionRegions):
# Add new layers for interaction regions.
# Maintain the same layer for regions that cover the same area.
# Add a green wash if the default WKInteractionRegionDebugFill is set.
#
# * WebKit.xcodeproj/project.pbxproj:
#
# 13 Simon Fraser <Simon Fraser>
#
# Simplify the usage of DrawGlyphsRecorder
# https://bugs.webkit.org/show_bug.cgi?id=240363
#
# Reviewed by Myles Maxfield.
#
# Move the DeconstructDrawGlyphs switch from inside DrawGlyphsRecorder to
# DisplayList::Recorder, so that DrawGlyphsRecorder is only ever used when deconstructing
# glyphs.
#
# Also, ensure that the only time that glyph deconstruction is enabled is when
# recording display lists via RemoteDisplayListRecorderProxy. There's no reason for
# paintAttachmentText() to need glyph deconstruction.
#
# This is a small perf improvement on the MotionMark Design subtest.
#
# * WebProcess/GPU/graphics/RemoteDisplayListRecorderProxy.cpp:
# (WebKit::RemoteDisplayListRecorderProxy::RemoteDisplayListRecorderProxy):
# (WebKit::m_renderingBackend):
# * WebProcess/GPU/graphics/RemoteDisplayListRecorderProxy.h:
#
# it takes from the XPC message is sent until the XPC reply is received. Add reporting when this happens

# On branch bz/240223
# Your branch is ahead of 'origin/main' by 1 commit.
# (use "git push" to publish your local commits)
#
# Changes to be committed:
# (use "git restore --staged <file>..." to unstage)
# modified: Source/WebKit/ChangeLog
#
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
# 0001-SharedBuffer-should-be-copied-and-then-attributed-ba.patch
#

Canonical link: https://commits.webkit.org/250556@main

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@294190 268f45cc-cd09-0410-ab3c-d52691b4dbfc

1:43 PM Changeset in webkit [294252] by Alan Coon
  • 2 edits in branches/safari-7614.1.14.0-branch/Source/WebKit

Cherry-pick r294175. rdar://problem/91441895

[iOS] Multiple visible find highlights when searching for text after beginning a "find from selection"
https://bugs.webkit.org/show_bug.cgi?id=240393
rdar://91441895

Reviewed by Wenson Hsieh.

Some WebKit clients use SPI on WKWebView to support "find from selection"
functionality (the Cmd+E shortcut). However, to support general
find functionality, they use new find API that uses a different codepath
to draw highlights. Mixing use of the API and SPI can currently result
in two highlights showing up.

To fix, ensure SPI highlights are removed once the API is being used.
The long term solution is for clients to adopt API for the
"find from selection" functionality, but in the short term the SPI
should remain supported.

  • WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::clearAllDecoratedFoundText):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@294175 268f45cc-cd09-0410-ab3c-d52691b4dbfc

1:38 PM Changeset in webkit [294251] by Alan Coon
  • 9 edits in branches/safari-7614.1.14.0-branch/Source

Versioning.

WebKit-7614.1.14.0.2

1:32 PM Changeset in webkit [294250] by Jonathan Bedard
  • 2 edits in trunk/Websites/bugs.webkit.org

[PrettyPatch] Support commit messages (Follow-up fix)
https://bugs.webkit.org/show_bug.cgi?id=240386
<rdar://problem/93248835>

Unreviewed follow-up fix.

  • Websites/bugs.webkit.org/PrettyPatch/PrettyPatch.rb: Handle diffs without a header.

Canonical link: https://commits.webkit.org/250606@main

12:00 PM Changeset in webkit [294249] by Ziran Sun
  • 3 edits
    1 move in trunk

[css-ui] alias appearance <compat-auto> keywords to 'auto' for textfield
https://bugs.webkit.org/show_bug.cgi?id=238551

Reviewed by Tim Nguyen.

Source/WebCore:

This is to add support of aliasing appearance to 'auto' for textfield.
It has improved the following wpt tests
imported/w3c/web-platform-tests/css/css-ui/appearance-textfield-001.html
and
imported/w3c/web-platform-tests/css/css-ui/webkit-appearance-textfield-001.html.

The test failures though, are not fully fixed. The issue left is that the search cancel button
for input type="search" still present while it is expected to disappear (Bug 238751).

  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::adjustAppearanceForElement const):

LayoutTests:

Rename test name as the test result now matches the expected.

  • fast/forms/color/color-input-uses-color-well-appearance-expected.html: Renamed from LayoutTests/fast/forms/color/color-input-uses-color-well-appearance-expected-mismatch.html.
11:54 AM Changeset in webkit [294248] by commit-queue@webkit.org
  • 2 edits
    1 add in trunk/Tools/buildstream

[Flatpak SDK] Update to pipewire master
https://bugs.webkit.org/show_bug.cgi?id=240428

Patch by Philippe Normand <pnormand@igalia.com> on 2022-05-16
Reviewed by Adrian Perez de Castro.

The GStreamer pipewiresrc element from 0.3.36 has bugs that were fixed in the master branch.

  • elements/freedesktop-sdk.bst:
  • patches/fdo-0001-pipewire-base-Track-master-branch.patch: Added.

Canonical link: https://commits.webkit.org/250604@main

11:35 AM Changeset in webkit [294247] by Alan Coon
  • 9 edits in branches/safari-7614.1.14.100-branch/Source

Versioning.

WebKit-7614.1.14.100.1

11:11 AM Changeset in webkit [294246] by Alan Coon
  • 1 copy in branches/safari-7614.1.14.100-branch

New branch.

10:58 AM Changeset in webkit [294245] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[GTK][WPE] Make ANGLE backend EGL context initialization work
https://bugs.webkit.org/show_bug.cgi?id=240313

The platform is not selected correctly by default and the config
can not be chosen in some cases in the current conditions. Maybe
at some point we want something more general in the code for the
platform detection but for testing we have solved it adding the
environment variable (EGL_PLATORM) to make sure the platform
inside mesa is correctly selected when running the tests. If we
don't do it the small environment in the testing driver process
causes to chose the X11 because it is the building default
option. We used wayland because the headless driver we use is a
wayland backed implemented using shared memory.

Patch by Alejandro G. Castro <alex@igalia.com> on 2022-05-16
Reviewed by Žan Doberšek.

No new tests, it fixes the tests for the ANGLE implementation.

  • Scripts/webkitpy/port/headlessdriver.py:

(HeadlessDriver._setup_environ_for_test):

10:57 AM Changeset in webkit [294244] by Karl Rackler
  • 2 edits in trunk/LayoutTests

[Gardening]: REGRESSION (r264117): [ Mac iOS ] imported/w3c/web-platform-tests/html/cross-origin-embedder-policy/blob.https.html
https://bugs.webkit.org/show_bug.cgi?id=214155

Unreviewed test gardening.

  • LayoutTests/platform/ios/TestExpectations:

Canonical link: https://commits.webkit.org/250602@main

10:53 AM Changeset in webkit [294243] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

REGRESSION(r294104): [GStreamer][VideoCapture] Webcam raw streams may hang up the video capture pipeline
https://bugs.webkit.org/show_bug.cgi?id=240456

Patch by Loïc Le Page <llepage@igalia.com> on 2022-05-16
Reviewed by Philippe Normand.

When capturing a raw stream from a webcam, the pipeline may hang up because the decodebin3 cannot fix the upstream caps.
The webcam capsfilter should not only specify the captured mime-type (video/x-raw) but also the capture image dimensions.

Manually tested.

  • platform/mediastream/gstreamer/GStreamerVideoCapturer.cpp:
10:48 AM Changeset in webkit [294242] by J Pascoe
  • 2 edits in trunk/Tools

(REGRESSION(r287957)[ Mac ] TestWebKitAPI.WebAuthenticationPanel.LAGetAssertionNoMockNoUserGesture is a constant timeout)
https://bugs.webkit.org/show_bug.cgi?id=240403
rdar://93271671

Reviewed by Brent Fulgham.

Whenever HAVE(UNIFIED_ASC_AUTH_UI), unmocked calls are passed to ASA, which does not
support calls from TWAPI.

  • TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:

(TestWebKitAPI::TEST):

10:43 AM Changeset in webkit [294241] by J Pascoe
  • 2 edits in trunk/Source/WebKit

REGRESSION (250501@main): [ Mac ] 2 TestWebKitAPI.WebAuthenticationPanel.GetAssertionLA tests failing
https://bugs.webkit.org/show_bug.cgi?id=240406
rdar://93267082

Reviewed by Brent Fulgham.

Using the the truthiness of BOOL from attributes doesn't work here, instead compare it to @YES.

  • UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.mm:

(WebKit::LocalAuthenticatorInternal::getExistingCredentials):

10:35 AM Changeset in webkit [294240] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

[LFC][FFC] Add support for logical ordering
https://bugs.webkit.org/show_bug.cgi?id=240442

Reviewed by Antti Koivisto.

Let's reorder the logicalFlexItemList when the 'order' property has a non-initial value.

  • layout/formattingContexts/flex/FlexFormattingContext.cpp:

(WebCore::Layout::FlexFormattingContext::layoutInFlowContentForIntegration):

10:30 AM Changeset in webkit [294239] by Karl Rackler
  • 2 edits in trunk/LayoutTests

[ iOS ] imported/w3c/web-platform-tests/webrtc/RTCRtpSender-replaceTrack.https.html is a consistent failure
https://bugs.webkit.org/show_bug.cgi?id=240463

Unreviewed test gardening.

  • LayoutTests/platform/ios/TestExpectations:

Canonical link: https://commits.webkit.org/250597@main

9:49 AM Changeset in webkit [294238] by commit-queue@webkit.org
  • 8 edits in trunk

Use _adoptEffectiveConfiguration instead of a separate NSURLSession without credentials
https://bugs.webkit.org/show_bug.cgi?id=240362

Patch by Alex Christensen <achristensen@webkit.org> on 2022-05-16
Reviewed by Chris Dumez.

Source/WebCore/PAL:

  • pal/spi/cf/CFNetworkSPI.h:

Source/WebKit:

  • NetworkProcess/cocoa/NetworkDataTaskCocoa.mm:

(WebKit::NetworkDataTaskCocoa::NetworkDataTaskCocoa):

  • NetworkProcess/cocoa/NetworkSessionCocoa.h:
  • NetworkProcess/cocoa/NetworkSessionCocoa.mm:

(WebKit::NetworkSessionCocoa::initializeNSURLSessionsInSet):
(WebKit::SessionSet::initializeEphemeralStatelessSessionIfNeeded):
(WebKit::NetworkSessionCocoa::sessionWrapperForTask):
(WebKit::NetworkSessionCocoa::appBoundSession):
(WebKit::SessionSet::isolatedSession):
(WebKit::NetworkSessionCocoa::invalidateAndCancelSessionSet):

9:33 AM Changeset in webkit [294237] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

[LFC][FFC] Add "flex-direction: column-reverse" basic visual/logical conversion
https://bugs.webkit.org/show_bug.cgi?id=240434

Reviewed by Antti Koivisto.

With "flex-direction: column-reverse" the main axis progression is from visual bottom to top (with default writing mode and all that).

  • layout/formattingContexts/flex/FlexFormattingContext.cpp:

(WebCore::Layout::FlexFormattingContext::layoutInFlowContentForIntegration):

9:18 AM Changeset in webkit [294236] by Karl Rackler
  • 2 edits in trunk/LayoutTests

[Gardening]:[ iOS ] imported/w3c/web-platform-tests/webrtc/RTCPeerConnection-videoDetectorTest.html is a consistent failure
https://bugs.webkit.org/show_bug.cgi?id=240348

Unreviewed test gardening.

  • LayoutTests/platform/ios/TestExpectations:

Canonical link: https://commits.webkit.org/250594@main

9:12 AM Changeset in webkit [294235] by commit-queue@webkit.org
  • 1 edit in trunk/Source/WebCore/platform/graphics/avfoundation/objc/LocalSampleBufferDisplayLayer.mm

Canvas generated transparent pixels are not well handled by LocalSampleBufferDisplayLayer
https://bugs.webkit.org/show_bug.cgi?id=230621
rdar://problem/83668394

Patch by Youenn Fablet <youennf@gmail.com> on 2022-05-16
Reviewed by Eric Carlson.

Remove black color for root and display layer.
When display layer is hidden but root layer is visible, set root layer background color to black to keep existing behavior.
This allows to render transparent video frames without a black background.

Covered by https://jsfiddle.net/nfu7oL60/ (make sure to switch between tabs after clicking start).
Also covered by https://webrtc.github.io/samples/src/content/peerconnection/pc1/ and muting/unmuting the camera.

  • Source/WebCore/platform/graphics/avfoundation/objc/LocalSampleBufferDisplayLayer.mm:

(WebCore::LocalSampleBufferDisplayLayer::initialize):
(WebCore::LocalSampleBufferDisplayLayer::updateDisplayMode):

Canonical link: https://commits.webkit.org/250593@main

8:52 AM Changeset in webkit [294234] by Patrick Angle
  • 8 edits in trunk

Web Inspector: Regression(r266885) Crash sometimes when rehydrating imported audit results
https://bugs.webkit.org/show_bug.cgi?id=240366

Reviewed by Devin Rousso.

Source/JavaScriptCore:

  • inspector/protocol/DOM.json:

Source/WebCore:

Added test cases to inspector/model/dom-node.html

After r266885, there is no path to handle the possibility that there may not be a resulting node for calls to
DOM.querySelector. To correct this, mark the return value as optional (Web Inspector frontend already treats
it as optional) and return early if there was no Element matching the selector.

  • inspector/agents/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::querySelector):

  • inspector/agents/InspectorDOMAgent.h:

LayoutTests:

  • inspector/model/dom-node.html:
  • inspector/model/dom-node-expected.txt:
8:08 AM Changeset in webkit [294233] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

[LFC][FFC] Add "flex-direction: row-reverse" basic visual/logical conversion
https://bugs.webkit.org/show_bug.cgi?id=240432

Reviewed by Antti Koivisto.

With "flex-direction: row-reverse" the main axis progression is from visual right to left (with default writing mode and all that).

  • layout/formattingContexts/flex/FlexFormattingContext.cpp:

(WebCore::Layout::FlexFormattingContext::layoutInFlowContentForIntegration):

6:55 AM Changeset in webkit [294232] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit

[GTK] Warning in WebKitDOMDocumentGtk.cpp with GCC 12
https://bugs.webkit.org/show_bug.cgi?id=239353

Patch by Michael Catanzaro <Michael Catanzaro> on 2022-05-16
Reviewed by Yusuke Suzuki.

  • Source/WebKit/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentGtk.cpp:

(webkit_dom_document_create_node_iterator):
(webkit_dom_document_create_tree_walker):

Canonical link: https://commits.webkit.org/250590@main

6:16 AM Changeset in webkit [294231] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

[LFC][FFC] Add "flex-direction: column" basic visual/logical conversion
https://bugs.webkit.org/show_bug.cgi?id=240430

Reviewed by Antti Koivisto.

With "flex-direction: column" the main axis progression is based on the margin box height.

  • layout/formattingContexts/flex/FlexFormattingContext.cpp:

(WebCore::Layout::FlexFormattingContext::layoutInFlowContentForIntegration):

5:54 AM Changeset in webkit [294230] by commit-queue@webkit.org
  • 1 edit in trunk/Source/WebCore/platform/mediastream/mac/MockAudioSharedUnit.mm

Rename MockAudioSharedInternalUnit::m_isProducingState to MockAudioSharedInternalUnit::m_internalState
https://bugs.webkit.org/show_bug.cgi?id=240450

Patch by Youenn Fablet <youennf@gmail.com> on 2022-05-16
Reviewed by Eric Carlson.

Follow-up to https://bugs.webkit.org/show_bug.cgi?id=240421 review.

No change of behavior.

  • Source/WebCore/platform/mediastream/mac/MockAudioSharedUnit.mm:

(WebCore::MockAudioSharedInternalUnit::MockAudioSharedInternalUnit):
(WebCore::MockAudioSharedInternalUnit::~MockAudioSharedInternalUnit):
(WebCore::MockAudioSharedInternalUnit::start):
(WebCore::MockAudioSharedInternalUnit::stop):
(WebCore::MockAudioSharedInternalUnit::uninitialize):
(WebCore::MockAudioSharedInternalUnit::generateSampleBuffers):

Canonical link: https://commits.webkit.org/250588@main

5:48 AM Changeset in webkit [294229] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

REGRESSION(r294104): [GStreamer] getUserMedia broken
https://bugs.webkit.org/show_bug.cgi?id=240420

Patch by Philippe Normand <pnormand@igalia.com> on 2022-05-16
Reviewed by Xabier Rodriguez-Calvar.

The converter handling logic was modified in order to fix getUserMedia negotiated with raw
video and also getDisplayMedia which is always raw video and thus doesn't require decoding.

This patch also introduces a small optimization, reconfiguration is now done once only,
after setting size and framerate. Before this patch it was done twice, so the pipeline was a
taking more time to produce the first frame.

  • platform/mediastream/gstreamer/GStreamerVideoCaptureSource.cpp:

(WebCore::GStreamerVideoCaptureSource::~GStreamerVideoCaptureSource):
(WebCore::GStreamerVideoCaptureSource::settingsDidChange): Trigger capturer reconfiguration after setting both size and framerate.
(WebCore::GStreamerVideoCaptureSource::startProducingData): Ditto.

  • platform/mediastream/gstreamer/GStreamerVideoCapturer.cpp:

(WebCore::GStreamerVideoCapturer::createConverter): Do not decode display capture streams, these are always raw anyway.
(WebCore::GStreamerVideoCapturer::setSize): Delay reconfiguration.
(WebCore::GStreamerVideoCapturer::setFrameRate): Ditto.
(WebCore::GStreamerVideoCapturer::reconfigure): Keep track of compatible video format. This
is needed to workaround an issue in pipewiresrc caps negotiation.
(WebCore::GStreamerVideoCapturer::adjustVideoSrcMIMEType): Renamed to reconfigure().

  • platform/mediastream/gstreamer/GStreamerVideoCapturer.h:

Canonical link: https://commits.webkit.org/250587@main

5:23 AM Changeset in webkit [294228] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[GStreamer] Add basic video meta handling in sinks
https://bugs.webkit.org/show_bug.cgi?id=240429

Patch by Philippe Normand <pnormand@igalia.com> on 2022-05-16
Reviewed by Xabier Rodriguez-Calvar.

By handling allocation queries and advertising video meta handling to upstream elements, our
video sinks are now more efficient, especially on Raspberry Pi 4 with the v4l2 stateless
H.264 decoder.

  • platform/graphics/gstreamer/GStreamerVideoSinkCommon.cpp:

(webKitVideoSinkSetMediaPlayerPrivate):

Canonical link: https://commits.webkit.org/250586@main

4:43 AM Changeset in webkit [294227] by commit-queue@webkit.org
  • 1 edit
    8 deletes in trunk/LayoutTests

Remove some custom-element tests
https://bugs.webkit.org/show_bug.cgi?id=240449

Patch by Rob Buis <rbuis@igalia.com> on 2022-05-16
Reviewed by Tim Nguyen.

Remove some custom-element tests since they are now available in WPT.

  • fast/custom-elements/enqueue-custom-element-callback-reactions-inside-another-callback-expected.txt: Removed.
  • fast/custom-elements/enqueue-custom-element-callback-reactions-inside-another-callback.html: Removed.
  • fast/custom-elements/perform-microtask-checkpoint-before-construction-expected.txt: Removed.
  • fast/custom-elements/perform-microtask-checkpoint-before-construction.html: Removed.
  • fast/custom-elements/throw-on-dynamic-markup-insertion-counter-construct-expected.txt: Removed.
  • fast/custom-elements/throw-on-dynamic-markup-insertion-counter-construct.html: Removed.
  • fast/custom-elements/throw-on-dynamic-markup-insertion-counter-reactions-expected.txt: Removed.
  • fast/custom-elements/throw-on-dynamic-markup-insertion-counter-reactions.html: Removed.
3:27 AM Changeset in webkit [294226] by ntim@apple.com
  • 8 edits
    11 deletes in trunk

[css-ui] Make inner-spin-button/sliderthumb-horizontal/sliderthumb-vertical appearance values internal
https://bugs.webkit.org/show_bug.cgi?id=240448

Reviewed by Antti Koivisto.

Test: imported/w3c/web-platform-tests/css/css-ui/appearance-cssom-001.html

iOS baseline for appearance-cssom-001-expected.txt is identical to the main one, so remove it.

LayoutTests:

  • fast/forms/range/thumbslider-crash-expected.txt: Removed.
  • fast/forms/range/thumbslider-crash.html: Removed.
  • fast/forms/range/thumbslider-no-parent-slider.html: Removed.
  • platform/gtk/fast/forms/range/thumbslider-no-parent-slider-expected.png: Removed.
  • platform/gtk/fast/forms/range/thumbslider-no-parent-slider-expected.txt: Removed.
  • platform/gtk/imported/w3c/web-platform-tests/css/css-ui/appearance-cssom-001-expected.txt:
  • platform/ios-wk2/imported/w3c/web-platform-tests/css/css-ui/appearance-cssom-001-expected.txt: Removed.
  • platform/ios/fast/forms/range/thumbslider-no-parent-slider-expected.txt: Removed.
  • platform/mac/fast/forms/range/thumbslider-no-parent-slider-expected.png: Removed.
  • platform/mac/fast/forms/range/thumbslider-no-parent-slider-expected.txt: Removed.
  • platform/win/fast/forms/range/thumbslider-no-parent-slider-expected.txt: Removed.
  • platform/wincairo/fast/forms/range/thumbslider-no-parent-slider-expected.txt: Removed.
  • imported/w3c/web-platform-tests/css/css-ui/appearance-cssom-001-expected.txt:

Source/WebCore:

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):

  • css/CSSValueKeywords.in:
  • platform/ThemeTypes.h:

Canonical link: https://commits.webkit.org/250584@main

1:18 AM Changeset in webkit [294225] by youenn@apple.com
  • 31 edits in trunk

Make sure calling showNotification will extend the service worker lifetime
https://bugs.webkit.org/show_bug.cgi?id=240273
<rdar://92978482>

Reviewed by Chris Dumez.

Source/WebCore:

Update NotificationClient API so that show is taking a completion handler.
Make use of this completion handler to resolve the promise when the show notification steps are done, as per spec.
Register push event to ServiceWorkerGlobalScope when the event handlers are called.
When ServiceWorkerRegistration::show is called during one of the push event handlers,
extend the push event lifetime by adding the show notification promise to the push event.

Covered by API test.

  • Modules/notifications/Notification.cpp:
  • Modules/notifications/Notification.h:
  • Modules/notifications/NotificationClient.h:
  • dom/ScriptExecutionContext.cpp:
  • dom/ScriptExecutionContext.h:
  • workers/service/ServiceWorkerGlobalScope.cpp:
  • workers/service/ServiceWorkerGlobalScope.h:
  • workers/service/ServiceWorkerRegistration.cpp:
  • workers/service/ServiceWorkerRegistration.h:
  • workers/service/context/ServiceWorkerThread.cpp:

Source/WebKit:

On WebProcess side, implement the new NoficationClient::show API that takes a callback.
Delay calling this callback until UIProcess tells us so through async IPC.
On UIProcess side, take a callback and call it when the show notification steps are done.

  • NetworkProcess/Notifications/NetworkNotificationManager.cpp:
  • NetworkProcess/Notifications/NetworkNotificationManager.h:
  • Shared/Notifications/NotificationManagerMessageHandler.h:
  • Shared/Notifications/NotificationManagerMessageHandler.messages.in:
  • UIProcess/Notifications/ServiceWorkerNotificationHandler.cpp:
  • UIProcess/Notifications/ServiceWorkerNotificationHandler.h:
  • UIProcess/Notifications/WebNotificationManagerMessageHandler.cpp:
  • UIProcess/Notifications/WebNotificationManagerMessageHandler.h:
  • WebProcess/GPU/webrtc/RemoteVideoFrameObjectHeapProxyProcessor.cpp:
  • WebProcess/Notifications/WebNotificationManager.cpp:
  • WebProcess/Notifications/WebNotificationManager.h:
  • WebProcess/WebCoreSupport/WebNotificationClient.cpp:
  • WebProcess/WebCoreSupport/WebNotificationClient.h:

Source/WebKitLegacy/mac:

  • WebCoreSupport/WebNotificationClient.h:
  • WebCoreSupport/WebNotificationClient.mm:

Tools:

  • TestWebKitAPI/TestNotificationProvider.cpp:
  • TestWebKitAPI/TestNotificationProvider.h:
  • TestWebKitAPI/Tests/WebKitCocoa/PushAPI.mm:
1:14 AM Changeset in webkit [294224] by Martin Robinson
  • 17 edits in trunk

Do not allow unitless values for CSS unprefixed perspective property
https://bugs.webkit.org/show_bug.cgi?id=104805
<rdar://problem/77016090>

Reviewed by Tim Nguyen.

LayoutTests/imported/w3c:

  • web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt:
  • web-platform-tests/quirks/unitless-length/excluded-properties-001-expected.txt:

Source/WebCore:

No new tests. This is tested by an existing WPT test:

web-platform-tests/quirks/unitless-length/excluded-properties-001.html

  • animation/CSSPropertyAnimation.cpp:

(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::valueForPropertyInStyle):

  • css/CSSProperties.json:
  • css/parser/CSSPropertyParser.cpp:

(WebCore::consumePerspective):
(WebCore::CSSPropertyParser::consumePrefixedPerspective):
(WebCore::CSSPropertyParser::parseShorthand):

  • css/parser/CSSPropertyParser.h:
  • rendering/style/WillChangeData.cpp:

(WebCore::WillChangeData::propertyCreatesStackingContext):

LayoutTests:

  • platform/gtk/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt:
  • platform/gtk/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt:
  • platform/ios/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt:
  • platform/wpe/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt:
  • platform/wpe/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt:
12:26 AM Changeset in webkit [294223] by youenn@apple.com
  • 2 edits in trunk/Source/WebCore

MockAudioSharedInternalUnit should exit early when being stopped in generateSampleBuffers
https://bugs.webkit.org/show_bug.cgi?id=240421
<rdar://93279260>

Reviewed by Eric Carlson.

We used to always call generateSampleBuffers from main thread.
We are now calling it from background thread with dispatchAfter to mimick a realtime clock.
This broke the dispatchSync call we were calling when stopping the mock unit as the dispatchAfter task would be called
after the dispatchSync and |this| could potentially no longer be valid.
To prevent this, we introduce MockAudioSharedInternalUnitState which allows to safely know whether the unit is stopped or not
at any point in time. If the unit is stopped, dispatchAfter will not call generateSampleBuffers.

Covered by existing tests.

  • platform/mediastream/mac/MockAudioSharedUnit.mm:

(WebCore::MockAudioSharedInternalUnitState::create):
(WebCore::MockAudioSharedInternalUnitState::isProducingData const):
(WebCore::MockAudioSharedInternalUnitState::setIsProducingData):
(WebCore::MockAudioSharedInternalUnit::MockAudioSharedInternalUnit):
(WebCore::MockAudioSharedInternalUnit::~MockAudioSharedInternalUnit):
(WebCore::MockAudioSharedInternalUnit::start):
(WebCore::MockAudioSharedInternalUnit::stop):
(WebCore::MockAudioSharedInternalUnit::uninitialize):
(WebCore::MockAudioSharedInternalUnit::generateSampleBuffers):

12:14 AM Changeset in webkit [294222] by youenn@apple.com
  • 2 edits in trunk/Source/WebKit

Add logging when taking a process assertion synchronously
https://bugs.webkit.org/show_bug.cgi?id=240334

Reviewed by Chris Dumez.

No observable change of behavior.

  • UIProcess/ios/ProcessAssertionIOS.mm:

(WebKit::ProcessAssertion::acquireSync):

May 15, 2022:

11:37 PM Changeset in webkit [294221] by youenn@apple.com
  • 4 edits in trunk/Source/WebCore

Audio playback rate sped up for few seconds when using createMediaElementSource
https://bugs.webkit.org/show_bug.cgi?id=239696
<rdar://problem/92569332>

Reviewed by Eric Carlson.

We added a way for AudioSampleDataSource to reduce latency due to its audio buffer by reading the audio buffer faster
until the audio buffer size decreases to a reasonnable value.
The reasonnable buffer size was computed in terms of multiple of 10ms as RTC sources are pushing 10 or 20 millisecond chunks.
Other sources may push much bigger chunks (100 milliseconds for instance), in which case it does not make real sense to try to reduce the delay below it.
To prevent this, we will decrease the buffer size if it is above 100 milliseconds (as previously) AND the buffer size is 4 times the size of the pushed audio chunk.
4 times the size of the pushed audio chunk is 40 ms for RTC sources which is a reasonnable buffer size.

Manually tested with https://webaudioapi.com/samples/audio-tag/.

  • platform/audio/cocoa/AudioSampleDataConverter.h:
  • platform/audio/cocoa/AudioSampleDataConverter.mm:

(WebCore::AudioSampleDataConverter::updateBufferedAmount):

  • platform/audio/cocoa/AudioSampleDataSource.mm:

(WebCore::AudioSampleDataSource::pushSamplesInternal):

7:32 PM Changeset in webkit [294220] by ysuzuki@apple.com
  • 2 edits in trunk/Source/bmalloc

Unreviewed, revert r294214 partially
https://bugs.webkit.org/show_bug.cgi?id=240292

These part is not cold code. We must not use PAS_ASSERT_WITH_DETAIL.

  • libpas/src/libpas/pas_local_allocator_config_kind.h:

(pas_local_allocator_config_kind_create_normal):
(pas_local_allocator_config_kind_create_primordial_partial):
(pas_local_allocator_config_kind_create_bitfit):
(pas_local_allocator_config_kind_get_segregated_page_config_kind):
(pas_local_allocator_config_kind_get_bitfit_page_config_kind):
(pas_local_allocator_config_kind_get_string):

6:44 PM Changeset in webkit [294219] by hironori.fujii@sony.com
  • 3 edits in trunk/LayoutTests

[WinCairo] Unreviewed test gardening
https://bugs.webkit.org/show_bug.cgi?id=240439

  • platform/wincairo-wk1/TestExpectations:
  • platform/wincairo/TestExpectations:

Canonical link: https://commits.webkit.org/250577@main

4:21 PM Changeset in webkit [294218] by Wenson Hsieh
  • 8 edits in trunk

Right click > "Open Link" should trigger a navigation action with WKNavigationTypeLinkActivated
https://bugs.webkit.org/show_bug.cgi?id=240427
rdar://90400867

Reviewed by Tim Horton.

Add a new linked-on-or-after check to guard this new behavior for apps built against newer SDK versions.

  • wtf/cocoa/RuntimeApplicationChecksCocoa.h:

Right click > "Open Link" should trigger a navigation action with WKNavigationTypeLinkActivated
https://bugs.webkit.org/show_bug.cgi?id=240427
rdar://90400867

Reviewed by Tim Horton.

Make a couple of minor adjustments to ContextMenuController to ensure that right clicking a link and choosing
"Open Link" or "Open Link in New Window" surfaces a navigation action with WKNavigationTypeLinkActivated,
rather than WKNavigationTypeOther.

Test: ContextMenuTests.NavigationTypeWhenOpeningLink

  • page/ContextMenuContext.cpp:

(WebCore::ContextMenuContext::ContextMenuContext):

  • page/ContextMenuContext.h:

(WebCore::ContextMenuContext::event const):

Save a reference to the Event of type "contextmenu" that's triggering context menu presentation in the
ContextMenuContext.

  • page/ContextMenuController.cpp:

(WebCore::ContextMenuController::maybeCreateContextMenu):
(WebCore::openNewWindow):

Plumb the "contextmenu" event through to FrameLoader::loadFrameRequest when opening links via context menu.

(WebCore::ContextMenuController::contextMenuItemSelected):
Right click > "Open Link" should trigger a navigation action with WKNavigationTypeLinkActivated
https://bugs.webkit.org/show_bug.cgi?id=240427
rdar://90400867

Reviewed by Tim Horton.

Add an API test to verify that right clicking a link and selecting "Open Link" triggers a navigation action with
the type WKNavigationTypeLinkActivated.

  • TestWebKitAPI/Tests/mac/ContextMenuTests.mm:

(TestWebKitAPI::TEST):

Canonical link: https://commits.webkit.org/250576@main

9:53 AM Changeset in webkit [294217] by Alan Bujtas
  • 3 edits
    1 add in trunk/Source/WebCore

[LFC][FFC] Introduce logical direction based flex layout
https://bugs.webkit.org/show_bug.cgi?id=240424

Reviewed by Antti Koivisto.

This is in preparation for ensuring that core flex layout only needs to deal with
one direction for flex content progression (row vs. column vs. reversed etc).

  • WebCore.xcodeproj/project.pbxproj:
  • layout/formattingContexts/flex/FlexFormattingContext.cpp:

(WebCore::Layout::FlexFormattingContext::layoutInFlowContentForIntegration):

  • layout/integration/LayoutIntegrationCoverage.cpp:

(WebCore::LayoutIntegration::canUseForFlexLayout):

8:49 AM Changeset in webkit [294216] by Angelos Oikonomopoulos
  • 2 edits in trunk/JSTests

Skip flaky test on ARM
https://bugs.webkit.org/show_bug.cgi?id=240426

Unreviewed gardening.

  • stress/verify-can-gc-node-index.js:
6:30 AM Changeset in webkit [294215] by commit-queue@webkit.org
  • 9 edits in trunk/Source/WebCore

WebCore::IOSurface has WebCore::GraphicsContext as its property, it should be the other way around
https://bugs.webkit.org/show_bug.cgi?id=240417

Patch by Kimmo Kinnunen <kkinnunen@apple.com> on 2022-05-15
Reviewed by Simon Fraser.

Do not store WebCore::GraphicsContext in WebCore::IOSurface.
E.g. graphics context is not the property of the bitmap that
is being drawn to. The backing bitmap is a property of the context.

Instead, store the GraphicsContextCG at the place where the user is,
e.g. in ImageBufferIOSurfaceBackend. This allows the context client
to create the context with the options the client needs.

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::GraphicsContextCG::GraphicsContextCG):
(WebCore::GraphicsContextCG::drawNativeImage):

  • platform/graphics/cg/GraphicsContextCG.h:
  • platform/graphics/cg/IOSurfacePool.cpp:

(WebCore::IOSurfacePool::willAddSurface):

  • platform/graphics/cg/ImageBufferIOSurfaceBackend.cpp:

(WebCore::ImageBufferIOSurfaceBackend::~ImageBufferIOSurfaceBackend):
(WebCore::ImageBufferIOSurfaceBackend::context const):
(WebCore::ImageBufferIOSurfaceBackend::releaseGraphicsContext):

  • platform/graphics/cg/ImageBufferIOSurfaceBackend.h:
  • platform/graphics/cocoa/IOSurface.h:
  • platform/graphics/cocoa/IOSurface.mm:

(WebCore::IOSurface::create):
(WebCore::IOSurface::releasePlatformGraphicsContext):
(WebCore::IOSurface::ensureGraphicsContext): Deleted.
(WebCore::IOSurface::releaseGraphicsContext): Deleted.

May 14, 2022:

7:08 PM Changeset in webkit [294214] by Justin Michaud
  • 6 edits in trunk/Source/bmalloc

[LIBPAS] Add extra assert information to malloc enumeration API
https://bugs.webkit.org/show_bug.cgi?id=240292

Reviewed by Yusuke Suzuki.

In the heap enumerator (which is a slow path), we have asserts that
have the opportunity to include extra information to aid debugging.

We add PAS_ASSERT_WITH_DETAIL, which stuffs extra data into registers before crashing
so that we can see it in crash logs. We also add a debugging option to allow logging
to syslog, for cases when we do not have access to stdout.

  • libpas/src/libpas/pas_enumerate_segregated_heaps.c:

(consider_allocator):

  • libpas/src/libpas/pas_local_allocator_config_kind.h:

(pas_local_allocator_config_kind_create_normal):
(pas_local_allocator_config_kind_create_primordial_partial):
(pas_local_allocator_config_kind_create_bitfit):
(pas_local_allocator_config_kind_get_segregated_page_config_kind):
(pas_local_allocator_config_kind_get_bitfit_page_config_kind):
(pas_local_allocator_config_kind_get_string):

  • libpas/src/libpas/pas_log.c:

(pas_vlog):

  • libpas/src/libpas/pas_utils.c:

(pas_crash_with_info_impl):
(pas_panic):
(pas_assertion_failed_no_inline):
(pas_assertion_failed_no_inline_with_extra_detail):

  • libpas/src/libpas/pas_utils.h:
5:47 PM Changeset in webkit [294213] by ysuzuki@apple.com
  • 9 edits in trunk/Source

Put ThreadGlobalData in Thread
https://bugs.webkit.org/show_bug.cgi?id=240116

Reviewed by Darin Adler and Mark Lam.

This patch puts ThreadGlobalData into Thread's m_clientData field.
Thread is stored in fast TLS, so accessing to this field is quite fast
compared to the current ThreadSpecific one.

At the same time, this change can remove a hack in ThreadGlobalData.
Previously worker thread needs to tear down ThreadGlobalData explicitly
because Thread::current() can be destroyed earlier than ThreadGlobalData.
In that case, EventNames etc., which accesses to AtomString's destruction
can have problem because of lack of Thread::current() access. But since
we now move it to Thread, we can control how it is destroyed with Thread::current()
precisely, and we can explicitly destroy it before Thread::current() is fully
cleared. So we do not need to call it explicitly anymore.
Currently, we are calling it just to make ThreadGlobalData destroyed for debugging.

  • Source/WebCore/PAL/pal/ThreadGlobalData.cpp:

(PAL::ThreadGlobalData::ThreadGlobalData):
(PAL::ThreadGlobalData::destroy): Deleted.

  • Source/WebCore/PAL/pal/ThreadGlobalData.h:

(PAL::ThreadGlobalData::ThreadGlobalData::cachedConverterICU): Deleted.

  • Source/WTF/wtf/Threading.h:

(WTF::Thread::Thread):

  • Source/WTF/wtf/posix/ThreadingPOSIX.cpp:

(WTF::Thread::destructTLS):

  • Source/WTF/wtf/win/ThreadingWin.cpp:

(WTF::Thread::ThreadHolder::~ThreadHolder):

  • Source/WebCore/platform/ThreadGlobalData.cpp:

(WebCore::ThreadGlobalData::destroy):
(WebCore::ThreadGlobalData::setWebCoreThreadData):
(WebCore::threadGlobalData):

Canonical link: https://commits.webkit.org/250571@main

5:45 PM Changeset in webkit [294212] by Jonathan Bedard
  • 7 edits in trunk/Tools

[webkit-patch] Include commit messages in patches (Follow-up #2)
https://bugs.webkit.org/show_bug.cgi?id=240256
<rdar://problem/92982358>

Unreviewed follow-up fix.

  • Scripts/webkitpy/common/checkout/scm/git.py:

(Git.create_patch): Allow caller to exclude commit message, run git diff against HEAD by
default to include both staged and unstaged changes.

  • Scripts/webkitpy/common/checkout/scm/scm.py:

(SCM.create_patch): Match function signature for git.

  • Scripts/webkitpy/common/checkout/scm/scm_mock.py:

(MockSCM.create_patch): Match function signature for git.

  • Scripts/webkitpy/common/checkout/scm/svn.py:

(SVN.create_patch): Match function signature for git.

  • Scripts/webkitpy/w3c/test_exporter.py:

(WebPlatformTestExporter._wpt_patch): Exclude commit message since we won't be able
to classify it's file.

  • Scripts/webkitpy/w3c/test_exporter_unittest.py:

(TestExporterTest.MockGit.create_patch): Match function signature for git.

3:39 PM Changeset in webkit [294211] by Alan Bujtas
  • 3 edits
    2 adds in trunk

Changing text color and removing line-clamp on hover causes text to disappear permanently
https://bugs.webkit.org/show_bug.cgi?id=240410

Reviewed by Simon Fraser.

Source/WebCore:

Invalidate the flex items' line layout path when line-clamp property value changes.

While the line clamp property is set on the flex box, it is "forced on" the flex items' inline content.
(i.e. the property is not inherited, it is propagated to the flex children)
It means dynamic value change only runs on the flex box renderer.

Test: fast/block/dynamic-line-clamp-empty-content.html

  • rendering/RenderDeprecatedFlexibleBox.cpp:

(WebCore::RenderDeprecatedFlexibleBox::styleWillChange):

LayoutTests:

  • fast/block/dynamic-line-clamp-empty-content-expected.html: Added.
  • fast/block/dynamic-line-clamp-empty-content.html: Added.
2:35 PM Changeset in webkit [294210] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

Unreviewed win build fix.

  • layout/integration/flex/LayoutIntegrationFlexLayout.cpp:

(WebCore::LayoutIntegration::flexBoxLogicalBorder):
(WebCore::LayoutIntegration::flexBoxLogicalPadding):
(WebCore::LayoutIntegration::FlexLayout::updateFormattingRootGeometryAndInvalidate):
(WebCore::LayoutIntegration::logicalBorder): Deleted.
(WebCore::LayoutIntegration::logicalPadding): Deleted.

1:08 PM Changeset in webkit [294209] by ysuzuki@apple.com
  • 14 edits in trunk/Source

Rename EventTrackingRegions::Event to EventTrackingRegions::EventType
https://bugs.webkit.org/show_bug.cgi?id=240295

Reviewed by Darin Adler.

This patch is follow-up after r293967 by Darin's comment. EventTrackingRegions::Event is not event actually,
it is just an EventType. This patch renames it with EventType. We also rename variables "event" to "eventType".

  • Source/WebKit/Shared/WebCoreArgumentCoders.cpp:

(IPC::ArgumentCoder<EventTrackingRegions>::decode):

  • Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp:

(WebKit::RemoteScrollingCoordinatorProxy::eventTrackingTypeForPoint const):

  • Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.h:
  • Source/WebKit/UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::updateTouchEventTracking):

  • Source/WebCore/page/DebugPageOverlays.cpp:

(WebCore::NonFastScrollableRegionOverlay::drawRect):

  • Source/WebCore/page/Page.cpp:

(WebCore::Page::touchEventRectsForEventForTesting):

  • Source/WebCore/page/Page.h:
  • Source/WebCore/page/scrolling/ScrollingCoordinator.cpp:

(WebCore::ScrollingCoordinator::absoluteEventTrackingRegionsForFrame const):

  • Source/WebCore/page/scrolling/ScrollingTree.cpp:

(WebCore::ScrollingTree::computeWheelProcessingSteps):
(WebCore::ScrollingTree::eventTrackingTypeForPoint):

  • Source/WebCore/page/scrolling/ScrollingTree.h:
  • Source/WebCore/platform/EventTrackingRegions.cpp:

(WebCore::EventTrackingRegions::eventName):
(WebCore::EventTrackingRegions::eventNameAtomString): We add this function to have a way to get AtomString event name. It simplifies Internal code.
(WebCore::EventTrackingRegions::trackingTypeForPoint):
(WebCore::EventTrackingRegions::uniteSynchronousRegion):

  • Source/WebCore/platform/EventTrackingRegions.h:
  • Source/WebCore/testing/Internals.cpp:

(WebCore::Internals::touchEventRectsForEvent):

Canonical link: https://commits.webkit.org/250567@main

12:15 PM Changeset in webkit [294208] by Tyler Wilcock
  • 10 edits in trunk

AX: Remove CSSDisplayContentsAXSupportEnabled flag
https://bugs.webkit.org/show_bug.cgi?id=240409

Reviewed by Chris Fleizach.

Source/WebCore:

We added initial support without using this flag and will continue to
fix bugs as we find them, making this flag unnecessary.

  • page/RuntimeEnabledFeatures.h:

(WebCore::RuntimeEnabledFeatures::setCSSDisplayContentsAXSupportEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::cssDisplayContentsAXSupportEnabled const): Deleted.

Source/WebKitLegacy/mac:

We added initial support without using this flag and will continue to
fix bugs as we find them, making this flag unnecessary.

  • WebView/WebPreferenceKeysPrivate.h:
  • WebView/WebPreferences.mm:

(-[WebPreferences cssDisplayContentsAXSupportEnabled]): Deleted.
(-[WebPreferences setCSSDisplayContentsAXSupportEnabled:]): Deleted.

  • WebView/WebPreferencesPrivate.h:

Source/WTF:

  • Scripts/Preferences/WebPreferencesInternal.yaml:

Tools:

  • DumpRenderTree/TestOptions.cpp:

(WTR::TestOptions::defaults):

11:04 AM Changeset in webkit [294207] by Russell Epstein
  • 1 copy in tags/WebKit-7614.1.14.1.1

Tag WebKit-7614.1.14.1.1.

11:02 AM Changeset in webkit [294206] by Russell Epstein
  • 1 copy in tags/WebKit-7614.1.14.0.1

Tag WebKit-7614.1.14.0.1.

10:58 AM Changeset in webkit [294205] by Russell Epstein
  • 9 edits in branches/safari-7614.1.14.1-branch/Source

Versioning.

WebKit-7614.1.14.1.1

10:51 AM Changeset in webkit [294204] by Antti Koivisto
  • 13 edits in trunk/Source/WebCore

Template TextBoxPainter on line layout path
https://bugs.webkit.org/show_bug.cgi?id=240416

Reviewed by Alan Bujtas.

Painting currently goes via a line layout path agnostic iterator.
This is inefficient since we always know what sort of layout we are painting.

  • layout/integration/inline/InlineIteratorBox.cpp:

(WebCore::InlineIterator::Box::visualRect const):

  • layout/integration/inline/InlineIteratorBox.h:

(WebCore::InlineIterator::Box::containingBlock const):
(WebCore::InlineIterator::Box::visualRect const): Deleted.

  • layout/integration/inline/InlineIteratorBoxLegacyPath.h:

(WebCore::InlineIterator::BoxLegacyPath::containingBlock const):
(WebCore::InlineIterator::BoxLegacyPath::direction const):
(WebCore::InlineIterator::BoxLegacyPath::isFirstLine const):

  • layout/integration/inline/InlineIteratorBoxModernPath.h:

(WebCore::InlineIterator::BoxModernPath::containingBlock const):
(WebCore::InlineIterator::BoxModernPath::direction const):
(WebCore::InlineIterator::BoxModernPath::isFirstLine const):
(WebCore::InlineIterator::BoxModernPath::renderText const):

  • layout/integration/inline/LayoutIntegrationLineLayout.cpp:

(WebCore::LayoutIntegration::LineLayout::paint):

  • rendering/InlineBoxPainter.cpp:

(WebCore::InlineBoxPainter::paintMask):
(WebCore::InlineBoxPainter::paintDecorations):

  • rendering/LegacyInlineFlowBox.cpp:

(WebCore::LegacyInlineFlowBox::addTextBoxVisualOverflow):

  • rendering/LegacyInlineTextBox.cpp:

(WebCore::LegacyInlineTextBox::paint):

  • rendering/LegacyInlineTextBox.h:
  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintMaskForTextFillBox):

  • rendering/TextBoxPainter.cpp:

(WebCore::LegacyTextBoxPainter::LegacyTextBoxPainter):
(WebCore::ModernTextBoxPainter::ModernTextBoxPainter):
(WebCore::TextBoxPainter<TextBoxPath>::TextBoxPainter):
(WebCore::TextBoxPainter<TextBoxPath>::~TextBoxPainter):
(WebCore::TextBoxPainter<TextBoxPath>::makeIterator const):
(WebCore::TextBoxPainter<TextBoxPath>::paint):
(WebCore::TextBoxPainter<TextBoxPath>::createMarkedTextFromSelectionInBox):
(WebCore::TextBoxPainter<TextBoxPath>::paintBackground):
(WebCore::TextBoxPainter<TextBoxPath>::paintForegroundAndDecorations):
(WebCore::TextBoxPainter<TextBoxPath>::paintCompositionBackground):
(WebCore::TextBoxPainter<TextBoxPath>::paintForeground):
(WebCore::TextBoxPainter<TextBoxPath>::createDecorationPainter):
(WebCore::TextBoxPainter<TextBoxPath>::paintBackgroundDecorations):
(WebCore::TextBoxPainter<TextBoxPath>::paintForegroundDecorations):
(WebCore::TextBoxPainter<TextBoxPath>::paintCompositionUnderlines):
(WebCore::TextBoxPainter<TextBoxPath>::textPosition):
(WebCore::TextBoxPainter<TextBoxPath>::paintCompositionUnderline):
(WebCore::TextBoxPainter<TextBoxPath>::paintPlatformDocumentMarkers):
(WebCore::LegacyTextBoxPainter::calculateUnionOfAllDocumentMarkerBounds):
(WebCore::TextBoxPainter<TextBoxPath>::paintPlatformDocumentMarker):
(WebCore::TextBoxPainter<TextBoxPath>::computePaintRect):
(WebCore::calculateDocumentMarkerBounds):
(WebCore::TextBoxPainter<TextBoxPath>::computeHaveSelection const):
(WebCore::TextBoxPainter<TextBoxPath>::fontCascade const):
(WebCore::TextBoxPainter<TextBoxPath>::textOriginFromPaintRect const):
(WebCore::TextBoxPainter<TextBoxPath>::debugTextShadow const):
(WebCore::TextBoxPainter::TextBoxPainter): Deleted.
(WebCore::TextBoxPainter::~TextBoxPainter): Deleted.
(WebCore::TextBoxPainter::paint): Deleted.
(WebCore::TextBoxPainter::createMarkedTextFromSelectionInBox): Deleted.
(WebCore::TextBoxPainter::paintBackground): Deleted.
(WebCore::TextBoxPainter::paintForegroundAndDecorations): Deleted.
(WebCore::TextBoxPainter::paintCompositionBackground): Deleted.
(WebCore::TextBoxPainter::paintForeground): Deleted.
(WebCore::TextBoxPainter::createDecorationPainter): Deleted.
(WebCore::TextBoxPainter::paintBackgroundDecorations): Deleted.
(WebCore::TextBoxPainter::paintForegroundDecorations): Deleted.
(WebCore::TextBoxPainter::paintCompositionUnderlines): Deleted.
(WebCore::textPosition): Deleted.
(WebCore::TextBoxPainter::paintCompositionUnderline): Deleted.
(WebCore::TextBoxPainter::paintPlatformDocumentMarkers): Deleted.
(WebCore::TextBoxPainter::calculateUnionOfAllDocumentMarkerBounds): Deleted.
(WebCore::TextBoxPainter::paintPlatformDocumentMarker): Deleted.
(WebCore::TextBoxPainter::computePaintRect): Deleted.
(WebCore::TextBoxPainter::calculateDocumentMarkerBounds): Deleted.
(WebCore::TextBoxPainter::computeHaveSelection const): Deleted.
(WebCore::TextBoxPainter::fontCascade const): Deleted.
(WebCore::TextBoxPainter::textOriginFromPaintRect const): Deleted.
(WebCore::TextBoxPainter::debugTextShadow const): Deleted.

  • rendering/TextBoxPainter.h:

(WebCore::TextBoxPainter::textBox const):

10:40 AM Changeset in webkit [294203] by Russell Epstein
  • 9 edits in branches/safari-7614.1.14.0-branch/Source

Versioning.

WebKit-7614.1.14.0.1

10:25 AM Changeset in webkit [294202] by Russell Epstein
  • 1 copy in branches/safari-7614.1.14.3-branch

New branch.

10:25 AM Changeset in webkit [294201] by Russell Epstein
  • 1 copy in branches/safari-7614.1.14.2-branch

New branch.

10:25 AM Changeset in webkit [294200] by Russell Epstein
  • 1 copy in branches/safari-7614.1.14.1-branch

New branch.

10:25 AM Changeset in webkit [294199] by Russell Epstein
  • 1 copy in branches/safari-7614.1.14.0-branch

New branch.

9:56 AM Changeset in webkit [294198] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

[FFC][Integration] Add "fixed sized/all default value" flex layout
https://bugs.webkit.org/show_bug.cgi?id=240414

Reviewed by Antti Koivisto.

This patch adds support for the simplest possible flex layout (fixed size, no-wrap, no-reversed etc).

  • layout/formattingContexts/flex/FlexFormattingContext.cpp:

(WebCore::Layout::FlexFormattingContext::layoutInFlowContentForIntegration):

9:26 AM Changeset in webkit [294197] by commit-queue@webkit.org
  • 6 edits in trunk/Source

WebCore::IOSurface refers to unused context size
https://bugs.webkit.org/show_bug.cgi?id=240385

Patch by Kimmo Kinnunen <kkinnunen@apple.com> on 2022-05-14
Reviewed by Simon Fraser.

Source/WebCore:

Remove unused IOSurface::m_contextSize.
Context related code makes IOSurface error-prone wrt
reusing the IOSurface in the pool.

  • platform/graphics/cg/ImageBufferIOSurfaceBackend.cpp:

(WebCore::ImageBufferIOSurfaceBackend::create):

  • platform/graphics/cocoa/IOSurface.h:
  • platform/graphics/cocoa/IOSurface.mm:

(WebCore::IOSurface::create):
(WebCore::IOSurface::IOSurface):
(WebCore::IOSurface::ensurePlatformContext):

Source/WebKit:

Adjust after removing the IOSurface context size parameter.
All call sites passed the surface size.

  • WebProcess/GPU/graphics/cocoa/ImageBufferShareableMappedIOSurfaceBackend.cpp:

(WebKit::ImageBufferShareableMappedIOSurfaceBackend::create):

8:59 AM Changeset in webkit [294196] by Simon Fraser
  • 12 edits in trunk/Source/WebCore

Use an OptionSet<> for DisplayList::AsTextFlags
https://bugs.webkit.org/show_bug.cgi?id=240415

Reviewed by Alan Bujtas.

Simple adoption of OptionSet<DisplayList::AsTextFlag> in place of DisplayList::AsTextFlags.

  • html/HTMLCanvasElement.h:
  • platform/graphics/GraphicsLayer.h:

(WebCore::GraphicsLayer::displayListAsText const):
(WebCore::GraphicsLayer::replayDisplayListAsText const):

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::displayListAsText const):
(WebCore::GraphicsLayerCA::replayDisplayListAsText const):

  • platform/graphics/ca/GraphicsLayerCA.h:
  • platform/graphics/displaylists/DisplayList.cpp:

(WebCore::DisplayList::DisplayList::shouldDumpForFlags):
(WebCore::DisplayList::DisplayList::asText const):

  • platform/graphics/displaylists/DisplayList.h:
  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::displayListAsText const):
(WebCore::RenderLayerBacking::replayDisplayListAsText const):

  • rendering/RenderLayerBacking.h:
  • rendering/TextPainter.cpp:

(WebCore::TextPainter::cachedGlyphDisplayListsForTextNodeAsText):

  • rendering/TextPainter.h:
  • testing/Internals.cpp:

(WebCore::Internals::displayListForElement):
(WebCore::Internals::replayDisplayListForElement):
(WebCore::Internals::cachedGlyphDisplayListsForTextNode):

8:24 AM Changeset in webkit [294195] by Alan Bujtas
  • 13 edits
    4 adds in trunk

[Repaint] Border ignores currentColor change when hovering
https://bugs.webkit.org/show_bug.cgi?id=240401

Reviewed by Antti Koivisto.

Source/WebCore:

This patch triggers repaint when currentColor is applied on border.

It most likely got broken at r150259 (9 years ago!) when StyleDifferenceRepaintIfText was introduced.
StyleDifferenceRepaintIfText is a "conditional repaint" diff value which only triggers repaint if the renderer has some text content.

Later, r156619 addressed some of the "content with border/outline is not painting" fallout by extending
StyleDifferenceRepaintIfText to RepaintIfTextOrBorderOrOutline.
RepaintIfTextOrBorderOrOutline turns "conditional repaints" to real repaints if, in addition to text, the content has outline/border.
However the fix was neither complete nor proper (it patched the repaint logic by changing hasImmediateNonWhitespaceTextChildOrBorderOrOutline
instead of computing the correct diff value -unconditional Repaint).

Fast-forward to 2020, r267528 ensured that content with outline is no longer a "conditional repaint".
It also made some of the code introduced in r156619 redundant (see hasImmediateNonWhitespaceTextChildOrBorderOrOutline).

This patch expands on r267528 by introducing isEquivalentForPainting for the border data. It ensures that we
compute (unconditional) Repaint diff value, if the border uses currentColor.

Tests: fast/repaint/repaint-current-color-border-on-hover.html

fast/repaint/repaint-pseudo-border-on-hover.html

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::hasImmediateNonWhitespaceTextChildOrBorderOrOutline const):

  • rendering/style/BorderData.h:

(WebCore::BorderData::isEquivalentForPainting const):

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::changeRequiresRepaint const):

LayoutTests:

  • fast/repaint/repaint-current-color-border-on-hover-expected.txt: Added.
  • fast/repaint/repaint-current-color-border-on-hover.html: Added.
  • fast/repaint/repaint-pseudo-border-on-hover-expected.txt: Added.
  • fast/repaint/repaint-pseudo-border-on-hover.html: Added.
7:40 AM Changeset in webkit [294194] by Jonathan Bedard
  • 2 edits in trunk/Tools

[webkit-patch] Include commit messages in patches (Follow-up)
https://bugs.webkit.org/show_bug.cgi?id=240256
<rdar://problem/92982358>

Unreviewed follow-up fix.

  • Tools/Scripts/webkitpy/common/checkout/scm/git.py:

(Git.create_patch): Prefer commit specified by user.

Canonical link: https://commits.webkit.org/250560@main

6:59 AM Changeset in webkit [294193] by Alan Bujtas
  • 4 edits in trunk/Source/WebCore

[FFC][Integration] Add updateFormattingRootGeometryAndInvalidate/updateRenderers
https://bugs.webkit.org/show_bug.cgi?id=240413

Reviewed by Antti Koivisto.

Make sure that the layout box/renderer geometries are all up-to-date.

  • layout/integration/flex/LayoutIntegrationFlexLayout.cpp:

(WebCore::LayoutIntegration::logicalBorder):
(WebCore::LayoutIntegration::logicalPadding):
(WebCore::LayoutIntegration::FlexLayout::updateFormattingRootGeometryAndInvalidate):
(WebCore::LayoutIntegration::FlexLayout::layout):
(WebCore::LayoutIntegration::FlexLayout::updateRenderers const):

  • layout/integration/flex/LayoutIntegrationFlexLayout.h:

(WebCore::LayoutIntegration::FlexLayout::flexBoxRenderer const):
(WebCore::LayoutIntegration::FlexLayout::flexBoxRenderer):

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::layoutUsingFlexFormattingContext):

6:30 AM Changeset in webkit [294192] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

[FFC][Integration] Do not reset the effective display value for flex root
https://bugs.webkit.org/show_bug.cgi?id=240412

Reviewed by Antti Koivisto.

Non-inline formatting roots (e.g. flex) should not need display type adjustment.

  • layout/integration/LayoutIntegrationBoxTree.cpp:

(WebCore::LayoutIntegration::rootBoxStyle):
(WebCore::LayoutIntegration::rootBoxFirstLineStyle):
(WebCore::LayoutIntegration::BoxTree::BoxTree):
(WebCore::LayoutIntegration::BoxTree::updateStyle):

6:19 AM Changeset in webkit [294191] by Alan Bujtas
  • 11 edits in trunk/Source/WebCore

[LFC] LayoutState should track the integration formatting context type
https://bugs.webkit.org/show_bug.cgi?id=240411

Reviewed by Antti Koivisto.

Let's not use RuntimeEnabledFeatures to check wheter the integration codepath is enabled as
the new FCs (e.g. flex) don't even have such flags.

  • layout/LayoutContext.cpp:
  • layout/LayoutState.cpp:

(WebCore::Layout::LayoutState::LayoutState):
(WebCore::Layout::LayoutState::formattingStateForFormattingContext const):
(WebCore::Layout::LayoutState::formattingStateForInlineFormattingContext const):
(WebCore::Layout::LayoutState::formattingStateForFlexFormattingContext const):
(WebCore::Layout::LayoutState::ensureInlineFormattingState):
(WebCore::Layout::LayoutState::ensureFlexFormattingState):
(WebCore::Layout::LayoutState::setViewportSize):
(WebCore::Layout::LayoutState::viewportSize const):
(WebCore::Layout::LayoutState::setIsIntegratedRootBoxFirstChild):
(WebCore::Layout::LayoutState::shouldIgnoreTrailingLetterSpacing const):
(WebCore::Layout::LayoutState::shouldNotSynthesizeInlineBlockBaseline const):

  • layout/LayoutState.h:

(WebCore::Layout::LayoutState::isInlineFormattingContextIntegration const):
(WebCore::Layout::LayoutState::isFlexFormattingContextIntegration const):

  • layout/floats/FloatingState.cpp:
  • layout/formattingContexts/inline/InlineFormattingContext.cpp:
  • layout/formattingContexts/inline/InlineLineBuilder.cpp:

(WebCore::Layout::LineBuilder::close):

  • layout/formattingContexts/inline/display/InlineDisplayContentBuilder.cpp:

(WebCore::Layout::InlineDisplayContentBuilder::appendTextDisplayBox):

  • layout/integration/flex/LayoutIntegrationFlexLayout.cpp:

(WebCore::LayoutIntegration::FlexLayout::FlexLayout):

  • layout/integration/inline/LayoutIntegrationInlineContent.cpp:
  • layout/integration/inline/LayoutIntegrationLineLayout.cpp:

(WebCore::LayoutIntegration::LineLayout::LineLayout):
(WebCore::LayoutIntegration::LineLayout::releaseCaches):

5:41 AM Changeset in webkit [294190] by commit-queue@webkit.org
  • 66 edits
    2 adds
    2 deletes in trunk/Source/WebKit

SharedBuffer should be copied and then attributed back to WebContent
https://bugs.webkit.org/show_bug.cgi?id=240223
rdar://91006582

Patch by Jean-Yves Avenard <jean-yves.avenard@apple.com> on 2022-05-14
Reviewed by Jer Noble.

Ideally, when mapping an IPCHandle we would prefer to use Copy On Write.
However, there's no support for COW with explicitly-owned memory such as
those created with VM_FLAGS_PURGABLE flag.
As such, when calling mach_vm_map with copy=true argument is set the
entire page will be copied.
It is therefore more performant to manually create a new buffer and copy
the actual content.
The memory can then be blamed on a particular process.

Rework FragmentedSharedBuffer/SharedBuffer IPC's serializer to perform
a copy, partially reverting changes made in bug 233401.

We replace the unnecessary use of SharedMemory::IPCHandle and directly
send SharedBuffer in clipboard and PDF related methods.
Rename SharedBufferCopy to SharedBufferReference to more accurately
describe what it does.

Make new use of the SharedBufferReference class, replacing the use of IPCHandle
in RemoteSourceBufferProxy and RemoteMediaResourceManager.

Rename SharedBufferReference::buffer() into
SharedBufferReference::unsafeBuffer() to give better clarity that accessing
SharedBuffer and SharedMemory should be treated with care.

SharedBuffer sent from trusted processes such as network process should
prefer the use of SharedBufferReference over directly using IPCHandle or
SharedBuffer, it makes optimisation easier and avoid duplicating code.

No observable change, covered by existing tests.

  • GPUProcess/GPUConnectionToWebProcess.cpp:

(WebKit::GPUConnectionToWebProcess::remoteMediaResourceManager):

  • GPUProcess/media/RemoteCDMInstanceProxy.h:
  • GPUProcess/media/RemoteImageDecoderAVFProxy.cpp:

(WebKit::RemoteImageDecoderAVFProxy::createDecoder):
(WebKit::RemoteImageDecoderAVFProxy::setData):

  • GPUProcess/media/RemoteImageDecoderAVFProxy.h:
  • GPUProcess/media/RemoteImageDecoderAVFProxy.messages.in:
  • GPUProcess/media/RemoteMediaResourceManager.cpp:

(WebKit::RemoteMediaResourceManager::RemoteMediaResourceManager):
(WebKit::RemoteMediaResourceManager::dataReceived):

  • GPUProcess/media/RemoteMediaResourceManager.h:
  • GPUProcess/media/RemoteMediaResourceManager.messages.in:
  • GPUProcess/media/RemoteSourceBufferProxy.cpp:

(WebKit::RemoteSourceBufferProxy::append):

  • GPUProcess/media/RemoteSourceBufferProxy.h:
  • GPUProcess/media/RemoteSourceBufferProxy.messages.in:
  • NetworkProcess/NetworkResourceLoader.cpp:

(WebKit::NetworkResourceLoader::bufferingTimerFired):
(WebKit::NetworkResourceLoader::sendBuffer):
(WebKit::NetworkResourceLoader::dataReceivedThroughContentFilter):

  • NetworkProcess/ServiceWorker/ServiceWorkerDownloadTask.cpp:

(WebKit::ServiceWorkerDownloadTask::didReceiveData):

  • NetworkProcess/ServiceWorker/ServiceWorkerDownloadTask.h:
  • NetworkProcess/ServiceWorker/ServiceWorkerDownloadTask.messages.in:
  • NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp:

(WebKit::ServiceWorkerFetchTask::didReceiveData):
(WebKit::ServiceWorkerFetchTask::loadBodyFromPreloader):

  • NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.h:
  • NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.messages.in:
  • Platform/IPC/SharedBufferCopy.cpp: Removed.
  • Platform/IPC/SharedBufferCopy.h: Removed.
  • Platform/IPC/SharedBufferReference.cpp: Added.

(IPC::SharedBufferReference::encode const):
(IPC::SharedBufferReference::decode):
(IPC::SharedBufferReference::unsafeBuffer const):
(IPC::SharedBufferReference::data const):
(IPC::SharedBufferReference::bufferWithOwner const):

  • Platform/IPC/SharedBufferReference.h: Added.

(IPC::SharedBufferReference::SharedBufferReference):
(IPC::SharedBufferReference::size const):
(IPC::SharedBufferReference::isEmpty const):
(IPC::SharedBufferReference::isNull const):

  • Platform/SharedMemory.cpp:

(WebKit::transferOwnershipOfMemory const):

  • Platform/SharedMemory.h:
  • Platform/cocoa/SharedMemoryCocoa.cpp:

(WebKit::changeOwnershipOfMemory):
(WebKit::SharedMemory::Handle::takeOwnershipOfMemory const):
(WebKit::SharedMemory::Handle::transferOwnershipOfMemory const):
(WebKit::machProtection):
(WebKit::SharedMemory::map):

  • Scripts/process-entitlements.sh:
  • Shared/RemoteLayerTree/CGDisplayListImageBufferBackend.cpp:

(WebKit::CGDisplayListImageBufferBackend::createBackendHandle const):

  • Shared/RemoteLayerTree/RemoteLayerBackingStore.mm:

(WebKit::RemoteLayerBackingStore::applyBackingStoreToLayer):

  • Shared/WebCoreArgumentCoders.cpp:

(IPC::encodeSharedBuffer):
(IPC::decodeSharedBuffer):

  • Sources.txt:
  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView createPDFWithConfiguration:completionHandler:]):

  • UIProcess/Cocoa/WebPageProxyCocoa.mm:

(WebKit::WebPageProxy::platformRegisterAttachment):

  • UIProcess/Cocoa/WebPasteboardProxyCocoa.mm:

(WebKit::WebPasteboardProxy::getPasteboardBufferForType):
(WebKit::WebPasteboardProxy::setPasteboardBufferForType):
(WebKit::WebPasteboardProxy::readBufferFromPasteboard):

  • UIProcess/Cocoa/WebProcessProxyCocoa.mm:

(WebKit::WebProcessProxy::sendAudioComponentRegistrations):

  • UIProcess/WebPageProxy.cpp:

(WebKit::CompletionHandler<void):
(WebKit::WebPageProxy::drawPagesToPDF):
(WebKit::WebPageProxy::drawToPDF):
(WebKit::WebPageProxy::getLoadDecisionForIcon):
(WebKit::WebPageProxy::updateAttachmentAttributes):
(WebKit::WebPageProxy::registerAttachmentIdentifierFromData):
(WebKit::WebPageProxy::platformRegisterAttachment):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/WebPasteboardProxy.cpp:

(WebKit::WebPasteboardProxy::readBufferFromPasteboard):

  • UIProcess/WebPasteboardProxy.h:
  • UIProcess/WebPasteboardProxy.messages.in:
  • UIProcess/WebURLSchemeTask.cpp:

(WebKit::WebURLSchemeTask::didReceiveData):

  • UIProcess/gtk/WebPasteboardProxyGtk.cpp:

(WebKit::WebPasteboardProxy::readBuffer):

  • UIProcess/ios/WKContentView.mm:

(-[WKContentView _wk_pageCountForPrintFormatter:]):

  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::drawToPDFiOS):

  • UIProcess/mac/WebPageProxyMac.mm:

(WebKit::WebPageProxy::dataSelectionForPasteboard):

  • WebKit.xcodeproj/project.pbxproj:
  • WebProcess/GPU/graphics/ImageBufferBackendHandle.h:
  • WebProcess/GPU/media/RemoteImageDecoderAVF.cpp:

(WebKit::RemoteImageDecoderAVF::setData):

  • WebProcess/GPU/media/RemoteImageDecoderAVFManager.cpp:

(WebKit::RemoteImageDecoderAVFManager::createImageDecoder):

  • WebProcess/GPU/media/RemoteMediaResourceProxy.cpp:

(WebKit::RemoteMediaResourceProxy::dataReceived):

  • WebProcess/GPU/media/SourceBufferPrivateRemote.cpp:

(WebKit::SourceBufferPrivateRemote::append):

  • WebProcess/Network/WebResourceLoader.cpp:

(WebKit::WebResourceLoader::didReceiveData):

  • WebProcess/Network/WebResourceLoader.h:
  • WebProcess/Network/WebResourceLoader.messages.in:
  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(WebKit::PDFPlugin::writeItemsToPasteboard):

  • WebProcess/Storage/WebServiceWorkerFetchTaskClient.cpp:

(WebKit::WebServiceWorkerFetchTaskClient::didReceiveData):
(WebKit::WebServiceWorkerFetchTaskClient::didReceiveBlobChunk):

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:
  • WebProcess/WebCoreSupport/WebEditorClient.cpp:

(WebKit::WebEditorClient::registerAttachmentIdentifier):

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:

(WebKit::WebPlatformStrategies::bufferForType):
(WebKit::WebPlatformStrategies::setBufferForType):
(WebKit::WebPlatformStrategies::readBufferFromClipboard):
(WebKit::WebPlatformStrategies::readBufferFromPasteboard):

  • WebProcess/WebCoreSupport/mac/WebDragClientMac.mm:

(WebKit::WebDragClient::declareAndWriteDragImage):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::getContentsAsMHTMLData):
(WebKit::WebPage::getSelectionAsWebArchiveData):
(WebKit::WebPage::getMainResourceDataOfFrame):
(WebKit::WebPage::getResourceDataFromFrame):
(WebKit::WebPage::getWebArchiveOfFrame):
(WebKit::WebPage::getAccessibilityTreeData):
(WebKit::WebPage::drawToPDF):
(WebKit::WebPage::drawPagesToPDF):
(WebKit::WebPage::didGetLoadDecisionForIcon):
(WebKit::WebPage::urlSchemeTaskDidReceiveData):
(WebKit::WebPage::updateAttachmentAttributes):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::getDataSelectionForPasteboard):
(WebKit::WebPage::performActionOnElement):
(WebKit::WebPage::drawToPDFiOS):
(WebKit::WebPage::didFinishLoadForQuickLookDocumentInMainFrame):

  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::WebPage::getDataSelectionForPasteboard):

  • WebProcess/WebProcess.h:
  • WebProcess/WebProcess.messages.in:
  • WebProcess/cocoa/WebProcessCocoa.mm:

(WebKit::WebProcess::consumeAudioComponentRegistrations):

# Please populate the above commit message. Lines starting
# with '#' will be ignored

# 13 Tim Horton <timothy_horton@apple.com>
#
# ApplePayLogoSystemImage needlessly loads PassKit in WebKit child processes on iOS
# https://bugs.webkit.org/show_bug.cgi?id=240404
# <rdar://93070349>
#
# Reviewed by Chris Dumez.
#
# * UIProcess/Launcher/cocoa/ProcessLauncherCocoa.mm:
# (WebKit::ProcessLauncher::launchProcess): Adopt the WTF implementation of systemDirectoryPath.
# (WebKit::systemDirectoryPath): Moved to WTF.
#
# 13 Wenson Hsieh <Wenson Hsieh>
#
# ImageAnalysisQueue should reanalyze image elements whose image sources have changed
# https://bugs.webkit.org/show_bug.cgi?id=240371
# rdar://93175651
#
# Reviewed by Tim Horton.
#
# To aid with debugging similar issues in the future, plumb the image URL through to
# requestImageAnalysisWithIdentifier, which (if an engineering default is specified) will additionally reveal
# the URL in system logs.
#
# * Platform/cocoa/ImageAnalysisUtilities.h:
# * UIProcess/Cocoa/WebViewImpl.mm:
# (WebKit::WebViewImpl::requestTextRecognition):
# * UIProcess/ios/WKContentViewInteraction.mm:
# (-[WKContentView requestTextRecognition:imageData:identifier:completionHandler:]):
#
# 13 Aditya Keerthi <Aditya Keerthi>
#
# [iOS] Multiple visible find highlights when searching for text after beginning a "find from selection"
# https://bugs.webkit.org/show_bug.cgi?id=240393
# rdar://91441895
#
# Reviewed by Wenson Hsieh.
#
# Some WebKit clients use SPI on WKWebView to support "find from selection"
# functionality (the Cmd+E shortcut). However, to support general
# find functionality, they use new find API that uses a different codepath
# to draw highlights. Mixing use of the API and SPI can currently result
# in two highlights showing up.
#
# To fix, ensure SPI highlights are removed once the API is being used.
# The long term solution is for clients to adopt API for the
# "find from selection" functionality, but in the short term the SPI
# should remain supported.
#
# * WebProcess/WebPage/WebPage.cpp:
# (WebKit::WebPage::clearAllDecoratedFoundText):
#
# 13 Kimmo Kinnunen <kkinnunen@apple.com>
#
# IPC cannot encode, decode Ref<>, causing duplicate code
# https://bugs.webkit.org/show_bug.cgi?id=240160
#
# Reviewed by Antti Koivisto.
#
# Consider reference counted type T:
# Encoding is of signature encode(const T&)
# Decoding is of signature std::optional<Ref<T>> decode()
# This is usable for both RefPtr and Ref use-cases.
#
# Add Ref<T> encoder that is polymorphic to T.
# This way clients do not need to write encoders for
# Ref<T>, RefPtr<T>. They just need one encoder, for T.
#
# When clients do not need to write RefPtr<T>, they make less
# bugs. These will be corrected in future patches.
#
# Having Ref<T> encoders allows clients to use Vector<Ref<T>> encoding
# via Vector<U> encoder, and they would not need to duplicate that
# logic, making less bugs. These will be corrected in future patches.
#
# Remove most IPC::ArgumentCoder<Ref<..>> in favor of IPC::ArgumentCoder<..>.
# In the cases where removal was done, remove also redundant
# IPC::ArgumentCoder<RefPtr<..>>.
#
# * Platform/IPC/ArgumentCoders.h:
# (IPC::ArgumentCoder<RefPtr<T>>::decode):
# (IPC::ArgumentCoder<Ref<T>>::encode):
# (IPC::ArgumentCoder<Ref<T>>::decode):
# * Shared/Cocoa/WebCoreArgumentCodersCocoa.mm:
# (IPC::ArgumentCoder<WebCore::Font>::encodePlatformData):
# (IPC::ArgumentCoder<WebCore::Font>::decodePlatformData):
# * Shared/WebCoreArgumentCoders.cpp:
# (IPC::ArgumentCoder<WebCore::Font>::encode):
# (IPC::ArgumentCoder<Font>::decode):
# (IPC::ArgumentCoder<SystemImage>::encode):
# (IPC::ArgumentCoder<SystemImage>::decode):
# * Shared/WebCoreArgumentCoders.h:
# * Shared/playstation/WebCoreArgumentCodersPlayStation.cpp:
# (IPC::ArgumentCoder<Font>::encodePlatformData):
# (IPC::ArgumentCoder<Font>::decodePlatformData):
# * Shared/soup/WebCoreArgumentCodersSoup.cpp:
# (IPC::ArgumentCoder<Font>::encodePlatformData):
# (IPC::ArgumentCoder<Font>::decodePlatformData):
# * Shared/win/WebCoreArgumentCodersWin.cpp:
# (IPC::ArgumentCoder<Font>::encodePlatformData):
# (IPC::ArgumentCoder<Font>::decodePlatformData):
#
# 13 Tim Horton <timothy_horton@apple.com>
#
# Add UI-side layers for optionally indicating interaction regions
# https://bugs.webkit.org/show_bug.cgi?id=240372
# <rdar://problem/87170289>
#
# Reviewed by Dean Jackson.
#
# * Shared/RemoteLayerTree/RemoteLayerTreePropertyApplier.mm:
# (WebKit::RemoteLayerTreePropertyApplier::applyPropertiesToLayer):
# (WebKit::RemoteLayerTreePropertyApplier::applyHierarchyUpdates):
# Allow RemoteLayerTreeInteractionRegionLayers to add and maintain layers for interaction regions.
#
# * SourcesCocoa.txt:
# * UIProcess/RemoteLayerTree/RemoteLayerTreeInteractionRegionLayers.h: Added.
# * UIProcess/RemoteLayerTree/RemoteLayerTreeInteractionRegionLayers.mm: Added.
# (configureLayerForInteractionRegion):
# (WebKit::interactionRegionForLayer):
# (WebKit::isInteractionRegionLayer):
# (WebKit::setInteractionRegion):
# Box WebCore::InteractionRegion in a Objective-C object and store it on the layer.
# Use this as a key to indicate that a given layer is an interaction region.
#
# (WebKit::appendInteractionRegionLayersForLayer):
# Make sure that interaction region layers are always at the end of the layer's sublayers array.
#
# (WebKit::updateLayersForInteractionRegions):
# Add new layers for interaction regions.
# Maintain the same layer for regions that cover the same area.
# Add a green wash if the default WKInteractionRegionDebugFill is set.
#
# * WebKit.xcodeproj/project.pbxproj:
#
# 13 Simon Fraser <Simon Fraser>
#
# Simplify the usage of DrawGlyphsRecorder
# https://bugs.webkit.org/show_bug.cgi?id=240363
#
# Reviewed by Myles Maxfield.
#
# Move the DeconstructDrawGlyphs switch from inside DrawGlyphsRecorder to
# DisplayList::Recorder, so that DrawGlyphsRecorder is only ever used when deconstructing
# glyphs.
#
# Also, ensure that the only time that glyph deconstruction is enabled is when
# recording display lists via RemoteDisplayListRecorderProxy. There's no reason for
# paintAttachmentText() to need glyph deconstruction.
#
# This is a small perf improvement on the MotionMark Design subtest.
#
# * WebProcess/GPU/graphics/RemoteDisplayListRecorderProxy.cpp:
# (WebKit::RemoteDisplayListRecorderProxy::RemoteDisplayListRecorderProxy):
# (WebKit::m_renderingBackend):
# * WebProcess/GPU/graphics/RemoteDisplayListRecorderProxy.h:
#
# it takes from the XPC message is sent until the XPC reply is received. Add reporting when this happens

# On branch bz/240223
# Your branch is ahead of 'origin/main' by 1 commit.
# (use "git push" to publish your local commits)
#
# Changes to be committed:
# (use "git restore --staged <file>..." to unstage)
# modified: Source/WebKit/ChangeLog
#
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
# 0001-SharedBuffer-should-be-copied-and-then-attributed-ba.patch
#

Canonical link: https://commits.webkit.org/250556@main

12:21 AM Changeset in webkit [294189] by Chris Dumez
  • 1 edit in trunk/Source/WTF/wtf/text/WTFString.h

Drop unused appendNumber(Vector<CharacterType>& vector, unsigned char) function
https://bugs.webkit.org/show_bug.cgi?id=240387

Reviewed by Darin Adler.

  • Source/WTF/wtf/text/WTFString.h:

(WTF::appendNumber): Deleted.

Canonical link: https://commits.webkit.org/250555@main

Note: See TracTimeline for information about the timeline view.