Timeline



Sep 21, 2021:

11:25 PM Changeset in webkit [282865] by Jean-Yves Avenard
  • 26 edits in trunk/Source

Use SharedMemory for transferring appended buffers from SourceBuffer to the GPU process
https://bugs.webkit.org/show_bug.cgi?id=230329
rdar://problem/83291495

Source/WebCore:

Use SharedBuffer instead of Vector to pass data to the SourceBuffer's related
classes (SourceBuffer, SourceBufferPrivate and SourceBufferParser).
Modify SourceBufferParserWebM to never perform memory allocation and copy
of the original data content. Instead, we use CMBlockBuffer objects that retain the
backing SharedBuffer and use offsets inside this SharedBuffer to reference the data.
SourceBufferParserAVFObjC requires little modification as a NSData can wrap a SharedBuffer.

Reviewed by Jer Noble.

There should be no change from an observable standpoint other than the GPU memory usage
being drastically reduced (from 700MB when watching a 4K/60fps YouTube video to just over 200MB
on an iMac Pro (which only has software VP9 decoding), 25MB vs 360MB on an iPad)
Existing tests are fully exercising this new code.

  • Modules/mediasource/SourceBuffer.cpp: Simplify logic around m_pendingAppendData member.

Only one appendBuffer operation can be pending at any given time otherwise appendBuffer
will throw an exception; as such, there's no need to append the data to a vector: "there can
be only one".
(WebCore::SourceBuffer::abortIfUpdating):
(WebCore::SourceBuffer::appendBufferInternal):
(WebCore::SourceBuffer::appendBufferTimerFired):
(WebCore::SourceBuffer::reportExtraMemoryAllocated):

  • Modules/mediasource/SourceBuffer.h:
  • platform/SharedBuffer.cpp:

(WebCore::SharedBuffer::SharedBuffer):
(WebCore::SharedBuffer::create):
(WebCore::SharedBuffer::copyTo const):
(WebCore::SharedBuffer::DataSegment::data const):
(WebCore::SharedBuffer::DataSegment::size const):

  • platform/SharedBuffer.h: Add new DataSegment type that takes a Provider in constructor.

A Provider provides two Function members data and size.

  • platform/audio/cocoa/AudioFileReaderCocoa.cpp: The AudioFileReaderCocoa required

the CMBlockBuffer containing the compressed content to be contiguous. This is no
longer guaranteed so ensure that the CMBlockBuffer is contiguous.
(WebCore::AudioFileReader::demuxWebMData const):
(WebCore::AudioFileReader::decodeWebMData const):

  • platform/graphics/SourceBufferPrivate.h:

(WebCore::SourceBufferPrivate::append):

  • platform/graphics/avfoundation/objc/SourceBufferParserAVFObjC.mm:

(WebCore::SourceBufferParserAVFObjC::appendData):

  • platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.h:
  • platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:

(WebCore::SourceBufferPrivateAVFObjC::append):

  • platform/graphics/cocoa/SourceBufferParser.cpp:

(WebCore::SourceBufferParser::Segment::Segment):
(WebCore::SourceBufferParser::Segment::size const):
(WebCore::SourceBufferParser::Segment::read const):
(WebCore::SourceBufferParser::Segment::takeSharedBuffer):
(WebCore::SourceBufferParser::Segment::getSharedBuffer const):

  • platform/graphics/cocoa/SourceBufferParser.h:
  • platform/graphics/cocoa/SourceBufferParserWebM.cpp:

(WebCore::SourceBufferParserWebM::SourceBufferParserWebM):
(WebCore::SourceBufferParserWebM::TrackData::contiguousCompleteBlockBuffer const):
(WebCore::SourceBufferParserWebM::TrackData::readFrameData):
(WebCore::SourceBufferParserWebM::VideoTrackData::consumeFrameData):
(WebCore::SourceBufferParserWebM::VideoTrackData::createSampleBuffer):
(WebCore::SourceBufferParserWebM::AudioTrackData::resetCompleted):
(WebCore::SourceBufferParserWebM::AudioTrackData::consumeFrameData):
(WebCore::SourceBufferParserWebM::AudioTrackData::createSampleBuffer):
(WebCore::SourceBufferParserWebM::flushPendingAudioBuffers):

  • platform/graphics/cocoa/SourceBufferParserWebM.h:

(WebCore::SourceBufferParserWebM::TrackData::resetCompleted):
(WebCore::SourceBufferParserWebM::TrackData::reset):

Source/WebCore/PAL:

Reviewed by Jer Noble.

  • pal/cf/CoreMediaSoftLink.cpp:
  • pal/cf/CoreMediaSoftLink.h: Add required CoreMedia methods.

Source/WebKit:

Use SharedMemory to pass SourceBuffer content to RemoteSourceBufferProxy in GPU process.
This is done by wrapping a SharedMemory into a SharedBuffer.

Reviewed by Jer Noble.

  • GPUProcess/media/RemoteSourceBufferProxy.cpp:

(WebKit::RemoteSourceBufferProxy::append):

  • GPUProcess/media/RemoteSourceBufferProxy.h:
  • GPUProcess/media/RemoteSourceBufferProxy.messages.in:
  • Platform/SharedMemory.cpp:

(WebKit::SharedMemory::createSharedBuffer const):

  • Platform/SharedMemory.h:
  • WebProcess/GPU/media/SourceBufferPrivateRemote.cpp:

(WebKit::SourceBufferPrivateRemote::append):

  • WebProcess/GPU/media/SourceBufferPrivateRemote.h:
9:55 PM Changeset in webkit [282864] by Alexey Shvayka
  • 97 edits in trunk/Source

[WebIDL] DOM constructors should extend InternalFunction
https://bugs.webkit.org/show_bug.cgi?id=228763

Reviewed by Sam Weinig.

Source/JavaScriptCore:

Introduce finishCreation(VM&) overload to preserve the current property order of
WebIDL constructors, and to defer a large code change needed for passing through
length / name parameters (bug #230584).

  • runtime/InternalFunction.cpp:

(JSC::InternalFunction::InternalFunction):
(JSC::InternalFunction::finishCreation):

  • runtime/InternalFunction.h:

Source/WebCore:

This patch makes JSDOMConstructorBase a subclass of InternalFunction, aligning
DOM constructors with their ECMA-262 counterparts, which renders a few benefits.

  1. InternalFunction is way faster to call than a class with custom getCallData(): JIT inlines InternalFunction::getCallData(), emitting a direct call into m_functionForConstruct. Speeds up invoking Event constructor by ~18% (1M calls).
  2. Since InternalFunction disallows its subclasses to override getCallData(), the presence of Call? method can be inferred by JSType only. In the future, this invariant will allow to speed up a few bytecodes: is_callable, typeof*.
  3. InternalFunction::finishCreation() takes care of "length" / "name" properties, which can leveraged (in a follow-up) to align property order of WebIDL constructors with JSC built-ins, and also clean up bindings generator a bit (bug #230584).
  4. Using InternalFunctionType is essential to keep the instanceof update (bug #151348) performance-neutral for DOM constructors.

No new tests, no behavior change.

  • bindings/js/JSDOMBuiltinConstructor.h:

(WebCore::JSDOMBuiltinConstructor<JSClass>::create):
(WebCore::JSDOMBuiltinConstructor<JSClass>::createStructure):
(WebCore::JSDOMBuiltinConstructor<JSClass>::getConstructData): Deleted.

  • bindings/js/JSDOMBuiltinConstructorBase.h:

(WebCore::JSDOMBuiltinConstructorBase::JSDOMBuiltinConstructorBase):

  • bindings/js/JSDOMConstructor.h:

(WebCore::JSDOMConstructor<JSClass>::create):
(WebCore::JSDOMConstructor<JSClass>::createStructure):
(WebCore::JSDOMConstructor<JSClass>::getConstructData): Deleted.

  • bindings/js/JSDOMConstructorBase.cpp:

(WebCore::JSC_DEFINE_HOST_FUNCTION):
(WebCore::JSDOMConstructorBase::getCallData): Deleted.

  • bindings/js/JSDOMConstructorBase.h:

(WebCore::JSDOMConstructorBase::globalObject const):
(WebCore::JSDOMConstructorBase::scriptExecutionContext const):
(WebCore::JSDOMConstructorBase::JSDOMConstructorBase):
(WebCore::JSDOMConstructorBase::createStructure): Deleted.

  • bindings/js/JSDOMConstructorNotCallable.h:

(WebCore::JSDOMConstructorNotCallable::subspaceFor):

  • bindings/js/JSDOMConstructorNotConstructable.h:

(WebCore::JSDOMConstructorNotConstructable<JSClass>::create):
(WebCore::JSDOMConstructorNotConstructable<JSClass>::createStructure):

  • bindings/js/JSDOMConstructorWithDocument.h:

(WebCore::JSDOMConstructorWithDocument::JSDOMConstructorWithDocument):

  • bindings/js/JSDOMLegacyFactoryFunction.h:

(WebCore::JSDOMLegacyFactoryFunction<JSClass>::create):
(WebCore::JSDOMLegacyFactoryFunction<JSClass>::createStructure):
(WebCore::JSDOMLegacyFactoryFunction<JSClass>::getConstructData): Deleted.

  • bindings/js/WebCoreJSClientData.cpp:

(WebCore::JSVMClientData::JSVMClientData):

  • bindings/js/WebCoreJSClientData.h:

(WebCore::JSVMClientData::domNamespaceObjectSpace):
Move JSDOMConstructorNotCallable to separate IsoSubspace since it no longer shares
a common parent class with callable constructors.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateConstructorHelperMethods):
Introduce InternalFunction::finishCreation(VM&) overload and set m_originalName
directly to preserve the current property order of WebIDL constructors, and to defer
a large code change needed for passing through length / name parameters (bug #230584).

  • bindings/scripts/test/JS/*: Updated.
9:06 PM Changeset in webkit [282863] by mmaxfield@apple.com
  • 30 edits
    1 add in trunk/Source/WebCore

Add FontCreationContext
https://bugs.webkit.org/show_bug.cgi?id=230592

Reviewed by Alan Bujtas.

We have this pattern where we pass around "const FontFeatureSettings&, const FontSelectionSpecifiedCapabilities&"
through all the various font creation routines. When I add support for font palettes and font-feature-values,
this would need to grow to 4 arguments being passed around instead of 2. Rather than passing all these arguments
around, a better idea is to encapsulate these arguments in a "context" object. This is because most places that
take these arguments don't actually inspect them, but instead just forward them on to other routines.

No new tests because there is no behavior change.

  • Headers.cmake:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSFontFace.cpp:

(WebCore::CSSFontFace::font):

  • css/CSSFontFaceSource.cpp:

(WebCore::CSSFontFaceSource::load):
(WebCore::CSSFontFaceSource::font):

  • css/CSSFontFaceSource.h:
  • css/CSSFontSelector.cpp:

(WebCore::CSSFontSelector::fontRangesForFamily):

  • loader/FontLoadRequest.h:
  • loader/cache/CachedFont.cpp:

(WebCore::CachedFont::createFont):
(WebCore::CachedFont::platformDataFromCustomData):

  • loader/cache/CachedFont.h:
  • loader/cache/CachedFontLoadRequest.h:
  • loader/cache/CachedSVGFont.cpp:

(WebCore::CachedSVGFont::createFont):
(WebCore::CachedSVGFont::platformDataFromCustomData):

  • loader/cache/CachedSVGFont.h:
  • platform/graphics/Font.cpp:

(WebCore::Font::create):

  • platform/graphics/FontCache.cpp:

(WebCore::operator==):
(WebCore::FontPlatformDataCacheKeyHash::hash):
(WebCore::FontCache::cachedFontPlatformData):
(WebCore::FontCache::fontForFamily):

  • platform/graphics/FontCache.h:

(WebCore::FontCache::fontForFamily):
(WebCore::FontCache::cachedFontPlatformData):
(WebCore::FontCache::createFontPlatformDataForTesting):

  • platform/graphics/FontCreationContext.h: Added.

(WebCore::FontCreationContext::operator== const):
(WebCore::FontCreationContext::operator!= const):
(WebCore::add):

  • platform/graphics/cairo/FontCustomPlatformData.h:
  • platform/graphics/cocoa/FontCacheCoreText.cpp:

(WebCore::preparePlatformFont):
(WebCore::fontWithFamily):
(WebCore::FontCache::createFontPlatformData):
(WebCore::FontCache::systemFallbackForCharacters):

  • platform/graphics/cocoa/FontCacheCoreText.h:
  • platform/graphics/cocoa/FontFamilySpecificationCoreText.cpp:

(WebCore::FontFamilySpecificationCoreText::fontRanges const):

  • platform/graphics/freetype/FontCacheFreeType.cpp:

(WebCore::FontCache::createFontPlatformData):

  • platform/graphics/freetype/FontCustomPlatformDataFreeType.cpp:

(WebCore::FontCustomPlatformData::fontPlatformData):

  • platform/graphics/mac/FontCustomPlatformData.cpp:

(WebCore::FontCustomPlatformData::fontPlatformData):

  • platform/graphics/mac/FontCustomPlatformData.h:
  • platform/graphics/win/FontCacheWin.cpp:

(WebCore::FontCache::createFontPlatformData):

  • platform/graphics/win/FontCustomPlatformData.cpp:

(WebCore::FontCustomPlatformData::fontPlatformData):

  • platform/graphics/win/FontCustomPlatformData.h:
  • platform/graphics/win/FontCustomPlatformDataCairo.cpp:

(WebCore::FontCustomPlatformData::fontPlatformData):

  • workers/WorkerFontLoadRequest.cpp:

(WebCore::WorkerFontLoadRequest::createFont):

  • workers/WorkerFontLoadRequest.h:
8:40 PM Changeset in webkit [282862] by Simon Fraser
  • 25 edits in trunk/Source

Change from ENABLE(RUBBER_BANDING) to HAVE(RUBBER_BANDING)
https://bugs.webkit.org/show_bug.cgi?id=230583

Reviewed by Tim Horton.

RUBBER_BANDING is not a feature we'll ever turn off on macOS, and it was only ever enabled
for that platform. However, it's also used in some cross-platform code, so
HAVE(RUBBER_BANDING) makes more sense for that use.

Also remove ENABLE(RUBBER_BANDING) #ifdefs from inside PLATFORM(MAC) code.

Source/WebCore:

  • page/FrameView.cpp:

(WebCore::FrameView::FrameView):
(WebCore::FrameView::isScrollable):
(WebCore::FrameView::handleWheelEventForScrolling):

  • page/FrameView.h:
  • page/Page.cpp:

(WebCore::Page::setUnderPageBackgroundColorOverride):

  • page/scrolling/ScrollingCoordinator.cpp:

(WebCore::ScrollingCoordinator::headerLayerForFrameView):
(WebCore::ScrollingCoordinator::footerLayerForFrameView):
(WebCore::ScrollingCoordinator::contentShadowLayerForFrameView):

  • page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm:

(WebCore::ScrollingTreeScrollingNodeDelegateMac::scrollPositionIsNotRubberbandingEdge const):

  • platform/ScrollView.cpp:

(WebCore::ScrollView::paint):

  • platform/ScrollableArea.h:
  • platform/ScrollbarTheme.h:
  • platform/ScrollingEffectsController.h:
  • platform/graphics/ca/cocoa/PlatformCALayerCocoa.mm:

(WebCore::PlatformCALayerCocoa::updateCustomAppearance):

  • platform/mac/ScrollAnimatorMac.h:
  • platform/mac/ScrollAnimatorMac.mm:

(WebCore::rubberBandingEnabledForSystem):
(WebCore::ScrollAnimatorMac::isRubberBandInProgress const):
(WebCore::ScrollAnimatorMac::immediateScrollBy):

  • platform/mac/ScrollbarThemeMac.h:
  • platform/mac/ScrollbarThemeMac.mm:
  • platform/mac/ScrollingEffectsController.mm:

(WebCore::ScrollingEffectsController::updateRubberBandAnimatingState):
(WebCore::ScrollingEffectsController::scrollPositionChanged):
(WebCore::ScrollingEffectsController::isRubberBandInProgress const):
(WebCore::ScrollingEffectsController::stopRubberbanding):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::~RenderLayerCompositor):
(WebCore::RenderLayerCompositor::updateBacking):
(WebCore::RenderLayerCompositor::frameViewDidChangeSize):
(WebCore::RenderLayerCompositor::updateRootLayerPosition):
(WebCore::RenderLayerCompositor::rootBackgroundColorOrTransparencyChanged):
(WebCore::RenderLayerCompositor::updateOverflowControlsLayers):
(WebCore::RenderLayerCompositor::destroyRootLayer):

  • rendering/RenderLayerCompositor.h:
  • rendering/RenderLayerScrollableArea.cpp:

(WebCore::RenderLayerScrollableArea::isRubberBandInProgress const):
(WebCore::RenderLayerScrollableArea::overhangAmount const):
(WebCore::RenderLayerScrollableArea::setHasHorizontalScrollbar):
(WebCore::RenderLayerScrollableArea::setHasVerticalScrollbar):

Source/WebKit:

  • Shared/RemoteLayerTree/RemoteLayerTreePropertyApplier.mm:

(WebKit::updateCustomAppearance):

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::didAddHeaderLayer):
(WebKit::WebChromeClient::didAddFooterLayer):

Source/WTF:

  • Scripts/Preferences/WebPreferences.yaml:
  • wtf/PlatformHave.h:
7:58 PM Changeset in webkit [282861] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebCore

Delete dead code in FontPaletteValues
https://bugs.webkit.org/show_bug.cgi?id=230586

Reviewed by Alex Christensen.

No new tests because there is no behavior change.

  • platform/graphics/FontPaletteValues.h:

(WebCore::FontPaletteValues::setBasePalette): Deleted.
(WebCore::FontPaletteValues::appendOverrideColor): Deleted.
(WebCore::FontPaletteValues::clearOverrideColor): Deleted.
(WebCore::FontPaletteValues::remove): Deleted.

7:55 PM Changeset in webkit [282860] by Chris Dumez
  • 135 edits in trunk/Source

Reduce use of makeRef() and use Ref { } instead
https://bugs.webkit.org/show_bug.cgi?id=230585

Reviewed by Alex Christensen.

Source/JavaScriptCore:

  • debugger/Debugger.cpp:

(JSC::Debugger::setBreakpoint):
(JSC::Debugger::schedulePauseForSpecialBreakpoint):

  • llint/LLIntEntrypoint.cpp:

(JSC::LLInt::setFunctionEntrypoint):
(JSC::LLInt::setEvalEntrypoint):
(JSC::LLInt::setProgramEntrypoint):
(JSC::LLInt::setModuleProgramEntrypoint):

  • runtime/JSString.cpp:

(JSC::JSRopeString::resolveRopeToExistingAtomString const):

  • runtime/VM.cpp:

(JSC::jitCodeForCallTrampoline):
(JSC::jitCodeForConstructTrampoline):

  • wasm/WasmCodeBlock.cpp:

(JSC::Wasm::CodeBlock::CodeBlock):

  • wasm/WasmOMGForOSREntryPlan.cpp:

(JSC::Wasm::OMGForOSREntryPlan::OMGForOSREntryPlan):

  • wasm/WasmOMGPlan.cpp:

(JSC::Wasm::OMGPlan::OMGPlan):

  • wasm/WasmSignature.cpp:

(JSC::Wasm::SignatureInformation::signatureFor):

  • wasm/WasmSignatureInlines.h:

(JSC::Wasm::SignatureInformation::get):

  • wasm/WasmSlowPaths.cpp:

(JSC::LLInt::jitCompileAndSetHeuristics):

  • wasm/js/JSWebAssemblyInstance.h:

Source/WebCore:

  • Modules/async-clipboard/ClipboardItemBindingsDataSource.cpp:

(WebCore::ClipboardItemBindingsDataSource::collectDataForWriting):

  • Modules/cache/DOMCache.cpp:

(WebCore::DOMCache::addAll):

  • Modules/cache/WorkerCacheStorageConnection.cpp:

(WebCore::WorkerCacheStorageConnection::create):
(WebCore::WorkerCacheStorageConnection::open):
(WebCore::WorkerCacheStorageConnection::remove):
(WebCore::WorkerCacheStorageConnection::retrieveCaches):
(WebCore::WorkerCacheStorageConnection::retrieveRecords):
(WebCore::WorkerCacheStorageConnection::batchDeleteOperation):
(WebCore::WorkerCacheStorageConnection::batchPutOperation):

  • Modules/entriesapi/DOMFileSystem.cpp:

(WebCore::DOMFileSystem::listDirectory):
(WebCore::DOMFileSystem::getParent):
(WebCore::DOMFileSystem::getEntry):
(WebCore::DOMFileSystem::getFile):

  • Modules/entriesapi/FileSystemDirectoryReader.cpp:

(WebCore::FileSystemDirectoryReader::readEntries):

  • Modules/fetch/FetchBody.cpp:

(WebCore::FetchBody::bodyAsFormData const):

  • Modules/indexeddb/IDBTransaction.cpp:

(WebCore::IDBTransaction::objectStore):
(WebCore::IDBTransaction::iterateCursor):
(WebCore::IDBTransaction::requestPutOrAdd):

  • Modules/mediasession/MediaSessionCoordinator.cpp:

(WebCore::MediaSessionCoordinator::MediaSessionCoordinator):

  • Modules/mediastream/PeerConnectionBackend.cpp:

(WebCore::PeerConnectionBackend::newDataChannel):

  • Modules/mediastream/RTCRtpSFrameTransform.cpp:

(WebCore::RTCRtpSFrameTransform::initializeTransformer):

  • Modules/mediastream/RTCRtpScriptTransform.cpp:

(WebCore::RTCRtpScriptTransform::create):
(WebCore::RTCRtpScriptTransform::initializeTransformer):

  • Modules/mediastream/RTCRtpScriptTransformer.cpp:

(WebCore::RTCRtpScriptTransformer::writable):
(WebCore::RTCRtpScriptTransformer::start):

  • Modules/mediastream/libwebrtc/LibWebRTCDataChannelHandler.cpp:

(WebCore::LibWebRTCDataChannelHandler::checkState):
(WebCore::LibWebRTCDataChannelHandler::OnMessage):
(WebCore::LibWebRTCDataChannelHandler::OnBufferedAmountChange):

  • Modules/mediastream/libwebrtc/LibWebRTCDtlsTransportBackend.cpp:

(WebCore::LibWebRTCDtlsTransportBackendObserver::start):
(WebCore::LibWebRTCDtlsTransportBackendObserver::stop):
(WebCore::LibWebRTCDtlsTransportBackendObserver::OnStateChange):
(WebCore::LibWebRTCDtlsTransportBackendObserver::OnError):

  • Modules/mediastream/libwebrtc/LibWebRTCIceTransportBackend.cpp:

(WebCore::LibWebRTCIceTransportBackendObserver::start):
(WebCore::LibWebRTCIceTransportBackendObserver::stop):
(WebCore::LibWebRTCIceTransportBackendObserver::onIceTransportStateChanged):
(WebCore::LibWebRTCIceTransportBackendObserver::onGatheringStateChanged):

  • Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:

(WebCore::LibWebRTCMediaEndpoint::addPendingTrackEvent):
(WebCore::LibWebRTCMediaEndpoint::newTransceiver):

  • Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.cpp:

(WebCore::findExistingSender):
(WebCore::LibWebRTCPeerConnectionBackend::addTrack):

  • Modules/mediastream/libwebrtc/LibWebRTCSctpTransportBackend.cpp:

(WebCore::LibWebRTCSctpTransportBackendObserver::start):
(WebCore::LibWebRTCSctpTransportBackendObserver::stop):
(WebCore::LibWebRTCSctpTransportBackendObserver::OnStateChange):

  • Modules/notifications/Notification.cpp:

(WebCore::Notification::requestPermission):

  • Modules/speech/SpeechRecognitionResultList.cpp:

(WebCore::SpeechRecognitionResultList::add):

  • Modules/webaudio/AsyncAudioDecoder.cpp:

(WebCore::AsyncAudioDecoder::DecodingTask::notifyComplete):

  • Modules/webaudio/AudioNode.cpp:

(WebCore::AudioNode::toWeakOrStrongContext):

  • Modules/webaudio/AudioWorklet.cpp:

(WebCore::AudioWorklet::createProcessor):

  • Modules/webaudio/DefaultAudioDestinationNode.cpp:

(WebCore::Function<void):

  • Modules/webdatabase/Database.cpp:

(WebCore::Database::runTransaction):

  • Modules/webxr/WebXRInputSourceArray.cpp:

(WebCore::WebXRInputSourceArray::update):

  • Modules/webxr/WebXRSystem.cpp:

(WebCore::WebXRSystem::requestSession):

  • accessibility/AXObjectCache.cpp:

(WebCore::AXObjectCache::getOrCreate):

  • animation/DocumentTimelinesController.cpp:

(WebCore::DocumentTimelinesController::updateAnimationsAndSendEvents):

  • bindings/js/JSEventListener.h:

(WebCore::JSEventListener::ensureJSFunction const):

  • bindings/js/SerializedScriptValue.cpp:

(WebCore::CloneSerializer::dumpIfTerminal):

  • crypto/SubtleCrypto.cpp:

(WebCore::SubtleCrypto::wrapKey):

  • css/CSSFontFaceSet.cpp:

(WebCore::CSSFontFaceSet::remove):

  • css/CSSFontSelector.cpp:

(WebCore::CSSFontSelector::CSSFontSelector):

  • css/DOMCSSPaintWorklet.cpp:

(WebCore::PaintWorklet::addModule):

  • css/typedom/CSSNumericValue.cpp:

(WebCore::CSSNumericValue::add):
(WebCore::CSSNumericValue::sub):
(WebCore::CSSNumericValue::mul):
(WebCore::CSSNumericValue::div):
(WebCore::CSSNumericValue::min):
(WebCore::CSSNumericValue::max):

  • css/typedom/CSSStyleValueFactory.cpp:

(WebCore::CSSStyleValueFactory::reifyValue):

  • css/typedom/StylePropertyMapReadOnly.cpp:

(WebCore::StylePropertyMapReadOnly::reifyValue):

  • dom/ActiveDOMObject.cpp:

(WebCore::ActiveDOMObject::queueTaskToDispatchEventInternal):
(WebCore::ActiveDOMObject::queueCancellableTaskToDispatchEventInternal):

  • dom/ActiveDOMObject.h:
  • dom/DeviceOrientationAndMotionAccessController.cpp:

(WebCore::DeviceOrientationAndMotionAccessController::shouldAllowAccess):

  • dom/Document.cpp:

(WebCore::Document::forEachMediaElement):
(WebCore::command):

  • dom/Element.cpp:

(WebCore::Element::focus):

  • dom/IdleCallbackController.cpp:

(WebCore::IdleCallbackController::queueTaskToStartIdlePeriod):
(WebCore::IdleCallbackController::queueTaskToInvokeIdleCallbacks):

  • dom/Microtasks.cpp:

(WebCore::MicrotaskQueue::MicrotaskQueue):

  • dom/MutationObserver.cpp:

(WebCore::MutationObserver::enqueueMutationRecord):
(WebCore::MutationObserver::enqueueSlotChangeEvent):
(WebCore::MutationObserver::setHasTransientRegistration):

  • dom/ScriptElement.cpp:

(WebCore::ScriptElement::requestModuleScript):

  • editing/AlternativeTextController.cpp:

(WebCore::AlternativeTextController::applyAlternativeTextToRange):

  • editing/DeleteSelectionCommand.cpp:

(WebCore::DeleteSelectionCommand::makeStylingElementsDirectChildrenOfEditableRootToPreventStyleLoss):

  • editing/Editor.cpp:

(WebCore::Editor::appliedEditing):
(WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
(WebCore::correctSpellcheckingPreservingTextCheckingParagraph):
(WebCore::scanForTelephoneNumbers):

  • editing/ReplaceSelectionCommand.cpp:

(WebCore::ReplacementFragment::removeContentsWithSideEffects):
(WebCore::ReplacementFragment::insertFragmentForTestRendering):
(WebCore::ReplaceSelectionCommand::mergeTextNodesAroundPosition):
(WebCore::ReplaceSelectionCommand::performTrivialReplace):

  • editing/TextIterator.cpp:

(WebCore::plainText):

  • editing/VisibleSelection.cpp:

(WebCore::VisibleSelection::adjustSelectionToAvoidCrossingShadowBoundaries):

  • editing/cocoa/WebContentReaderCocoa.mm:

(WebCore::attachmentForFilePath):
(WebCore::attachmentForData):
(WebCore::WebContentReader::readURL):

  • editing/markup.cpp:

(WebCore::createFragmentForMarkup):

  • history/CachedFrame.cpp:

(WebCore::CachedFrameBase::restore):

  • html/HTMLBodyElement.cpp:

(WebCore::HTMLBodyElement::didFinishInsertingNode):

  • html/HTMLElement.cpp:

(WebCore::HTMLElement::updateWithTextRecognitionResult):

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::forgetResourceSpecificTracks):

  • html/OffscreenCanvas.cpp:

(WebCore::OffscreenCanvas::create):
(WebCore::OffscreenCanvas::pushBufferToPlaceholder):

  • html/ValidationMessage.cpp:

(WebCore::ValidationMessage::buildBubbleTree):

  • html/canvas/WebGLRenderingContextBase.cpp:

(WebCore::WebGLRenderingContextBase::makeXRCompatible):

  • html/track/VTTCue.cpp:

(WebCore::VTTCueBox::applyCSSProperties):

  • inspector/InspectorFrontendAPIDispatcher.cpp:

(WebCore::InspectorFrontendAPIDispatcher::evaluateOrQueueExpression):

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::willSendRequest):
(WebCore::computeResponseOriginAndCOOP):

  • loader/DocumentWriter.cpp:

(WebCore::DocumentWriter::begin):

  • loader/FrameLoadRequest.cpp:

(WebCore::FrameLoadRequest::FrameLoadRequest):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::receivedFirstData):
(WebCore::FrameLoader::loadFrameRequest):
(WebCore::FrameLoader::loadURL):
(WebCore::FrameLoader::loadWithDocumentLoader):
(WebCore::FrameLoader::open):
(WebCore::FrameLoader::loadPostRequest):
(WebCore::FrameLoader::continueLoadAfterNavigationPolicy):

  • loader/NavigationScheduler.cpp:

(WebCore::ScheduledURLNavigation::ScheduledURLNavigation):

  • loader/PingLoader.cpp:

(WebCore::PingLoader::startPingLoad):

  • loader/PolicyChecker.cpp:

(WebCore::FrameLoader::PolicyChecker::checkNewWindowPolicy):

  • loader/SubframeLoader.cpp:

(WebCore::FrameLoader::SubframeLoader::requestFrame):
(WebCore::FrameLoader::SubframeLoader::loadSubframe):

  • loader/WorkerThreadableLoader.cpp:

(WebCore::WorkerThreadableLoader::MainThreadBridge::notifyIsDone):
(WebCore::WorkerThreadableLoader::MainThreadBridge::didSendData):
(WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveResponse):
(WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveData):
(WebCore::WorkerThreadableLoader::MainThreadBridge::didFinishLoading):
(WebCore::WorkerThreadableLoader::MainThreadBridge::didFail):
(WebCore::WorkerThreadableLoader::MainThreadBridge::didFinishTiming):

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::load):

  • loader/ios/LegacyPreviewLoader.mm:

(WebCore::LegacyPreviewLoader::previewConverterDidStartConverting):

  • page/DOMWindowExtension.cpp:

(WebCore::DOMWindowExtension::suspendForBackForwardCache):

  • page/EventHandler.cpp:

(WebCore::EventHandler::defaultWheelEventHandler):

  • page/Frame.cpp:

(WebCore::Frame::addUserScriptAwaitingNotification):

  • page/FrameView.cpp:

(WebCore::FrameView::didLayout):

  • page/Page.cpp:

(WebCore::Page::didFinishLoadingImageForElement):

  • page/PrintContext.cpp:

(WebCore::PrintContext::begin):

  • page/ios/EventHandlerIOS.mm:

(WebCore::EventHandler::mouseMoved):

  • page/mac/ImageOverlayControllerMac.mm:

(WebCore::ImageOverlayController::updateDataDetectorHighlights):
(WebCore::ImageOverlayController::elementUnderMouseDidChange):

  • page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm:

(WebCore::ScrollingTreeScrollingNodeDelegateMac::createTimer):

  • page/scrolling/nicosia/ScrollingCoordinatorNicosia.cpp:

(WebCore::ScrollingCoordinatorNicosia::handleWheelEventForScrolling):

  • platform/graphics/BitmapImage.cpp:

(WebCore::BitmapImage::framesNativeImages):

  • platform/graphics/FontCascadeFonts.cpp:

(WebCore::FontCascadeFonts::FontCascadeFonts):

  • platform/graphics/ImageSource.cpp:

(WebCore::ImageSource::startAsyncDecodingQueue):

  • platform/graphics/avfoundation/objc/LocalSampleBufferDisplayLayer.mm:

(WebCore::LocalSampleBufferDisplayLayer::enqueueSample):

  • platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:

(WebCore::SourceBufferPrivateAVFObjC::didParseInitializationData):

  • platform/graphics/cg/GraphicsContextGLCG.cpp:

(WebCore::GraphicsContextGLOpenGL::paintToCanvas):

  • platform/graphics/cg/ImageBufferCGBackend.cpp:

(WebCore::ImageBufferCGBackend::copyCGImageForEncoding const):

  • platform/graphics/displaylists/DisplayList.h:

(WebCore::DisplayList::DisplayList::cacheImageBuffer):
(WebCore::DisplayList::DisplayList::cacheNativeImage):
(WebCore::DisplayList::DisplayList::cacheFont):

  • platform/graphics/displaylists/DisplayListItems.cpp:

(WebCore::DisplayList::SetState::apply):

  • platform/graphics/gstreamer/mse/MediaSourceTrackGStreamer.cpp:

(WebCore::MediaSourceTrackGStreamer::create):

  • platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.cpp:

(webKitMediaSrcEmitStreams):

  • platform/graphics/mac/ImageMac.mm:

(WebCore::BitmapImage::snapshotNSImage):

  • platform/graphics/nicosia/NicosiaSceneIntegration.cpp:

(Nicosia::SceneIntegration::SceneIntegration):

  • platform/mac/DataDetectorHighlight.mm:

(WebCore::DataDetectorHighlight::fadeOut):

  • platform/mediastream/libwebrtc/gstreamer/RealtimeIncomingVideoSourceLibWebRTC.cpp:

(WebCore::RealtimeIncomingVideoSourceLibWebRTC::OnFrame):

  • platform/mediastream/libwebrtc/gstreamer/RealtimeOutgoingAudioSourceLibWebRTC.cpp:

(WebCore::RealtimeOutgoingAudioSourceLibWebRTC::audioSamplesAvailable):

  • platform/network/SocketStreamHandle.cpp:

(WebCore::SocketStreamHandle::disconnect):

  • platform/network/curl/CurlRequest.cpp:

(WebCore::CurlRequest::callClient):

  • platform/network/curl/CurlResourceHandleDelegate.cpp:

(WebCore::CurlResourceHandleDelegate::curlDidReceiveResponse):

  • style/StyleBuilder.cpp:

(WebCore::Style::Builder::applyCustomProperty):

  • style/StyleBuilderCustom.h:

(WebCore::Style::BuilderCustom::applyValueCustomProperty):

  • style/StyleBuilderState.cpp:

(WebCore::Style::BuilderState::resolveImageStyles):

  • style/StyleScope.cpp:

(WebCore::Style::Scope::createOrFindSharedShadowTreeResolver):
(WebCore::Style::Scope::collectResolverScopes):

  • svg/SVGElement.cpp:

(WebCore::SVGElement::removedFromAncestor):

  • testing/Internals.cpp:

(WebCore:: const):
(WebCore::Internals::queueMicroTask):
(WebCore::Internals::queueTaskToQueueMicrotask):

  • testing/ServiceWorkerInternals.cpp:

(WebCore::ServiceWorkerInternals::waitForFetchEventToFinish):

  • workers/Worker.cpp:

(WebCore::Worker::createRTCRtpScriptTransformer):

  • workers/WorkerGlobalScope.cpp:

(WebCore::WorkerGlobalScope::createRTCDataChannelRemoteHandlerConnection):

  • workers/WorkerOrWorkletScriptController.cpp:

(WebCore::WorkerOrWorkletScriptController::loadModuleSynchronously):
(WebCore::WorkerOrWorkletScriptController::loadAndEvaluateModule):

  • workers/service/FetchEvent.cpp:

(WebCore::FetchEvent::promiseIsSettled):

  • workers/service/ServiceWorkerGlobalScope.cpp:

(WebCore::ServiceWorkerGlobalScope::skipWaiting):

  • workers/service/context/SWContextManager.cpp:

(WebCore::SWContextManager::stopWorker):

  • workers/service/context/ServiceWorkerThread.cpp:

(WebCore::ServiceWorkerThread::queueTaskToFireFetchEvent):
(WebCore::ServiceWorkerThread::queueTaskToPostMessage):
(WebCore::ServiceWorkerThread::queueTaskToFireInstallEvent):
(WebCore::ServiceWorkerThread::queueTaskToFireActivateEvent):

  • workers/service/context/ServiceWorkerThreadProxy.cpp:

(WebCore::ServiceWorkerThreadProxy::notifyNetworkStateChange):
(WebCore::ServiceWorkerThreadProxy::continueDidReceiveFetchResponse):

  • xml/XMLHttpRequestProgressEventThrottle.cpp:

(WebCore::XMLHttpRequestProgressEventThrottle::dispatchEventWhenPossible):

Source/WTF:

  • wtf/WeakPtr.h:

(WTF::WeakPtrFactory::createWeakPtr const):

7:37 PM Changeset in webkit [282859] by Ross Kirsling
  • 2 edits in trunk/Source/WebKit

[PlayStation] Unreviewed build fix (second attempt).

  • UIProcess/API/C/playstation/WKPagePrivatePlayStation.cpp:
6:45 PM Changeset in webkit [282858] by Ross Kirsling
  • 2 edits in trunk/Source/WebKit

[PlayStation] Unreviewed build fix.

  • UIProcess/API/C/playstation/WKPagePrivatePlayStation.cpp:
6:14 PM Changeset in webkit [282857] by ysuzuki@apple.com
  • 4 edits
    1 add in trunk

[JSC] CompareStrictEq is omitting String check incorrectly
https://bugs.webkit.org/show_bug.cgi?id=230582
rdar://83237121

Reviewed by Mark Lam.

JSTests:

  • stress/compare-strict-eq-string-check.js: Added.

(foo):
(bar):

Source/JavaScriptCore:

  1. Add left and right prefixes to neitherDoubleNorHeapBigIntChild and notDoubleChild edges since registers are named with left and right. Without this prefix, it is hard to follow in the code.
  2. Remove leftGPR and rightGPR and use leftRegs.payloadGPR() and rightRegs.payloadGPR() to avoid having different variables pointing to the same registers.
  3. DFG needsTypeCheck is done with wrong type filters. As a result, necessary checks are omitted. This patch fixes that. FTL does not have the same problem.
  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compileNeitherDoubleNorHeapBigIntToNotDoubleStrictEquality):

  • ftl/FTLLowerDFGToB3.cpp:

(JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq):

5:34 PM Changeset in webkit [282856] by commit-queue@webkit.org
  • 50 edits
    1 delete in trunk/Source/WebKit

Remove GenericCallback
https://bugs.webkit.org/show_bug.cgi?id=229366

Patch by Alex Christensen <achristensen@webkit.org> on 2021-09-21
Reviewed by Chris Dumez.

It has been replaced by sendWithAsyncReply.

This last use can't really be replaced by sendWithAsyncReply because the CallbackIDs are sent, then further encoded
in RemoteLayerTreeTransaction::encode/decode which you can't really do with a CompletionHandler. But we can replace
GenericCallback with WTF::Function.

  • Shared/CallbackID.h:
  • Shared/RemoteLayerTree/RemoteLayerTreeTransaction.h:
  • UIProcess/API/APIAttachment.h:
  • UIProcess/API/APIIconLoadingClient.h:
  • UIProcess/API/APIInspectorExtension.cpp:
  • UIProcess/API/APIUIClient.h:
  • UIProcess/API/C/WKPage.cpp:

(WKPageCallAfterNextPresentationUpdate):

  • UIProcess/API/Cocoa/WKBrowsingContextController.mm:
  • UIProcess/API/Cocoa/WKErrorInternal.h:
  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView takeSnapshotWithConfiguration:completionHandler:]):
(-[WKWebView _internalDoAfterNextPresentationUpdate:withoutWaitingForPainting:withoutWaitingForAnimatedResize:]):

  • UIProcess/API/Cocoa/_WKInspectorExtension.mm:
  • UIProcess/API/mac/WKView.mm:

(-[WKView _doAfterNextPresentationUpdate:]):

  • UIProcess/Automation/WebAutomationSession.cpp:

(WebKit::WebAutomationSession::takeScreenshot):

  • UIProcess/Automation/mac/WebAutomationSessionMac.mm:
  • UIProcess/Cocoa/WebProcessProxyCocoa.mm:
  • UIProcess/Cocoa/WebViewImpl.mm:
  • UIProcess/DrawingAreaProxy.h:

(WebKit::DrawingAreaProxy::dispatchAfterEnsuringDrawing):

  • UIProcess/GenericCallback.h: Removed.
  • UIProcess/Inspector/WebInspectorUIExtensionControllerProxy.cpp:
  • UIProcess/Inspector/mac/WKInspectorViewController.mm:
  • UIProcess/Notifications/WebNotificationManagerProxy.cpp:
  • UIProcess/RemoteLayerTree/RemoteLayerTreeDrawingAreaProxy.h:
  • UIProcess/RemoteLayerTree/RemoteLayerTreeDrawingAreaProxy.mm:

(WebKit::RemoteLayerTreeDrawingAreaProxy::~RemoteLayerTreeDrawingAreaProxy):
(WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree):
(WebKit::RemoteLayerTreeDrawingAreaProxy::dispatchAfterEnsuringDrawing):

  • UIProcess/WebContextClient.cpp:
  • UIProcess/WebCookieManagerProxy.h:
  • UIProcess/WebFrameProxy.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::forceRepaint):
(WebKit::WebPageProxy::callAfterNextPresentationUpdate):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebProcessPool.cpp:
  • UIProcess/WebProcessPool.h:
  • UIProcess/ios/ViewGestureControllerIOS.mm:

(WebKit::ViewGestureController::endSwipeGesture):

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView willFinishIgnoringCalloutBarFadeAfterPerformingAction]):
(-[WKContentView dragInteraction:item:willAnimateCancelWithAnimator:]):

  • UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
  • UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:

(WebKit::TiledCoreAnimationDrawingAreaProxy::~TiledCoreAnimationDrawingAreaProxy):
(WebKit::TiledCoreAnimationDrawingAreaProxy::dispatchAfterEnsuringDrawing):
(WebKit::TiledCoreAnimationDrawingAreaProxy::dispatchPresentationCallbacksAfterFlushingLayers):

  • UIProcess/mac/WKFullScreenWindowController.h:
  • UIProcess/mac/WKTextFinderClient.mm:
  • WebKit.xcodeproj/project.pbxproj:
  • WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeContext.mm:
5:32 PM Changeset in webkit [282855] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[ BigSur wk2 Debug] imported/w3c/web-platform-tests/html/rendering/replaced-elements/svg-embedded-sizing/svg-in-iframe-fixed.html.
https://bugs.webkit.org/show_bug.cgi?id=230588.

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
5:32 PM Changeset in webkit [282854] by Chris Dumez
  • 2 edits in trunk/Source/WebKit

Launch the new process a bit earlier when doing a COOP process-swap
https://bugs.webkit.org/show_bug.cgi?id=230555

Reviewed by Alex Christensen.

Launch the new process a bit earlier when doing a COOP process-swap for better performance.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::decidePolicyForResponseShared):

5:27 PM Changeset in webkit [282853] by commit-queue@webkit.org
  • 24 edits
    1 add in trunk/Source

Reduce sizeof(NetworkLoadMetrics)
https://bugs.webkit.org/show_bug.cgi?id=226982

Patch by Alex Christensen <achristensen@webkit.org> on 2021-09-21
Reviewed by Chris Dumez.

Source/WebCore:

No change in behavior. Just greatly reducing the size of a common structure.

We take all the members that aren't used without the inspector and move them to a new struct,
AdditionalNetworkLoadMetricsForWebInspector. We also remove some equality comparison that
was unnecessary because it was only used for AuthenticationChallenge equality comparisons in
ResourceHandleMac. We also use emptyMetrics() to remove a few unnecessary and hard to see
copy constructor calls.

  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • inspector/agents/InspectorNetworkAgent.cpp:

(WebCore::InspectorNetworkAgent::buildObjectForMetrics):
(WebCore::InspectorNetworkAgent::buildObjectForResourceResponse):

  • loader/DocumentThreadableLoader.cpp:

(WebCore::DocumentThreadableLoader::loadRequest):

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::didReceiveResponse):
(WebCore::SubresourceLoader::didFinishLoading):

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::requestResource):

  • platform/network/AuthenticationChallengeBase.cpp:

(WebCore::AuthenticationChallengeBase::equalForWebKitLegacyChallengeComparison):
(WebCore::AuthenticationChallengeBase::compare): Deleted.

  • platform/network/AuthenticationChallengeBase.h:

(WebCore::operator==): Deleted.
(WebCore::operator!=): Deleted.

  • platform/network/NetworkLoadMetrics.cpp: Added.

(WebCore::NetworkLoadMetrics::NetworkLoadMetrics):
(WebCore::NetworkLoadMetrics::emptyMetrics):
(WebCore::AdditionalNetworkLoadMetricsForWebInspector::isolatedCopy):
(WebCore::NetworkLoadMetrics::isolatedCopy const):

  • platform/network/NetworkLoadMetrics.h:

(WebCore::NetworkLoadMetrics::encode const):
(WebCore::NetworkLoadMetrics::decode):
(WebCore::AdditionalNetworkLoadMetricsForWebInspector::encode const):
(WebCore::AdditionalNetworkLoadMetricsForWebInspector::decode):
(WebCore::NetworkLoadMetricsWithoutNonTimingData::isComplete const): Deleted.
(WebCore::NetworkLoadMetricsWithoutNonTimingData::markComplete): Deleted.
(WebCore::NetworkLoadMetrics::NetworkLoadMetrics): Deleted.
(WebCore::NetworkLoadMetrics::isolatedCopy const): Deleted.
(WebCore::NetworkLoadMetrics::operator== const): Deleted.
(WebCore::NetworkLoadMetrics::operator!= const): Deleted.

  • platform/network/ResourceResponseBase.cpp:

(WebCore::ResourceResponseBase::equalForWebKitLegacyChallengeComparison):
(WebCore::ResourceResponseBase::compare): Deleted.

  • platform/network/ResourceResponseBase.h:

(WebCore::operator==): Deleted.
(WebCore::operator!=): Deleted.

  • platform/network/curl/CurlContext.cpp:

(WebCore::CurlHandle::addExtraNetworkLoadMetrics):

  • platform/network/curl/CurlRequest.cpp:

(WebCore::CurlRequest::networkLoadMetrics):

  • platform/network/curl/ResourceHandleCurl.cpp:

(WebCore::ResourceHandle::receivedCredential):
(WebCore::ResourceHandle::receivedRequestToContinueWithoutCredential):
(WebCore::ResourceHandle::receivedCancellation):

  • platform/network/mac/ResourceHandleMac.mm:

(WebCore::ResourceHandle::receivedCredential):
(WebCore::ResourceHandle::receivedRequestToContinueWithoutCredential):
(WebCore::ResourceHandle::receivedCancellation):
(WebCore::ResourceHandle::receivedRequestToPerformDefaultHandling):
(WebCore::ResourceHandle::receivedChallengeRejection):

Source/WebKit:

  • NetworkProcess/NetworkResourceLoader.cpp:

(WebKit::NetworkResourceLoader::sendResultForCacheEntry):

  • NetworkProcess/cocoa/NetworkSessionCocoa.mm:

(-[WKNetworkSessionDelegate URLSession:task:didFinishCollectingMetrics:]):

  • NetworkProcess/soup/NetworkDataTaskSoup.cpp:

(WebKit::NetworkDataTaskSoup::additionalNetworkLoadMetricsForWebInspector):
(WebKit::NetworkDataTaskSoup::didGetHeaders):
(WebKit::NetworkDataTaskSoup::wroteHeadersCallback):
(WebKit::NetworkDataTaskSoup::wroteBodyCallback):
(WebKit::NetworkDataTaskSoup::networkEvent):
(WebKit::NetworkDataTaskSoup::didRestart):

  • Shared/WebCoreArgumentCoders.h:
5:11 PM Changeset in webkit [282852] by ysuzuki@apple.com
  • 2 edits in trunk/Source/WTF

[WTF] Use Int128 in MediaTime
https://bugs.webkit.org/show_bug.cgi?id=230575

Reviewed by Eric Carlson.

Previously, int128_t exists only in 64bit clang and GCC environments. But now
we always have Int128. Int128 is
int128_t in 64bit clang and GCC, and Int128 library
implementation in the other environments. So we always use Int128 code in MediaTime.

  • wtf/MediaTime.cpp:

(WTF::MediaTime::setTimeScale):

5:04 PM Changeset in webkit [282851] by mmaxfield@apple.com
  • 22 edits
    7 adds in trunk

Parsing support for font-palette
https://bugs.webkit.org/show_bug.cgi?id=230394

Reviewed by Simon Fraser.

LayoutTests/imported/w3c:

This is being upstreamed at https://github.com/web-platform-tests/wpt/pull/30845.

  • web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt:
  • web-platform-tests/css/css-fonts/parsing/font-palette-computed-expected.txt: Added.
  • web-platform-tests/css/css-fonts/parsing/font-palette-computed.html: Added.
  • web-platform-tests/css/css-fonts/parsing/font-palette-invalid-expected.txt: Added.
  • web-platform-tests/css/css-fonts/parsing/font-palette-invalid.html: Added.
  • web-platform-tests/css/css-fonts/parsing/font-palette-valid-expected.txt: Added.
  • web-platform-tests/css/css-fonts/parsing/font-palette-valid.html: Added.
  • web-platform-tests/css/cssom/cssstyledeclaration-csstext-expected.txt:
  • web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt:

Source/WebCore:

This is a pretty straightforward parsing patch. The grammar is just
font-palette: none | normal | light | dark | <palette-identifier>.
A <palette-identifier> is a <custom-ident>.

There is a choice to make about how to represent the parsed data:
Option 1:
class None {}; class Normal {}; class Light {}; class Dark {};
class Custom { String value; };
using FontPalette = Variant<None, Normal, Light, Dark, Custom>;

or,
Option 2:
struct FontPalette {

enum class Type { None, Normal, Light, Dark, Custom } type;
String value;

};

Upon advice from a trusted colleague, I chose option 2.

I'm implementing parsing support for @font-palette-values in
https://bugs.webkit.org/show_bug.cgi?id=230337.

Tests: imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-computed.html

imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-invalid.html
imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-valid.html

  • Headers.cmake:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::fontPaletteFromStyle):
(WebCore::ComputedStyleExtractor::valueForPropertyInStyle):

  • css/CSSProperties.json:
  • css/CSSValueKeywords.in:
  • css/parser/CSSPropertyParser.cpp:

(WebCore::consumeFontPalette):
(WebCore::CSSPropertyParser::parseSingleValue):

  • platform/graphics/FontCache.h:

(WebCore::FontDescriptionKeyRareData::create):
(WebCore::FontDescriptionKeyRareData::featureSettings const):
(WebCore::FontDescriptionKeyRareData::variationSettings const):
(WebCore::FontDescriptionKeyRareData::fontPalette const):
(WebCore::FontDescriptionKeyRareData::operator== const):
(WebCore::FontDescriptionKeyRareData::FontDescriptionKeyRareData):
(WebCore::add):
(WebCore::FontDescriptionKey::FontDescriptionKey):
(WebCore::FontDescriptionKey::operator== const):

  • platform/graphics/FontCascadeDescription.cpp:
  • platform/graphics/FontCascadeDescription.h:

(WebCore::FontCascadeDescription::initialFontPalette):

  • platform/graphics/FontDescription.cpp:

(WebCore::FontDescription::FontDescription):

  • platform/graphics/FontDescription.h:

(WebCore::FontDescription::fontPalette const):
(WebCore::FontDescription::setFontPalette):
(WebCore::FontDescription::operator== const):
(WebCore::FontDescription::encode const):
(WebCore::FontDescription::decode):

  • platform/graphics/FontPalette.h: Added.

(WebCore::FontPaletteNone::operator== const):
(WebCore::FontPaletteNone::operator!= const):
(WebCore::add):
(WebCore::FontPaletteNormal::operator== const):
(WebCore::FontPaletteNormal::operator!= const):
(WebCore::FontPaletteLight::operator== const):
(WebCore::FontPaletteLight::operator!= const):
(WebCore::FontPaletteDark::operator== const):
(WebCore::FontPaletteDark::operator!= const):
(WebCore::FontPaletteCustom::operator== const):
(WebCore::FontPaletteCustom::operator!= const):

  • style/StyleBuilderConverter.h:

(WebCore::Style::BuilderConverter::convertFontPalette):

LayoutTests:

  • platform/ios-wk2/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-csstext-expected.txt:
  • platform/ios-wk2/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt:
  • platform/ios/fast/css/getComputedStyle/computed-style-font-family-expected.txt:
  • platform/mac/fast/css/getComputedStyle/computed-style-font-family-expected.txt:
5:00 PM Changeset in webkit [282850] by basuke.suzuki@sony.com
  • 3 edits in trunk/Source/bmalloc

[bmalloc] freeableMemory and footprint of Heap are completely broken
https://bugs.webkit.org/show_bug.cgi?id=230245

Reviewed by Geoffrey Garen.

This introduced in r279922. The physical size of the newly allocated range was changed from zero
to the size of the range on that commit and that causes the numbers wrong. That change itself is
correct fix because the range has physical pages attached. That simply activated the bug which was
there for a long time.

I've added the correction to adjust both numbers with newly allocated region. Also added assertion
to check the overflow of those values and the option to log those value change to the console.

Fortunately those numbers are used for debugging purpose. Scavenger will dump out those to stderr
with its verbose mode. There's no practical cases affected by this bug.

Here is the example of footprint logging before fixing the bug:

footprint: 18446744073709535232 (-16384) scavenge

footprint: 18446744073709518848 (-16384) scavenge
footprint: 18446744073709502464 (-16384) scavenge
footprint: 18446744073709486080 (-16384) scavenge
footprint: 18446744073709469696 (-16384) scavenge
footprint: 18446744073709453312 (-16384) scavenge
...

It just began with negative number which overflows on unsigned. And following is the one with fix:

footprint: 1048576 (1048576) allocateLarge
footprint: 2097152 (1048576) allocateLarge
footprint: 3145728 (1048576) allocateLarge
footprint: 4194304 (1048576) allocateLarge
footprint: 5242880 (1048576) allocateLarge
footprint: 6291456 (1048576) allocateLarge

footprint: 6275072 (-16384) scavenge

footprint: 6258688 (-16384) scavenge
footprint: 6242304 (-16384) scavenge
footprint: 6225920 (-16384) scavenge
footprint: 6209536 (-16384) scavenge
footprint: 6193152 (-16384) scavenge
...

  • bmalloc/Heap.cpp:

(bmalloc::Heap::adjustStat):
(bmalloc::Heap::logStat):
(bmalloc::Heap::adjustFreeableMemory):
(bmalloc::Heap::adjustFootprint):
(bmalloc::Heap::decommitLargeRange):
(bmalloc::Heap::scavenge):
(bmalloc::Heap::allocateSmallChunk):
(bmalloc::Heap::allocateSmallPage):
(bmalloc::Heap::deallocateSmallLine):
(bmalloc::Heap::splitAndAllocate):
(bmalloc::Heap::allocateLarge):
(bmalloc::Heap::deallocateLarge):
(bmalloc::Heap::externalCommit):
(bmalloc::Heap::externalDecommit):

  • bmalloc/Heap.h:
4:35 PM Changeset in webkit [282849] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebKit

Follow-up: WebKit::WebProcessPool should use a weak observer with CFNotificationCenter
<https://webkit.org/b/230227>
<rdar://problem/83067708>

Reviewed by Tim Horton.

  • UIProcess/Cocoa/WebProcessPoolCocoa.mm:

(WebKit::WebProcessPool::registerNotificationObservers):

  • Set m_weakObserver for all platforms at the beginning of the method. Previously it was only set for macOS.
4:03 PM Changeset in webkit [282848] by Chris Dumez
  • 43 edits in trunk

Drop makeRefPtr() and use RefPtr { } directly instead
https://bugs.webkit.org/show_bug.cgi?id=230564

Reviewed by Alex Christensen.

Source/WebKit:

  • GPUProcess/graphics/RemoteRenderingBackend.cpp:

(WebKit::RemoteRenderingBackend::nextDestinationImageBufferAfterApplyingDisplayLists):
(WebKit::RemoteRenderingBackend::wakeUpAndApplyDisplayList):

  • NetworkProcess/IndexedDB/WebIDBServer.cpp:

(WebKit::WebIDBServer::addConnection):

  • NetworkProcess/cocoa/NetworkSessionCocoa.mm:

(-[WKNetworkSessionDelegate URLSession:task:didReceiveChallenge:completionHandler:]):

  • Platform/IPC/Connection.cpp:

(IPC::Connection::MessagesThrottler::scheduleMessagesDispatch):

  • Shared/WebHitTestResultData.cpp:

(WebKit::WebHitTestResultData::WebHitTestResultData):

  • Shared/mac/MediaFormatReader/MediaFormatReader.cpp:

(WebKit::MediaFormatReader::parseByteSource):

  • UIProcess/API/glib/WebKitWebView.cpp:

(webkitWebViewCreateNewPage):

  • UIProcess/Automation/WebAutomationSession.cpp:

(WebKit::WebAutomationSession::setWindowFrameOfBrowsingContext):
(WebKit::WebAutomationSession::maximizeWindowOfBrowsingContext):
(WebKit::WebAutomationSession::hideWindowOfBrowsingContext):

  • UIProcess/Cocoa/UIDelegate.mm:

(WebKit::UIDelegate::UIClient::runOpenPanel):
(WebKit::UIDelegate::UIClient::requestPointerLock):

  • UIProcess/Cocoa/WebPageProxyCocoa.mm:

(WebKit::WebPageProxy::scheduleActivityStateUpdate):

  • UIProcess/Cocoa/WebProcessPoolCocoa.mm:

(-[WKProcessPoolWeakObserver pool]):

  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::terminateUnresponsiveServiceWorkerProcesses):

  • UIProcess/WebContextMenuProxy.cpp:

(WebKit::WebContextMenuProxy::useContextMenuItems):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::handlePreventableTouchEvent):
(WebKit::WebPageProxy::didStartProvisionalLoadForFrameShared):
(WebKit::WebPageProxy::decidePolicyForNavigationAction):
(WebKit::WebPageProxy::runModalJavaScriptDialog):
(WebKit::WebPageProxy::runJavaScriptAlert):
(WebKit::WebPageProxy::runJavaScriptConfirm):
(WebKit::WebPageProxy::runJavaScriptPrompt):

  • UIProcess/WebProcessPool.cpp:

(WebKit::WebProcessPool::processForNavigation):

  • UIProcess/ios/ViewGestureControllerIOS.mm:

(WebKit::ViewGestureController::beginSwipeGesture):

  • UIProcess/mac/WebContextMenuProxyMac.mm:

(WebKit::WebContextMenuProxyMac::getContextMenuFromItems):
(WebKit::WebContextMenuProxyMac::insertOrUpdateQuickLookImageItem):

  • WebProcess/GPU/graphics/RemoteRenderingBackendProxy.cpp:

(WebKit::RemoteRenderingBackendProxy::waitForDidCreateImageBufferBackend):
(WebKit::RemoteRenderingBackendProxy::waitForDidFlush):
(WebKit::RemoteRenderingBackendProxy::findReusableDisplayListHandle):

  • WebProcess/GPU/media/MediaPlayerPrivateRemote.cpp:

(WebKit::MediaPlayerPrivateRemote::prepareForPlayback):
(WebKit::MediaPlayerPrivateRemote::load):
(WebKit::MediaPlayerPrivateRemote::networkStateChanged):
(WebKit::MediaPlayerPrivateRemote::setReadyState):
(WebKit::MediaPlayerPrivateRemote::readyStateChanged):
(WebKit::MediaPlayerPrivateRemote::volumeChanged):
(WebKit::MediaPlayerPrivateRemote::muteChanged):
(WebKit::MediaPlayerPrivateRemote::timeChanged):
(WebKit::MediaPlayerPrivateRemote::durationChanged):
(WebKit::MediaPlayerPrivateRemote::rateChanged):
(WebKit::MediaPlayerPrivateRemote::playbackStateChanged):
(WebKit::MediaPlayerPrivateRemote::engineFailedToLoad):
(WebKit::MediaPlayerPrivateRemote::characteristicChanged):
(WebKit::MediaPlayerPrivateRemote::sizeChanged):
(WebKit::MediaPlayerPrivateRemote::firstVideoFrameAvailable):
(WebKit::MediaPlayerPrivateRemote::renderingModeChanged):
(WebKit::MediaPlayerPrivateRemote::acceleratedRenderingStateChanged):
(WebKit::MediaPlayerPrivateRemote::addRemoteAudioTrack):
(WebKit::MediaPlayerPrivateRemote::removeRemoteAudioTrack):
(WebKit::MediaPlayerPrivateRemote::addRemoteTextTrack):
(WebKit::MediaPlayerPrivateRemote::removeRemoteTextTrack):
(WebKit::MediaPlayerPrivateRemote::addRemoteVideoTrack):
(WebKit::MediaPlayerPrivateRemote::removeRemoteVideoTrack):
(WebKit::MediaPlayerPrivateRemote::currentPlaybackTargetIsWirelessChanged):
(WebKit::MediaPlayerPrivateRemote::mediaPlayerKeyNeeded):
(WebKit::MediaPlayerPrivateRemote::waitingForKeyChanged):
(WebKit::MediaPlayerPrivateRemote::initializationDataEncountered):
(WebKit::MediaPlayerPrivateRemote::resourceNotSupported):
(WebKit::MediaPlayerPrivateRemote::activeSourceBuffersChanged):
(WebKit::MediaPlayerPrivateRemote::getRawCookies const):

  • WebProcess/GPU/webrtc/MediaRecorderPrivate.cpp:

(WebKit::MediaRecorderPrivate::startRecording):

  • WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp:

(WebKit::InjectedBundleRangeHandle::renderedImage):

  • WebProcess/Network/WebLoaderStrategy.cpp:

(WebKit::WebLoaderStrategy::scheduleLoad):
(WebKit::WebLoaderStrategy::scheduleLoadFromNetworkProcess):

  • WebProcess/Notifications/WebNotificationManager.cpp:

(WebKit::WebNotificationManager::didDestroyNotification):

  • WebProcess/WebCoreSupport/mac/WebDragClientMac.mm:

(WebKit::WebDragClient::declareAndWriteDragImage):

  • WebProcess/WebPage/FindController.cpp:

(WebKit::FindController::findStringMatches):

  • WebProcess/WebPage/IPCTestingAPI.cpp:

(WebKit::IPCTestingAPI::JSIPCSemaphore::signal):
(WebKit::IPCTestingAPI::JSIPCSemaphore::waitFor):
(WebKit::IPCTestingAPI::JSSharedMemory::readBytes):
(WebKit::IPCTestingAPI::JSSharedMemory::writeBytes):
(WebKit::IPCTestingAPI::JSIPC::addMessageListener):
(WebKit::IPCTestingAPI::encodeRemoteRenderingBackendCreationParameters):
(WebKit::IPCTestingAPI::encodeSharedMemory):
(WebKit::IPCTestingAPI::encodeSemaphore):
(WebKit::IPCTestingAPI::encodeArgument):
(WebKit::IPCTestingAPI::JSIPC::sendMessage):
(WebKit::IPCTestingAPI::JSIPC::sendSyncMessage):
(WebKit::IPCTestingAPI::JSIPC::vmPageSize):

  • WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm:

(WebKit::RemoteLayerTreeDrawingArea::addCommitHandlers):

  • WebProcess/WebPage/ViewGestureGeometryCollector.cpp:

(WebKit::ViewGestureGeometryCollector::computeTextLegibilityScales):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::runJavaScriptInFrameInScriptWorld):
(WebKit::WebPage::getContentsAsString):
(WebKit::WebPage::removeDataDetectedLinks):
(WebKit::WebPage::detectDataInAllFrames):
(WebKit::WebPage::startTextManipulations):
(WebKit::WebPage::completeTextManipulation):
(WebKit::WebPage::requestTextRecognition):
(WebKit::WebPage::updateWithTextRecognitionResult):
(WebKit::WebPage::createAppHighlightInSelectedRange):
(WebKit::WebPage::setAppHighlightsVisibility):

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::getPlatformEditorState const):
(WebKit::insideImageOverlay):
(WebKit::expandForImageOverlay):
(WebKit::rangeForPointInRootViewCoordinates):
(WebKit::WebPage::rootViewBounds):
(WebKit::WebPage::absoluteInteractionBounds):
(WebKit::WebPage::rootViewInteractionBounds):
(WebKit::WebPage::requestEvasionRectsAboveSelection):
(WebKit::dataDetectorImageOverlayPositionInformation):
(WebKit::selectionPositionInformation):
(WebKit::populateCaretContext):
(WebKit::WebPage::positionInformation):
(WebKit::WebPage::performActionOnElement):
(WebKit::WebPage::shrinkToFitContent):
(WebKit::WebPage::updateVisibleContentRects):
(WebKit::WebPage::updateSelectionWithDelta):
(WebKit::WebPage::requestDocumentEditingContext):
(WebKit::WebPage::animationDidFinishForElement):

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::addCommitHandlers):

  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::WebPage::performImmediateActionHitTestAtLocation):

Source/WebKitLegacy/mac:

  • DOM/DOM.mm:

(-[DOMRange renderedImageForcingBlackText:renderedImageForcingBlackText:]):

  • WebCoreSupport/WebContextMenuClient.mm:

(WebContextMenuClient::imageForCurrentSharingServicePickerItem):

  • WebCoreSupport/WebDragClient.mm:

(WebDragClient::declareAndWriteDragImage):

  • WebView/WebHTMLRepresentation.mm:

(-[WebHTMLRepresentation elementWithName:inForm:]):
(-[WebHTMLRepresentation controlsInForm:]):

  • WebView/WebView.mm:

(-[WebView updateTextTouchBar]):

Source/WTF:

  • wtf/RefPtr.h:

Tools:

  • TestWebKitAPI/Tests/WTF/RunLoop.cpp:

(TestWebKitAPI::TEST):

4:02 PM Changeset in webkit [282847] by Brent Fulgham
  • 13 edits
    7 deletes in trunk

Remove XSS Auditor: Part 2 (Remove engine support)
https://bugs.webkit.org/show_bug.cgi?id=230499
<rdar://problem/83318883>

Reviewed by Yusuke Suzuki.

This patch removes the implementation of the XSS Auditor from the engine, but leave the API in place so that
client software doesn't see any change in interface.

Source/WebCore:

  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::HTMLDocumentParser):
(WebCore::HTMLDocumentParser::pumpTokenizerLoop):
(WebCore::HTMLDocumentParser::pumpTokenizer):

  • html/parser/HTMLDocumentParser.h:
  • html/parser/HTMLToken.h:

(WebCore::HTMLToken::attributes const):
(WebCore::HTMLToken::eraseValueOfAttribute): Deleted.

  • html/parser/XSSAuditor.cpp: Removed.
  • html/parser/XSSAuditor.h: Removed.
  • html/parser/XSSAuditorDelegate.cpp: Removed.
  • html/parser/XSSAuditorDelegate.h: Removed.
  • loader/PingLoader.cpp:

(WebCore::PingLoader::sendViolationReport):

  • loader/PingLoader.h:

LayoutTests:

  • fast/frames/xss-auditor-handles-file-urls-expected.txt: Removed.
  • fast/frames/xss-auditor-handles-file-urls.html: Removed.
  • http/tests/security/xssAuditor/anchor-url-dom-write-location-expected.txt: Removed.
  • http/tests/security/xssAuditor/anchor-url-dom-write-location-inline-event-expected.txt: Removed.
  • http/tests/security/xssAuditor/anchor-url-dom-write-location-inline-event-null-char-expected.txt: Removed.
  • http/tests/security/xssAuditor/anchor-url-dom-write-location-inline-event-null-char.html: Removed.
  • http/tests/security/xssAuditor/anchor-url-dom-write-location-inline-event.html: Removed.
  • http/tests/security/xssAuditor/anchor-url-dom-write-location-javascript-URL-expected.txt: Removed.
  • http/tests/security/xssAuditor/anchor-url-dom-write-location-javascript-URL.html: Removed.
  • http/tests/security/xssAuditor/anchor-url-dom-write-location.html: Removed.
  • http/tests/security/xssAuditor/anchor-url-dom-write-location2-expected.txt: Removed.
  • http/tests/security/xssAuditor/anchor-url-dom-write-location2.html: Removed.
  • http/tests/security/xssAuditor/base-href-control-char-expected.txt: Removed.
  • http/tests/security/xssAuditor/base-href-control-char.html: Removed.
  • http/tests/security/xssAuditor/base-href-direct-expected.txt: Removed.
  • http/tests/security/xssAuditor/base-href-direct.html: Removed.
  • http/tests/security/xssAuditor/base-href-expected.txt: Removed.
  • http/tests/security/xssAuditor/base-href-null-char-expected.txt: Removed.
  • http/tests/security/xssAuditor/base-href-null-char.html: Removed.
  • http/tests/security/xssAuditor/base-href-safe-expected.txt: Removed.
  • http/tests/security/xssAuditor/base-href-safe.html: Removed.
  • http/tests/security/xssAuditor/base-href-safe2-expected.txt: Removed.
  • http/tests/security/xssAuditor/base-href-safe2.html: Removed.
  • http/tests/security/xssAuditor/base-href-safe3-expected.txt: Removed.
  • http/tests/security/xssAuditor/base-href-safe3.html: Removed.
  • http/tests/security/xssAuditor/base-href-scheme-relative-expected.txt: Removed.
  • http/tests/security/xssAuditor/base-href-scheme-relative.html: Removed.
  • http/tests/security/xssAuditor/base-href.html: Removed.
  • http/tests/security/xssAuditor/block-does-not-leak-location-expected.txt: Removed.
  • http/tests/security/xssAuditor/block-does-not-leak-location.html: Removed.
  • http/tests/security/xssAuditor/block-does-not-leak-referrer-expected.txt: Removed.
  • http/tests/security/xssAuditor/block-does-not-leak-referrer.html: Removed.
  • http/tests/security/xssAuditor/block-does-not-leak-that-page-was-blocked-using-empty-data-url-expected.txt: Removed.
  • http/tests/security/xssAuditor/block-does-not-leak-that-page-was-blocked-using-empty-data-url.html: Removed.
  • http/tests/security/xssAuditor/cached-frame-expected.txt: Removed.
  • http/tests/security/xssAuditor/cached-frame.html: Removed.
  • http/tests/security/xssAuditor/cookie-injection-expected.txt: Removed.
  • http/tests/security/xssAuditor/cookie-injection.html: Removed.
  • http/tests/security/xssAuditor/crash-while-loading-tag-with-pause-expected.txt: Removed.
  • http/tests/security/xssAuditor/crash-while-loading-tag-with-pause.html: Removed.
  • http/tests/security/xssAuditor/data-urls-work-expected.txt: Removed.
  • http/tests/security/xssAuditor/data-urls-work.html: Removed.
  • http/tests/security/xssAuditor/dom-write-URL-expected.txt: Removed.
  • http/tests/security/xssAuditor/dom-write-URL.html: Removed.
  • http/tests/security/xssAuditor/dom-write-innerHTML-expected.txt: Removed.
  • http/tests/security/xssAuditor/dom-write-innerHTML.html: Removed.
  • http/tests/security/xssAuditor/dom-write-location-dom-write-open-img-onerror-expected.txt: Removed.
  • http/tests/security/xssAuditor/dom-write-location-dom-write-open-img-onerror.html: Removed.
  • http/tests/security/xssAuditor/dom-write-location-expected.txt: Removed.
  • http/tests/security/xssAuditor/dom-write-location-inline-event-expected.txt: Removed.
  • http/tests/security/xssAuditor/dom-write-location-inline-event.html: Removed.
  • http/tests/security/xssAuditor/dom-write-location-javascript-URL-expected.txt: Removed.
  • http/tests/security/xssAuditor/dom-write-location-javascript-URL.html: Removed.
  • http/tests/security/xssAuditor/dom-write-location-open-img-onerror-expected.txt: Removed.
  • http/tests/security/xssAuditor/dom-write-location-open-img-onerror.html: Removed.
  • http/tests/security/xssAuditor/dom-write-location.html: Removed.
  • http/tests/security/xssAuditor/embed-tag-code-attribute-2-expected.txt: Removed.
  • http/tests/security/xssAuditor/embed-tag-code-attribute-2.html: Removed.
  • http/tests/security/xssAuditor/embed-tag-code-attribute-expected.txt: Removed.
  • http/tests/security/xssAuditor/embed-tag-code-attribute.html: Removed.
  • http/tests/security/xssAuditor/embed-tag-control-char-expected.txt: Removed.
  • http/tests/security/xssAuditor/embed-tag-control-char.html: Removed.
  • http/tests/security/xssAuditor/embed-tag-expected.txt: Removed.
  • http/tests/security/xssAuditor/embed-tag-in-path-unterminated-expected.txt: Removed.
  • http/tests/security/xssAuditor/embed-tag-in-path-unterminated.html: Removed.
  • http/tests/security/xssAuditor/embed-tag-javascript-url-expected.txt: Removed.
  • http/tests/security/xssAuditor/embed-tag-javascript-url.html: Removed.
  • http/tests/security/xssAuditor/embed-tag-null-char-expected.txt: Removed.
  • http/tests/security/xssAuditor/embed-tag-null-char.html: Removed.
  • http/tests/security/xssAuditor/embed-tag.html: Removed.
  • http/tests/security/xssAuditor/faux-script1-expected.txt: Removed.
  • http/tests/security/xssAuditor/faux-script1.html: Removed.
  • http/tests/security/xssAuditor/faux-script2-expected.txt: Removed.
  • http/tests/security/xssAuditor/faux-script2.html: Removed.
  • http/tests/security/xssAuditor/faux-script3-expected.txt: Removed.
  • http/tests/security/xssAuditor/faux-script3.html: Removed.
  • http/tests/security/xssAuditor/form-action-expected.txt: Removed.
  • http/tests/security/xssAuditor/form-action.html: Removed.
  • http/tests/security/xssAuditor/formaction-on-button-expected.txt: Removed.
  • http/tests/security/xssAuditor/formaction-on-button.html: Removed.
  • http/tests/security/xssAuditor/formaction-on-input-expected.txt: Removed.
  • http/tests/security/xssAuditor/formaction-on-input.html: Removed.
  • http/tests/security/xssAuditor/frameset-injection-expected.txt: Removed.
  • http/tests/security/xssAuditor/frameset-injection.html: Removed.
  • http/tests/security/xssAuditor/full-block-base-href-expected.txt: Removed.
  • http/tests/security/xssAuditor/full-block-base-href.html: Removed.
  • http/tests/security/xssAuditor/full-block-get-from-iframe-expected.txt: Removed.
  • http/tests/security/xssAuditor/full-block-get-from-iframe.html: Removed.
  • http/tests/security/xssAuditor/full-block-iframe-javascript-url-expected.txt: Removed.
  • http/tests/security/xssAuditor/full-block-iframe-javascript-url.html: Removed.
  • http/tests/security/xssAuditor/full-block-iframe-no-inherit-expected.txt: Removed.
  • http/tests/security/xssAuditor/full-block-iframe-no-inherit.py: Removed.
  • http/tests/security/xssAuditor/full-block-javascript-link-expected.txt: Removed.
  • http/tests/security/xssAuditor/full-block-javascript-link.html: Removed.
  • http/tests/security/xssAuditor/full-block-link-onclick-expected.txt: Removed.
  • http/tests/security/xssAuditor/full-block-link-onclick.html: Removed.
  • http/tests/security/xssAuditor/full-block-object-tag-expected.txt: Removed.
  • http/tests/security/xssAuditor/full-block-object-tag.html: Removed.
  • http/tests/security/xssAuditor/full-block-post-from-iframe-expected.txt: Removed.
  • http/tests/security/xssAuditor/full-block-post-from-iframe.html: Removed.
  • http/tests/security/xssAuditor/full-block-script-tag-cross-domain-expected.txt: Removed.
  • http/tests/security/xssAuditor/full-block-script-tag-cross-domain.html: Removed.
  • http/tests/security/xssAuditor/full-block-script-tag-expected.txt: Removed.
  • http/tests/security/xssAuditor/full-block-script-tag-with-source-expected.txt: Removed.
  • http/tests/security/xssAuditor/full-block-script-tag-with-source.html: Removed.
  • http/tests/security/xssAuditor/full-block-script-tag.html: Removed.
  • http/tests/security/xssAuditor/get-from-iframe-expected.txt: Removed.
  • http/tests/security/xssAuditor/get-from-iframe.html: Removed.
  • http/tests/security/xssAuditor/iframe-injection-allowed-2-expected.txt: Removed.
  • http/tests/security/xssAuditor/iframe-injection-allowed-2.html: Removed.
  • http/tests/security/xssAuditor/iframe-injection-allowed-3-expected.txt: Removed.
  • http/tests/security/xssAuditor/iframe-injection-allowed-3.html: Removed.
  • http/tests/security/xssAuditor/iframe-injection-allowed-expected.txt: Removed.
  • http/tests/security/xssAuditor/iframe-injection-allowed.html: Removed.
  • http/tests/security/xssAuditor/iframe-injection-expected.txt: Removed.
  • http/tests/security/xssAuditor/iframe-injection.html: Removed.
  • http/tests/security/xssAuditor/iframe-javascript-url-expected.txt: Removed.
  • http/tests/security/xssAuditor/iframe-javascript-url-more-encoding-expected.txt: Removed.
  • http/tests/security/xssAuditor/iframe-javascript-url-more-encoding.html: Removed.
  • http/tests/security/xssAuditor/iframe-javascript-url-twice-url-encode-expected.txt: Removed.
  • http/tests/security/xssAuditor/iframe-javascript-url-twice-url-encode.html: Removed.
  • http/tests/security/xssAuditor/iframe-javascript-url-twice-url-encode2-expected.txt: Removed.
  • http/tests/security/xssAuditor/iframe-javascript-url-twice-url-encode2.html: Removed.
  • http/tests/security/xssAuditor/iframe-javascript-url-twice-url-encode3-expected.txt: Removed.
  • http/tests/security/xssAuditor/iframe-javascript-url-twice-url-encode3.html: Removed.
  • http/tests/security/xssAuditor/iframe-javascript-url-url-encoded-expected.txt: Removed.
  • http/tests/security/xssAuditor/iframe-javascript-url-url-encoded.html: Removed.
  • http/tests/security/xssAuditor/iframe-javascript-url.html: Removed.
  • http/tests/security/xssAuditor/iframe-onload-GBK-char-expected.txt: Removed.
  • http/tests/security/xssAuditor/iframe-onload-GBK-char.html: Removed.
  • http/tests/security/xssAuditor/iframe-onload-in-svg-tag-expected.txt: Removed.
  • http/tests/security/xssAuditor/iframe-onload-in-svg-tag.html: Removed.
  • http/tests/security/xssAuditor/iframe-srcdoc-expected.txt: Removed.
  • http/tests/security/xssAuditor/iframe-srcdoc-property-blocked-expected.txt: Removed.
  • http/tests/security/xssAuditor/iframe-srcdoc-property-blocked.html: Removed.
  • http/tests/security/xssAuditor/iframe-srcdoc.html: Removed.
  • http/tests/security/xssAuditor/img-onerror-GBK-char-expected.txt: Removed.
  • http/tests/security/xssAuditor/img-onerror-GBK-char.html: Removed.
  • http/tests/security/xssAuditor/img-onerror-accented-char-expected.txt: Removed.
  • http/tests/security/xssAuditor/img-onerror-accented-char.html: Removed.
  • http/tests/security/xssAuditor/img-onerror-non-ASCII-char-default-encoding-expected.txt: Removed.
  • http/tests/security/xssAuditor/img-onerror-non-ASCII-char-default-encoding.html: Removed.
  • http/tests/security/xssAuditor/img-onerror-non-ASCII-char-expected.txt: Removed.
  • http/tests/security/xssAuditor/img-onerror-non-ASCII-char.html: Removed.
  • http/tests/security/xssAuditor/img-onerror-non-ASCII-char2-default-encoding-expected.txt: Removed.
  • http/tests/security/xssAuditor/img-onerror-non-ASCII-char2-default-encoding.html: Removed.
  • http/tests/security/xssAuditor/img-onerror-non-ASCII-char2-expected.txt: Removed.
  • http/tests/security/xssAuditor/img-onerror-non-ASCII-char2.html: Removed.
  • http/tests/security/xssAuditor/img-onerror-tricky-expected.txt: Removed.
  • http/tests/security/xssAuditor/img-onerror-tricky.html: Removed.
  • http/tests/security/xssAuditor/img-tag-with-comma-expected.txt: Removed.
  • http/tests/security/xssAuditor/img-tag-with-comma.html: Removed.
  • http/tests/security/xssAuditor/inline-event-HTML-entities-expected.txt: Removed.
  • http/tests/security/xssAuditor/inline-event-HTML-entities.html: Removed.
  • http/tests/security/xssAuditor/intercept/.htaccess: Removed.
  • http/tests/security/xssAuditor/javascript-link-HTML-entities-control-char-expected.txt: Removed.
  • http/tests/security/xssAuditor/javascript-link-HTML-entities-control-char.html: Removed.
  • http/tests/security/xssAuditor/javascript-link-HTML-entities-expected.txt: Removed.
  • http/tests/security/xssAuditor/javascript-link-HTML-entities-named-expected.txt: Removed.
  • http/tests/security/xssAuditor/javascript-link-HTML-entities-named.html: Removed.
  • http/tests/security/xssAuditor/javascript-link-HTML-entities-null-char-expected.txt: Removed.
  • http/tests/security/xssAuditor/javascript-link-HTML-entities-null-char.html: Removed.
  • http/tests/security/xssAuditor/javascript-link-HTML-entities.html: Removed.
  • http/tests/security/xssAuditor/javascript-link-ampersand-expected.txt: Removed.
  • http/tests/security/xssAuditor/javascript-link-ampersand.html: Removed.
  • http/tests/security/xssAuditor/javascript-link-control-char-expected.txt: Removed.
  • http/tests/security/xssAuditor/javascript-link-control-char.html: Removed.
  • http/tests/security/xssAuditor/javascript-link-control-char2-expected.txt: Removed.
  • http/tests/security/xssAuditor/javascript-link-control-char2.html: Removed.
  • http/tests/security/xssAuditor/javascript-link-expected.txt: Removed.
  • http/tests/security/xssAuditor/javascript-link-null-char-expected.txt: Removed.
  • http/tests/security/xssAuditor/javascript-link-null-char.html: Removed.
  • http/tests/security/xssAuditor/javascript-link-one-plus-one-expected.txt: Removed.
  • http/tests/security/xssAuditor/javascript-link-one-plus-one.html: Removed.
  • http/tests/security/xssAuditor/javascript-link-safe-expected.txt: Removed.
  • http/tests/security/xssAuditor/javascript-link-safe.html: Removed.
  • http/tests/security/xssAuditor/javascript-link-url-encoded-expected.txt: Removed.
  • http/tests/security/xssAuditor/javascript-link-url-encoded.html: Removed.
  • http/tests/security/xssAuditor/javascript-link.html: Removed.
  • http/tests/security/xssAuditor/link-onclick-ampersand-expected.txt: Removed.
  • http/tests/security/xssAuditor/link-onclick-ampersand.html: Removed.
  • http/tests/security/xssAuditor/link-onclick-control-char-expected.txt: Removed.
  • http/tests/security/xssAuditor/link-onclick-control-char.html: Removed.
  • http/tests/security/xssAuditor/link-onclick-entities-expected.txt: Removed.
  • http/tests/security/xssAuditor/link-onclick-entities.html: Removed.
  • http/tests/security/xssAuditor/link-onclick-expected.txt: Removed.
  • http/tests/security/xssAuditor/link-onclick-null-char-expected.txt: Removed.
  • http/tests/security/xssAuditor/link-onclick-null-char.html: Removed.
  • http/tests/security/xssAuditor/link-onclick.html: Removed.
  • http/tests/security/xssAuditor/link-opens-new-window-expected.txt: Removed.
  • http/tests/security/xssAuditor/link-opens-new-window.html: Removed.
  • http/tests/security/xssAuditor/malformed-HTML-expected.txt: Removed.
  • http/tests/security/xssAuditor/malformed-HTML.html: Removed.
  • http/tests/security/xssAuditor/malformed-xss-protection-header-1-expected.txt: Removed.
  • http/tests/security/xssAuditor/malformed-xss-protection-header-1.html: Removed.
  • http/tests/security/xssAuditor/malformed-xss-protection-header-2-expected.txt: Removed.
  • http/tests/security/xssAuditor/malformed-xss-protection-header-2.html: Removed.
  • http/tests/security/xssAuditor/malformed-xss-protection-header-3-expected.txt: Removed.
  • http/tests/security/xssAuditor/malformed-xss-protection-header-3.html: Removed.
  • http/tests/security/xssAuditor/malformed-xss-protection-header-4-expected.txt: Removed.
  • http/tests/security/xssAuditor/malformed-xss-protection-header-4.html: Removed.
  • http/tests/security/xssAuditor/malformed-xss-protection-header-5-expected.txt: Removed.
  • http/tests/security/xssAuditor/malformed-xss-protection-header-5.html: Removed.
  • http/tests/security/xssAuditor/malformed-xss-protection-header-6-expected.txt: Removed.
  • http/tests/security/xssAuditor/malformed-xss-protection-header-6.html: Removed.
  • http/tests/security/xssAuditor/malformed-xss-protection-header-7-expected.txt: Removed.
  • http/tests/security/xssAuditor/malformed-xss-protection-header-7.html: Removed.
  • http/tests/security/xssAuditor/malformed-xss-protection-header-8-expected.txt: Removed.
  • http/tests/security/xssAuditor/malformed-xss-protection-header-8.html: Removed.
  • http/tests/security/xssAuditor/malformed-xss-protection-header-9-expected.txt: Removed.
  • http/tests/security/xssAuditor/malformed-xss-protection-header-9.html: Removed.
  • http/tests/security/xssAuditor/meta-tag-http-refresh-javascript-url-expected.txt: Removed.
  • http/tests/security/xssAuditor/meta-tag-http-refresh-javascript-url.html: Removed.
  • http/tests/security/xssAuditor/meta-tag-http-refresh-x-frame-options-ignored-expected.txt: Removed.
  • http/tests/security/xssAuditor/meta-tag-http-refresh-x-frame-options-ignored.html: Removed.
  • http/tests/security/xssAuditor/nested-dom-write-location-open-img-onerror-expected.txt: Removed.
  • http/tests/security/xssAuditor/nested-dom-write-location-open-img-onerror.html: Removed.
  • http/tests/security/xssAuditor/no-protection-script-tag-expected.txt: Removed.
  • http/tests/security/xssAuditor/no-protection-script-tag.html: Removed.
  • http/tests/security/xssAuditor/non-block-javascript-url-frame-expected.txt: Removed.
  • http/tests/security/xssAuditor/non-block-javascript-url-frame.html: Removed.
  • http/tests/security/xssAuditor/object-embed-tag-control-char-expected.txt: Removed.
  • http/tests/security/xssAuditor/object-embed-tag-control-char.html: Removed.
  • http/tests/security/xssAuditor/object-embed-tag-expected.txt: Removed.
  • http/tests/security/xssAuditor/object-embed-tag-null-char-expected.txt: Removed.
  • http/tests/security/xssAuditor/object-embed-tag-null-char.html: Removed.
  • http/tests/security/xssAuditor/object-embed-tag.html: Removed.
  • http/tests/security/xssAuditor/object-src-inject-expected.txt: Removed.
  • http/tests/security/xssAuditor/object-src-inject.html: Removed.
  • http/tests/security/xssAuditor/object-tag-expected.txt: Removed.
  • http/tests/security/xssAuditor/object-tag-javascript-url-expected.txt: Removed.
  • http/tests/security/xssAuditor/object-tag-javascript-url.html: Removed.
  • http/tests/security/xssAuditor/object-tag.html: Removed.
  • http/tests/security/xssAuditor/open-attribute-body-expected.txt: Removed.
  • http/tests/security/xssAuditor/open-attribute-body.html: Removed.
  • http/tests/security/xssAuditor/open-event-handler-iframe-expected.txt: Removed.
  • http/tests/security/xssAuditor/open-event-handler-iframe.html: Removed.
  • http/tests/security/xssAuditor/open-iframe-src-01-expected.txt: Removed.
  • http/tests/security/xssAuditor/open-iframe-src-01.html: Removed.
  • http/tests/security/xssAuditor/open-iframe-src-02-expected.txt: Removed.
  • http/tests/security/xssAuditor/open-iframe-src-02.html: Removed.
  • http/tests/security/xssAuditor/open-iframe-src-03-expected.txt: Removed.
  • http/tests/security/xssAuditor/open-iframe-src-03.html: Removed.
  • http/tests/security/xssAuditor/open-script-src-01-expected.txt: Removed.
  • http/tests/security/xssAuditor/open-script-src-01.html: Removed.
  • http/tests/security/xssAuditor/open-script-src-02-expected.txt: Removed.
  • http/tests/security/xssAuditor/open-script-src-02.html: Removed.
  • http/tests/security/xssAuditor/open-script-src-03-expected.txt: Removed.
  • http/tests/security/xssAuditor/open-script-src-03.html: Removed.
  • http/tests/security/xssAuditor/open-script-src-04-expected.txt: Removed.
  • http/tests/security/xssAuditor/open-script-src-04.html: Removed.
  • http/tests/security/xssAuditor/post-from-iframe-expected.txt: Removed.
  • http/tests/security/xssAuditor/post-from-iframe.html: Removed.
  • http/tests/security/xssAuditor/property-escape-comment-01-expected.txt: Removed.
  • http/tests/security/xssAuditor/property-escape-comment-01.html: Removed.
  • http/tests/security/xssAuditor/property-escape-comment-02-expected.txt: Removed.
  • http/tests/security/xssAuditor/property-escape-comment-02.html: Removed.
  • http/tests/security/xssAuditor/property-escape-comment-03-expected.txt: Removed.
  • http/tests/security/xssAuditor/property-escape-comment-03.html: Removed.
  • http/tests/security/xssAuditor/property-escape-entity-01-expected.txt: Removed.
  • http/tests/security/xssAuditor/property-escape-entity-01.html: Removed.
  • http/tests/security/xssAuditor/property-escape-entity-02-expected.txt: Removed.
  • http/tests/security/xssAuditor/property-escape-entity-02.html: Removed.
  • http/tests/security/xssAuditor/property-escape-entity-03-expected.txt: Removed.
  • http/tests/security/xssAuditor/property-escape-entity-03.html: Removed.
  • http/tests/security/xssAuditor/property-escape-expected.txt: Removed.
  • http/tests/security/xssAuditor/property-escape-long-expected.txt: Removed.
  • http/tests/security/xssAuditor/property-escape-long.html: Removed.
  • http/tests/security/xssAuditor/property-escape-noquotes-expected.txt: Removed.
  • http/tests/security/xssAuditor/property-escape-noquotes-tab-slash-chars-expected.txt: Removed.
  • http/tests/security/xssAuditor/property-escape-noquotes-tab-slash-chars.html: Removed.
  • http/tests/security/xssAuditor/property-escape-noquotes.html: Removed.
  • http/tests/security/xssAuditor/property-escape-quote-01-expected.txt: Removed.
  • http/tests/security/xssAuditor/property-escape-quote-01.html: Removed.
  • http/tests/security/xssAuditor/property-escape-quote-02-expected.txt: Removed.
  • http/tests/security/xssAuditor/property-escape-quote-02.html: Removed.
  • http/tests/security/xssAuditor/property-escape-quote-03-expected.txt: Removed.
  • http/tests/security/xssAuditor/property-escape-quote-03.html: Removed.
  • http/tests/security/xssAuditor/property-escape.html: Removed.
  • http/tests/security/xssAuditor/property-inject-expected.txt: Removed.
  • http/tests/security/xssAuditor/property-inject.html: Removed.
  • http/tests/security/xssAuditor/reflection-in-path-expected.txt: Removed.
  • http/tests/security/xssAuditor/reflection-in-path.html: Removed.
  • http/tests/security/xssAuditor/regress-167121-expected.txt: Removed.
  • http/tests/security/xssAuditor/regress-167121.html: Removed.
  • http/tests/security/xssAuditor/report-script-tag-and-do-not-follow-redirect-when-sending-report-expected.txt: Removed.
  • http/tests/security/xssAuditor/report-script-tag-and-do-not-follow-redirect-when-sending-report.html: Removed.
  • http/tests/security/xssAuditor/report-script-tag-expected.txt: Removed.
  • http/tests/security/xssAuditor/report-script-tag-full-block-and-do-not-follow-redirect-when-sending-report-expected.txt: Removed.
  • http/tests/security/xssAuditor/report-script-tag-full-block-and-do-not-follow-redirect-when-sending-report.html: Removed.
  • http/tests/security/xssAuditor/report-script-tag-full-block-expected.txt: Removed.
  • http/tests/security/xssAuditor/report-script-tag-full-block.html: Removed.
  • http/tests/security/xssAuditor/report-script-tag-replace-state-expected.txt: Removed.
  • http/tests/security/xssAuditor/report-script-tag-replace-state.html: Removed.
  • http/tests/security/xssAuditor/report-script-tag.html: Removed.
  • http/tests/security/xssAuditor/resources/anchor-url-dom-write-location-click.html: Removed.
  • http/tests/security/xssAuditor/resources/base-href/base-href-safe2.html: Removed.
  • http/tests/security/xssAuditor/resources/base-href/base-href-safe3.html: Removed.
  • http/tests/security/xssAuditor/resources/base-href/really-safe-script.js: Removed.
  • http/tests/security/xssAuditor/resources/base-href/safe-script.js: Removed.
  • http/tests/security/xssAuditor/resources/echo-dom-write-URL.html: Removed.
  • http/tests/security/xssAuditor/resources/echo-dom-write-innerHTML.html: Removed.
  • http/tests/security/xssAuditor/resources/echo-dom-write-location.html: Removed.
  • http/tests/security/xssAuditor/resources/echo-dom-write-unescaped-location.html: Removed.
  • http/tests/security/xssAuditor/resources/echo-form-action.pl: Removed.
  • http/tests/security/xssAuditor/resources/echo-frame-src.pl: Removed.
  • http/tests/security/xssAuditor/resources/echo-head-base-href-direct.pl: Removed.
  • http/tests/security/xssAuditor/resources/echo-head-base-href.pl: Removed.
  • http/tests/security/xssAuditor/resources/echo-head.pl: Removed.
  • http/tests/security/xssAuditor/resources/echo-inner-tag.pl: Removed.
  • http/tests/security/xssAuditor/resources/echo-inspan.pl: Removed.
  • http/tests/security/xssAuditor/resources/echo-intertag-addslashes.pl: Removed.
  • http/tests/security/xssAuditor/resources/echo-intertag-click-and-notify.pl: Removed.
  • http/tests/security/xssAuditor/resources/echo-intertag-decode-16bit-unicode.pl: Removed.
  • http/tests/security/xssAuditor/resources/echo-intertag-default-encode.pl: Removed.
  • http/tests/security/xssAuditor/resources/echo-intertag.pl: Removed.
  • http/tests/security/xssAuditor/resources/echo-nested-dom-write-location.html: Removed.
  • http/tests/security/xssAuditor/resources/echo-object-src.pl: Removed.
  • http/tests/security/xssAuditor/resources/echo-property-noquotes.pl: Removed.
  • http/tests/security/xssAuditor/resources/echo-property.pl: Removed.
  • http/tests/security/xssAuditor/resources/echo-script-src.pl: Removed.
  • http/tests/security/xssAuditor/resources/javascript-link-safe.html: Removed.
  • http/tests/security/xssAuditor/resources/nph-cached.pl: Removed.
  • http/tests/security/xssAuditor/resources/safe-script-noquotes.js: Removed.
  • http/tests/security/xssAuditor/resources/safe-script.js: Removed.
  • http/tests/security/xssAuditor/resources/script-tag-safe2.html: Removed.
  • http/tests/security/xssAuditor/resources/script-tag-safe3.html: Removed.
  • http/tests/security/xssAuditor/resources/script-tag-safe4-frame.html: Removed.
  • http/tests/security/xssAuditor/resources/tag-with-pause.py: Removed.
  • http/tests/security/xssAuditor/resources/utilities.js: Removed.
  • http/tests/security/xssAuditor/resources/xss-filter-bypass-long-string-reply.html: Removed.
  • http/tests/security/xssAuditor/resources/xss.js: Removed.
  • http/tests/security/xssAuditor/script-tag-Big5-char-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-Big5-char-twice-url-encode-16bit-unicode-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-Big5-char-twice-url-encode-16bit-unicode.html: Removed.
  • http/tests/security/xssAuditor/script-tag-Big5-char-twice-url-encode-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-Big5-char-twice-url-encode.html: Removed.
  • http/tests/security/xssAuditor/script-tag-Big5-char.html: Removed.
  • http/tests/security/xssAuditor/script-tag-Big5-char2-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-Big5-char2.html: Removed.
  • http/tests/security/xssAuditor/script-tag-addslashes-backslash-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-addslashes-backslash.html: Removed.
  • http/tests/security/xssAuditor/script-tag-addslashes-double-quote-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-addslashes-double-quote.html: Removed.
  • http/tests/security/xssAuditor/script-tag-addslashes-null-char-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-addslashes-null-char.html: Removed.
  • http/tests/security/xssAuditor/script-tag-addslashes-single-quote-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-addslashes-single-quote.html: Removed.
  • http/tests/security/xssAuditor/script-tag-control-char-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-control-char.html: Removed.
  • http/tests/security/xssAuditor/script-tag-convoluted-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-convoluted.html: Removed.
  • http/tests/security/xssAuditor/script-tag-entities-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-entities.html: Removed.
  • http/tests/security/xssAuditor/script-tag-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-expression-follows-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-expression-follows.html: Removed.
  • http/tests/security/xssAuditor/script-tag-inside-svg-tag-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-inside-svg-tag.html: Removed.
  • http/tests/security/xssAuditor/script-tag-inside-svg-tag2-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-inside-svg-tag2.html: Removed.
  • http/tests/security/xssAuditor/script-tag-inside-svg-tag3-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-inside-svg-tag3.html: Removed.
  • http/tests/security/xssAuditor/script-tag-near-start-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-near-start.html: Removed.
  • http/tests/security/xssAuditor/script-tag-null-char-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-null-char.html: Removed.
  • http/tests/security/xssAuditor/script-tag-open-redirect-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-open-redirect.html: Removed.
  • http/tests/security/xssAuditor/script-tag-post-control-char-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-post-control-char.html: Removed.
  • http/tests/security/xssAuditor/script-tag-post-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-post-null-char-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-post-null-char.html: Removed.
  • http/tests/security/xssAuditor/script-tag-post.html: Removed.
  • http/tests/security/xssAuditor/script-tag-redirect-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-redirect.html: Removed.
  • http/tests/security/xssAuditor/script-tag-safe-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-safe.html: Removed.
  • http/tests/security/xssAuditor/script-tag-safe2-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-safe2.html: Removed.
  • http/tests/security/xssAuditor/script-tag-safe3-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-safe3.html: Removed.
  • http/tests/security/xssAuditor/script-tag-safe4-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-safe4.html: Removed.
  • http/tests/security/xssAuditor/script-tag-src-redirect-safe-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-src-redirect-safe.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-16bit-unicode-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-16bit-unicode-surrogate-pair-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-16bit-unicode-surrogate-pair.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-16bit-unicode.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-16bit-unicode2-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-16bit-unicode2.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-16bit-unicode3-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-16bit-unicode3.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-16bit-unicode4-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-16bit-unicode4.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-16bit-unicode5-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-16bit-unicode5.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-actual-comma-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-actual-comma.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-callbacks-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-callbacks.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-comma-01-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-comma-01.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-comma-02-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-comma-02.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-fancy-unicode-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-fancy-unicode.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-injected-comment-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-injected-comment.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-invalid-closing-tag-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-invalid-closing-tag.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-invalid-url-encoding-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-invalid-url-encoding.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-control-char-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-control-char.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-data-url-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-data-url.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-data-url2-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-data-url2.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-data-url3-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-data-url3.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-data-url4-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-data-url4.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-data-url5-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-data-url5.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-double-quote-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-double-quote.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-entities-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-entities.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-no-quote-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-no-quote.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-null-char-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-null-char.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-relative-scheme-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-relative-scheme.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-same-host-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-same-host-with-query-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-same-host-with-query.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-same-host.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-unterminated-01-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-unterminated-01.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-unterminated-02-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-unterminated-02.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-unterminated-03-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source-unterminated-03.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-source.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-three-times-url-encoded-16bit-unicode-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-three-times-url-encoded-16bit-unicode.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-trailing-comment-U2028-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-trailing-comment-U2028.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-trailing-comment-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-trailing-comment.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-trailing-comment2-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-trailing-comment2.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-trailing-comment3-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-trailing-comment3.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-trailing-comment4-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-trailing-comment4.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-trailing-comment5-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-trailing-comment5.html: Removed.
  • http/tests/security/xssAuditor/script-tag-with-trailing-script-and-urlencode-expected.txt: Removed.
  • http/tests/security/xssAuditor/script-tag-with-trailing-script-and-urlencode.html: Removed.
  • http/tests/security/xssAuditor/script-tag.html: Removed.
  • http/tests/security/xssAuditor/svg-animate-expected.txt: Removed.
  • http/tests/security/xssAuditor/svg-animate.html: Removed.
  • http/tests/security/xssAuditor/svg-script-tag-expected.txt: Removed.
  • http/tests/security/xssAuditor/svg-script-tag.html: Removed.
  • http/tests/security/xssAuditor/window-open-without-url-should-not-assert-expected.txt: Removed.
  • http/tests/security/xssAuditor/window-open-without-url-should-not-assert.html: Removed.
  • http/tests/security/xssAuditor/xss-filter-bypass-big5-expected.txt: Removed.
  • http/tests/security/xssAuditor/xss-filter-bypass-big5.html: Removed.
  • http/tests/security/xssAuditor/xss-filter-bypass-long-string-expected.txt: Removed.
  • http/tests/security/xssAuditor/xss-filter-bypass-long-string.html: Removed.
  • http/tests/security/xssAuditor/xss-filter-bypass-sjis-expected.txt: Removed.
  • http/tests/security/xssAuditor/xss-filter-bypass-sjis.html: Removed.
  • http/tests/security/xssAuditor/xss-protection-parsing-01-expected.txt: Removed.
  • http/tests/security/xssAuditor/xss-protection-parsing-01.html: Removed.
  • http/tests/security/xssAuditor/xss-protection-parsing-02-expected.txt: Removed.
  • http/tests/security/xssAuditor/xss-protection-parsing-02.html: Removed.
  • http/tests/security/xssAuditor/xss-protection-parsing-03-expected.txt: Removed.
  • http/tests/security/xssAuditor/xss-protection-parsing-03.html: Removed.
  • http/tests/security/xssAuditor/xss-protection-parsing-04-expected.txt: Removed.
  • http/tests/security/xssAuditor/xss-protection-parsing-04.html: Removed.
  • platform/gtk/TestExpectations:
  • platform/ios-simulator-wk2/TestExpectations:
  • platform/ios-wk1/TestExpectations:
  • platform/win/TestExpectations:
3:45 PM Changeset in webkit [282846] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

[GLIB] Update test expectations for newly passing tests.
https://bugs.webkit.org/show_bug.cgi?id=230577

Unreviewed test gardening.

Patch by Arcady Goldmints-Orlov <Arcady Goldmints-Orlov> on 2021-09-21

  • platform/glib/TestExpectations:
  • platform/gtk/TestExpectations:
3:43 PM Changeset in webkit [282845] by Megan Gardner
  • 2 edits in trunk/Source/WebKit

Remove unused selection parameter.
https://bugs.webkit.org/show_bug.cgi?id=230519

Reviewed by Wenson Hsieh.

The direction of movement of the selection is not actually used to determine which direction to extend to a
word boundary, so do not pass it in. In preparation of being able to condense these enums into one.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::rangeAtWordBoundaryForPosition):
(WebKit::WebPage::updateSelectionWithTouches):

3:13 PM Changeset in webkit [282844] by ddkilzer@apple.com
  • 26 edits
    2 moves in trunk

Rename {checked,dynamic}_ns_cast<> to {checked,dynamic}_objc_cast<>
<https://webkit.org/b/230508>
<rdar://problem/83323145>

Reviewed by Brent Fulgham.

Source/WebCore:

  • Modules/applepay/PaymentInstallmentConfiguration.mm:
  • Modules/applepay/cocoa/PaymentMerchantSessionCocoa.mm:
  • Also fix *SoftLink.h header order.
  • platform/graphics/cocoa/WebCoreCALayerExtras.mm:
  • platform/mac/BlocklistUpdater.mm:
  • rendering/RenderThemeIOS.mm:
  • Import <wtf/cocoa/TypeCastsCocoa.h> for future move of WTF::dynamic_objc_cast<> from RetainPtr.h to that header.

Source/WebKit:

  • UIProcess/Cocoa/WebProcessPoolCocoa.mm:

(WebKit::extractWebProcessPool):

  • Update for rename.
  • Shared/Cocoa/ArgumentCodersCocoa.mm:
  • Shared/mac/ObjCObjectGraph.mm:
  • UIProcess/API/Cocoa/NSAttributedString.mm:
  • UIProcess/Cocoa/MediaPermissionUtilities.mm:
  • Also fix *SoftLink.h header order.
  • UIProcess/Cocoa/WebProcessProxyCocoa.mm:
  • UIProcess/ios/WKContentViewInteraction.mm:
  • WebProcess/cocoa/WebProcessCocoa.mm:
  • Import <wtf/cocoa/TypeCastsCocoa.h> for future move of WTF::dynamic_objc_cast<> from RetainPtr.h to that header.

Source/WebKitLegacy/mac:

  • WebCoreSupport/WebDragClient.mm:
  • WebView/WebHTMLView.mm:
  • Import <wtf/cocoa/TypeCastsCocoa.h> for future move of WTF::dynamic_objc_cast<> from RetainPtr.h to that header.

Source/WTF:

  • WTF.xcodeproj/project.pbxproj:
  • wtf/PlatformMac.cmake:
  • Update for rename of TypeCastsNS.h to TypeCastsCocoa.h.
  • wtf/RetainPtr.h:

(WTF::dynamic_objc_cast):

  • Move dynamic_ns_cast<> from TypeCastsNS.h to here.
  • Remove using statements to limit Objective-C types without asterisks to match RetainPtr<>.
  • wtf/cocoa/TypeCastsCocoa.h: Rename from TypeCastsNS.h.

(WTF::checked_objc_cast):
(WTF::dynamic_objc_cast):

  • Do the rename.
  • Remove "using WTF::dynamic_ns_cast;" instead of renaming it since this is already in RetainPtr.h.

Tools:

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • Update for rename of TypeCastsNS.h to TypeCastsCocoa.h.
  • TestWebKitAPI/Tests/WTF/cocoa/TypeCastsCocoa.mm: Rename from TypeCastsNS.mm.

(TestWebKitAPI::TEST):

  • Update for rename.
  • TestWebKitAPI/Tests/WebKitCocoa/WKWebViewGetContents.mm:
  • WebKitTestRunner/ios/UIScriptControllerIOS.mm:
  • Import <wtf/cocoa/TypeCastsCocoa.h> for future move of WTF::dynamic_objc_cast<> from RetainPtr.h to that header.
2:43 PM Changeset in webkit [282843] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit

REGRESSION(241918@main): [WPE][GTK] New test is timing out on bots
https://bugs.webkit.org/show_bug.cgi?id=230556

Patch by Michael Catanzaro <Michael Catanzaro> on 2021-09-21
Reviewed by Alex Christensen.

Switch WebKitWebContext to use both ResourceLoaderIdentifier and WebPageProxyIdentifier as
the key for tracking outstanding tasks, since the ResourceLoaderIdentifier is not unique.

Rename WebURLSchemeTask::identifier to WebURLSchemeTask::resourceLoaderID because this is
really only one component of the ID for the WebURLSchemeTask, and cannot be used on its own
to identify the WebURLSchemeTask. It must always be paired with the WebPageProxyIdentifier.

This fixes WPE/GTK TestWebKitWebContext /webkit/WebKitWebContext/uri-scheme

  • UIProcess/API/glib/WebKitWebContext.cpp:
  • UIProcess/WebURLSchemeHandler.cpp:

(WebKit::WebURLSchemeHandler::taskCompleted):

  • UIProcess/WebURLSchemeTask.cpp:

(WebKit::WebURLSchemeTask::WebURLSchemeTask):
(WebKit::WebURLSchemeTask::willPerformRedirection):
(WebKit::WebURLSchemeTask::didPerformRedirection):
(WebKit::WebURLSchemeTask::didReceiveResponse):
(WebKit::WebURLSchemeTask::didReceiveData):
(WebKit::WebURLSchemeTask::didComplete):

  • UIProcess/WebURLSchemeTask.h:

(WebKit::WebURLSchemeTask::resourceLoaderID const):
(WebKit::WebURLSchemeTask::identifier const): Deleted.

2:29 PM Changeset in webkit [282842] by pvollan@apple.com
  • 2 edits in trunk/Source/WebCore/PAL

[Mac Catalyst] Fix build issue
https://bugs.webkit.org/show_bug.cgi?id=230567
<rdar://83314629>

Unreviewed follow-up fix after <https://commits.webkit.org/241966@main>.

Fix an incorrect define check.

  • pal/spi/cocoa/LaunchServicesSPI.h:
2:09 PM Changeset in webkit [282841] by pvollan@apple.com
  • 3 edits in trunk/Source/WebKit

Remove preference write access to AX media domain
https://bugs.webkit.org/show_bug.cgi?id=230574
<rdar://58899152>

Reviewed by Brent Fulgham.

This has been brokered to the UI process, so there should no longer be any need to write to the AX media domain in WebKit processes.

  • Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb:
  • Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in:
2:09 PM Changeset in webkit [282840] by yoshiaki.jitsukawa@sony.com
  • 2 edits in trunk/Tools

[PlayStation][MiniBrowser] Remove WebKit private header include
https://bugs.webkit.org/show_bug.cgi?id=230183

Reviewed by Ross Kirsling.

  • MiniBrowser/playstation/main.cpp:

Remove config.h and wtf/Platform.h include directive.
PlayStation MiniBrowser is expected to be independent of WebKit
private headers (i.e. it should depend only on WK API.) in order to
ensure that we can make a WebBrowser without those headers.

1:42 PM Changeset in webkit [282839] by Simon Fraser
  • 5 edits in trunk/Source/WebCore

Modernize ENABLE_IOSURFACE_POOL_STATISTICS logging
https://bugs.webkit.org/show_bug.cgi?id=230570

Reviewed by Tim Horton.

Fix thread safety warnings when ENABLE_IOSURFACE_POOL_STATISTICS is defined.
Use TextStream for logging.

This could be a log channel.

  • platform/graphics/cg/IOSurfacePool.cpp:

(WebCore::IOSurfacePool::takeSurface):
(WebCore::IOSurfacePool::addSurface):
(WebCore::IOSurfacePool::evict):
(WebCore::IOSurfacePool::collectionTimerFired):
(WebCore::IOSurfacePool::poolStatistics const):
(WebCore::IOSurfacePool::showPoolStatistics): Deleted.

  • platform/graphics/cg/IOSurfacePool.h:
  • platform/graphics/cocoa/IOSurface.h:
  • platform/graphics/cocoa/IOSurface.mm:

(WebCore::operator<<):

1:17 PM Changeset in webkit [282838] by mmaxfield@apple.com
  • 4 edits in trunk/Source/WebCore

Push font-palette-values data into CSSFontSelector
https://bugs.webkit.org/show_bug.cgi?id=230447

Reviewed by Antti Koivisto.

In https://bugs.webkit.org/show_bug.cgi?id=230337 I added parsing support for font-palette-values.
This patch pushes the parsed data down into CSSFontSelector, so it can be passed into the font
creation routines. The data is retained, so it's always possible to query the CSSFontSelector for
the state of the world regarding font palettes.

No new tests because there is no behavior change. This querying functionality will be hooked up
in https://bugs.webkit.org/show_bug.cgi?id=230449.

  • css/CSSFontSelector.cpp:

(WebCore::CSSFontSelector::buildStarted):
(WebCore::CSSFontSelector::addFontPaletteValuesRule):
(WebCore::CSSFontSelector::fontRangesForFamily):

  • css/CSSFontSelector.h:
  • style/RuleSet.cpp:

(WebCore::Style::RuleSet::Builder::addChildRules):

1:15 PM Changeset in webkit [282837] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

[LFC][IFC] Implement fallbackFontsForRun for IFC
https://bugs.webkit.org/show_bug.cgi?id=230561

Reviewed by Antti Koivisto.

fallbackFontsForRun collects all the non-primary fonts used by a text run. It also takes soft hyphens into account but only when they are actually
part of the rendered content.
This function is called while we construct the final runs for a line and parent inline boxes (parent of the text runs)
need to know their enclosing layout bounds (glyphs from fallback font may stretch the parent inline box).

  • layout/formattingContexts/inline/text/TextUtil.cpp:

(WebCore::Layout::fallbackFontsForRunWithIterator):
(WebCore::Layout::TextUtil::fallbackFontsForRun):

1:06 PM Changeset in webkit [282836] by Fujii Hironori
  • 3 edits in trunk/Source/WebKit

[WinCairo] jquery/offset.html is randomly failing an assertion in DrawingAreaCoordinatedGraphics::layerHostDidFlushLayers
https://bugs.webkit.org/show_bug.cgi?id=230531

Reviewed by Don Olmstead.

DrawingAreaCoordinatedGraphics::layerHostDidFlushLayers shouldn't
be called while LayerTreeHost is paused by pauseRendering().

  • WebProcess/WebPage/CoordinatedGraphics/LayerTreeHostTextureMapper.cpp:

(WebKit::LayerTreeHost::layerFlushTimerFired):
(WebKit::LayerTreeHost::pauseRendering):
(WebKit::LayerTreeHost::resumeRendering):

  • WebProcess/WebPage/CoordinatedGraphics/LayerTreeHostTextureMapper.h: Added m_isSuspended.
12:32 PM Changeset in webkit [282835] by pvollan@apple.com
  • 2 edits in trunk/Source/WebCore/PAL

[Mac Catalyst] Fix build issue
https://bugs.webkit.org/show_bug.cgi?id=230567
<rdar://83314629>

Reviewed by Brent Fulgham.

The identifier kLSDefaultSessionID is undeclared. Declare it for the internal build on Catalyst.

  • pal/spi/cocoa/LaunchServicesSPI.h:
11:54 AM Changeset in webkit [282834] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ macOS wk2 Release ] imported/w3c/web-platform-tests/page-visibility/unload-bubbles.html is a flaky failure.
https://bugs.webkit.org/show_bug.cgi?id=230571

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
11:45 AM Changeset in webkit [282833] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ Monterey GuardMalloc ] accessibility/* tests are timing out.
<rdar://82147955>

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations: Removed expectations
11:43 AM Changeset in webkit [282832] by mark.lam@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Replace a few ASSERTs with static_asserts in the ARM64 MacroAssemblers.
https://bugs.webkit.org/show_bug.cgi?id=230569

Reviewed by Yusuke Suzuki.

  • assembler/ARM64Assembler.h:
  • assembler/ARM64EAssembler.h:
11:30 AM Changeset in webkit [282831] by youenn@apple.com
  • 9 edits
    1 move in trunk/Source

NetworkRTCUDPSocketCocoaConnections should handle NAT64 IP addresses correctly
https://bugs.webkit.org/show_bug.cgi?id=230552
<rdar://83297256>

Reviewed by Alex Christensen.

Source/ThirdParty/libwebrtc:

  • Configurations/libwebrtc.iOS.exp:
  • Configurations/libwebrtc.iOSsim.exp:
  • Configurations/libwebrtc.mac.exp:

Source/WebKit:

When opening a UDP socket, check whether it is a NAT64 IPv4 address.
In that case, we cannot bind it like we used to do with the sockets API.
Instead use "0.0.0.0".
Manually tested.

  • NetworkProcess/webrtc/NetworkRTCTCPSocketCocoa.mm:
  • NetworkProcess/webrtc/NetworkRTCUDPSocketCocoa.mm:

(WebKit::isNat64IPAddress):
(WebKit::computeHostAddress):
(WebKit::NetworkRTCUDPSocketCocoaConnections::NetworkRTCUDPSocketCocoaConnections):

  • NetworkProcess/webrtc/NetworkRTCUtilitiesCocoa.h:
  • Platform/spi/Cocoa/NWSPI.h: Renamed from Source/WebKit/Platform/spi/Cocoa/NWParametersSPI.h.
  • WebKit.xcodeproj/project.pbxproj:
11:27 AM Changeset in webkit [282830] by commit-queue@webkit.org
  • 5 edits in trunk

Fix the behavior that 3d translation's second value is serialized to 0px regardless of its specified unit if it is zero value.
https://bugs.webkit.org/show_bug.cgi?id=230534

Patch by Joonghun Park <pjh0718@gmail.com> on 2021-09-21
Reviewed by Simon Fraser.

When being serialized, the css value's unit should be preserved.

LayoutTests/imported/w3c:

  • web-platform-tests/css/css-transforms/parsing/translate-parsing-valid-expected.txt:
  • web-platform-tests/css/css-transforms/parsing/translate-parsing-valid.html: updated from wpt repository.

Source/WebCore:

  • css/parser/CSSPropertyParser.cpp:

(WebCore::consumeTranslate):

11:26 AM Changeset in webkit [282829] by jer.noble@apple.com
  • 7 edits in trunk/Source

[iOS] Enable MSE in WKWebViews by default on iPad
https://bugs.webkit.org/show_bug.cgi?id=230426

Reviewed by Tim Horton.

Source/WebKit:

Add a default value getter for the MediaSourceEnabled preference.

  • Shared/WebPreferencesDefaultValues.cpp:

(WebKit::defaultMediaSourceEnabled):

  • Shared/WebPreferencesDefaultValues.h:
  • Shared/ios/WebPreferencesDefaultValuesIOS.mm:

(WebKit::defaultMediaSourceEnabled):

Source/WTF:

Give a default value getter for the MediaSourceEnabled preference.

  • Scripts/Preferences/WebPreferences.yaml:
11:04 AM Changeset in webkit [282828] by commit-queue@webkit.org
  • 6 edits
    6 adds in trunk

Add LLVM/FLang's int128_t implementation to WTF
https://bugs.webkit.org/show_bug.cgi?id=230437

Source/WTF:

Added int128_t implementation from LLVM, and its dependency
LeadingZeroBitCount.h. Both reformatted according to WebKit style.

Patch by Philip Chimento <philip.chimento@gmail.com> on 2021-09-21
Reviewed by Yusuke Suzuki.

  • LICENSE-LLVM.txt: Added.
  • WTF.xcodeproj/project.pbxproj:
  • wtf/CMakeLists.txt:
  • wtf/Int128.h: Added.

(WTF::Int128Impl::Int128Impl):
(WTF::Int128Impl::operator+ const):
(WTF::Int128Impl::operator~ const):
(WTF::Int128Impl::operator- const):
(WTF::Int128Impl::operator! const):
(WTF::Int128Impl::operator bool const):
(WTF::Int128Impl::operator std::uint64_t const):
(WTF::Int128Impl::operator std::int64_t const):
(WTF::Int128Impl::operator int const):
(WTF::Int128Impl::high const):
(WTF::Int128Impl::low const):
(WTF::Int128Impl::operator++):
(WTF::Int128Impl::operator--):
(WTF::Int128Impl::operator& const):
(WTF::Int128Impl::operator | const):
(WTF::Int128Impl::operator const):
(WTF::Int128Impl::operator<< const):
(WTF::Int128Impl::operator>> const):
(WTF::Int128Impl::operator* const):
(WTF::Int128Impl::operator/ const):
(WTF::Int128Impl::operator% const):
(WTF::Int128Impl::operator< const):
(WTF::Int128Impl::operator<= const):
(WTF::Int128Impl::operator== const):
(WTF::Int128Impl::operator!= const):
(WTF::Int128Impl::operator>= const):
(WTF::Int128Impl::operator> const):
(WTF::Int128Impl::operator&=):
(WTF::Int128Impl::operator|=):
(WTF::Int128Impl::operator
=):
(WTF::Int128Impl::operator<<=):
(WTF::Int128Impl::operator>>=):
(WTF::Int128Impl::operator+=):
(WTF::Int128Impl::operator-=):
(WTF::Int128Impl::operator*=):
(WTF::Int128Impl::operator/=):
(WTF::Int128Impl::operator%=):
(WTF::Int128Impl::leadingZeroes const):

  • wtf/LeadingZeroBitCount.cpp: Added.
  • wtf/LeadingZeroBitCount.h: Added.

(WTF::leadingZeroBitCount):
(WTF::bitsNeededFor):

Tools:

Added tests for Int128 and LeadingZeroBitCount copied from LLVM's tests,
reformatted according to WebKit style.

Patch by Philip Chimento <pchimento@igalia.com> on 2021-09-21
Reviewed by Yusuke Suzuki.

  • TestWebKitAPI/CMakeLists.txt:
  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WTF/Int128.cpp: Added.

(TestWebKitAPI::TestUnary):
(TestWebKitAPI::TestBinary):
(TestWebKitAPI::TEST):
(TestWebKitAPI::ToNative):
(TestWebKitAPI::FromNative):
(TestWebKitAPI::TestVsNative):

  • TestWebKitAPI/Tests/WTF/LeadingZeroBitCount.cpp: Added.

(countWithTwoShiftedBits):
(TEST):

10:49 AM Changeset in webkit [282827] by Alan Bujtas
  • 3 edits in trunk/Source/WebCore

[IFC][Integration] Removed unused AvoidanceReason::FlowTextHasSurrogatePair
https://bugs.webkit.org/show_bug.cgi?id=230559

Reviewed by Antti Koivisto.

  • layout/integration/LayoutIntegrationCoverage.cpp:

(WebCore::LayoutIntegration::printReason):

  • layout/integration/LayoutIntegrationCoverage.h:
10:25 AM Changeset in webkit [282826] by Eric Hutchison
  • 22 edits
    2 deletes in trunk

Unreviewed, reverting r282768.

Slowdown on Mac EWS builders as a constant failure.

Reverted changeset:

"box-shadow and text-shadow do not yield float values while
interpolating"
https://bugs.webkit.org/show_bug.cgi?id=230347
https://commits.webkit.org/r282768

10:05 AM Changeset in webkit [282825] by youenn@apple.com
  • 10 edits in trunk

imported/w3c/web-platform-tests/webrtc/RTCDataChannel-close.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=230399

Reviewed by Eric Carlson.

LayoutTests/imported/w3c:

  • web-platform-tests/webrtc/RTCDataChannel-close-expected.txt:
  • web-platform-tests/webrtc/RTCDataChannel-close.html:

Source/WebCore:

We fix a number of flaky issues:

  • RTCDataChannel::didChangeReadyState should queue a task and inside the task update the state + dispatch event. Previously, we were updating the state, then queueing a task to dispatch the event.
  • We were creating the data channel at the time we were creating the data channel handler. In that case, we might have missed some state changes. We now create the data channel handler as soon as possible, then queue a task where we create the data channel and fire the channel event.
  • We check the backend data channel state as soon as creating the data channel handler, instead of when creating the data channel for the same reason.
  • When we buffer states, we need to store whether an error occurs to properly fire the error event as needed.
  • Similarly to readyState, we need to queue a task to update bufferedAmount and, if needed, synchronously fire the bufferedAmountLow event.

Covered by updated RTCDataChannel-close.html.

  • Modules/mediastream/PeerConnectionBackend.cpp:

(WebCore::PeerConnectionBackend::newDataChannel):

  • Modules/mediastream/PeerConnectionBackend.h:
  • Modules/mediastream/RTCDataChannel.cpp:

(WebCore::RTCDataChannel::didChangeReadyState):
(WebCore::RTCDataChannel::bufferedAmountIsDecreasing):

  • Modules/mediastream/libwebrtc/LibWebRTCDataChannelHandler.cpp:

(WebCore::LibWebRTCDataChannelHandler::LibWebRTCDataChannelHandler):
(WebCore::LibWebRTCDataChannelHandler::dataChannelInit const):
(WebCore::LibWebRTCDataChannelHandler::label const):
(WebCore::LibWebRTCDataChannelHandler::setClient):
(WebCore::LibWebRTCDataChannelHandler::checkState):

  • Modules/mediastream/libwebrtc/LibWebRTCDataChannelHandler.h:
  • Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:

(WebCore::LibWebRTCMediaEndpoint::OnDataChannel):

9:47 AM Changeset in webkit [282824] by youenn@apple.com
  • 2 edits in trunk/LayoutTests/imported/w3c

RTCPeerConnection perfect negotiation tests are flaky
https://bugs.webkit.org/show_bug.cgi?id=230344

Reviewed by Alex Christensen.

Helper function checks that adding candidates only fails for candidates related to ignored descriptions.
But the flag that sets whther descriptions are ignored is set synchronously while it should be set once the description is applied.
Otherwise, errors related to the candidates that are in the operation queue related to the previously ignored description will not be ignored.

  • web-platform-tests/webrtc/RTCPeerConnection-perfect-negotiation-helper.js:

(try.async try):
(string_appeared_here.peer):

  • web-platform-tests/webrtc/RTCPeerConnection-perfect-negotiation.https-expected.txt:
9:39 AM Changeset in webkit [282823] by Alan Bujtas
  • 3 edits in trunk/Source/WebCore

[LFC][IFC] Ceil the descent value when adjusting the layout bounds for an inline box
https://bugs.webkit.org/show_bug.cgi?id=230557

Reviewed by Antti Koivisto.

Use ceil instead of floor to match legacy line layout positioning.

  • layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp: use ceilf everywhere

(WebCore::Layout::InlineDisplayContentBuilder::createRunsAndUpdateGeometryForLineContent):

  • layout/formattingContexts/inline/InlineLineBoxBuilder.cpp:

(WebCore::Layout::LineBoxBuilder::adjustVerticalGeometryForInlineBoxWithFallbackFonts const):
(WebCore::Layout::LineBoxBuilder::setInitialVerticalGeometryForInlineBox const):

9:37 AM Changeset in webkit [282822] by youenn@apple.com
  • 2 edits in trunk/Source/WebCore

[iOS] Disable default system gesture on extended gamepad
https://bugs.webkit.org/show_bug.cgi?id=230297
<rdar://65610651>

Reviewed by Brady Eidson.

Prevent default system behavior for some game pad gestures.
Not testable on bots.

  • platform/gamepad/cocoa/GameControllerGamepad.mm:

(WebCore::GameControllerGamepad::setupAsExtendedGamepad):

9:06 AM Changeset in webkit [282821] by Justin Michaud
  • 5 edits
    1 add in trunk

Differential testing: live statement don't execute
https://bugs.webkit.org/show_bug.cgi?id=229939

Reviewed by Saam Barati.

JSTests:

  • stress/in-by-val-should-throw.js: Added.

(doesThrow):
(noInline.doesThrow.noFTL.doesThrow.blackbox):
(noInline.blackbox.doesNotThrow):
(noInline.doesNotThrow.noFTL.doesNotThrow.main):

Source/JavaScriptCore:

In statements are supposed to throw if they are applied to a non-object. We incorrectly converted
InByVals into HasIndexedProperty any time they were a cell, so we silently converted non-objects. Before converting
an InByVal, we first speculate that the base is an object now.

We do not always require an object edge for HasIndexedProperty because enumerator next() does not
throw if it encounters a cell that requires conversion during the call to toObject (for example, a
string literal). That is, we should silently convert the string during enumeration, but not for an
In statement, and so HasIndexedProperty is prepared to handle both cases.

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::convertToHasIndexedProperty):

8:55 AM Changeset in webkit [282820] by eric.carlson@apple.com
  • 5 edits
    2 deletes in trunk/Source/WebCore

Remove unused CGWindowCaptureSource
https://bugs.webkit.org/show_bug.cgi?id=230520
<rdar://problem/83329399>

Reviewed by David Kilzer.

Remove CGWindowCaptureSource as it can't be used.

No new tests, no functional change.

  • SourcesCocoa.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/mediastream/mac/CGWindowCaptureSource.h: Removed.
  • platform/mediastream/mac/CGWindowCaptureSource.mm: Removed.
  • platform/mediastream/mac/DisplayCaptureManagerCocoa.cpp:

(WebCore::DisplayCaptureManagerCocoa::updateWindowCaptureDevices):
(WebCore::DisplayCaptureManagerCocoa::windowCaptureDeviceWithPersistentID):

  • platform/mediastream/mac/DisplayCaptureSourceMac.cpp:

(WebCore::DisplayCaptureSourceMac::create):

8:38 AM Changeset in webkit [282819] by Chris Dumez
  • 46 edits
    16 adds
    1 delete in trunk/LayoutTests/imported/w3c

Resync web-platform-tests/tools from upstream
https://bugs.webkit.org/show_bug.cgi?id=230512

Reviewed by Youenn Fablet.

Resync web-platform-tests/tools from upstream 1b3385871f3621acc91c76b806.

  • web-platform-tests/tools/*: Updated.
8:24 AM Changeset in webkit [282818] by commit-queue@webkit.org
  • 16 edits in trunk/Source

Use typed identifier for WebSocketChannel identifiers
https://bugs.webkit.org/show_bug.cgi?id=230486

Patch by Alex Christensen <achristensen@webkit.org> on 2021-09-21
Reviewed by Youenn Fablet.

Source/WebCore:

This also allows us to have an identifier for WebSocketChannels used in workers.

  • Modules/websockets/ThreadableWebSocketChannel.h:
  • Modules/websockets/WebSocketChannel.cpp:

(WebCore::WebSocketChannel::WebSocketChannel):

  • Modules/websockets/WebSocketChannel.h:
  • Modules/websockets/WebSocketChannelInspector.cpp:

(WebCore::WebSocketChannelInspector::WebSocketChannelInspector):
(WebCore::WebSocketChannelInspector::progressIdentifier const):

  • Modules/websockets/WebSocketChannelInspector.h:
  • Modules/websockets/WorkerThreadableWebSocketChannel.cpp:

(WebCore::WorkerThreadableWebSocketChannel::WorkerThreadableWebSocketChannel):

  • Modules/websockets/WorkerThreadableWebSocketChannel.h:
  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::didCreateWebSocketImpl):
(WebCore::InspectorInstrumentation::willSendWebSocketHandshakeRequestImpl):
(WebCore::InspectorInstrumentation::didReceiveWebSocketHandshakeResponseImpl):
(WebCore::InspectorInstrumentation::didCloseWebSocketImpl):
(WebCore::InspectorInstrumentation::didReceiveWebSocketFrameImpl):
(WebCore::InspectorInstrumentation::didReceiveWebSocketFrameErrorImpl):
(WebCore::InspectorInstrumentation::didSendWebSocketFrameImpl):

  • inspector/InspectorInstrumentation.h:

(WebCore::InspectorInstrumentation::didCreateWebSocket):
(WebCore::InspectorInstrumentation::willSendWebSocketHandshakeRequest):
(WebCore::InspectorInstrumentation::didReceiveWebSocketHandshakeResponse):
(WebCore::InspectorInstrumentation::didCloseWebSocket):
(WebCore::InspectorInstrumentation::didReceiveWebSocketFrame):
(WebCore::InspectorInstrumentation::didReceiveWebSocketFrameError):
(WebCore::InspectorInstrumentation::didSendWebSocketFrame):

  • inspector/agents/InspectorNetworkAgent.cpp:

(WebCore::InspectorNetworkAgent::didCreateWebSocket):
(WebCore::InspectorNetworkAgent::willSendWebSocketHandshakeRequest):
(WebCore::InspectorNetworkAgent::didReceiveWebSocketHandshakeResponse):
(WebCore::InspectorNetworkAgent::didCloseWebSocket):
(WebCore::InspectorNetworkAgent::didReceiveWebSocketFrame):
(WebCore::InspectorNetworkAgent::didSendWebSocketFrame):
(WebCore::InspectorNetworkAgent::didReceiveWebSocketFrameError):
(WebCore::InspectorNetworkAgent::webSocketForRequestId):

  • inspector/agents/InspectorNetworkAgent.h:
  • loader/ProgressTracker.cpp:

(WebCore::ProgressTracker::createUniqueIdentifier): Deleted.

  • loader/ProgressTracker.h:

Source/WebKit:

  • WebProcess/Network/WebSocketChannel.h:
8:10 AM Changeset in webkit [282817] by youenn@apple.com
  • 2 edits in trunk/LayoutTests

[BigSur E Wk2 Release] imported/w3c/web-platform-tests/webrtc/RTCRtpSender-encode-same-track-twice.https.html in flaky failure
https://bugs.webkit.org/show_bug.cgi?id=226054
<rdar://problem/78284384>

Unreviewed.

  • platform/mac-wk2/TestExpectations:

Remove flaky expectation.

8:05 AM Changeset in webkit [282816] by Antti Koivisto
  • 4 edits
    2 adds in trunk

REGRESSION(r282129): Double clicking margin of a block inside a <span> may select a wrong block
https://bugs.webkit.org/show_bug.cgi?id=230535

Reviewed by Alan Bujtas.

Source/WebCore:

If the blocks are inside a <span> we fail to search through continuation chain
and end up always selecting the first block inside it.

Test: editing/selection/hit-test-continuation-margin.html

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::positionForPoint):

The firstLineBox() test was really an "are inlines culled" test which stopped making sense
after inline culling was removed. Continuations need special handling but we would only
get to that code path if inlines were culled. After r282129 we would never get there.

Fix by removing the hasInlineBox test.

LayoutTests:

  • editing/selection/hit-test-continuation-margin-expected.html: Added.
  • editing/selection/hit-test-continuation-margin.html: Added.
7:54 AM Changeset in webkit [282815] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Fix JSC test runner warnings and errors on linux
https://bugs.webkit.org/show_bug.cgi?id=230218

Patch by Phillip Mates <Phillip Mates> on 2021-09-21
Reviewed by Jonathan Bedard.

Fixed the following warning that arises in many scripts when they are
run on Linux:
`Can't exec "xcodebuild": No such file or directory at
/home/mates/igalia/WebKit/Tools/Scripts/webkitdirs.pm line 634.`

Fixed run-javascriptcore-tests on Linux, which was failing to invoke
builds before running the test suite with the error:
Unrecognized option --64-bit'`

  • Scripts/webkitdirs.pm:

(XcodeOptions):
(determineIsWin64):
(determineIsWin64FromArchitecture): Deleted.

7:54 AM Changeset in webkit [282814] by Simon Fraser
  • 5 edits in trunk/Source/WebCore

ScrollAnimationSmooth should only have one way to start an animation
https://bugs.webkit.org/show_bug.cgi?id=230529

Reviewed by Martin Robinson.

Remove the ScrollbarOrientation/ScrollGranularity/step/multiplier entry point on
ScrollAnimationSmooth; the caller can do the math to compute the end point.

  • page/scrolling/nicosia/ScrollingTreeScrollingNodeDelegateNicosia.cpp:

(WebCore::ScrollingTreeScrollingNodeDelegateNicosia::handleWheelEvent):

  • platform/ScrollAnimationSmooth.cpp:

(WebCore::ScrollAnimationSmooth::startAnimatedScroll): Deleted.

  • platform/ScrollAnimationSmooth.h:
  • platform/ScrollAnimator.cpp:

(WebCore::ScrollAnimator::scroll):

7:50 AM Changeset in webkit [282813] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[webkitcorepy] Fail to parse python required version when there's a space between operator and version
https://bugs.webkit.org/show_bug.cgi?id=230549

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2021-09-21
Reviewed by Jonathan Bedard.

Add optional space between operator and version expression in regular expression.

  • Scripts/libraries/webkitcorepy/webkitcorepy/version.py:

(Version):

7:11 AM Changeset in webkit [282812] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.34/Source/JavaScriptCore

Merge r282722 - Fix CellTag being set 32 bits even if the base is not a cell
https://bugs.webkit.org/show_bug.cgi?id=230364

Patch by Mikhail R. Gadelha <Mikhail R. Gadelha> on 2021-09-17
Reviewed by Yusuke Suzuki.

Initial patch by Caio Lima.

In 32 bits the tag of the base was not being preserved before calling
the slow path and was instead being always being set to cellTag.

This patch slightly changes the code to instead of setting the cellTag,
it now calls the slow path using only the payload if the base is a cell,
otherwise it uses tag+payload.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileEnumeratorHasProperty):

6:46 AM Changeset in webkit [282811] by Antti Koivisto
  • 9 edits in trunk

[LFC][Integration] Enable markers and highlights
https://bugs.webkit.org/show_bug.cgi?id=230542

Reviewed by Alan Bujtas.

Source/WebCore:

Layout and paint highlights and markers without switching to legacy line layout.

  • Modules/highlight/Highlight.cpp:

(WebCore::repaintRange):

  • dom/DocumentMarkerController.cpp:

(WebCore::DocumentMarkerController::addMarker):

  • editing/Editor.cpp:

(WebCore::Editor::setComposition):

  • layout/integration/LayoutIntegrationCoverage.cpp:

(WebCore::LayoutIntegration::printReason):
(WebCore::LayoutIntegration::canUseForChild):
(WebCore::LayoutIntegration::canUseForLineLayoutWithReason):

  • layout/integration/LayoutIntegrationCoverage.h:
  • layout/integration/LayoutIntegrationLineLayout.cpp:

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

LayoutTests:

  • platform/mac/editing/mac/spelling/delete-autocorrected-word-2-expected.txt:
4:00 AM Changeset in webkit [282810] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

Unreviewed, reverting r282807.
https://bugs.webkit.org/show_bug.cgi?id=230546

This is causing imported/w3c/web-platform-tests/css/css-
fonts/parsing/font-palette-values-valid.html crash

Reverted changeset:

"Push font-palette-values data into CSSFontSelector"
https://bugs.webkit.org/show_bug.cgi?id=230447
https://commits.webkit.org/r282807

2:28 AM Changeset in webkit [282809] by Chris Lord
  • 2 edits in trunk/Source/WebCore

imported/w3c/web-platform-tests/css/css-font-loading/fontfaceset-load-var.html crashes
https://bugs.webkit.org/show_bug.cgi?id=229727
<rdar://problem/82834470>

Reviewed by Darin Adler.

Don't use CalcParser in raw CSS parsing functions that don't accept
a CSSValuePool parameter.

No new tests, covered by existing tests.

  • css/parser/CSSPropertyParserHelpers.cpp:

(WebCore::CSSPropertyParserHelpers::consumeCalcRawWithKnownTokenTypeFunction):
(WebCore::CSSPropertyParserHelpers::consumeIntegerTypeRawWithKnownTokenTypeFunction):
(WebCore::CSSPropertyParserHelpers::consumeNumberRawWithKnownTokenTypeFunction):
(WebCore::CSSPropertyParserHelpers::consumePercentRawWithKnownTokenTypeFunction):
(WebCore::CSSPropertyParserHelpers::consumeLengthRawWithKnownTokenTypeFunction):
(WebCore::CSSPropertyParserHelpers::consumeAngleRawWithKnownTokenTypeFunction):
(WebCore::CSSPropertyParserHelpers::consumeLengthOrPercentRaw):

2:22 AM Changeset in webkit [282808] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Prevent test from accessing FP registers if they are not available (e.g., arm softFP)
https://bugs.webkit.org/show_bug.cgi?id=230493

Unreviewed gardening.

The patch from https://bugs.webkit.org/show_bug.cgi?id=228543 introduced
explicity calls to FP registers, however, they are not available in archs
that emulate FPs. This patch adds an #ifdef to only enable the test if
the arch has FP registers.

Patch by Mikhail R. Gadelha <Mikhail R. Gadelha> on 2021-09-21

  • assembler/testmasm.cpp:

(JSC::testStoreBaseIndex):

2:21 AM Changeset in webkit [282807] by mmaxfield@apple.com
  • 4 edits in trunk/Source/WebCore

Push font-palette-values data into CSSFontSelector
https://bugs.webkit.org/show_bug.cgi?id=230447

Reviewed by Antti Koivisto.

In https://bugs.webkit.org/show_bug.cgi?id=230337 I added parsing support for font-palette-values.
This patch pushes the parsed data down into CSSFontSelector, so it can be passed into the font
creation routines. The data is retained, so it's always possible to query the CSSFontSelector for
the state of the world regarding font palettes.

No new tests because there is no behavior change. This querying functionality will be hooked up
in https://bugs.webkit.org/show_bug.cgi?id=230449.

  • css/CSSFontSelector.cpp:

(WebCore::CSSFontSelector::buildStarted):
(WebCore::CSSFontSelector::addFontPaletteValuesRule):
(WebCore::CSSFontSelector::fontRangesForFamily):

  • css/CSSFontSelector.h:
  • style/RuleSet.cpp:

(WebCore::Style::RuleSet::Builder::addChildRules):

1:24 AM Changeset in webkit [282806] by mmaxfield@apple.com
  • 28 edits
    3 copies
    7 adds in trunk

Parsing support for font-palette-values
https://bugs.webkit.org/show_bug.cgi?id=230337

Reviewed by Antti Koivisto.

LayoutTests/imported/w3c:

These are being upstreamed at https://github.com/web-platform-tests/wpt/pull/30840.

  • web-platform-tests/css/css-fonts/idlharness-expected.txt:
  • web-platform-tests/css/css-fonts/parsing/font-palette-values-invalid-expected.txt: Added.
  • web-platform-tests/css/css-fonts/parsing/font-palette-values-invalid.html: Added.
  • web-platform-tests/css/css-fonts/parsing/font-palette-values-valid-expected.txt: Added.
  • web-platform-tests/css/css-fonts/parsing/font-palette-values-valid.html: Added.

Source/WebCore:

There's nothing particularly interesting here - it's just support for another at-rule.
I've implemented what's in the spec right now:
https://drafts.csswg.org/css-fonts-4/#font-palette-values

There are 2 new descriptors: base-palette and override-color. I've added a new CSSValue subclass
for each of the items in the override-color list - these items are just tuples of two
CSSPrimitiveValues. I could have done this with a CSSValueList which always just happens to have
a length of 2, but I thought that was less elegant (and has an extra pointer indirection) than
making a class to hold the two CSSPrimitiveValues.

The only difference with what's in the spec is that I've given a different value to
FONT_PALETTE_VALUES_RULE, because its current value conflicts with VIEWPORT_RULE. This is being
tracked at https://github.com/w3c/csswg-drafts/issues/6623.

I created a new datatype and file in platform/graphics/FontPaletteValues.h because this data will
eventually be passed to preparePlatformFont(), which is in platform/, so this data needs to be
accessible from platform/ too.

Tests: imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-values-invalid.html

imported/w3c/web-platform-tests/css/css-fonts/parsing/font-palette-values-valid.html

  • CMakeLists.txt:
  • DerivedSources-input.xcfilelist:
  • DerivedSources-output.xcfilelist:
  • DerivedSources.make:
  • Headers.cmake:
  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSCSSRuleCustom.cpp:

(WebCore::toJSNewlyCreated):

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::valueForPropertyInStyle):

  • css/CSSFontPaletteValuesOverrideColorValue.cpp: Copied from Source/WebCore/css/StyleRuleType.h.

(WebCore::CSSFontPaletteValuesOverrideColorValue::customCSSText const):
(WebCore::CSSFontPaletteValuesOverrideColorValue::equals const):

  • css/CSSFontPaletteValuesOverrideColorValue.h: Copied from Source/WebCore/css/StyleRuleType.h.
  • css/CSSFontPaletteValuesRule.cpp: Added.

(WebCore::CSSFontPaletteValuesRule::CSSFontPaletteValuesRule):
(WebCore::CSSFontPaletteValuesRule::~CSSFontPaletteValuesRule):
(WebCore::parseString):
(WebCore::CSSFontPaletteValuesRule::fontFamily const):
(WebCore::CSSFontPaletteValuesRule::basePalette const):
(WebCore::CSSFontPaletteValuesRule::setFontFamily):
(WebCore::CSSFontPaletteValuesRule::setBasePalette):
(WebCore::CSSFontPaletteValuesRule::initializeMapLike):
(WebCore::CSSFontPaletteValuesRule::setFromMapLike):
(WebCore::CSSFontPaletteValuesRule::clear):
(WebCore::CSSFontPaletteValuesRule::remove):
(WebCore::CSSFontPaletteValuesRule::cssText const):
(WebCore::CSSFontPaletteValuesRule::reattach):

  • css/CSSFontPaletteValuesRule.h: Copied from Source/WebCore/css/StyleRuleType.h.
  • css/CSSFontPaletteValuesRule.idl: Added.
  • css/CSSProperties.json:
  • css/CSSRule.cpp:
  • css/CSSRule.h:
  • css/CSSRule.idl:
  • css/CSSValue.cpp:

(WebCore::CSSValue::equals const):
(WebCore::CSSValue::cssText const):
(WebCore::CSSValue::destroy):

  • css/CSSValue.h:

(WebCore::CSSValue::isFontPaletteValuesOverrideColorValue const):

  • css/StyleRule.cpp:

(WebCore::StyleRuleBase::destroy):
(WebCore::StyleRuleBase::copy const):
(WebCore::StyleRuleBase::createCSSOMWrapper const):
(WebCore::StyleRuleFontPaletteValues::StyleRuleFontPaletteValues):

  • css/StyleRule.h:

(WebCore::StyleRuleBase::isFontPaletteValuesRule const):
(isType):

  • css/StyleRuleType.h:
  • css/StyleSheetContents.cpp:

(WebCore::traverseRulesInVector):
(WebCore::StyleSheetContents::traverseSubresources const):

  • css/parser/CSSAtRuleID.cpp:

(WebCore::cssAtRuleID):

  • css/parser/CSSAtRuleID.h:
  • css/parser/CSSParserImpl.cpp:

(WebCore::CSSParserImpl::consumeAtRule):
(WebCore::CSSParserImpl::consumeFontPaletteValuesRule):
(WebCore::CSSParserImpl::consumeDeclaration):

  • css/parser/CSSParserImpl.h:
  • css/parser/CSSPropertyParser.cpp:

(WebCore::CSSPropertyParser::parseValue):
(WebCore::consumeBasePaletteDescriptor):
(WebCore::consumeOverrideColorDescriptor):
(WebCore::CSSPropertyParser::parseFontPaletteValuesDescriptor):

  • css/parser/CSSPropertyParser.h:
  • platform/graphics/FontPaletteValues.h: Added.

(WebCore::FontPaletteValues::FontPaletteValues):
(WebCore::FontPaletteValues::basePalette const):
(WebCore::FontPaletteValues::setBasePalette):
(WebCore::FontPaletteValues::overrideColor const):
(WebCore::FontPaletteValues::appendOverrideColor):
(WebCore::FontPaletteValues::clearOverrideColor):
(WebCore::FontPaletteValues::remove):

12:48 AM Changeset in webkit [282805] by mmaxfield@apple.com
  • 4 edits in trunk

Maplike infrastructure ASSERT()s if the first operation is a delete of a existing values
https://bugs.webkit.org/show_bug.cgi?id=230530

Reviewed by Youenn Fablet.

Source/WebCore:

The infrastructure deletes the value from the backing map before the JS map is initialized.
Then, when the infrastructure goes to delete it from the JS map, it isn't present. The
ASSERT() checks to see that it was deleted from the JS map iff it was deleted from the backing
map.

Test: js/dom/maplike.html

  • bindings/js/JSDOMMapLike.h:

(WebCore::forwardDeleteToMapLike):

LayoutTests:

  • js/dom/maplike.html:
12:26 AM Changeset in webkit [282804] by Ziran Sun
  • 7 edits in trunk

[css-grid] When the max is less than the min in minmax(), the max will be floored by the min
https://bugs.webkit.org/show_bug.cgi?id=230481

Reviewed by Sergio Villar Senin.

LayoutTests/imported/w3c:

Updated test expectation files as all the tests are passing.

  • web-platform-tests/css/css-grid/grid-definition/grid-auto-fill-columns-001-expected.txt:
  • web-platform-tests/css/css-grid/grid-definition/grid-auto-fill-rows-001-expected.txt:
  • web-platform-tests/css/css-grid/grid-definition/grid-auto-fit-columns-001-expected.txt:
  • web-platform-tests/css/css-grid/grid-definition/grid-auto-fit-rows-001-expected.txt:

Source/WebCore:

As per discussions in https://github.com/w3c/csswg-drafts/issues/4043, when the max is less than
the min in minmax()we need to floor the max track sizing function by the min track sizing function
when calculating the number of "auto-fit" or "auto-fill" repetitions. This change handles the
situations such as

  • If both the min and max track sizing functions are definite, use the maximum of them
  • If only one track sizing function is definite, use that one
  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::computeAutoRepeatTracksCount const):

12:18 AM Changeset in webkit [282803] by youenn@apple.com
  • 9 edits in trunk/Source/WebKit

Ensure that capture attribution works even for URLS without hostnames
https://bugs.webkit.org/show_bug.cgi?id=230479
<rdar://81832853>

Reviewed by Eric Carlson.

Some URLs allow to call getUserMedia but do not have origins, like custom scheme URLs.
In that case, the attribution status call was failing previously as we were not able to get a visible name to provide.
We mimick what we are doing for the default prompt by using the visible application name if the origin is not available.
Since we do the system attribution in GPUProcess, we now send the visible name to GPUProcess when creating it.

Manually tested.
We do not have system status attributon on MacOS or simulator so we cannot test it automatically.

  • GPUProcess/GPUProcess.cpp:

(WebKit::GPUProcess::initializeGPUProcess):

  • GPUProcess/GPUProcess.h:

(WebKit::GPUProcess::applicationVisibleName const):

  • GPUProcess/GPUProcessCreationParameters.cpp:

(WebKit::GPUProcessCreationParameters::encode const):
(WebKit::GPUProcessCreationParameters::decode):

  • GPUProcess/GPUProcessCreationParameters.h:
  • GPUProcess/cocoa/GPUConnectionToWebProcessCocoa.mm:

(WebKit::GPUConnectionToWebProcess::setCaptureAttributionString):

  • UIProcess/Cocoa/GPUProcessProxyCocoa.mm:

(WebKit::GPUProcessProxy::platformInitializeGPUProcessParameters):

  • UIProcess/Cocoa/MediaPermissionUtilities.mm:

(WebKit::applicationVisibleNameFromOrigin):
(WebKit::applicationVisibleName):
(WebKit::alertMessageText):

  • UIProcess/MediaPermissionUtilities.h:
12:14 AM Changeset in webkit [282802] by youenn@apple.com
  • 6 edits in trunk

Update list of WebRTC senders and receivers when updating local or remote descriptions
https://bugs.webkit.org/show_bug.cgi?id=230403

Reviewed by Eric Carlson.

LayoutTests/imported/w3c:

  • web-platform-tests/webrtc/no-media-call.html:

Check that transport is not null after setting the local description.

Source/WebCore:

Senders and receivers are only updated when updating descriptions, call collectTransceivers at those points.
We do this just before updating sender/receiver transports, which allows to fix a bug in case senders/receivers are not surfaced through track events.

Covered by updated tests.

  • Modules/mediastream/RTCPeerConnection.cpp:

(WebCore::RTCPeerConnection::getSenders const):
(WebCore::RTCPeerConnection::getReceivers const):
(WebCore::RTCPeerConnection::getTransceivers const):
(WebCore::RTCPeerConnection::updateTransceiversAfterSuccessfulLocalDescription):
(WebCore::RTCPeerConnection::updateTransceiversAfterSuccessfulRemoteDescription):

LayoutTests:

  • platform/mac-wk2/TestExpectations:
12:08 AM Changeset in webkit [282801] by Ziran Sun
  • 2 edits in trunk/Source/WebCore

[css-grid] FlexType is not applicable to min track sizing
https://bugs.webkit.org/show_bug.cgi?id=230405

Reviewed by Sergio Villar Senin.

For min track sizing, flexType is not applicable and shouldn't need a check.
This change is to remove the check that should not happen. No behaviour changes with
this change.

  • rendering/GridTrackSizingAlgorithm.cpp:

(WebCore::GridTrackSizingAlgorithm::spanningItemCrossesFlexibleSizedTracks const):

Sep 20, 2021:

10:27 PM Changeset in webkit [282800] by commit-queue@webkit.org
  • 3 edits
    8 adds in trunk

ANGLE Metal: single-component swizzles do not compile
https://bugs.webkit.org/show_bug.cgi?id=230472
<rdar://problem/83310780>

Patch by Kimmo Kinnunen <kkinnunen@apple.com> on 2021-09-20
Reviewed by Dean Jackson.

Source/ThirdParty/ANGLE:

Fix metal compiler compile errors when using
single value swizles (glslvariable.r) in position where lvalues would
be needed. Use the variable instead of single element array
(copy-paste typo).

  • src/compiler/translator/TranslatorMetalDirect/ProgramPrelude.cpp:

LayoutTests:

Add a test for testing the swizzles as lvalues.

  • webgl/pending/conformance/glsl/misc/swizzle-as-lvalue-expected.txt: Added.
  • webgl/pending/conformance/glsl/misc/swizzle-as-lvalue.html: Added.
  • webgl/pending/resources/webgl_test_files/conformance/glsl/misc/swizzle-as-lvalue.html: Added.
  • webgl/pending/resources/webgl_test_files/resources/glsl-feature-tests.css: Added.
10:15 PM Changeset in webkit [282799] by Chris Dumez
  • 106 edits in trunk/Source/WebCore

Drop remaining uses of makeRefPtr() in WebCore/
https://bugs.webkit.org/show_bug.cgi?id=230527

Reviewed by Alex Christensen.

  • html/CustomPaintImage.cpp:
  • html/DirectoryFileListCreator.cpp:

(WebCore::DirectoryFileListCreator::start):

  • html/FTPDirectoryDocument.cpp:

(WebCore::FTPDirectoryDocumentParser::loadDocumentTemplate):

  • html/FileInputType.cpp:

(WebCore::FileInputType::appendFormData const):
(WebCore::FileInputType::disabledStateChanged):
(WebCore::FileInputType::attributeChanged):
(WebCore::FileInputType::filesChosen):

  • html/HTMLDetailsElement.cpp:

(WebCore::HTMLDetailsElement::isActiveSummary const):
(WebCore::HTMLDetailsElement::parseAttribute):

  • html/HTMLDocument.cpp:

(WebCore::HTMLDocument::namedItem):

  • html/HTMLElement.cpp:

(WebCore::HTMLElement::editabilityFromContentEditableAttr):
(WebCore::imageOverlayHost):
(WebCore::HTMLElement::isInsideImageOverlay):
(WebCore::HTMLElement::updateWithTextRecognitionResult):

  • html/HTMLFormControlElement.cpp:

(WebCore::HTMLFormControlElement::didAttachRenderers):

  • html/HTMLFormControlsCollection.cpp:

(WebCore::findFormAssociatedElement):
(WebCore::HTMLFormControlsCollection::customElementAfter const):
(WebCore::HTMLFormControlsCollection::updateNamedElementCache const):

  • html/HTMLFormElement.cpp:

(WebCore::HTMLFormElement::~HTMLFormElement):
(WebCore::HTMLFormElement::length const):
(WebCore::HTMLFormElement::submitIfPossible):
(WebCore::HTMLFormElement::textFieldValues const):
(WebCore::HTMLFormElement::effectiveTarget const):
(WebCore::HTMLFormElement::elementFromPastNamesMap const):
(WebCore::HTMLFormElement::copyAssociatedElementsVector const):

  • html/HTMLFrameSetElement.cpp:

(WebCore::HTMLFrameSetElement::namedItem):

  • html/HTMLHtmlElement.cpp:

(WebCore::HTMLHtmlElement::insertedByParser):

  • html/HTMLImageElement.cpp:

(WebCore::HTMLImageElement::bestFitSourceFromPictureElement):
(WebCore::HTMLImageElement::evaluateDynamicMediaQueryDependencies):

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::defaultEventHandler):

  • html/HTMLLabelElement.cpp:

(WebCore::firstElementWithIdIfLabelable):

  • html/HTMLLegendElement.cpp:

(WebCore::HTMLLegendElement::form const):

  • html/HTMLLinkElement.cpp:

(WebCore::HTMLLinkElement::setCSSStyleSheet):
(WebCore::HTMLLinkElement::addSubresourceAttributeURLs const):

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::loadResource):
(WebCore::HTMLMediaElement::updateActiveTextTrackCues):
(WebCore::HTMLMediaElement::removeTextTrack):
(WebCore::HTMLMediaElement::layoutSizeChanged):

  • html/HTMLObjectElement.cpp:

(WebCore::shouldBeExposed):
(WebCore::HTMLObjectElement::appendFormData):

  • html/HTMLOptGroupElement.cpp:

(WebCore::HTMLOptGroupElement::recalcSelectOptions):

  • html/HTMLPlugInElement.cpp:

(WebCore::HTMLPlugInElement::bindingsInstance):
(WebCore::HTMLPlugInElement::isReplacementObscured):

  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::isImageType):
(WebCore::HTMLPlugInImageElement::willDetachRenderers):

  • html/HTMLSlotElement.cpp:

(WebCore::HTMLSlotElement::attributeChanged):
(WebCore::HTMLSlotElement::assignedNodes const):

  • html/HTMLSourceElement.cpp:

(WebCore::HTMLSourceElement::parseAttribute):

  • html/HTMLStyleElement.cpp:

(WebCore::HTMLStyleElement::addSubresourceAttributeURLs const):

  • html/HTMLTableRowElement.cpp:

(WebCore::findRows):

  • html/HTMLTrackElement.cpp:

(WebCore::HTMLTrackElement::mediaElement const):

  • html/LinkIconCollector.cpp:

(WebCore::LinkIconCollector::iconsOfTypes):

  • html/MediaDocument.cpp:

(WebCore::MediaDocumentParser::createDocumentStructure):
(WebCore::MediaDocument::defaultEventHandler):
(WebCore::MediaDocument::replaceMediaElementTimerFired):

  • html/MediaElementSession.cpp:

(WebCore::isElementRectMostlyInMainFrame):
(WebCore::isElementLargeRelativeToMainFrame):

  • html/PluginDocument.cpp:

(WebCore::PluginDocumentParser::createDocumentStructure):
(WebCore::PluginDocumentParser::appendBytes):

  • html/SubmitInputType.cpp:

(WebCore::SubmitInputType::handleDOMActivateEvent):

  • html/canvas/CanvasRenderingContext.cpp:

(WebCore::CanvasRenderingContext::wouldTaintOrigin):

  • html/canvas/CanvasStyle.cpp:

(WebCore::CanvasStyle::CanvasStyle):

  • html/canvas/WebGL2RenderingContext.cpp:

(WebCore::WebGL2RenderingContext::beginQuery):
(WebCore::WebGL2RenderingContext::getIndexedParameter):
(WebCore::WebGL2RenderingContext::getFramebufferAttachmentParameter):
(WebCore::WebGL2RenderingContext::getParameter):

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter):

  • html/canvas/WebGLRenderingContextBase.cpp:

(WebCore::WebGLRenderingContextBase::getParameter):

  • html/parser/HTMLConstructionSite.cpp:

(WebCore::executeReparentTask):
(WebCore::executeTakeAllChildrenAndReparentTask):
(WebCore::HTMLConstructionSite::dispatchDocumentElementAvailableIfNeeded):
(WebCore::HTMLConstructionSite::findFosterSite):

  • html/parser/HTMLPreloadScanner.cpp:

(WebCore::TokenPreloadScanner::StartTagScanner::processAttribute):

  • html/parser/XSSAuditorDelegate.cpp:

(WebCore::XSSAuditorDelegate::generateViolationReport):

  • html/shadow/TextControlInnerElements.cpp:

(WebCore::TextControlInnerTextElement::defaultEventHandler):
(WebCore::SearchFieldResultsButtonElement::resolveCustomStyle):
(WebCore::SearchFieldResultsButtonElement::defaultEventHandler):

  • html/shadow/TextPlaceholderElement.cpp:

(WebCore::TextPlaceholderElement::insertedIntoAncestor):
(WebCore::TextPlaceholderElement::removedFromAncestor):

  • html/track/InbandGenericTextTrack.cpp:

(WebCore::InbandGenericTextTrack::updateGenericCue):
(WebCore::InbandGenericTextTrack::removeGenericCue):

  • html/track/TextTrack.cpp:

(WebCore::TextTrack::addCue):
(WebCore::TextTrack::addRegion):

  • inspector/agents/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::setEmulatedMedia):

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::notifyFinished):
(WebCore::DocumentLoader::tryLoadingRedirectRequestFromApplicationCache):

  • loader/FormSubmission.cpp:

(WebCore::FormSubmission::create):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::loadURL):
(WebCore::FrameLoader::commitProvisionalLoad):
(WebCore::FrameLoader::checkLoadCompleteForThisFrame):
(WebCore::FrameLoader::scrollToFragmentWithParentBoundary):

  • loader/HistoryController.cpp:

(WebCore::FrameLoader::HistoryController::restoreScrollPositionAndViewState):

  • loader/NavigationScheduler.cpp:
  • loader/SubframeLoader.cpp:

(WebCore::FrameLoader::SubframeLoader::loadOrRedirectSubframe):

  • loader/cache/CachedFont.cpp:

(WebCore::CachedFont::createCustomFontData):

  • page/ContextMenuController.cpp:

(WebCore::ContextMenuController::contextMenuItemSelected):
(WebCore::ContextMenuController::populate):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::innerWidth const):
(WebCore::DOMWindow::requestIdleCallback):
(WebCore::DOMWindow::cancelIdleCallback):
(WebCore::DOMWindow::languagesChanged):
(WebCore::DOMWindow::dispatchLoadEvent):

  • page/DragController.cpp:

(WebCore::DragController::tryToUpdateDroppedImagePlaceholders):
(WebCore::DragController::insertDroppedImagePlaceholdersAtCaret):
(WebCore::DragController::finalizeDroppedImagePlaceholder):

  • page/EventHandler.cpp:

(WebCore::nodeToSelectOnMouseDownForNode):
(WebCore::expandSelectionToRespectSelectOnMouseDown):
(WebCore::EventHandler::canMouseDownStartSelect):
(WebCore::EventHandler::hitTestResultAtPoint const):
(WebCore::EventHandler::scheduleScrollEvent):

  • page/FrameView.cpp:

(WebCore::FrameView::scrollToFragmentInternal):
(WebCore::FrameView::scrollToFocusedElementInternal):

  • page/ImageOverlayController.cpp:

(WebCore::ImageOverlayController::selectionQuadsDidChange):

  • page/Page.cpp:

(WebCore::replaceRanges):
(WebCore::Page::replaceRangesWithText):
(WebCore::Page::setEditableRegionEnabled):
(WebCore::Page::editableElementsInRect const):
(WebCore::Page::doAfterUpdateRendering):
(WebCore::Page::setUnderPageBackgroundColorOverride):
(WebCore::Page::didFinishLoadingImageForElement):
(WebCore::Page::updateElementsWithTextRecognitionResults):

  • page/PageColorSampler.cpp:

(WebCore::PageColorSampler::sampleTop):

  • page/PointerLockController.cpp:

(WebCore::PointerLockController::enqueueEvent):

  • page/TextIndicator.cpp:

(WebCore::TextIndicator::createWithRange):

  • page/UndoManager.cpp:

(WebCore::UndoManager::addItem):

  • page/ios/EventHandlerIOS.mm:

(WebCore::EventHandler::focusDocumentView):

  • page/ios/FrameIOS.mm:

(WebCore::nodeIsMouseFocusable):

  • page/mac/EventHandlerMac.mm:

(WebCore::EventHandler::focusDocumentView):

  • page/mac/ImageOverlayControllerMac.mm:

(WebCore::ImageOverlayController::updateDataDetectorHighlights):
(WebCore::ImageOverlayController::platformHandleMouseEvent):
(WebCore::ImageOverlayController::handleDataDetectorAction):

  • page/mac/ServicesOverlayController.mm:

(WebCore::ServicesOverlayController::buildSelectionHighlight):

  • platform/PasteboardCustomData.cpp:

(WebCore::PasteboardCustomData::readBuffer const):

  • platform/graphics/avfoundation/CDMFairPlayStreaming.cpp:

(WebCore::CDMPrivateFairPlayStreaming::setLogger):

  • platform/graphics/avfoundation/objc/CDMInstanceFairPlayStreamingAVFObjC.mm:

(WebCore::CDMInstanceFairPlayStreamingAVFObjC::setLogger):
(WebCore::CDMInstanceSessionFairPlayStreamingAVFObjC::setLogger):

  • platform/graphics/avfoundation/objc/SourceBufferParserAVFObjC.mm:

(WebCore::SourceBufferParserAVFObjC::setLogger):

  • platform/graphics/cairo/ImageBufferCairoSurfaceBackend.cpp:

(WebCore::ImageBufferCairoSurfaceBackend::copyNativeImage const):

  • platform/graphics/cocoa/SourceBufferParserWebM.cpp:

(WebCore::SourceBufferParserWebM::setLogger):

  • platform/graphics/gstreamer/mse/AppendPipeline.cpp:

(WebCore::AppendPipeline::makeWebKitTrack):

  • platform/network/cocoa/RangeResponseGenerator.mm:
  • rendering/RenderElement.cpp:

(WebCore::RenderElement::selectionPseudoStyle const):

  • rendering/RenderThemeIOS.mm:

(WebCore::RenderThemeIOS::paintMeter):

  • storage/StorageEventDispatcher.cpp:

(WebCore::StorageEventDispatcher::dispatchSessionStorageEventsToFrames):
(WebCore::StorageEventDispatcher::dispatchLocalStorageEventsToFrames):

  • style/StyleScope.cpp:

(WebCore::Style::Scope::makeResolverSharingKey):

  • svg/SVGAElement.cpp:

(WebCore::SVGAElement::defaultEventHandler):

  • svg/SVGAnimateElementBase.cpp:

(WebCore::SVGAnimateElementBase::startAnimation):
(WebCore::SVGAnimateElementBase::calculateAnimatedValue):

  • svg/SVGAnimateMotionElement.cpp:

(WebCore::SVGAnimateMotionElement::hasValidAttributeType const):
(WebCore::SVGAnimateMotionElement::startAnimation):
(WebCore::SVGAnimateMotionElement::calculateAnimatedValue):
(WebCore::SVGAnimateMotionElement::applyResultsToTarget):

  • svg/SVGDocumentExtensions.cpp:

(WebCore::SVGDocumentExtensions::takeElementFromPendingResourcesForRemovalMap):

  • svg/SVGElement.cpp:

(WebCore::SVGElement::removeElementReference):
(WebCore::SVGElement::setCorrespondingElement):
(WebCore::SVGElement::resolveCustomStyle):
(WebCore::SVGElement::computedStyle):
(WebCore::SVGElement::updateRelativeLengthsInformation):

  • svg/SVGFEDiffuseLightingElement.cpp:

(WebCore::SVGFEDiffuseLightingElement::build const):

  • svg/SVGFEImageElement.cpp:

(WebCore::SVGFEImageElement::notifyFinished):

  • svg/SVGFELightElement.cpp:

(WebCore::SVGFELightElement::svgAttributeChanged):
(WebCore::SVGFELightElement::childrenChanged):

  • svg/SVGFESpecularLightingElement.cpp:

(WebCore::SVGFESpecularLightingElement::build const):

  • svg/SVGFilterPrimitiveStandardAttributes.cpp:

(WebCore::invalidateFilterPrimitiveParent):

  • svg/SVGFontFaceElement.cpp:

(WebCore::SVGFontFaceElement::rebuildFontFace):

  • svg/SVGFontFaceFormatElement.cpp:

(WebCore::SVGFontFaceFormatElement::childrenChanged):

  • svg/SVGFontFaceUriElement.cpp:

(WebCore::SVGFontFaceUriElement::childrenChanged):

  • svg/SVGForeignObjectElement.cpp:

(WebCore::SVGForeignObjectElement::rendererIsNeeded):

  • svg/SVGLengthContext.cpp:

(WebCore::SVGLengthContext::determineViewport const):

  • svg/SVGSVGElement.cpp:

(WebCore::SVGSVGElement::frameForCurrentScale const):
(WebCore::SVGSVGElement::deselectAll):
(WebCore::SVGSVGElement::localCoordinateSpaceTransform const):
(WebCore::SVGSVGElement::getElementById):

  • svg/SVGStyleElement.cpp:

(WebCore::SVGStyleElement::setDisabled):

  • svg/SVGTRefElement.cpp:

(WebCore::SVGTRefElement::detachTarget):

  • svg/SVGTransformList.cpp:

(WebCore::SVGTransformList::consolidate):

  • svg/SVGUseElement.cpp:

(WebCore::SVGUseElement::transferSizeAttributesToTargetClone const):

  • svg/animation/SVGSMILElement.cpp:

(WebCore::SVGSMILElement::buildPendingResource):
(WebCore::SVGSMILElement::insertedIntoAncestor):
(WebCore::SVGSMILElement::connectConditions):
(WebCore::SVGSMILElement::disconnectConditions):

  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::setContainerSize):
(WebCore::SVGImage::draw):
(WebCore::SVGImage::reportApproximateMemoryCost const):

  • svg/graphics/filters/SVGFEImage.cpp:

(WebCore::FEImage::platformApplySoftware):

  • svg/properties/SVGPropertyAnimator.h:

(WebCore::SVGPropertyAnimator::computeCSSPropertyValue const):
(WebCore::SVGPropertyAnimator::computeInheritedCSSPropertyValue const):

  • testing/Internals.cpp:

(WebCore::Internals::changeSelectionListType):
(WebCore::Internals::changeBackToReplacedString):

9:01 PM Changeset in webkit [282798] by Simon Fraser
  • 11 edits
    2 adds in trunk/Source/WebCore

Wrap ScrollingMomentumCalculator in a ScrollAnimationMomentum when used for scroll snap
https://bugs.webkit.org/show_bug.cgi?id=230506

Reviewed by Wenson Hsieh.

The long-term goal is to have all scroll animations run via ScrollAnimation subclasses,
and for there to be a class (ScrollAnimator or ScrollingEffectsController) that has
a member variable for the single active scroll animation, for there can be only one
at a time.

As a step towards that goal, make ScrollAnimationMomentum and have it wrap the
ScrollingMomentumCalculator. ScrollSnapAnimatorState then owns a ScrollAnimationMomentum.

Other ScrollAnimations are running their own timers (which should go away in future),
but for now ScrollAnimationMomentum is driven "manually" by ScrollSnapAnimatorState.
Facilitate this by having ScrollAnimation::serviceAnimation() return the current offset.

  • Headers.cmake:
  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/ScrollAnimation.h:

(WebCore::ScrollAnimationClient::scrollAnimationDidUpdate):
(WebCore::ScrollAnimationClient::scrollAnimationDidEnd):
(WebCore::ScrollAnimation::serviceAnimation):

  • platform/ScrollAnimationMomentum.cpp: Added.

(WebCore::ScrollAnimationMomentum::ScrollAnimationMomentum):
(WebCore::ScrollAnimationMomentum::startAnimatedScrollWithInitialVelocity):
(WebCore::ScrollAnimationMomentum::retargetActiveAnimation):
(WebCore::ScrollAnimationMomentum::stop):
(WebCore::ScrollAnimationMomentum::isActive const):
(WebCore::ScrollAnimationMomentum::serviceAnimation):
(WebCore::ScrollAnimationMomentum::updateScrollExtents):

  • platform/ScrollAnimationMomentum.h: Added.
  • platform/ScrollAnimationSmooth.cpp:
  • platform/ScrollSnapAnimatorState.cpp:

(WebCore::ScrollSnapAnimatorState::setupAnimationForState):
(WebCore::ScrollSnapAnimatorState::teardownAnimationForState):
(WebCore::ScrollSnapAnimatorState::currentAnimatedScrollOffset const):
(WebCore::ScrollSnapAnimatorState::scrollExtentsForAnimation):

  • platform/ScrollSnapAnimatorState.h:
  • platform/ScrollingEffectsController.cpp:
  • platform/ScrollingEffectsController.h:
  • platform/mac/ScrollingEffectsController.mm:

(WebCore::ScrollingEffectsController::statelessSnapTransitionTimerFired):

6:51 PM Changeset in webkit [282797] by Russell Epstein
  • 1 copy in tags/Safari-612.2.4.1.3

Tag Safari-612.2.4.1.3.

6:06 PM Changeset in webkit [282796] by Russell Epstein
  • 1 copy in tags/Safari-612.2.7

Tag Safari-612.2.7.

5:24 PM Changeset in webkit [282795] by commit-queue@webkit.org
  • 10 edits
    6 adds in trunk

Implement exp,log functions calc functions
https://bugs.webkit.org/show_bug.cgi?id=229897

Patch by Nikos Mouchtaris <Nikos Mouchtaris> on 2021-09-20
Reviewed by Simon Fraser.

LayoutTests/imported/w3c:

  • web-platform-tests/css/css-values/exp-log-compute.html: Added.
  • web-platform-tests/css/css-values/exp-log-invalid.html: Added.
  • web-platform-tests/css/css-values/exp-log-serialize.html: Added.

Source/WebCore:

Added support for calc functions exp and log. Involved adding exp and log CSS keywords and handling
for parsing these functions and their arguments as well as computing the result based on the arguments.
Spec for these functions: https://drafts.csswg.org/css-values-4/#exponent-funcs.

Tests: imported/w3c/web-platform-tests/css/css-values/exp-log-compute.html

imported/w3c/web-platform-tests/css/css-values/exp-log-invalid.html
imported/w3c/web-platform-tests/css/css-values/exp-log-serialize.html

  • css/CSSValueKeywords.in:
  • css/calc/CSSCalcExpressionNodeParser.cpp:

(WebCore::CSSCalcExpressionNodeParser::parseCalcFunction):

  • css/calc/CSSCalcOperationNode.cpp:

(WebCore::determineCategory):
(WebCore::functionFromOperator):
(WebCore::CSSCalcOperationNode::createLog):
(WebCore::CSSCalcOperationNode::createExp):
(WebCore::CSSCalcOperationNode::combineChildren):
(WebCore::CSSCalcOperationNode::simplifyNode):
(WebCore::functionPrefixForOperator):
(WebCore::CSSCalcOperationNode::evaluateOperator):

  • css/calc/CSSCalcOperationNode.h:
  • css/calc/CSSCalcValue.cpp:

(WebCore::createCSS):
(WebCore::CSSCalcValue::isCalcFunction):

  • platform/calc/CalcExpressionOperation.cpp:

(WebCore::CalcExpressionOperation::evaluate const):

  • platform/calc/CalcOperator.cpp:

(WebCore::operator<<):

  • platform/calc/CalcOperator.h:
5:14 PM Changeset in webkit [282794] by Chris Dumez
  • 2 edits in trunk/Source/WebKit

Avoid doing a second server pre-connect after a process-swap
https://bugs.webkit.org/show_bug.cgi?id=230517

Reviewed by Geoffrey Garen.

Avoid doing a second server pre-connect after a process-swap. It is unnecessary as we've already
asked the network process to do so before process-swapping.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::loadRequestWithNavigationShared):

4:45 PM Changeset in webkit [282793] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ iOS ] http/tests/websocket/tests/hybi/alert-in-event-handler.html is a flaky crash.
https://bugs.webkit.org/show_bug.cgi?id=230522

Unreviewed test gardening.

  • platform/ios-wk2/TestExpectations:
4:42 PM Changeset in webkit [282792] by Megan Gardner
  • 3 edits in trunk/Source/WebKit

Remove unused gesture code.
https://bugs.webkit.org/show_bug.cgi?id=230515

Reviewed by Wenson Hsieh.

  • Shared/ios/GestureTypes.h:
  • UIProcess/ios/WKContentViewInteraction.mm:

(toGestureType):
(toUIWKGestureType):

4:18 PM Changeset in webkit [282791] by Russell Epstein
  • 8 edits in branches/safari-612.2.4.1-branch/Source

Versioning.

WebKit-7612.2.4.1.3

4:09 PM Changeset in webkit [282790] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[ Catalina wk2 Release EWS ] imported/w3c/web-platform-tests/subresource-integrity/subresource-integrity.html is a flaky crash.
https://bugs.webkit.org/show_bug.cgi?id=230518.

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
4:08 PM Changeset in webkit [282789] by eric.carlson@apple.com
  • 7 edits in trunk/Source

[Cocoa] Videos sometimes don't render when loaded in the GPU process
https://bugs.webkit.org/show_bug.cgi?id=230495
rdar://83205407

Reviewed by Jer Noble.

The media players choose what type of video output to create based on whether
or not the renderer can support accelerated rendering. We were only pushing
this state to the GPU process when the renderer changed to require backing, but
that state was lost if that transition happened before the AVFoundation-backed
media player was created. Change this to push the current state from the web process
when a remote media player is created, and again whenever its readyState changes.

We haven't figured out how to reliably reproduce this, so https://webkit.org/b/230500
tracks figuring that out and creating a test.

  • GPUProcess/media/RemoteMediaPlayerProxy.cpp:

(WebKit::RemoteMediaPlayerProxy::RemoteMediaPlayerProxy): Set m_renderingCanBeAccelerated
from the configuration.
(WebKit::RemoteMediaPlayerProxy::prepareToPlay): Add logging.
(WebKit::RemoteMediaPlayerProxy::prepareForRendering): Ditto.
(WebKit::RemoteMediaPlayerProxy::setPageIsVisible): Ditto.
(WebKit::RemoteMediaPlayerProxy::acceleratedRenderingStateChanged): Ditto.
(WebKit::RemoteMediaPlayerProxy::mediaPlayerReadyStateChanged): Ditto.

  • GPUProcess/media/RemoteMediaPlayerProxyConfiguration.h: Add renderingCanBeAccelerated.

(WebKit::RemoteMediaPlayerProxyConfiguration::encode const):
(WebKit::RemoteMediaPlayerProxyConfiguration::decode): Decode it.

  • WebProcess/GPU/media/MediaPlayerPrivateRemote.cpp:

(WebKit::MediaPlayerPrivateRemote::readyStateChanged): Call acceleratedRenderingStateChanged
if the state has changed.
(WebKit::MediaPlayerPrivateRemote::acceleratedRenderingStateChanged): Remember
the state.

  • WebProcess/GPU/media/MediaPlayerPrivateRemote.h:
  • WebProcess/GPU/media/RemoteMediaPlayerManager.cpp:

(WebKit::RemoteMediaPlayerManager::createRemoteMediaPlayer): Pass the accelerated
rendering state with the configuration.

3:40 PM Changeset in webkit [282788] by Ross Kirsling
  • 6 edits in trunk/Source

Unreviewed build fix for WinCairo with ENABLE_EXPERIMENTAL_FEATURES off.

Source/WebCore:

  • rendering/TextBoxPainter.cpp:

(WebCore::TextBoxPainter::paintForeground):

  • rendering/TextBoxPainter.h:

Source/WebKit:

  • NetworkProcess/NetworkSession.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::createNewPage):

3:05 PM Changeset in webkit [282787] by Eric Hutchison
  • 3 edits in trunk/LayoutTests

[ BigSur Catalina iOS14 wk2 Release ] imported/w3c/web-platform-tests/html/webappapis/structured-clone/structured-clone.any.html is a flaky crash.
https://bugs.webkit.org/show_bug.cgi?id=230514.

Unreviewed test gardening.

  • platform/ios-14-wk2/TestExpectations:
  • platform/mac-wk2/TestExpectations:
2:51 PM Changeset in webkit [282786] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ iOS ] fast/viewport/scroll-delegates-switch-on-page-with-no-composition-mode-asserts.html is a flaky crash.
https://bugs.webkit.org/show_bug.cgi?id=230513

Unreviewed test gardening.

  • platform/ios-wk2/TestExpectations:
2:46 PM Changeset in webkit [282785] by Chris Dumez
  • 2 edits in trunk/Source/WebKit

Unreviewed, rebaseline webkitpy test after r282755.

  • Scripts/webkit/tests/TestWithCVPixelBufferMessageReceiver.cpp:

(WebKit::TestWithCVPixelBuffer::didReceiveMessage):
(WebKit::TestWithCVPixelBuffer::didReceiveSyncMessage):

2:45 PM Changeset in webkit [282784] by Chris Dumez
  • 61 edits in trunk

Reduce use of makeRefPtr() and use RefPtr { } directly
https://bugs.webkit.org/show_bug.cgi?id=230503

Reviewed by Geoffrey Garen.

Source/WebCore:

  • Modules/async-clipboard/Clipboard.cpp:

(WebCore::Clipboard::readText):
(WebCore::Clipboard::writeText):
(WebCore::Clipboard::read):
(WebCore::Clipboard::getType):
(WebCore::Clipboard::write):

  • Modules/async-clipboard/ClipboardItemBindingsDataSource.cpp:

(WebCore::ClipboardItemBindingsDataSource::getType):
(WebCore::ClipboardItemBindingsDataSource::collectDataForWriting):
(WebCore::ClipboardItemBindingsDataSource::invokeCompletionHandler):

  • Modules/async-clipboard/ClipboardItemPasteboardDataSource.cpp:

(WebCore::ClipboardItemPasteboardDataSource::getType):

  • Modules/highlight/AppHighlightStorage.cpp:

(WebCore::findNodeStartingAtPathComponentIndex):
(WebCore::findNode):
(WebCore::AppHighlightStorage::attemptToRestoreHighlightAndScroll):

  • Modules/indexeddb/IDBObjectStore.cpp:

(WebCore::IDBObjectStore::deleteFunction):

  • Modules/mediacontrols/MediaControlsHost.cpp:

(WebCore::MediaControlsHost::showMediaControlsContextMenu):

  • Modules/mediasession/MediaSession.cpp:

(WebCore::MediaSession::MediaSession):

  • Modules/mediasession/MediaSessionCoordinator.cpp:

(WebCore::MediaSessionCoordinator::join):
(WebCore::MediaSessionCoordinator::seekTo):
(WebCore::MediaSessionCoordinator::play):
(WebCore::MediaSessionCoordinator::pause):
(WebCore::MediaSessionCoordinator::setTrack):

  • Modules/mediasession/MediaSessionCoordinatorPrivate.cpp:

(WebCore::MediaSessionCoordinatorPrivate::setLogger):

  • Modules/mediastream/MediaStream.cpp:

(WebCore::createTrackPrivateVector):

  • Modules/paymentrequest/PaymentRequest.cpp:

(WebCore::PaymentRequest::shippingAddressChanged):

  • Modules/speech/SpeechRecognition.cpp:

(WebCore::SpeechRecognition::SpeechRecognition):

  • Modules/webdatabase/Database.cpp:

(WebCore::Database::scheduleTransactionCallback):

  • Modules/webxr/WebXRInputSource.cpp:

(WebCore::WebXRInputSource::update):
(WebCore::WebXRInputSource::pollEvents):

  • Modules/webxr/WebXRInputSourceArray.cpp:

(WebCore::WebXRInputSourceArray::update):

  • Modules/webxr/WebXRSession.cpp:

(WebCore::WebXRSession::didCompleteShutdown):

  • accessibility/AXObjectCache.cpp:

(WebCore::AXObjectCache::handleAriaExpandedChange):

  • accessibility/isolatedtree/AXIsolatedTree.cpp:

(WebCore::AXIsolatedTree::treeForPageID):

  • animation/DocumentTimelinesController.cpp:

(WebCore::DocumentTimelinesController::cacheCurrentTime):

  • animation/KeyframeEffect.cpp:

(WebCore::KeyframeEffect::setTarget):

  • animation/WebAnimation.cpp:

(WebCore::WebAnimation::finishNotificationSteps):

  • bridge/runtime_object.cpp:

(JSC::Bindings::JSC_DEFINE_HOST_FUNCTION):

  • dom/ContainerNode.cpp:

(WebCore::ContainerNode::removeSelfOrChildNodesForInsertion):

  • dom/Document.cpp:

(WebCore::Document::updateTitle):
(WebCore::Document::implicitClose):
(WebCore::Document::didRemoveAllPendingStylesheet):
(WebCore::Document::prepareMouseEvent):
(WebCore::command):

  • dom/Element.cpp:

(WebCore::Element::scrollTo):
(WebCore::Element::offsetLeftForBindings):
(WebCore::Element::offsetTopForBindings):
(WebCore::Element::focus):

  • dom/EventContext.h:

(WebCore::EventContext::EventContext):

  • dom/EventDispatcher.cpp:

(WebCore::EventDispatcher::dispatchEvent):

  • dom/FullscreenManager.cpp:

(WebCore::FullscreenManager::requestFullscreenForElement):
(WebCore::FullscreenManager::exitFullscreen):

  • dom/IdleDeadline.cpp:

(WebCore::IdleDeadline::timeRemaining const):
(WebCore::IdleDeadline::didTimeout const):

  • dom/MutationObserver.cpp:

(WebCore::MutationObserver::disconnect):

  • dom/Position.cpp:

(WebCore::Position::firstNode const):
(WebCore::makeBoundaryPoint):

  • dom/SlotAssignment.cpp:

(WebCore::SlotAssignment::removeSlotElementByName):
(WebCore::SlotAssignment::didChangeSlot):

  • dom/messageports/WorkerMessagePortChannelProvider.cpp:

(WebCore::WorkerMessagePortChannelProvider::takeAllMessagesForPort):
(WebCore::WorkerMessagePortChannelProvider::checkRemotePortForActivity):

  • editing/ApplyBlockElementCommand.cpp:

(WebCore::ApplyBlockElementCommand::endOfNextParagraphSplittingTextNodesIfNeeded):

  • editing/ApplyStyleCommand.cpp:

(WebCore::ApplyStyleCommand::applyBlockStyle):
(WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
(WebCore::ApplyStyleCommand::splitAncestorsWithUnicodeBidi):
(WebCore::ApplyStyleCommand::removeEmbeddingUpToEnclosingBlock):
(WebCore::highestEmbeddingAncestor):
(WebCore::ApplyStyleCommand::fixRangeAndApplyInlineStyle):
(WebCore::containsNonEditableRegion):
(WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
(WebCore::ApplyStyleCommand::shouldApplyInlineStyleToRun):
(WebCore::ApplyStyleCommand::highestAncestorWithConflictingInlineStyle):
(WebCore::ApplyStyleCommand::removeInlineStyle):
(WebCore::ApplyStyleCommand::mergeStartWithPreviousIfIdentical):
(WebCore::ApplyStyleCommand::mergeEndWithNextIfIdentical):
(WebCore::ApplyStyleCommand::surroundNodeRangeWithElement):
(WebCore::ApplyStyleCommand::joinChildTextNodes):

  • editing/ChangeListTypeCommand.cpp:

(WebCore::ChangeListTypeCommand::listConversionType):

  • editing/CompositeEditCommand.cpp:

(WebCore::postTextStateChangeNotification):
(WebCore::CompositeEditCommand::insertNodeBefore):
(WebCore::CompositeEditCommand::insertNodeAfter):
(WebCore::CompositeEditCommand::insertNodeAt):
(WebCore::CompositeEditCommand::removeChildrenInRange):
(WebCore::CompositeEditCommand::removeNodeAndPruneAncestors):
(WebCore::CompositeEditCommand::prune):
(WebCore::CompositeEditCommand::positionOutsideTabSpan):
(WebCore::CompositeEditCommand::textNodeForRebalance const):
(WebCore::CompositeEditCommand::prepareWhitespaceAtPositionForSplit):
(WebCore::CompositeEditCommand::cleanupAfterDeletion):
(WebCore::CompositeEditCommand::moveParagraphs):

  • editing/DeleteSelectionCommand.cpp:

(WebCore::isTableRowEmpty):
(WebCore::firstInSpecialElement):
(WebCore::lastInSpecialElement):
(WebCore::DeleteSelectionCommand::initializePositionData):
(WebCore::DeleteSelectionCommand::handleSpecialCaseBRDelete):
(WebCore::firstEditablePositionInNode):
(WebCore::DeleteSelectionCommand::removeNode):
(WebCore::DeleteSelectionCommand::makeStylingElementsDirectChildrenOfEditableRootToPreventStyleLoss):
(WebCore::DeleteSelectionCommand::handleGeneralDelete):
(WebCore::DeleteSelectionCommand::mergeParagraphs):
(WebCore::DeleteSelectionCommand::removePreviouslySelectedEmptyTableRows):
(WebCore::DeleteSelectionCommand::removeRedundantBlocks):
(WebCore::DeleteSelectionCommand::doApply):

  • editing/EditCommand.cpp:

(WebCore::EditCommand::postTextStateChangeNotification):

  • editing/Editing.cpp:

(WebCore::highestNodeToRemoveInPruning):

  • editing/Editor.cpp:

(WebCore::Editor::selectionForCommand):
(WebCore::Editor::shouldInsertFragment):
(WebCore::Editor::replaceSelectionWithFragment):
(WebCore::Editor::respondToChangedContents):
(WebCore::Editor::hasBidiSelection const):
(WebCore::Editor::selectionUnorderedListState const):
(WebCore::Editor::selectionOrderedListState const):
(WebCore::Editor::findEventTargetFrom const):
(WebCore::Editor::applyStyle):
(WebCore::Editor::applyParagraphStyle):
(WebCore::notifyTextFromControls):
(WebCore::Editor::willApplyEditing):
(WebCore::Editor::insertTextWithoutSendingTextEvent):
(WebCore::Editor::copyImage):
(WebCore::Editor::renderLayerDidScroll):
(WebCore::Editor::setBaseWritingDirection):
(WebCore::Editor::baseWritingDirectionForSelectionStart const):
(WebCore::Editor::confirmOrCancelCompositionAndNotifyClient):
(WebCore::Editor::setComposition):
(WebCore::Editor::advanceToNextMisspelling):
(WebCore::Editor::markMisspellingsAfterTypingToWord):
(WebCore::Editor::isSpellCheckingEnabledFor const):
(WebCore::Editor::markAndReplaceFor):
(WebCore::Editor::removeTextPlaceholder):
(WebCore::Editor::applyEditingStyleToBodyElement const):
(WebCore::findFirstMarkable):
(WebCore::Editor::resolveTextCheckingTypeMask):
(WebCore::editableTextListsAtPositionInDescendingOrder):
(WebCore::Editor::fontAttributesAtSelectionStart):
(WebCore::Editor::styleForSelectionStart):

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::setSelection):
(WebCore::FrameSelection::selectFrameElementInParentIfFullySelected):

  • editing/InsertListCommand.cpp:

(WebCore::InsertListCommand::fixOrphanedListChild):
(WebCore::InsertListCommand::unlistifyParagraph):

  • editing/InsertNestedListCommand.cpp:

(WebCore::InsertNestedListCommand::doApply):

  • editing/RemoveNodePreservingChildrenCommand.cpp:

(WebCore::RemoveNodePreservingChildrenCommand::doApply):

  • editing/ReplaceSelectionCommand.cpp:

(WebCore::positionAvoidingPrecedingNodes):
(WebCore::ReplacementFragment::ReplacementFragment):
(WebCore::ReplacementFragment::removeUnrenderedNodes):
(WebCore::ReplacementFragment::removeInterchangeNodes):
(WebCore::ReplaceSelectionCommand::shouldMerge):
(WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):
(WebCore::ReplaceSelectionCommand::makeInsertedContentRoundTrippableWithHTMLTreeBuilder):
(WebCore::ReplaceSelectionCommand::moveNodeOutOfAncestor):
(WebCore::ReplaceSelectionCommand::removeUnrenderedTextNodesAtEnds):
(WebCore::ReplaceSelectionCommand::positionAtEndOfInsertedContent const):
(WebCore::handleStyleSpansBeforeInsertion):
(WebCore::ReplaceSelectionCommand::handleStyleSpans):
(WebCore::enclosingInline):
(WebCore::ReplaceSelectionCommand::doApply):
(WebCore::ReplaceSelectionCommand::shouldPerformSmartReplace const):
(WebCore::ReplaceSelectionCommand::addSpacesForSmartReplace):
(WebCore::singleChildList):
(WebCore::deepestSingleChildList):
(WebCore::ReplaceSelectionCommand::insertAsListItems):

  • editing/TextIterator.cpp:

(WebCore::TextIterator::handleReplacedElement):

  • editing/TextManipulationController.cpp:

(WebCore::TextManipulationController::startObservingParagraphs):
(WebCore::tokenInfo):
(WebCore::isEnclosingItemBoundaryElement):
(WebCore::TextManipulationController::observeParagraphs):
(WebCore::TextManipulationController::scheduleObservationUpdate):
(WebCore::TextManipulationController::replace):

  • editing/VisibleSelection.cpp:

(WebCore::VisibleSelection::document const):

  • editing/cocoa/DataDetection.mm:

(WebCore::DataDetection::createElementForImageOverlay):

  • editing/cocoa/WebContentReaderCocoa.mm:

(WebCore::replaceRichContentWithAttachments):
(WebCore::WebContentReader::readDataBuffer):

  • editing/markup.cpp:

(WebCore::serializePreservingVisualAppearanceInternal):
(WebCore::sanitizedMarkupForFragmentInDocument):

  • page/VisualViewport.cpp:

(WebCore::VisualViewport::update):

  • platform/audio/cocoa/AudioSampleDataSource.mm:

(WebCore::AudioSampleDataSource::setupConverter):
(WebCore::AudioSampleDataSource::pushSamplesInternal):
(WebCore::AudioSampleDataSource::pullSamplesInternal):

  • platform/graphics/cocoa/WebCoreDecompressionSession.mm:

(WebCore::WebCoreDecompressionSession::enqueueSample):

Source/WTF:

  • wtf/CrossThreadTask.h:

(WTF::createCrossThreadTask):

Tools:

  • WebKitTestRunner/ios/UIScriptControllerIOS.mm:

(WTR::UIScriptControllerIOS::singleTapAtPointWithModifiers):
(WTR::UIScriptControllerIOS::sendEventStream):
(WTR::UIScriptControllerIOS::dragFromPointToPoint):

  • WebKitTestRunner/mac/UIScriptControllerMac.mm:

(WTR::UIScriptControllerMac::activateDataListSuggestion):

2:36 PM Changeset in webkit [282783] by commit-queue@webkit.org
  • 7 edits in trunk

WebKit might load custom URI scheme request content multiple times
https://bugs.webkit.org/show_bug.cgi?id=229116

Source/WebKit:

Patch by Alex Christensen <achristensen@webkit.org> on 2021-09-20
Reviewed by Brady Eidson.

Use a ResourceLoaderIdentifier and a WebPageProxyIdentifier as keys in WebURLSchemeHandler.
This also makes it so that we don't need a new one per page on Cocoa platforms.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _initializeWithConfiguration:]):

  • UIProcess/WebURLSchemeHandler.cpp:

(WebKit::WebURLSchemeHandler::startTask):
(WebKit::WebURLSchemeHandler::processForTaskIdentifier const):
(WebKit::WebURLSchemeHandler::stopAllTasksForPage):
(WebKit::WebURLSchemeHandler::stopTask):
(WebKit::WebURLSchemeHandler::taskCompleted):

  • UIProcess/WebURLSchemeHandler.h:
  • UIProcess/WebURLSchemeTask.cpp:

(WebKit::WebURLSchemeTask::didComplete):

Tools:

Patch by Michael Catanzaro <Michael Catanzaro> on 2021-09-20
Reviewed by Brady Eidson.

Let's load the same URL 50 times and make sure all loads complete with the same content.
Without the fix, the test hangs forever spinning its main loop, because only a few of the
requests actually complete, so the test gets stuck waiting.

Note I picked 50 because when running the test 100 times, wpebackend-fdo dies to an
unrelated problem: its internal Wayland registry stops registering new global objects, and
each new web process starts crashing. That's weird, but not the problem we're trying to
solve today.

  • TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp:

(createTestWebViewWithWebContext):
(testWebContextURIScheme):

2:16 PM Changeset in webkit [282782] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

[IFC][Integration] canUseForText should take surrogate pairs into account when checking for directional characters
https://bugs.webkit.org/show_bug.cgi?id=230498

Reviewed by Antti Koivisto.

In this patch we start using U16_NEXT to properly loop through the characters to find their directions (RTL vs LTR).
(Note that this is temporary and will be removed when bidi handling is enabled for IFC)

  • layout/integration/LayoutIntegrationCoverage.cpp:

(WebCore::LayoutIntegration::canUseForText):
(WebCore::LayoutIntegration::canUseForCharacter): Deleted. These functions have shrunk so much, we don't need to template them anymore.

2:12 PM Changeset in webkit [282781] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

Update test expectations for js/dfg-uint32array-overflow-values.html.
https://bugs.webkit.org/show_bug.cgi?id=229594.

Unreviewed test gardening.

  • platform/win/TestExpectations:
2:05 PM Changeset in webkit [282780] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[iOS14] fast/events/ios/dom-update-on-keydown-quirk.html is a flaky failure.
https://bugs.webkit.org/show_bug.cgi?id=230509.

Unreviewed test gardening.

  • platform/ios-14-wk2/TestExpectations:
1:58 PM Changeset in webkit [282779] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

[LFC][IFC] Incorrect surrogate handling when dealing with short lines
https://bugs.webkit.org/show_bug.cgi?id=230487

Reviewed by Antti Koivisto.

Do not use 1 as the content length when dealing with text where even the first glyph does not fit the line.
(This functionality is mostly disabled by the missing font fallback feature. see webkit.org/b/228685 and imported/w3c/web-platform-tests/css/css-text/word-break/word-break-break-all-014.html)

  • layout/formattingContexts/inline/InlineContentBreaker.cpp:

(WebCore::Layout::InlineContentBreaker::processOverflowingContent const): this matches InlineIterator::incrementByCodePointInTextNode

1:56 PM Changeset in webkit [282778] by youenn@apple.com
  • 5 edits in trunk

Make sure RTCRtpSender.setParameters returns an exception with a valid type
https://bugs.webkit.org/show_bug.cgi?id=230476

Reviewed by Alex Christensen.

LayoutTests/imported/w3c:

  • web-platform-tests/webrtc/RTCRtpParameters-encodings-expected.txt:
  • web-platform-tests/webrtc/RTCRtpParameters-transactionId-expected.txt:

Source/WebCore:

Covered by rebased test.

  • Modules/mediastream/libwebrtc/LibWebRTCRtpSenderBackend.cpp:

(WebCore::LibWebRTCRtpSenderBackend::setParameters):
Make sure to convert correctly the error.

1:50 PM September 2021 Meeting created by Jon Davis
1:44 PM Changeset in webkit [282777] by Simon Fraser
  • 4 edits in trunk/Source/WebCore

ScrollSnapAnimatorState should be explicit about when it starts animations
https://bugs.webkit.org/show_bug.cgi?id=230497

Reviewed by Wenson Hsieh.

ScrollSnapAnimatorState::transitionTo* functions may not actually trigger an animation
if the target offset ends up as the initial offset. This currently happens to work
because ScrollingMomentumCalculator reports a duration of zero in this case, but
it's better to just make it clear that no animation was started.

Exercised by tiled-drawing/scrolling/scroll-snap/scroll-snap-mandatory-mainframe-slow-vertical.html

  • platform/ScrollSnapAnimatorState.cpp:

(WebCore::ScrollSnapAnimatorState::transitionToSnapAnimationState):
(WebCore::ScrollSnapAnimatorState::transitionToGlideAnimationState):
(WebCore::ScrollSnapAnimatorState::setupAnimationForState):

  • platform/ScrollSnapAnimatorState.h:
  • platform/mac/ScrollingEffectsController.mm:

(WebCore::ScrollingEffectsController::processWheelEventForScrollSnap):

1:41 PM Changeset in webkit [282776] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[ Catalina, BigSur wk2 Release ] css3/masking/reference-clip-path-animate-transform-repaint.html is a flaky failure.
https://bugs.webkit.org/show_bug.cgi?id=230504.

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
1:39 PM Changeset in webkit [282775] by Darin Adler
  • 3 edits in trunk/Source/WebCore

Clean up overrides of DisplayCaptureSourceMac::Capturer::generateFrame()
<https://webkit.org/b/230491>
<rdar://problem/83315212>

Reviewed by David Kilzer.

  • platform/mediastream/mac/CGDisplayStreamCaptureSource.cpp:

(WebCore::CGDisplayStreamCaptureSource::generateFrame):

  • platform/mediastream/mac/CGWindowCaptureSource.mm:

(WebCore::CGWindowCaptureSource::generateFrame):

  • Simplify return value expression.
1:37 PM Changeset in webkit [282774] by Peng Liu
  • 2 edits in trunk/Source/WebCore

[GPUP] Videos appear black but audio plays normally
https://bugs.webkit.org/show_bug.cgi?id=230471
<rdar://82121369>

Reviewed by Youenn Fablet.

For some videos, the media player (MediaPlayerPrivateAVFoundation) starts
with the "MediaRenderingToContext" mode, and it switches to the "MediaRenderingToLayer"
mode later. When the mode switch happens, we have to destroy the context
video renderer before creating the video layer. Otherwise, we won't receive
the notification regarding "readyForDisplay" key path, which drives the
firstVideoFrameAvailable callback.

destroyContextVideoRenderer() destroys the m_videoOutput, but it will
be recreated by createVideoLayer().

Manually tested.

  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:

(WebCore::MediaPlayerPrivateAVFoundation::setUpVideoRendering):

1:18 PM Changeset in webkit [282773] by commit-queue@webkit.org
  • 4 edits
    3 adds in trunk/LayoutTests

[GLIB] Update test baselines and expectation. Unreviewed test gardening.
https://bugs.webkit.org/show_bug.cgi?id=230501

Patch by Arcady Goldmints-Orlov <Arcady Goldmints-Orlov> on 2021-09-20

  • platform/glib/TestExpectations:
  • platform/glib/imported/w3c/web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssTransformComponent-toMatrix-expected.txt: Added.
  • platform/gtk/imported/w3c/web-platform-tests/css/css-typed-om/rotate-by-added-angle-expected.txt:
  • platform/wpe/imported/w3c/web-platform-tests/css/css-typed-om/rotate-by-added-angle-expected.txt:
1:17 PM Changeset in webkit [282772] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[ Win EWS] js/dfg-int16array.html is a flaky crash under WebCore::LayoutIntegration::LineLayout::constructContent.
https://bugs.webkit.org/show_bug.cgi?id=229594.

Unreviewed test gardening.

  • platform/win/TestExpectations:
1:05 PM Changeset in webkit [282771] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[Mac wk2 Debug arm64] storage/indexeddb/request-with-null-open-db-request.html is a flaky crash.
https://bugs.webkit.org/show_bug.cgi?id=230502.

Unreviewed test gardening .

  • platform/mac-wk2/TestExpectations:
12:52 PM Changeset in webkit [282770] by Jonathan Bedard
  • 7 edits
    1 copy
    2 adds
    2 deletes in trunk/Tools

[webkitcorepy] Move FileLock from webkitpy
https://bugs.webkit.org/show_bug.cgi?id=230320
<rdar://problem/83168826>

Reviewed by Dewei Zhu.

Move FileLock from webkitpy into webkitcorepy, implement FileLock as a more
modern Python API.

  • Scripts/libraries/webkitcorepy/setup.py: Bump version.
  • Scripts/libraries/webkitcorepy/webkitcorepy/init.py: Ditto.
  • Scripts/libraries/webkitcorepy/webkitcorepy/file_lock.py: Added.

(FileLock):
(FileLock.init):
(FileLock.acquired): Check if the current process has acquired the lock.
(FileLock.acquire): Attempt to acquire lockfile.
(FileLock.release): Release lockfile, if this process owns the lock.
(FileLock.enter): Invoke acquire.
(FileLock.exit): Invoke release.

  • Scripts/libraries/webkitcorepy/webkitcorepy/mocks/init.py:
  • Scripts/libraries/webkitcorepy/webkitcorepy/mocks/file_lock.py: Copied from Tools/Scripts/libraries/webkitcorepy/webkitcorepy/mocks/init.py.

(FileLock): Single-thread stub implementation of FileLock for testing without a filesystem.

  • Scripts/libraries/webkitcorepy/webkitcorepy/tests/file_lock_unittest.py: Added.

(FileLockTestCase):
(FileLockTestCase.init):
(FileLockTestCase.setUp):
(FileLockTestCase.tearDown):
(FileLockTestCase.test_basic):
(FileLockTestCase.test_locked):
(FileLockTestCase.test_locked_timeout):
(FileLockTestCase.test_double):

  • Scripts/webkitpy/common/system/file_lock.py: Removed.
  • Scripts/webkitpy/common/system/file_lock_integrationtest.py: Removed.
  • Scripts/webkitpy/common/system/systemhost.py:

(SystemHost.make_file_lock): Use webkitcorepy's FileLock.

  • Scripts/webkitpy/common/system/systemhost_mock.py:

(MockSystemHost.make_file_lock): Use webkitcorepy's mocks.FileLock.

  • Scripts/webkitpy/tool/commands/rebaseline.py:

(RebaselineTest._update_expectations_file): Use webkitcorepy's FileLock.

12:32 PM Changeset in webkit [282769] by Wenson Hsieh
  • 6 edits in trunk/Source

Refactor some code that controls Live Text selection behavior
https://bugs.webkit.org/show_bug.cgi?id=230482
rdar://83173597

Reviewed by Megan Gardner.

Source/WebCore:

Make a few adjustments to Live Text code. See below for more details.

  • html/HTMLElement.cpp:

(WebCore::HTMLElement::shouldExtendSelectionToTargetNode):

Adjust this rule so that instead of checking whether we're hit-testing to the image overlay container div, we
only allow the existing selection in an image overlay to extend when performing a mouse drag if the target node
(to which we're extending the selection) is a text node inside the image overlay.

This tweak is needed to deal with the stylesheet adjustment below, where the root #image-overlay container now
has pointer-events: none;.

  • html/shadow/imageOverlay.css:

(div#image-overlay):
(div.image-overlay-line):
(div.image-overlay-data-detector-result):

Mark the root #image-overlay container as pointer-events: none;, but mark the individual text containers in
the image overlay as pointer-events: auto; to ensure that they can still be selected via mouse events. This
change ensures that image overlays can be safely overlaid on top of other user agent shadow root content without
breaking pointer-based interactions on the shadow root content beneath it.

  • page/EventHandler.cpp:

(WebCore::EventHandler::textRecognitionCandidateElement const):

Add a WebKitAdditions extension point for determining whether or not an element is a candidate for text
recognition.

Source/WTF:

Add an (off-by-default) internal feature to enable certain enhancements to Live Text.

  • Scripts/Preferences/WebPreferencesInternal.yaml:
12:23 PM Changeset in webkit [282768] by graouts@webkit.org
  • 22 edits
    2 adds in trunk

box-shadow and text-shadow do not yield float values while interpolating
https://bugs.webkit.org/show_bug.cgi?id=230347

Reviewed by Simon Fraser.

LayoutTests/imported/w3c:

Add some new WPT tests for float and calc() values for box-shadow and text-shadow while
interpolating and update output for still-failing composite operations tests. The new tests
have already landed in WPT with https://github.com/web-platform-tests/wpt/pull/30823.

  • web-platform-tests/css/css-backgrounds/animations/box-shadow-composition-expected.txt:
  • web-platform-tests/css/css-backgrounds/animations/box-shadow-interpolation-expected.txt:
  • web-platform-tests/css/css-backgrounds/animations/box-shadow-interpolation.html:
  • web-platform-tests/css/css-backgrounds/box-shadow-calc-expected.html: Added.
  • web-platform-tests/css/css-backgrounds/box-shadow-calc.html: Added.
  • web-platform-tests/css/css-transitions/animations/text-shadow-composition-expected.txt:
  • web-platform-tests/css/css-transitions/animations/text-shadow-interpolation-expected.txt:
  • web-platform-tests/css/css-transitions/animations/text-shadow-interpolation.html:

Source/WebCore:

ShadowData members used integer values rather than floats and thus could not represent
float values while interpolating. We now use float values.

Test: imported/w3c/web-platform-tests/css/css-backgrounds/box-shadow-calc.html

  • animation/CSSPropertyAnimation.cpp:

(WebCore::blendFunc):
(WebCore::shadowForBlending):

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::valueForFilter):

  • display/css/DisplayBoxDecorationPainter.cpp:

(WebCore::Display::BoxDecorationPainter::paintBoxShadow const):

  • editing/Editor.cpp:

(WebCore::Editor::fontAttributesAtSelectionStart):

  • platform/LengthPoint.h:

(WebCore::LengthPoint::isZero const):

  • rendering/LegacyEllipsisBox.cpp:

(WebCore::LegacyEllipsisBox::paint):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::applyBoxShadowForBackground):
(WebCore::RenderBoxModelObject::boxShadowShouldBeAppliedToBackground const):
(WebCore::RenderBoxModelObject::paintBoxShadow):

  • rendering/TextBoxPainter.cpp:

(WebCore::TextBoxPainter::debugTextShadow const):

  • rendering/TextDecorationPainter.cpp:

(WebCore::TextDecorationPainter::paintTextDecoration):

  • rendering/TextPainter.cpp:

(WebCore::ShadowApplier::shadowIsCompletelyCoveredByText):

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::setTextShadow):
(WebCore::RenderStyle::shadowExtent):
(WebCore::RenderStyle::shadowInsetExtent):
(WebCore::RenderStyle::getShadowHorizontalExtent):
(WebCore::RenderStyle::getShadowVerticalExtent):

  • rendering/style/ShadowData.cpp:

(WebCore::ShadowData::ShadowData):
(WebCore::calculateShadowExtent):

  • rendering/style/ShadowData.h:

(WebCore::ShadowData::ShadowData):
(WebCore::ShadowData::x const):
(WebCore::ShadowData::y const):
(WebCore::ShadowData::location const):
(WebCore::ShadowData::radius const):
(WebCore::ShadowData::paintingExtent const):
(WebCore::ShadowData::spread const):

  • style/StyleBuilderCustom.h:

(WebCore::Style::BuilderCustom::applyTextOrBoxShadowValue):

12:08 PM Changeset in webkit [282767] by Brent Fulgham
  • 4 edits in trunk

Remove XSS Auditor: Part 1 (Turn off by default)
https://bugs.webkit.org/show_bug.cgi?id=230483
<rdar://problem/83310922>

Reviewed by Yusuke Suzuki.

Source/WTF:

As an initial step in removing the XSS Auditor, turn it off by default.

  • Scripts/Preferences/WebPreferences.yaml:

Tools:

  • TestWebKitAPI/Tests/WebKit/WKPreferences.cpp:

(TestWebKitAPI::TEST): Switch expectation for XSS Auditor.

11:56 AM Changeset in webkit [282766] by commit-queue@webkit.org
  • 2 edits in trunk/JSTests

Skip stress/json-stringify-stack-overflow.js only on memory limited systems
https://bugs.webkit.org/show_bug.cgi?id=230489

Unreviewed gardening.

It's currently only failing on systems with low memory, regardless of
the arch.

Patch by Mikhail R. Gadelha <Mikhail R. Gadelha> on 2021-09-20

  • stress/json-stringify-stack-overflow.js:
11:42 AM Changeset in webkit [282765] by Wenson Hsieh
  • 3 edits in trunk/Source/WebCore

[Live Text] Adopt WeakHashMap for caching per-element text recognition results
https://bugs.webkit.org/show_bug.cgi?id=230461

Reviewed by Megan Gardner.

Simplify this logic by replacing the WeakHashSet and WeakPtr/TextRecognitionResult pair with just a WeakHashMap.
No change in behavior.

  • page/Page.cpp:

(WebCore::Page::updateElementsWithTextRecognitionResults):
(WebCore::Page::hasCachedTextRecognitionResult const):
(WebCore::Page::cacheTextRecognitionResult):
(WebCore::Page::resetTextRecognitionResults):

  • page/Page.h:
11:20 AM Changeset in webkit [282764] by Antti Koivisto
  • 16 edits
    2 adds in trunk

[LFC][Integration] Enable selections
https://bugs.webkit.org/show_bug.cgi?id=230463

Reviewed by Alan Bujtas.

Source/WebCore:

Don't switch to legacy inline boxes on selection.

Test: fast/repaint/selection-paint-invalidation.html

  • layout/integration/LayoutIntegrationCoverage.cpp:

(WebCore::LayoutIntegration::printReason):
(WebCore::LayoutIntegration::canUseForChild):

  • layout/integration/LayoutIntegrationCoverage.h:
  • layout/integration/LayoutIntegrationRunIterator.cpp:

(WebCore::LayoutIntegration::PathTextRun::selectionRect const):

Move this to path independent code and fix it to compute selectionTop/Bottom correctly.

(WebCore::LayoutIntegration::PathTextRun::isCombinedText const):
(WebCore::LayoutIntegration::PathTextRun::fontCascade const):

Add some helpful functions.

  • layout/integration/LayoutIntegrationRunIterator.h:

(WebCore::LayoutIntegration::PathTextRun::selectionRect const): Deleted.

  • layout/integration/LayoutIntegrationRunIteratorLegacyPath.h:

(WebCore::LayoutIntegration::RunIteratorLegacyPath::selectableRange const):
(WebCore::LayoutIntegration::RunIteratorLegacyPath::selectionRect const): Deleted.

  • layout/integration/LayoutIntegrationRunIteratorModernPath.h:

(WebCore::LayoutIntegration::RunIteratorModernPath::selectionRect const): Deleted.

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::setSelectionState): Deleted.

  • rendering/RenderBlockFlow.h:
  • rendering/RenderObject.cpp:

(WebCore::RenderObject::setSelectionState):

  • layout/integration/LayoutIntegrationCoverage.cpp:

(WebCore::LayoutIntegration::printReason):
(WebCore::LayoutIntegration::canUseForChild):

  • layout/integration/LayoutIntegrationCoverage.h:
  • layout/integration/LayoutIntegrationRunIterator.cpp:

(WebCore::LayoutIntegration::PathTextRun::selectionRect const):
(WebCore::LayoutIntegration::PathTextRun::fontCascade const):

  • layout/integration/LayoutIntegrationRunIterator.h:

(WebCore::LayoutIntegration::PathTextRun::selectionRect const): Deleted.

  • layout/integration/LayoutIntegrationRunIteratorLegacyPath.h:

(WebCore::LayoutIntegration::RunIteratorLegacyPath::selectableRange const):
(WebCore::LayoutIntegration::RunIteratorLegacyPath::selectionRect const): Deleted.

  • layout/integration/LayoutIntegrationRunIteratorModernPath.h:

(WebCore::LayoutIntegration::RunIteratorModernPath::selectionRect const): Deleted.

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::setSelectionState): Deleted.

  • rendering/RenderBlockFlow.h:
  • rendering/RenderObject.cpp:

(WebCore::RenderObject::setSelectionState):

  • rendering/TextBoxPainter.cpp:

(WebCore::TextBoxPainter::paint):
(WebCore::TextBoxPainter::paintForeground):
(WebCore::TextBoxPainter::paintDecoration):
(WebCore::TextBoxPainter::calculateDocumentMarkerBounds):
(WebCore::TextBoxPainter::fontCascade const):

Use iterator functions.

(WebCore::TextBoxPainter::textOriginFromPaintRect const):
(WebCore::fontCascadeFor): Deleted.
(WebCore::TextBoxPainter::combinedText const): Deleted.

  • rendering/TextBoxPainter.h:

Tools:

  • TestWebKitAPI/Tests/ios/AccessibilityTestsIOS.mm:

(TestWebKitAPI::TEST):

LayoutTests:

  • fast/repaint/selection-paint-invalidation-expected.txt: Added.
  • fast/repaint/selection-paint-invalidation.html: Added.
  • platform/mac/fast/text/whitespace/pre-wrap-overflow-selection-expected.txt:
11:07 AM Changeset in webkit [282763] by Russell Epstein
  • 1 copy in tags/Safari-613.1.2.2

Tag Safari-613.1.2.2.

11:06 AM Changeset in webkit [282762] by Eric Hutchison
  • 3 edits in trunk/LayoutTests

Update test expectations for http/tests/misc/iframe-reparenting-id-collision.html.
https://bugs.webkit.org/show_bug.cgi?id=230427.

Unreviewed test gardening.

  • platform/mac-wk1/TestExpectations:
  • platform/win/TestExpectations:
10:57 AM Changeset in webkit [282761] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

Unreviewed iOS debug build fix after r282755.

  • platform/ios/VideoFullscreenInterfaceAVKit.mm:

(VideoFullscreenInterfaceAVKit::prepareForPictureInPictureStopWithCompletionHandler):

10:57 AM Changeset in webkit [282760] by Russell Epstein
  • 8 edits in branches/safari-613.1.2-branch/Source

Versioning.

WebKit-7613.1.2.2

10:46 AM Changeset in webkit [282759] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ BigSur wk2 arm64 ] imported/w3c/web-platform-tests/infrastructure/reftest-wait.html is a flaky image failure.
https://bugs.webkit.org/show_bug.cgi?id=230488

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
10:41 AM Changeset in webkit [282758] by achristensen@apple.com
  • 40 edits
    4 adds
    1 delete in trunk

Add support for CSSUnparsedValue parsing through CSSStyleValue.parse()
https://bugs.webkit.org/show_bug.cgi?id=229702

Patch by Johnson Zhou <qiaosong_zhou@apple.com> on 2021-09-20
Reviewed by Alex Christensen.

LayoutTests/imported/w3c:

  • web-platform-tests/css/css-typed-om/idlharness-expected.txt:
  • web-platform-tests/css/css-typed-om/resources/testhelper.js:

(remove_leading_spaces):

  • web-platform-tests/css/css-typed-om/stylevalue-normalization/normalize-ident.tentative-expected.txt:
  • web-platform-tests/css/css-typed-om/stylevalue-normalization/normalize-image-expected.txt:
  • web-platform-tests/css/css-typed-om/stylevalue-normalization/normalize-numeric.tentative-expected.txt:
  • web-platform-tests/css/css-typed-om/stylevalue-normalization/normalize-tokens.tentative-expected.txt:
  • web-platform-tests/css/css-typed-om/stylevalue-normalization/normalize-tokens.tentative.html:
  • web-platform-tests/css/css-typed-om/stylevalue-objects/parse-expected.txt:
  • web-platform-tests/css/css-typed-om/stylevalue-objects/parse-invalid-expected.txt:
  • web-platform-tests/css/css-typed-om/stylevalue-objects/parseAll-expected.txt:
  • web-platform-tests/css/css-typed-om/stylevalue-objects/parseAll-invalid-expected.txt:
  • web-platform-tests/css/css-typed-om/stylevalue-serialization/cssKeywordValue.tentative-expected.txt:
  • web-platform-tests/css/css-typed-om/stylevalue-serialization/cssPositionValue-expected.txt:
  • web-platform-tests/css/css-typed-om/stylevalue-serialization/cssStyleValue-cssom-expected.txt:
  • web-platform-tests/css/css-typed-om/stylevalue-serialization/cssStyleValue-string-expected.txt:
  • web-platform-tests/css/css-typed-om/stylevalue-serialization/cssUnitValue.tentative-expected.txt:
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/get-expected.txt:
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/get-shorthand-expected.txt:
  • web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/get.html:

Source/WebCore:

Test: css-typedom/css-style-value-parse.html

  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSValue.h:

(WebCore::CSSValue::operator== const):

  • css/CSSVariableData.h:

(WebCore::CSSVariableData::tokenRange const):
(WebCore::CSSVariableData::tokenRange): Deleted.

  • css/CSSVariableReferenceValue.cpp:

(WebCore::CSSVariableReferenceValue::create):

  • css/CSSVariableReferenceValue.h:

(WebCore::CSSVariableReferenceValue::data const):

  • css/typedom/CSSNumericFactory.idl: Removed.
  • css/typedom/CSSOMVariableReferenceValue.cpp:

(WebCore::CSSOMVariableReferenceValue::toString const):
(WebCore::CSSOMVariableReferenceValue::serialize const):

  • css/typedom/CSSOMVariableReferenceValue.h:
  • css/typedom/CSSStyleImageValue.cpp:

(WebCore::CSSStyleImageValue::CSSStyleImageValue):

  • css/typedom/CSSStyleImageValue.h:
  • css/typedom/CSSStyleValue.cpp:

(WebCore::CSSStyleValue::parse):
(WebCore::CSSStyleValue::parseAll):
(WebCore::CSSStyleValue::parseStyleValue): Deleted.
(WebCore::CSSStyleValue::reifyValue): Deleted.

  • css/typedom/CSSStyleValue.h:
  • css/typedom/CSSStyleValueFactory.cpp: Added.

(WebCore::CSSStyleValueFactory::extractCSSValues):
(WebCore::CSSStyleValueFactory::extractShorthandCSSValues):
(WebCore::CSSStyleValueFactory::extractCustomCSSValues):
(WebCore::CSSStyleValueFactory::parseStyleValue):
(WebCore::CSSStyleValueFactory::reifyValue):

  • css/typedom/CSSStyleValueFactory.h: Copied from Source/WebCore/css/typedom/CSSOMVariableReferenceValue.h.
  • css/typedom/CSSUnparsedValue.cpp:

(WebCore::CSSUnparsedValue::create):
(WebCore::CSSUnparsedValue::serialize const):

  • css/typedom/CSSUnparsedValue.h:
  • css/typedom/StylePropertyMapReadOnly.cpp:

(WebCore::StylePropertyMapReadOnly::reifyValue):
(WebCore::StylePropertyMapReadOnly::customPropertyValueOrDefault):

  • dom/Document.cpp:

(WebCore::Document::registerCSSProperty):

  • dom/StyledElement.cpp:

LayoutTests:

  • css-typedom/css-style-value-parse-expected.txt: Added.
  • css-typedom/css-style-value-parse.html: Added.
10:30 AM Changeset in webkit [282757] by Ayumi Kojima
  • 3 edits in trunk/LayoutTests

[ iOS macOS wk2] imported/w3c/web-platform-tests/webrtc/RTCSctpTransport-events.html is a flaky failure.
https://bugs.webkit.org/show_bug.cgi?id=230485

Unreviewed test gardening.

  • platform/ios-wk2/TestExpectations:
  • platform/mac-wk2/TestExpectations:
10:29 AM Changeset in webkit [282756] by commit-queue@webkit.org
  • 17 edits
    1 copy in trunk/Source/WebKit

Use ObjectIdentifier for WebURLSchemeHandler
https://bugs.webkit.org/show_bug.cgi?id=230462

Patch by Michael Catanzaro <Michael Catanzaro> on 2021-09-20
Reviewed by Alex Christensen.

  • Scripts/webkit/messages.py:

(types_that_cannot_be_forward_declared):

  • Shared/URLSchemeTaskParameters.cpp:

(WebKit::URLSchemeTaskParameters::decode):

  • Shared/URLSchemeTaskParameters.h:

(): Deleted.

  • Shared/WebPageCreationParameters.h:
  • Shared/WebURLSchemeHandlerIdentifier.h: Copied from Source/WebKit/Shared/URLSchemeTaskParameters.h.
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::stopURLSchemeTask):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/WebURLSchemeHandler.cpp:

(WebKit::WebURLSchemeHandler::WebURLSchemeHandler):
(WebKit::generateWebURLSchemeHandlerIdentifier): Deleted.

  • UIProcess/WebURLSchemeHandler.h:

(WebKit::WebURLSchemeHandler::identifier const):

  • WebKit.xcodeproj/project.pbxproj:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::registerURLSchemeHandler):
(WebKit::WebPage::urlSchemeTaskWillPerformRedirection):
(WebKit::WebPage::urlSchemeTaskDidPerformRedirection):
(WebKit::WebPage::urlSchemeTaskDidReceiveResponse):
(WebKit::WebPage::urlSchemeTaskDidReceiveData):
(WebKit::WebPage::urlSchemeTaskDidComplete):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
  • WebProcess/WebPage/WebURLSchemeHandlerProxy.cpp:

(WebKit::WebURLSchemeHandlerProxy::WebURLSchemeHandlerProxy):

  • WebProcess/WebPage/WebURLSchemeHandlerProxy.h:

(WebKit::WebURLSchemeHandlerProxy::create):
(WebKit::WebURLSchemeHandlerProxy::identifier const):
(): Deleted.

  • WebProcess/WebPage/WebURLSchemeTaskProxy.cpp:
10:17 AM Changeset in webkit [282755] by Chris Dumez
  • 251 edits in trunk

Stop using makeRef(*this) / makeRefPtr(this)
https://bugs.webkit.org/show_bug.cgi?id=230464

Reviewed by Alex Christensen.

Source/JavaScriptCore:

  • inspector/InjectedScriptHost.cpp:

(Inspector::InjectedScriptHost::wrapper):

  • inspector/remote/RemoteConnectionToTarget.cpp:

(Inspector::RemoteConnectionToTarget::close):

  • inspector/remote/cocoa/RemoteConnectionToTargetCocoa.mm:

(Inspector::RemoteConnectionToTarget::setup):
(Inspector::RemoteConnectionToTarget::close):
(Inspector::RemoteConnectionToTarget::sendMessageToTarget):

  • wasm/WasmCodeBlock.cpp:

(JSC::Wasm::CodeBlock::compileAsync):

  • wasm/WasmNameSection.h:

(JSC::Wasm::NameSection::get):

  • wasm/WasmStreamingCompiler.cpp:

(JSC::Wasm::StreamingCompiler::didReceiveFunctionData):

Source/WebCore:

  • Modules/async-clipboard/Clipboard.cpp:

(WebCore::Clipboard::ItemWriter::write):

  • Modules/cache/DOMCache.cpp:

(WebCore::DOMCache::match):
(WebCore::DOMCache::addAll):
(WebCore::DOMCache::putWithResponseData):
(WebCore::DOMCache::put):
(WebCore::DOMCache::remove):

  • Modules/encryptedmedia/MediaKeys.cpp:

(WebCore::MediaKeys::setServerCertificate):

  • Modules/entriesapi/DOMFileSystem.cpp:

(WebCore::DOMFileSystem::listDirectory):
(WebCore::DOMFileSystem::getParent):
(WebCore::DOMFileSystem::getEntry):

  • Modules/entriesapi/ErrorCallback.cpp:

(WebCore::ErrorCallback::scheduleCallback):

  • Modules/entriesapi/FileSystemEntriesCallback.cpp:

(WebCore::FileSystemEntriesCallback::scheduleCallback):

  • Modules/indexeddb/IDBDatabase.cpp:

(WebCore::IDBDatabase::dispatchEvent):

  • Modules/indexeddb/IDBOpenDBRequest.cpp:

(WebCore::IDBOpenDBRequest::dispatchEvent):

  • Modules/indexeddb/IDBRequest.cpp:

(WebCore::IDBRequest::dispatchEvent):

  • Modules/indexeddb/IDBTransaction.cpp:

(WebCore::IDBTransaction::IDBTransaction):
(WebCore::IDBTransaction::abortInternal):
(WebCore::IDBTransaction::dispatchEvent):
(WebCore::IDBTransaction::createObjectStore):
(WebCore::IDBTransaction::renameObjectStore):
(WebCore::IDBTransaction::createIndex):
(WebCore::IDBTransaction::renameIndex):
(WebCore::IDBTransaction::doRequestOpenCursor):
(WebCore::IDBTransaction::iterateCursor):
(WebCore::IDBTransaction::requestGetAllObjectStoreRecords):
(WebCore::IDBTransaction::requestGetAllIndexRecords):
(WebCore::IDBTransaction::requestGetRecord):
(WebCore::IDBTransaction::requestIndexRecord):
(WebCore::IDBTransaction::requestCount):
(WebCore::IDBTransaction::requestDeleteRecord):
(WebCore::IDBTransaction::requestClearObjectStore):
(WebCore::IDBTransaction::requestPutOrAdd):
(WebCore::IDBTransaction::putOrAddOnServer):
(WebCore::IDBTransaction::deleteObjectStore):
(WebCore::IDBTransaction::deleteIndex):

  • Modules/indexeddb/client/IDBConnectionToServer.cpp:

(WebCore::IDBClient::IDBConnectionToServer::callResultFunctionWithErrorLater):
(WebCore::IDBClient::IDBConnectionToServer::commitTransaction):
(WebCore::IDBClient::IDBConnectionToServer::abortTransaction):
(WebCore::IDBClient::IDBConnectionToServer::getAllDatabaseNamesAndVersions):

  • Modules/indexeddb/client/TransactionOperation.h:
  • Modules/mediasession/MediaSession.cpp:

(WebCore::MediaSession::forEachObserver):

  • Modules/mediasource/SourceBuffer.cpp:

(WebCore::SourceBuffer::removeTimerFired):

  • Modules/mediastream/MediaStreamTrack.cpp:

(WebCore::MediaStreamTrack::applyConstraints):

  • Modules/mediastream/RTCDTMFSender.cpp:

(WebCore::RTCDTMFSender::insertDTMF):

  • Modules/mediastream/RTCPeerConnection.cpp:

(WebCore::RTCPeerConnection::createOffer):
(WebCore::RTCPeerConnection::createAnswer):
(WebCore::RTCPeerConnection::setLocalDescription):
(WebCore::RTCPeerConnection::setRemoteDescription):
(WebCore::RTCPeerConnection::addIceCandidate):

  • Modules/mediastream/RTCRtpScriptTransform.cpp:

(WebCore::RTCRtpScriptTransform::setTransformer):

  • Modules/mediastream/RTCRtpScriptTransformer.cpp:

(WebCore::RTCRtpScriptTransformer::writable):

  • Modules/mediastream/RTCRtpSender.cpp:

(WebCore::RTCRtpSender::replaceTrack):

  • Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:

(WebCore::LibWebRTCMediaEndpoint::createStatsCollector):
(WebCore::LibWebRTCMediaEndpoint::OnTrack):
(WebCore::LibWebRTCMediaEndpoint::OnRemoveTrack):
(WebCore::LibWebRTCMediaEndpoint::OnDataChannel):
(WebCore::LibWebRTCMediaEndpoint::OnNegotiationNeededEvent):
(WebCore::LibWebRTCMediaEndpoint::OnStandardizedIceConnectionChange):
(WebCore::LibWebRTCMediaEndpoint::OnIceGatheringChange):
(WebCore::LibWebRTCMediaEndpoint::OnIceCandidate):
(WebCore::LibWebRTCMediaEndpoint::createSessionDescriptionSucceeded):
(WebCore::LibWebRTCMediaEndpoint::createSessionDescriptionFailed):
(WebCore::LibWebRTCMediaEndpoint::setLocalSessionDescriptionSucceeded):
(WebCore::LibWebRTCMediaEndpoint::setLocalSessionDescriptionFailed):
(WebCore::LibWebRTCMediaEndpoint::setRemoteSessionDescriptionSucceeded):
(WebCore::LibWebRTCMediaEndpoint::setRemoteSessionDescriptionFailed):
(WebCore::LibWebRTCMediaEndpoint::OnStatsDelivered):

  • Modules/paymentrequest/PaymentRequest.cpp:

(WebCore::PaymentRequest::shippingAddressChanged):
(WebCore::PaymentRequest::shippingOptionChanged):
(WebCore::PaymentRequest::paymentMethodChanged):
(WebCore::PaymentRequest::updateWith):
(WebCore::PaymentRequest::completeMerchantValidation):
(WebCore::PaymentRequest::whenDetailsSettled):

  • Modules/remoteplayback/RemotePlayback.cpp:

(WebCore::RemotePlayback::watchAvailability):

  • Modules/webaudio/AudioContext.cpp:

(WebCore::AudioContext::startRendering):
(WebCore::AudioContext::mayResumePlayback):
(WebCore::AudioContext::suspendPlayback):
(WebCore::AudioContext::isPlayingAudioDidChange):

  • Modules/webaudio/AudioScheduledSourceNode.cpp:

(WebCore::AudioScheduledSourceNode::finish):

  • Modules/webaudio/AudioWorkletMessagingProxy.cpp:

(WebCore::AudioWorkletMessagingProxy::postTaskToAudioWorklet):

  • Modules/webaudio/AudioWorkletNode.cpp:

(WebCore::AudioWorkletNode::fireProcessorErrorOnMainThread):

  • Modules/webaudio/BaseAudioContext.cpp:

(WebCore::BaseAudioContext::clear):
(WebCore::BaseAudioContext::stop):
(WebCore::BaseAudioContext::updateTailProcessingNodes):
(WebCore::BaseAudioContext::scheduleNodeDeletion):
(WebCore::BaseAudioContext::deleteMarkedNodes):

  • Modules/webaudio/MediaElementAudioSourceNode.cpp:

(WebCore::MediaElementAudioSourceNode::setFormat):

  • Modules/webaudio/OfflineAudioDestinationNode.cpp:

(WebCore::OfflineAudioDestinationNode::startRendering):

  • Modules/webaudio/ScriptProcessorNode.cpp:

(WebCore::ScriptProcessorNode::process):

  • Modules/webdatabase/Database.cpp:

(WebCore::Database::scheduleTransactionCallback):

  • Modules/websockets/ThreadableWebSocketChannelClientWrapper.cpp:

(WebCore::ThreadableWebSocketChannelClientWrapper::didConnect):
(WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveMessage):
(WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveBinaryData):
(WebCore::ThreadableWebSocketChannelClientWrapper::didUpdateBufferedAmount):
(WebCore::ThreadableWebSocketChannelClientWrapper::didStartClosingHandshake):
(WebCore::ThreadableWebSocketChannelClientWrapper::didClose):
(WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveMessageError):
(WebCore::ThreadableWebSocketChannelClientWrapper::didUpgradeURL):
(WebCore::ThreadableWebSocketChannelClientWrapper::processPendingTasks):

  • Modules/websockets/WebSocket.cpp:

(WebCore::WebSocket::failAsynchronously):

  • Modules/websockets/WebSocketChannel.cpp:

(WebCore::WebSocketChannel::didOpenSocketStream):
(WebCore::WebSocketChannel::processOutgoingFrameQueue):

  • Modules/webxr/WebXRFrame.cpp:

(WebCore::WebXRFrame::getViewerPose):

  • Modules/webxr/WebXRSession.cpp:

(WebCore::WebXRSession::requestReferenceSpace):
(WebCore::WebXRSession::shutdown):
(WebCore::WebXRSession::end):
(WebCore::WebXRSession::requestFrame):

  • Modules/webxr/WebXRSystem.cpp:

(WebCore::WebXRSystem::ensureImmersiveXRDeviceIsSelected):

  • animation/WebAnimation.cpp:

(WebCore::WebAnimation::remove):
(WebCore::WebAnimation::setEffect):
(WebCore::WebAnimation::setTimeline):
(WebCore::WebAnimation::updateFinishedState):

  • bindings/js/JSDOMPromiseDeferred.cpp:

(WebCore::DeferredPromise::callFunction):
(WebCore::DeferredPromise::whenSettled):

  • bindings/js/JSMicrotaskCallback.h:

(WebCore::JSMicrotaskCallback::call):

  • bindings/js/SerializedScriptValue.cpp:

(WebCore::SerializedScriptValue::writeBlobsToDiskForIndexedDB):

  • bindings/js/WorkerModuleScriptLoader.cpp:

(WebCore::WorkerModuleScriptLoader::notifyClientFinished):

  • css/CSSGradientValue.cpp:

(WebCore::CSSGradientValue::valueWithStylesResolved):

  • dom/AbortSignal.cpp:

(WebCore::AbortSignal::signalAbort):

  • dom/ContainerNode.cpp:

(WebCore::ContainerNode::replaceChildren):

  • dom/Document.cpp:

(WebCore::Document::updateTitle):
(WebCore::Document::didRemoveAllPendingStylesheet):
(WebCore::Document::queueTaskToDispatchEvent):
(WebCore::Document::queueTaskToDispatchEventOnWindow):

  • dom/WindowEventLoop.cpp:

(WebCore::WindowEventLoop::didReachTimeToRun):
(WebCore::WindowEventLoop::queueMutationObserverCompoundMicrotask):
(WebCore::WindowEventLoop::backupElementQueue):

  • dom/messageports/MessagePortChannel.cpp:

(WebCore::MessagePortChannel::closePort):
(WebCore::MessagePortChannel::checkRemotePortForActivity):

  • editing/CompositeEditCommand.cpp:

(WebCore::CompositeEditCommand::ensureComposition):

  • editing/EditCommand.cpp:

(WebCore::EditCommand::setStartingSelection):
(WebCore::EditCommand::setEndingSelection):

  • fileapi/BlobCallback.cpp:

(WebCore::BlobCallback::scheduleCallback):

  • fileapi/FileReader.cpp:

(WebCore::FileReader::abort):

  • html/BaseCheckableInputType.cpp:

(WebCore::BaseCheckableInputType::fireInputAndChangeEvents):

  • html/DirectoryFileListCreator.cpp:

(WebCore::DirectoryFileListCreator::start):

  • html/FileInputType.cpp:

(WebCore::FileInputType::didCreateFileList):
(WebCore::FileInputType::receiveDroppedFilesWithImageTranscoding):

  • html/HTMLFormControlElement.cpp:

(WebCore::HTMLFormControlElement::focusAndShowValidationMessage):

  • html/HTMLFormElement.cpp:

(WebCore::HTMLFormElement::submitIfPossible):
(WebCore::HTMLFormElement::submit):
(WebCore::HTMLFormElement::resumeFromDocumentSuspension):

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::didAttachRenderers):
(WebCore::HTMLInputElement::resumeFromDocumentSuspension):

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::setAudioOutputDevice):
(WebCore::HTMLMediaElement::layoutSizeChanged):
(WebCore::HTMLMediaElement::setVideoFullscreenStandby):

  • html/HTMLPlugInImageElement.cpp:

(WebCore::HTMLPlugInImageElement::scheduleUpdateForAfterStyleResolution):

  • html/InputType.cpp:

(WebCore::InputType::applyStep):

  • html/OffscreenCanvas.cpp:

(WebCore::OffscreenCanvas::scheduleCommitToPlaceholderCanvas):

  • html/canvas/WebGLRenderingContextBase.cpp:

(WebCore::WebGLRenderingContextBase::makeXRCompatible):

  • html/canvas/WebGLSync.cpp:

(WebCore::WebGLSync::scheduleAllowCacheUpdate):

  • inspector/CommandLineAPIHost.cpp:

(WebCore::CommandLineAPIHost::wrapper):

  • inspector/InspectorFrontendAPIDispatcher.cpp:

(WebCore::InspectorFrontendAPIDispatcher::suspend):

  • inspector/InspectorFrontendClientLocal.cpp:

(WebCore::InspectorBackendDispatchTask::scheduleOneShot):

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::handleSubstituteDataLoadNow):
(WebCore::DocumentLoader::redirectReceived):
(WebCore::DocumentLoader::willSendRequest):
(WebCore::DocumentLoader::responseReceived):

  • loader/MediaResourceLoader.cpp:

(WebCore::MediaResource::responseReceived):

  • loader/NetscapePlugInStreamLoader.cpp:

(WebCore::NetscapePlugInStreamLoader::init):
(WebCore::NetscapePlugInStreamLoader::willSendRequest):

  • loader/ResourceLoader.cpp:

(WebCore::ResourceLoader::init):
(WebCore::ResourceLoader::deliverResponseAndData):
(WebCore::ResourceLoader::loadDataURL):

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::startLoading):
(WebCore::SubresourceLoader::init):
(WebCore::SubresourceLoader::willSendRequestInternal):

  • loader/appcache/ApplicationCacheResourceLoader.cpp:

(WebCore::ApplicationCacheResourceLoader::cancel):
(WebCore::ApplicationCacheResourceLoader::notifyFinished):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::postMessage):
(WebCore::DOMWindow::close):
(WebCore::DOMWindow::dispatchLoadEvent):
(WebCore::DOMWindow::dispatchEvent):

  • page/Frame.cpp:

(WebCore::Frame::injectUserScripts):

  • page/FrameView.cpp:

(WebCore::FrameView::scrollToFocusedElementTimerFired):

  • page/Performance.cpp:

(WebCore::Performance::scheduleTaskIfNeeded):

  • page/scrolling/ThreadedScrollingTree.cpp:

(WebCore::ThreadedScrollingTree::scrollingTreeNodeDidScroll):
(WebCore::ThreadedScrollingTree::willStartRenderingUpdate):
(WebCore::ThreadedScrollingTree::displayDidRefresh):

  • platform/PreviewConverter.cpp:

(WebCore::PreviewConverter::updateMainResource):
(WebCore::PreviewConverter::iterateClients):
(WebCore::PreviewConverter::didAddClient):
(WebCore::PreviewConverter::replayToClient):
(WebCore::PreviewConverter::delegateDidReceiveData):
(WebCore::PreviewConverter::delegateDidFailWithError):

  • platform/audio/cocoa/AudioDestinationCocoa.cpp:

(WebCore::AudioDestinationCocoa::render):

  • platform/graphics/ImageSource.cpp:

(WebCore::ImageSource::startAsyncDecodingQueue):

  • platform/graphics/avfoundation/cf/WebCoreAVCFResourceLoader.cpp:

(WebCore::WebCoreAVCFResourceLoader::invalidate):

  • platform/graphics/avfoundation/objc/ImageDecoderAVFObjC.mm:

(WebCore::ImageDecoderAVFObjC::ImageDecoderAVFObjC):
(WebCore::ImageDecoderAVFObjC::setTrack):

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:

(WebCore::EffectiveRateChangedListener::effectiveRateChanged):

  • platform/graphics/avfoundation/objc/MediaSampleAVFObjC.mm:

(WebCore::MediaSampleAVFObjC::divideIntoHomogeneousSamples):

  • platform/graphics/avfoundation/objc/SourceBufferParserAVFObjC.mm:

(WebCore::SourceBufferParserAVFObjC::didParseStreamDataAsAsset):
(WebCore::SourceBufferParserAVFObjC::didFailToParseStreamDataWithError):
(WebCore::SourceBufferParserAVFObjC::didProvideMediaDataForTrackID):

  • platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.mm:

(WebCore::WebCoreAVFResourceLoader::invalidate):

  • platform/graphics/cocoa/SourceBufferParserWebM.cpp:

(WebCore::SourceBufferParserWebM::appendData):
(WebCore::SourceBufferParserWebM::OnElementEnd):
(WebCore::SourceBufferParserWebM::OnBlockGroupEnd):
(WebCore::SourceBufferParserWebM::provideMediaData):

  • platform/graphics/cocoa/WebCoreDecompressionSession.mm:

(WebCore::WebCoreDecompressionSession::maybeBecomeReadyForMoreMediaData):
(WebCore::WebCoreDecompressionSession::handleDecompressionOutput):
(WebCore::WebCoreDecompressionSession::enqueueDecodedSample):
(WebCore::WebCoreDecompressionSession::flush):

  • platform/graphics/gstreamer/MainThreadNotifier.h:
  • platform/graphics/gstreamer/mse/SourceBufferPrivateGStreamer.cpp:

(WebCore::SourceBufferPrivateGStreamer::notifyClientWhenReadyForMoreSamples):

  • platform/graphics/mac/LegacyDisplayRefreshMonitorMac.cpp:

(WebCore::LegacyDisplayRefreshMonitorMac::dispatchDisplayDidRefresh):

  • platform/graphics/nicosia/NicosiaSceneIntegration.cpp:

(Nicosia::SceneIntegration::createUpdateScope):

  • platform/ios/VideoFullscreenInterfaceAVKit.mm:

(VideoFullscreenInterfaceAVKit::setVideoFullscreenModel):
(VideoFullscreenInterfaceAVKit::didStartPictureInPicture):
(VideoFullscreenInterfaceAVKit::prepareForPictureInPictureStopWithCompletionHandler):
(VideoFullscreenInterfaceAVKit::finalizeSetup):
(VideoFullscreenInterfaceAVKit::doEnterFullscreen):
(VideoFullscreenInterfaceAVKit::doExitFullscreen):

  • platform/ios/WebVideoFullscreenControllerAVKit.mm:

(VideoFullscreenControllerContext::requestUpdateInlineRect):
(VideoFullscreenControllerContext::requestVideoContentLayer):
(VideoFullscreenControllerContext::returnVideoContentLayer):
(VideoFullscreenControllerContext::didSetupFullscreen):
(VideoFullscreenControllerContext::willExitFullscreen):
(VideoFullscreenControllerContext::didExitFullscreen):
(VideoFullscreenControllerContext::didCleanupFullscreen):
(VideoFullscreenControllerContext::fullscreenMayReturnToInline):
(VideoFullscreenControllerContext::durationChanged):
(VideoFullscreenControllerContext::currentTimeChanged):
(VideoFullscreenControllerContext::bufferedTimeChanged):
(VideoFullscreenControllerContext::rateChanged):
(VideoFullscreenControllerContext::hasVideoChanged):
(VideoFullscreenControllerContext::videoDimensionsChanged):
(VideoFullscreenControllerContext::seekableRangesChanged):
(VideoFullscreenControllerContext::canPlayFastReverseChanged):
(VideoFullscreenControllerContext::audioMediaSelectionOptionsChanged):
(VideoFullscreenControllerContext::legibleMediaSelectionOptionsChanged):
(VideoFullscreenControllerContext::externalPlaybackChanged):
(VideoFullscreenControllerContext::wirelessVideoPlaybackDisabledChanged):
(VideoFullscreenControllerContext::mutedChanged):
(VideoFullscreenControllerContext::volumeChanged):
(VideoFullscreenControllerContext::requestFullscreenMode):
(VideoFullscreenControllerContext::setVideoLayerFrame):
(VideoFullscreenControllerContext::setVideoLayerGravity):
(VideoFullscreenControllerContext::fullscreenModeChanged):
(VideoFullscreenControllerContext::play):
(VideoFullscreenControllerContext::pause):
(VideoFullscreenControllerContext::togglePlayState):
(VideoFullscreenControllerContext::toggleMuted):
(VideoFullscreenControllerContext::setMuted):
(VideoFullscreenControllerContext::setVolume):
(VideoFullscreenControllerContext::setPlayingOnSecondScreen):
(VideoFullscreenControllerContext::beginScrubbing):
(VideoFullscreenControllerContext::endScrubbing):
(VideoFullscreenControllerContext::seekToTime):
(VideoFullscreenControllerContext::fastSeek):
(VideoFullscreenControllerContext::beginScanningForward):
(VideoFullscreenControllerContext::beginScanningBackward):
(VideoFullscreenControllerContext::endScanning):
(VideoFullscreenControllerContext::setDefaultPlaybackRate):
(VideoFullscreenControllerContext::setPlaybackRate):
(VideoFullscreenControllerContext::selectAudioMediaOption):
(VideoFullscreenControllerContext::selectLegibleMediaOption):
(VideoFullscreenControllerContext::setUpFullscreen):
(VideoFullscreenControllerContext::exitFullscreen):

  • platform/mac/VideoFullscreenInterfaceMac.mm:

(WebCore::VideoFullscreenInterfaceMac::setupFullscreen):

  • platform/mediastream/AudioTrackPrivateMediaStream.cpp:

(WebCore::AudioTrackPrivateMediaStream::startRenderer):

  • platform/mediastream/MediaStreamPrivate.cpp:

(WebCore::MediaStreamPrivate::forEachObserver):

  • platform/mediastream/MediaStreamTrackPrivate.cpp:

(WebCore::MediaStreamTrackPrivate::forEachObserver):

  • platform/mediastream/RealtimeIncomingAudioSource.cpp:

(WebCore::RealtimeIncomingAudioSource::OnChanged):

  • platform/mediastream/RealtimeIncomingVideoSource.cpp:

(WebCore::RealtimeIncomingVideoSource::OnChanged):

  • platform/mediastream/RealtimeMediaSource.cpp:

(WebCore::RealtimeMediaSource::forEachObserver):
(WebCore::RealtimeMediaSource::updateHasStartedProducingData):
(WebCore::RealtimeMediaSource::end):
(WebCore::RealtimeMediaSource::scheduleDeferredTask):

  • platform/mediastream/RealtimeMediaSourceCenter.cpp:

(WebCore::RealtimeMediaSourceCenter::triggerDevicesChangedObservers):

  • platform/mediastream/RealtimeOutgoingVideoSource.cpp:

(WebCore::RealtimeOutgoingVideoSource::applyRotation):

  • platform/mediastream/RealtimeVideoSource.cpp:

(WebCore::RealtimeVideoSource::whenReady):

  • platform/mediastream/gstreamer/GStreamerCapturer.cpp:

(WebCore::GStreamerCapturer::forEachObserver):

  • platform/mediastream/mac/MockRealtimeVideoSourceMac.mm:

(WebCore::MockRealtimeVideoSourceMac::updateSampleBuffer):

  • platform/mediastream/mac/RealtimeOutgoingAudioSourceCocoa.cpp:

(WebCore::RealtimeOutgoingAudioSourceCocoa::audioSamplesAvailable):

  • platform/mediastream/mac/WebAudioSourceProviderCocoa.mm:

(WebCore::WebAudioSourceProviderCocoa::prepare):

  • platform/mock/MockAudioDestinationCocoa.cpp:

(WebCore::MockAudioDestinationCocoa::tick):

  • platform/mock/MockRealtimeAudioSource.cpp:

(WebCore::MockRealtimeAudioSource::tick):

  • platform/network/BlobResourceHandle.cpp:

(WebCore::BlobResourceHandle::start):
(WebCore::BlobResourceHandle::notifyResponseOnSuccess):
(WebCore::BlobResourceHandle::notifyResponseOnError):
(WebCore::BlobResourceHandle::notifyFinish):

  • platform/network/cf/ResourceHandleCFNet.cpp:

(WebCore::ResourceHandle::willSendRequest):

  • platform/network/cf/ResourceHandleCFURLConnectionDelegateWithOperationQueue.cpp:

(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::willSendRequest):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveResponse):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveData):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didFinishLoading):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didFail):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::willCacheResponse):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveChallenge):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didSendBodyData):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::canRespondToProtectionSpace):

  • platform/network/cf/SocketStreamHandleImplCFNet.cpp:

(WebCore::SocketStreamHandleImpl::SocketStreamHandleImpl):

  • platform/network/cocoa/WebCoreNSURLSession.mm:

(WebCore::WebCoreNSURLSessionDataTaskClient::responseReceived):

  • platform/network/curl/CurlRequest.cpp:

(WebCore::CurlRequest::cancel):
(WebCore::CurlRequest::callClient):
(WebCore::CurlRequest::invokeDidReceiveResponseForFile):
(WebCore::CurlRequest::completeDidReceiveResponse):
(WebCore::CurlRequest::invokeCancel):
(WebCore::CurlRequest::pausedStatusChanged):

  • platform/network/curl/ResourceHandleCurl.cpp:

(WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
(WebCore::ResourceHandle::receivedRequestToContinueWithoutCredential):
(WebCore::ResourceHandle::receivedCancellation):
(WebCore::ResourceHandle::willSendRequest):
(WebCore::ResourceHandle::handleDataURL):

  • platform/network/mac/ResourceHandleMac.mm:

(WebCore::ResourceHandle::willSendRequest):

  • platform/xr/openxr/PlatformXROpenXR.cpp:

(PlatformXR::OpenXRDevice::initialize):
(PlatformXR::OpenXRDevice::initializeTrackingAndRendering):
(PlatformXR::OpenXRDevice::shutDownTrackingAndRendering):
(PlatformXR::OpenXRDevice::requestFrame):
(PlatformXR::OpenXRDevice::submitFrame):
(PlatformXR::OpenXRDevice::waitUntilStopping):

  • storage/StorageQuotaManager.cpp:

(WebCore::StorageQuotaManager::requestSpaceOnMainThread):
(WebCore::StorageQuotaManager::requestSpaceOnBackgroundThread):

  • testing/WebXRTest.cpp:

(WebCore::WebXRTest::simulateDeviceConnection):

  • workers/WorkerEventLoop.cpp:

(WebCore::WorkerEventLoop::scheduleToRun):

  • workers/WorkerMessagingProxy.cpp:

(WebCore::WorkerMessagingProxy::postMessageToDebugger):

  • workers/WorkerOrWorkletThread.cpp:

(WebCore::WorkerOrWorkletThread::workerOrWorkletThread):

  • workers/service/ExtendableEvent.cpp:

(WebCore::ExtendableEvent::addExtendLifetimePromise):

  • workers/service/FetchEvent.cpp:

(WebCore::FetchEvent::respondWith):

  • workers/service/ServiceWorkerContainer.cpp:

(WebCore::ServiceWorkerContainer::ready):
(WebCore::ServiceWorkerContainer::getRegistration):
(WebCore::ServiceWorkerContainer::getRegistrations):
(WebCore::ServiceWorkerContainer::jobResolvedWithRegistration):

  • workers/service/context/ServiceWorkerThread.cpp:

(WebCore::ServiceWorkerThread::startHeartBeatTimer):

  • workers/service/context/ServiceWorkerThreadProxy.cpp:

(WebCore::ServiceWorkerThreadProxy::postTaskToLoader):
(WebCore::ServiceWorkerThreadProxy::postMessageToDebugger):
(WebCore::ServiceWorkerThreadProxy::setResourceCachingDisabledByWebInspector):
(WebCore::ServiceWorkerThreadProxy::startFetch):
(WebCore::ServiceWorkerThreadProxy::postMessageToServiceWorker):
(WebCore::ServiceWorkerThreadProxy::fireInstallEvent):
(WebCore::ServiceWorkerThreadProxy::fireActivateEvent):

  • workers/service/server/RegistrationDatabase.cpp:

(WebCore::RegistrationDatabase::postTaskToWorkQueue):
(WebCore::RegistrationDatabase::importRecordsIfNecessary):
(WebCore::RegistrationDatabase::schedulePushChanges):
(WebCore::RegistrationDatabase::doPushChanges):
(WebCore::RegistrationDatabase::importRecords):

  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::createRequest):
(WebCore::XMLHttpRequest::didFail):
(WebCore::XMLHttpRequest::didFinishLoading):

Source/WebDriver:

  • Session.cpp:

(WebDriver::Session::closeAllToplevelBrowsingContexts):
(WebDriver::Session::createTopLevelBrowsingContext):
(WebDriver::Session::handleUserPrompts):
(WebDriver::Session::go):
(WebDriver::Session::getCurrentURL):
(WebDriver::Session::back):
(WebDriver::Session::forward):
(WebDriver::Session::refresh):
(WebDriver::Session::getTitle):
(WebDriver::Session::getWindowHandle):
(WebDriver::Session::closeTopLevelBrowsingContext):
(WebDriver::Session::switchToWindow):
(WebDriver::Session::getWindowHandles):
(WebDriver::Session::newWindow):
(WebDriver::Session::switchToFrame):
(WebDriver::Session::switchToParentFrame):
(WebDriver::Session::getToplevelBrowsingContextRect):
(WebDriver::Session::setWindowRect):
(WebDriver::Session::maximizeWindow):
(WebDriver::Session::minimizeWindow):
(WebDriver::Session::fullscreenWindow):
(WebDriver::Session::computeElementLayout):
(WebDriver::Session::findElements):
(WebDriver::Session::getActiveElement):
(WebDriver::Session::isElementSelected):
(WebDriver::Session::getElementText):
(WebDriver::Session::getElementTagName):
(WebDriver::Session::getElementRect):
(WebDriver::Session::isElementEnabled):
(WebDriver::Session::isElementDisplayed):
(WebDriver::Session::getElementAttribute):
(WebDriver::Session::getElementProperty):
(WebDriver::Session::getElementCSSValue):
(WebDriver::Session::waitForNavigationToComplete):
(WebDriver::Session::elementIsFileUpload):
(WebDriver::Session::selectOptionElement):
(WebDriver::Session::elementClick):
(WebDriver::Session::elementIsEditable):
(WebDriver::Session::elementClear):
(WebDriver::Session::setInputFileUploadFiles):
(WebDriver::Session::elementSendKeys):
(WebDriver::Session::getPageSource):
(WebDriver::Session::executeScript):
(WebDriver::Session::performMouseInteraction):
(WebDriver::Session::performKeyboardInteractions):
(WebDriver::Session::getAllCookies):
(WebDriver::Session::addCookie):
(WebDriver::Session::deleteCookie):
(WebDriver::Session::deleteAllCookies):
(WebDriver::Session::performActions):
(WebDriver::Session::releaseActions):
(WebDriver::Session::dismissAlert):
(WebDriver::Session::acceptAlert):
(WebDriver::Session::getAlertText):
(WebDriver::Session::sendAlertText):
(WebDriver::Session::takeScreenshot):

Source/WebKit:

  • GPUProcess/graphics/RemoteGraphicsContextGL.cpp:

(WebKit::RemoteGraphicsContextGL::initialize):
(WebKit::RemoteGraphicsContextGL::displayWasReconfigured):

  • GPUProcess/media/RemoteAudioSourceProviderProxy.cpp:

(WebKit::RemoteAudioSourceProviderProxy::createRingBuffer):

  • GPUProcess/media/RemoteMediaResource.cpp:

(WebKit::RemoteMediaResource::responseReceived):

  • GPUProcess/media/RemoteSourceBufferProxy.cpp:

(WebKit::RemoteSourceBufferProxy::removeCodedFrames):

  • GPUProcess/webrtc/LibWebRTCCodecsProxy.mm:

(WebKit::LibWebRTCCodecsProxy::close):

  • GPUProcess/webrtc/RemoteSampleBufferDisplayLayerManager.cpp:

(WebKit::RemoteSampleBufferDisplayLayerManager::close):
(WebKit::RemoteSampleBufferDisplayLayerManager::createLayer):
(WebKit::RemoteSampleBufferDisplayLayerManager::releaseLayer):

  • NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp:

(WebKit::WebResourceLoadStatisticsStore::postTask):
(WebKit::WebResourceLoadStatisticsStore::destroyResourceLoadStatisticsStore):
(WebKit::WebResourceLoadStatisticsStore::populateMemoryStoreFromDisk):
(WebKit::WebResourceLoadStatisticsStore::resourceLoadStatisticsUpdated):
(WebKit::WebResourceLoadStatisticsStore::requestStorageAccess):
(WebKit::WebResourceLoadStatisticsStore::requestStorageAccessEphemeral):
(WebKit::WebResourceLoadStatisticsStore::scheduleClearInMemoryAndPersistent):

  • NetworkProcess/IndexedDB/WebIDBServer.cpp:

(WebKit::WebIDBServer::WebIDBServer):
(WebKit::WebIDBServer::getOrigins):
(WebKit::WebIDBServer::closeAndDeleteDatabasesModifiedSince):
(WebKit::WebIDBServer::closeAndDeleteDatabasesForOrigins):
(WebKit::WebIDBServer::renameOrigin):
(WebKit::WebIDBServer::addConnection):
(WebKit::WebIDBServer::removeConnection):
(WebKit::WebIDBServer::registerTemporaryBlobFilePaths):
(WebKit::WebIDBServer::close):

  • NetworkProcess/NetworkConnectionToWebProcess.cpp:

(WebKit::NetworkConnectionToWebProcess::scheduleResourceLoad):
(WebKit::NetworkConnectionToWebProcess::preconnectTo):
(WebKit::NetworkConnectionToWebProcess::writeBlobsToTemporaryFilesForIndexedDB):
(WebKit::NetworkConnectionToWebProcess::takeAllMessagesForPort):

  • NetworkProcess/NetworkDataTaskBlob.cpp:

(WebKit::NetworkDataTaskBlob::resume):

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::deleteAndRestrictWebsiteDataForRegistrableDomains):
(WebKit::NetworkProcess::findPendingDownloadLocation):
(WebKit::NetworkProcess::createWebIDBServer):

  • NetworkProcess/NetworkResourceLoader.cpp:

(WebKit::NetworkResourceLoader::retrieveCacheEntry):
(WebKit::NetworkResourceLoader::didReceiveResponse):
(WebKit::NetworkResourceLoader::willSendRedirectedRequest):
(WebKit::NetworkResourceLoader::tryStoreAsCacheEntry):

  • NetworkProcess/NetworkSocketStream.cpp:

(WebKit::NetworkSocketStream::sendData):
(WebKit::NetworkSocketStream::sendHandshake):

  • NetworkProcess/WebStorage/StorageManagerSet.cpp:

(WebKit::StorageManagerSet::add):
(WebKit::StorageManagerSet::remove):
(WebKit::StorageManagerSet::removeConnection):
(WebKit::StorageManagerSet::handleLowMemoryWarning):
(WebKit::StorageManagerSet::suspend):
(WebKit::StorageManagerSet::getSessionStorageOrigins):
(WebKit::StorageManagerSet::deleteSessionStorage):
(WebKit::StorageManagerSet::deleteSessionStorageForOrigins):
(WebKit::StorageManagerSet::getLocalStorageOrigins):
(WebKit::StorageManagerSet::deleteLocalStorageModifiedSince):
(WebKit::StorageManagerSet::deleteLocalStorageForOrigins):
(WebKit::StorageManagerSet::getLocalStorageOriginDetails):
(WebKit::StorageManagerSet::renameOrigin):

  • NetworkProcess/cache/CacheStorageEngine.cpp:

(WebKit::CacheStorage::Engine::readCache):
(WebKit::CacheStorage::Engine::fetchDirectoryEntries):
(WebKit::CacheStorage::CompletionHandler<void):
(WebKit::CacheStorage::Engine::clearCachesForOriginFromDirectories):

  • NetworkProcess/cache/CacheStorageEngineCaches.cpp:

(WebKit::CacheStorage::Caches::storeOrigin):
(WebKit::CacheStorage::Caches::initializeSize):
(WebKit::CacheStorage::Caches::clear):
(WebKit::CacheStorage::Caches::readCachesFromDisk):
(WebKit::CacheStorage::Caches::writeCachesToDisk):
(WebKit::CacheStorage::Caches::writeRecord):

  • NetworkProcess/cache/NetworkCache.cpp:

(WebKit::NetworkCache::Cache::retrieve):
(WebKit::NetworkCache::Cache::store):
(WebKit::NetworkCache::Cache::traverse):

  • NetworkProcess/cache/NetworkCacheIOChannelCurl.cpp:

(WebKit::NetworkCache::IOChannel::read):
(WebKit::NetworkCache::IOChannel::write):

  • NetworkProcess/cache/NetworkCacheIOChannelGLib.cpp:

(WebKit::NetworkCache::IOChannel::readSyncInThread):

  • NetworkProcess/cache/NetworkCacheStorage.cpp:

(WebKit::NetworkCache::Storage::synchronize):
(WebKit::NetworkCache::Storage::remove):
(WebKit::NetworkCache::Storage::finishReadOperation):
(WebKit::NetworkCache::Storage::finishWriteOperation):
(WebKit::NetworkCache::Storage::traverse):
(WebKit::NetworkCache::Storage::clear):
(WebKit::NetworkCache::Storage::shrink):

  • NetworkProcess/cocoa/NetworkDataTaskCocoa.mm:

(WebKit::NetworkDataTaskCocoa::resume):

  • NetworkProcess/cocoa/NetworkProcessCocoa.mm:

(WebKit::NetworkProcess::clearDiskCache):

  • NetworkProcess/curl/NetworkDataTaskCurl.cpp:

(WebKit::NetworkDataTaskCurl::curlDidSendData):
(WebKit::NetworkDataTaskCurl::curlDidReceiveResponse):
(WebKit::NetworkDataTaskCurl::curlDidReceiveBuffer):
(WebKit::NetworkDataTaskCurl::invokeDidReceiveResponse):
(WebKit::NetworkDataTaskCurl::willPerformHTTPRedirection):
(WebKit::NetworkDataTaskCurl::tryHttpAuthentication):
(WebKit::NetworkDataTaskCurl::tryProxyAuthentication):
(WebKit::NetworkDataTaskCurl::tryServerTrustEvaluation):

  • NetworkProcess/soup/NetworkDataTaskSoup.cpp:

(WebKit::NetworkDataTaskSoup::dispatchDidReceiveResponse):
(WebKit::NetworkDataTaskSoup::authenticate):
(WebKit::NetworkDataTaskSoup::continueAuthenticate):
(WebKit::NetworkDataTaskSoup::continueHTTPRedirection):

  • NetworkProcess/webrtc/NetworkRTCProvider.cpp:

(WebKit::NetworkRTCProvider::createServerTCPSocket):
(WebKit::NetworkRTCProvider::createClientTCPSocket):
(WebKit::NetworkRTCProvider::createResolver):
(WebKit::NetworkRTCProvider::stopResolver):
(WebKit::NetworkRTCProvider::closeListeningSockets):

  • NetworkProcess/webrtc/RTCDataChannelRemoteManagerProxy.cpp:

(WebKit::RTCDataChannelRemoteManagerProxy::registerConnectionToWebProcess):
(WebKit::RTCDataChannelRemoteManagerProxy::unregisterConnectionToWebProcess):

  • Platform/IPC/Connection.cpp:

(IPC::Connection::invalidate):
(IPC::Connection::sendMessage):
(IPC::Connection::waitForMessage):
(IPC::Connection::processIncomingMessage):
(IPC::Connection::postConnectionDidCloseOnConnectionWorkQueue):
(IPC::Connection::connectionDidClose):
(IPC::Connection::dispatchDidReceiveInvalidMessage):
(IPC::Connection::enqueueIncomingMessage):

  • Platform/IPC/cocoa/ConnectionCocoa.mm:

(IPC::Connection::open):
(IPC::Connection::initializeSendSource):

  • Platform/IPC/unix/ConnectionUnix.cpp:

(IPC::Connection::sendOutputMessage):

  • Platform/IPC/win/ConnectionWin.cpp:

(IPC::Connection::invokeReadEventHandler):
(IPC::Connection::invokeWriteEventHandler):

  • Scripts/webkit/messages.py:

(generate_message_handler):

  • Scripts/webkit/tests/TestWithIfMessageMessageReceiver.cpp:

(WebKit::TestWithIfMessage::didReceiveMessage):

  • Scripts/webkit/tests/TestWithImageDataMessageReceiver.cpp:

(WebKit::TestWithImageData::didReceiveMessage):
(WebKit::TestWithImageData::didReceiveSyncMessage):

  • Scripts/webkit/tests/TestWithLegacyReceiverMessageReceiver.cpp:

(WebKit::TestWithLegacyReceiver::didReceiveTestWithLegacyReceiverMessage):
(WebKit::TestWithLegacyReceiver::didReceiveSyncTestWithLegacyReceiverMessage):

  • Scripts/webkit/tests/TestWithSemaphoreMessageReceiver.cpp:

(WebKit::TestWithSemaphore::didReceiveMessage):
(WebKit::TestWithSemaphore::didReceiveSyncMessage):

  • Scripts/webkit/tests/TestWithStreamBufferMessageReceiver.cpp:

(WebKit::TestWithStreamBuffer::didReceiveMessage):

  • Scripts/webkit/tests/TestWithSuperclassMessageReceiver.cpp:

(WebKit::TestWithSuperclass::didReceiveMessage):
(WebKit::TestWithSuperclass::didReceiveSyncMessage):

  • Scripts/webkit/tests/TestWithoutAttributesMessageReceiver.cpp:

(WebKit::TestWithoutAttributes::didReceiveMessage):
(WebKit::TestWithoutAttributes::didReceiveSyncMessage):

  • Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:

(WebKit::m_displayRefreshMonitor):
(WebKit::ThreadedCompositor::invalidate):
(WebKit::ThreadedCompositor::suspend):
(WebKit::ThreadedCompositor::resume):
(WebKit::ThreadedCompositor::forceRepaint):

  • Shared/mac/MediaFormatReader/MediaFormatReader.cpp:

(WebKit::MediaFormatReader::startOnMainThread):
(WebKit::MediaFormatReader::parseByteSource):

  • UIProcess/API/APIContentRuleListStore.cpp:

(API::ContentRuleListStore::lookupContentRuleList):
(API::ContentRuleListStore::getAvailableContentRuleListIdentifiers):
(API::ContentRuleListStore::compileContentRuleList):
(API::ContentRuleListStore::removeContentRuleList):
(API::ContentRuleListStore::getContentRuleListSource):

  • UIProcess/API/APIHTTPCookieStore.cpp:

(API::HTTPCookieStore::cookies):
(API::HTTPCookieStore::cookiesForURL):
(API::HTTPCookieStore::setCookies):

  • UIProcess/API/glib/IconDatabase.cpp:

(WebKit::IconDatabase::checkIconURLAndSetPageURLIfNeeded):
(WebKit::IconDatabase::loadIconForPageURL):
(WebKit::IconDatabase::setIconForPageURL):
(WebKit::IconDatabase::clear):

  • UIProcess/Automation/SimulatedInputDispatcher.cpp:

(WebKit::SimulatedInputDispatcher::transitionToNextKeyFrame):
(WebKit::SimulatedInputDispatcher::transitionToNextInputSourceState):

  • UIProcess/Automation/WebAutomationSession.cpp:

(WebKit::WebAutomationSession::getBrowsingContexts):
(WebKit::WebAutomationSession::getBrowsingContext):
(WebKit::WebAutomationSession::createBrowsingContext):
(WebKit::WebAutomationSession::setWindowFrameOfBrowsingContext):
(WebKit::WebAutomationSession::maximizeWindowOfBrowsingContext):
(WebKit::WebAutomationSession::hideWindowOfBrowsingContext):
(WebKit::WebAutomationSession::exitFullscreenWindowForPage):
(WebKit::WebAutomationSession::willShowJavaScriptDialog):
(WebKit::WebAutomationSession::resolveChildFrameHandle):
(WebKit::WebAutomationSession::resolveParentFrameHandle):
(WebKit::WebAutomationSession::simulateMouseInteraction):
(WebKit::WebAutomationSession::simulateTouchInteraction):
(WebKit::WebAutomationSession::simulateWheelInteraction):
(WebKit::WebAutomationSession::performMouseInteraction):
(WebKit::WebAutomationSession::performKeyboardInteractions):
(WebKit::WebAutomationSession::performInteractionSequence):
(WebKit::WebAutomationSession::cancelInteractionSequence):

  • UIProcess/AuxiliaryProcessProxy.cpp:

(WebKit::AuxiliaryProcessProxy::sendMessage):

  • UIProcess/Cocoa/SOAuthorization/SOAuthorizationSession.mm:

(WebKit::SOAuthorizationSession::dismissViewController):

  • UIProcess/Cocoa/WebProcessProxyCocoa.mm:

(WebKit::WebProcessProxy::sendAudioComponentRegistrations):

  • UIProcess/DeviceIdHashSaltStorage.cpp:

(WebKit::DeviceIdHashSaltStorage::DeviceIdHashSaltStorage):
(WebKit::DeviceIdHashSaltStorage::loadStorageFromDisk):
(WebKit::DeviceIdHashSaltStorage::storeHashSaltToDisk):
(WebKit::DeviceIdHashSaltStorage::deleteHashSaltFromDisk):

  • UIProcess/Downloads/DownloadProxy.cpp:

(WebKit::DownloadProxy::cancel):
(WebKit::DownloadProxy::willSendRequest):
(WebKit::DownloadProxy::decideDestinationWithSuggestedFilename):

  • UIProcess/GPU/GPUProcessProxy.cpp:

(WebKit::GPUProcessProxy::gpuProcessExited):

  • UIProcess/Launcher/glib/ProcessLauncherGLib.cpp:

(WebKit::ProcessLauncher::launchProcess):

  • UIProcess/Media/RemoteMediaSessionCoordinatorProxy.cpp:

(WebKit::RemoteMediaSessionCoordinatorProxy::join):
(WebKit::RemoteMediaSessionCoordinatorProxy::coordinateSeekTo):
(WebKit::RemoteMediaSessionCoordinatorProxy::coordinatePlay):
(WebKit::RemoteMediaSessionCoordinatorProxy::coordinatePause):
(WebKit::RemoteMediaSessionCoordinatorProxy::coordinateSetTrack):

  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::networkProcessDidTerminate):

  • UIProcess/UserMediaPermissionRequestProxy.cpp:

(WebKit::UserMediaPermissionRequestProxy::prompt):

  • UIProcess/WebContextMenuProxy.cpp:

(WebKit::WebContextMenuProxy::useContextMenuItems):

  • UIProcess/WebFrameProxy.cpp:

(WebKit::WebFrameProxy::setUpPolicyListenerProxy):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::requestFontAttributesAtSelectionStart):
(WebKit::WebPageProxy::receivedNavigationPolicyDecision):
(WebKit::WebPageProxy::continueNavigationInNewProcess):
(WebKit::WebPageProxy::forceRepaint):
(WebKit::WebPageProxy::decidePolicyForNavigationAction):
(WebKit::WebPageProxy::decidePolicyForNewWindowAction):
(WebKit::WebPageProxy::decidePolicyForResponseShared):
(WebKit::WebPageProxy::willSubmitForm):
(WebKit::WebPageProxy::createNewPage):
(WebKit::WebPageProxy::getWindowFrame):
(WebKit::WebPageProxy::getWindowFrameWithCallback):
(WebKit::WebPageProxy::printFrame):
(WebKit::WebPageProxy::didChooseFilesForOpenPanelWithImageTranscoding):
(WebKit::WebPageProxy::didReceiveAuthenticationChallengeProxy):
(WebKit::WebPageProxy::requestStorageSpace):
(WebKit::WebPageProxy::getLoadDecisionForIcon):
(WebKit::WebPageProxy::dispatchActivityStateUpdateForTesting):

  • UIProcess/WebProcessPool.cpp:

(WebKit::WebProcessPool::terminateServiceWorkers):
(WebKit::WebProcessPool::processForNavigationInternal):

  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::processDidTerminateOrFailedToLaunch):
(WebKit::WebProcessProxy::didBecomeUnresponsive):
(WebKit::WebProcessProxy::didFinishLaunching):
(WebKit::WebProcessProxy::fetchWebsiteData):
(WebKit::WebProcessProxy::deleteWebsiteData):
(WebKit::WebProcessProxy::deleteWebsiteDataForOrigins):
(WebKit::WebProcessProxy::requestTermination):
(WebKit::WebProcessProxy::didExceedCPULimit):

  • UIProcess/WebURLSchemeTask.cpp:

(WebKit::WebURLSchemeTask::willPerformRedirection):

  • UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:

(WebKit::WebsiteDataStore::ensureAppBoundDomains const):

  • UIProcess/WebsiteData/WebsiteDataStore.cpp:

(WebKit::WebsiteDataStore::fetchDataAndApply):
(WebKit::WebsiteDataStore::getResourceLoadStatisticsDataSummary):

  • UIProcess/ios/ProcessAssertionIOS.mm:

(WebKit::ProcessAssertion::acquireAsync):

  • UIProcess/mac/WebContextMenuProxyMac.mm:

(WebKit::WebContextMenuProxyMac::getShareMenuItem):
(WebKit::WebContextMenuProxyMac::getContextMenuFromItems):
(WebKit::WebContextMenuProxyMac::useContextMenuItems):

  • UIProcess/mac/WebPageProxyMac.mm:

(WebKit::WebPageProxy::windowAndViewFramesChanged):
(WebKit::WebPageProxy::pdfSaveToPDF):
(WebKit::WebPageProxy::pdfOpenWithPreview):

  • WebProcess/GPU/GPUProcessConnection.cpp:

(WebKit::GPUProcessConnection::didClose):

  • WebProcess/GPU/media/RemoteAudioDestinationProxy.cpp:

(WebKit::RemoteAudioDestinationProxy::startRendering):
(WebKit::RemoteAudioDestinationProxy::stopRendering):

  • WebProcess/GPU/media/RemoteAudioSourceProviderManager.cpp:

(WebKit::RemoteAudioSourceProviderManager::addProvider):
(WebKit::RemoteAudioSourceProviderManager::removeProvider):

  • WebProcess/GPU/media/SourceBufferPrivateRemote.cpp:

(WebKit::SourceBufferPrivateRemote::removeCodedFrames):

  • WebProcess/Network/WebResourceLoader.cpp:

(WebKit::WebResourceLoader::didReceiveResponse):
(WebKit::WebResourceLoader::didReceiveData):
(WebKit::WebResourceLoader::didFinishResourceLoad):
(WebKit::WebResourceLoader::didFailResourceLoad):

  • WebProcess/Network/WebSocketChannel.cpp:

(WebKit::WebSocketChannel::sendMessage):
(WebKit::WebSocketChannel::close):
(WebKit::WebSocketChannel::fail):
(WebKit::WebSocketChannel::didClose):
(WebKit::WebSocketChannel::resume):

  • WebProcess/Notifications/NotificationPermissionRequestManager.cpp:

(WebKit::NotificationPermissionRequestManager::startRequest):

  • WebProcess/Plugins/Netscape/NetscapePlugin.cpp:

(WebKit::NetscapePlugin::pluginThreadAsyncCall):

  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(WebKit::PDFPlugin::PDFPlugin):
(WebKit::PDFPlugin::pdfLog):
(WebKit::PDFPlugin::receivedNonLinearizedPDFSentinel):
(WebKit::PDFPlugin::getResourceBytesAtPosition):
(WebKit::PDFPlugin::tryRunScriptsInPDFDocument):

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::Stream::start):

  • WebProcess/Storage/WebServiceWorkerFetchTaskClient.cpp:

(WebKit::WebServiceWorkerFetchTaskClient::didReceiveFormDataAndFinish):

  • WebProcess/UserContent/WebUserContentController.cpp:

(WebKit::WebUserContentController::removeUserScriptMessageHandlerInternal):

  • WebProcess/WebPage/EventDispatcher.cpp:

(WebKit::EventDispatcher::wheelEvent):
(WebKit::EventDispatcher::gestureEvent):
(WebKit::EventDispatcher::touchEvent):
(WebKit::EventDispatcher::dispatchWheelEventViaMainThread):

  • WebProcess/WebPage/ViewUpdateDispatcher.cpp:

(WebKit::ViewUpdateDispatcher::visibleContentRectUpdate):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::suspendForProcessSwap):
(WebKit::WebPage::runJavaScriptInFrameInScriptWorld):
(WebKit::WebPage::drawPagesForPrinting):
(WebKit::WebPage::elementDidBlur):
(WebKit::WebPage::requestStorageAccess):

  • WebProcess/WebPage/WebURLSchemeTaskProxy.cpp:

(WebKit::WebURLSchemeTaskProxy::didPerformRedirection):
(WebKit::WebURLSchemeTaskProxy::didReceiveResponse):
(WebKit::WebURLSchemeTaskProxy::didReceiveData):
(WebKit::WebURLSchemeTaskProxy::didComplete):

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::handleSyntheticClick):
(WebKit::WebPage::didFinishContentChangeObserving):
(WebKit::WebPage::didFinishLoadingImageForElement):
(WebKit::WebPage::updateInputContextAfterBlurringAndRefocusingElementIfNeeded):

  • WebProcess/cocoa/RemoteCaptureSampleManager.cpp:

(WebKit::RemoteCaptureSampleManager::addSource):
(WebKit::RemoteCaptureSampleManager::removeSource):

  • WebProcess/cocoa/RemoteRealtimeAudioSource.cpp:

(WebKit::RemoteRealtimeAudioSource::createRemoteMediaSource):

  • WebProcess/cocoa/RemoteRealtimeVideoSource.cpp:

(WebKit::RemoteRealtimeVideoSource::createRemoteMediaSource):

  • WebProcess/cocoa/VideoFullscreenManager.mm:

(WebKit::VideoFullscreenManager::exitVideoFullscreenForVideoElement):
(WebKit::VideoFullscreenManager::requestVideoContentLayer):
(WebKit::VideoFullscreenManager::returnVideoContentLayer):
(WebKit::VideoFullscreenManager::didSetupFullscreen):
(WebKit::VideoFullscreenManager::willExitFullscreen):
(WebKit::VideoFullscreenManager::didEnterFullscreen):
(WebKit::VideoFullscreenManager::didExitFullscreen):
(WebKit::VideoFullscreenManager::didCleanupFullscreen):

Source/WebKitLegacy:

  • Storage/InProcessIDBServer.cpp:

(InProcessIDBServer::InProcessIDBServer):
(InProcessIDBServer::deleteDatabase):
(InProcessIDBServer::didDeleteDatabase):
(InProcessIDBServer::openDatabase):
(InProcessIDBServer::didOpenDatabase):
(InProcessIDBServer::didAbortTransaction):
(InProcessIDBServer::didCommitTransaction):
(InProcessIDBServer::didCreateObjectStore):
(InProcessIDBServer::didDeleteObjectStore):
(InProcessIDBServer::didRenameObjectStore):
(InProcessIDBServer::didClearObjectStore):
(InProcessIDBServer::didCreateIndex):
(InProcessIDBServer::didDeleteIndex):
(InProcessIDBServer::didRenameIndex):
(InProcessIDBServer::didPutOrAdd):
(InProcessIDBServer::didGetRecord):
(InProcessIDBServer::didGetAllRecords):
(InProcessIDBServer::didGetCount):
(InProcessIDBServer::didDeleteRecord):
(InProcessIDBServer::didOpenCursor):
(InProcessIDBServer::didIterateCursor):
(InProcessIDBServer::abortTransaction):
(InProcessIDBServer::commitTransaction):
(InProcessIDBServer::didFinishHandlingVersionChangeTransaction):
(InProcessIDBServer::createObjectStore):
(InProcessIDBServer::deleteObjectStore):
(InProcessIDBServer::renameObjectStore):
(InProcessIDBServer::clearObjectStore):
(InProcessIDBServer::createIndex):
(InProcessIDBServer::deleteIndex):
(InProcessIDBServer::renameIndex):
(InProcessIDBServer::putOrAdd):
(InProcessIDBServer::getRecord):
(InProcessIDBServer::getAllRecords):
(InProcessIDBServer::getCount):
(InProcessIDBServer::deleteRecord):
(InProcessIDBServer::openCursor):
(InProcessIDBServer::iterateCursor):
(InProcessIDBServer::establishTransaction):
(InProcessIDBServer::fireVersionChangeEvent):
(InProcessIDBServer::didStartTransaction):
(InProcessIDBServer::didCloseFromServer):
(InProcessIDBServer::notifyOpenDBRequestBlocked):
(InProcessIDBServer::databaseConnectionPendingClose):
(InProcessIDBServer::databaseConnectionClosed):
(InProcessIDBServer::abortOpenAndUpgradeNeeded):
(InProcessIDBServer::didFireVersionChangeEvent):
(InProcessIDBServer::openDBRequestCancelled):
(InProcessIDBServer::getAllDatabaseNamesAndVersions):
(InProcessIDBServer::didGetAllDatabaseNamesAndVersions):
(InProcessIDBServer::closeAndDeleteDatabasesModifiedSince):

Source/WebKitLegacy/mac:

  • Plugins/Hosted/HostedNetscapePluginStream.mm:

(WebKit::HostedNetscapePluginStream::start):

  • Plugins/WebNetscapePluginStream.mm:

(WebNetscapePluginStream::start):

Source/WTF:

  • wtf/cocoa/WorkQueueCocoa.cpp:

(WTF::WorkQueue::dispatch):
(WTF::WorkQueue::dispatchAfter):

  • wtf/glib/SocketConnection.cpp:

(WTF::SocketConnection::SocketConnection):
(WTF::SocketConnection::waitForSocketWritability):

Tools:

  • DumpRenderTree/TestRunner.cpp:

(TestRunner::callUIScriptCallback):

  • DumpRenderTree/ios/UIScriptControllerIOS.mm:

(WTR::UIScriptControllerIOS::doAsyncTask):
(WTR::UIScriptControllerIOS::zoomToScale):

  • DumpRenderTree/mac/UIScriptControllerMac.mm:

(WTR::UIScriptControllerMac::doAsyncTask):
(WTR::UIScriptControllerMac::activateDataListSuggestion):
(WTR::UIScriptControllerMac::removeViewFromWindow):
(WTR::UIScriptControllerMac::addViewToWindow):

  • DumpRenderTree/win/UIScriptControllerWin.cpp:

(WTR::UIScriptControllerWin::doAsyncTask):

  • TestWebKitAPI/cocoa/HTTPServer.mm:

(TestWebKitAPI::H2::Connection::receive const):

  • WebKitTestRunner/cocoa/UIScriptControllerCocoa.mm:

(WTR::UIScriptControllerCocoa::setDidShowContextMenuCallback):
(WTR::UIScriptControllerCocoa::setDidDismissContextMenuCallback):

  • WebKitTestRunner/gtk/UIScriptControllerGtk.cpp:

(WTR::UIScriptControllerGtk::doAsyncTask):
(WTR::UIScriptControllerGtk::activateAtPoint):
(WTR::UIScriptControllerGtk::removeViewFromWindow):
(WTR::UIScriptControllerGtk::addViewToWindow):

  • WebKitTestRunner/ios/UIScriptControllerIOS.mm:

(WTR::UIScriptControllerIOS::doAfterPresentationUpdate):
(WTR::UIScriptControllerIOS::doAfterNextStablePresentationUpdate):
(WTR::UIScriptControllerIOS::ensurePositionInformationIsUpToDateAt):
(WTR::UIScriptControllerIOS::doAfterVisibleContentRectUpdate):
(WTR::UIScriptControllerIOS::zoomToScale):
(WTR::UIScriptControllerIOS::retrieveSpeakSelectionContent):
(WTR::UIScriptControllerIOS::simulateAccessibilitySettingsChangeNotification):
(WTR::UIScriptControllerIOS::touchDownAtPoint):
(WTR::UIScriptControllerIOS::liftUpAtPoint):
(WTR::UIScriptControllerIOS::twoFingerSingleTapAtPoint):
(WTR::UIScriptControllerIOS::singleTapAtPointWithModifiers):
(WTR::UIScriptControllerIOS::doubleTapAtPoint):
(WTR::UIScriptControllerIOS::stylusDownAtPoint):
(WTR::UIScriptControllerIOS::stylusMoveToPoint):
(WTR::UIScriptControllerIOS::stylusUpAtPoint):
(WTR::UIScriptControllerIOS::stylusTapAtPointWithModifiers):
(WTR::UIScriptControllerIOS::longPressAtPoint):
(WTR::UIScriptControllerIOS::typeCharacterUsingHardwareKeyboard):
(WTR::UIScriptControllerIOS::dismissFilePicker):
(WTR::UIScriptControllerIOS::applyAutocorrection):
(WTR::UIScriptControllerIOS::simulateRotation):
(WTR::UIScriptControllerIOS::simulateRotationLikeSafari):
(WTR::UIScriptControllerIOS::setDidStartFormControlInteractionCallback):
(WTR::UIScriptControllerIOS::setDidEndFormControlInteractionCallback):
(WTR::UIScriptControllerIOS::setWillBeginZoomingCallback):
(WTR::UIScriptControllerIOS::setDidEndZoomingCallback):
(WTR::UIScriptControllerIOS::setDidShowKeyboardCallback):
(WTR::UIScriptControllerIOS::setDidHideKeyboardCallback):
(WTR::UIScriptControllerIOS::setWillStartInputSessionCallback):
(WTR::UIScriptControllerIOS::chooseMenuAction):
(WTR::UIScriptControllerIOS::setWillPresentPopoverCallback):
(WTR::UIScriptControllerIOS::setDidDismissPopoverCallback):
(WTR::UIScriptControllerIOS::setDidEndScrollingCallback):
(WTR::UIScriptControllerIOS::activateDataListSuggestion):
(WTR::UIScriptControllerIOS::doAfterDoubleTapDelay):
(WTR::UIScriptControllerIOS::installTapGestureOnWindow):

  • WebKitTestRunner/mac/UIScriptControllerMac.mm:

(WTR::UIScriptControllerMac::zoomToScale):
(WTR::UIScriptControllerMac::simulateAccessibilitySettingsChangeNotification):
(WTR::UIScriptControllerMac::chooseMenuAction):
(WTR::UIScriptControllerMac::activateAtPoint):

  • WebKitTestRunner/win/UIScriptControllerWin.cpp:

(WTR::UIScriptControllerWin::doAsyncTask):

  • WebKitTestRunner/wpe/UIScriptControllerWPE.cpp:

(WTR::UIScriptControllerWPE::doAsyncTask):
(WTR::UIScriptControllerWPE::activateAtPoint):
(WTR::UIScriptControllerWPE::removeViewFromWindow):
(WTR::UIScriptControllerWPE::addViewToWindow):

10:12 AM Changeset in webkit [282754] by Chris Dumez
  • 4 edits in trunk/Source/WebKit

Fix race in RemoteRenderingBackend::allowsExitUnderMemoryPressure()
https://bugs.webkit.org/show_bug.cgi?id=229870
<rdar://82459484>

Reviewed by Simon Fraser.

RemoteRenderingBackend::allowsExitUnderMemoryPressure() gets called on the main thread while
RemoteResourceCache is always modified on a work queue. Introduce a std::atomic<bool> on
the RemoteResourceCache that RemoteRenderingBackend::allowsExitUnderMemoryPressure() can
safely query from the main thread.

  • GPUProcess/graphics/RemoteRenderingBackend.cpp:

(WebKit::RemoteRenderingBackend::updateRenderingResourceRequest):
(WebKit::RemoteRenderingBackend::allowsExitUnderMemoryPressure const):

  • GPUProcess/graphics/RemoteResourceCache.cpp:

(WebKit::RemoteResourceCache::RemoteResourceCache):
(WebKit::RemoteResourceCache::cacheImageBuffer):
(WebKit::RemoteResourceCache::cacheNativeImage):
(WebKit::RemoteResourceCache::maybeRemoveResource):
(WebKit::RemoteResourceCache::updateHasActiveDrawables):

  • GPUProcess/graphics/RemoteResourceCache.h:

(WebKit::RemoteResourceCache::hasActiveDrawables const):

9:56 AM Changeset in webkit [282753] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

REGRESSION (r281102?): [ Mac ] media/track/track-in-band.html is a flaky timeout.
https://bugs.webkit.org/show_bug.cgi?id=229478

Unreviewed test gardening.

  • platform/mac-wk1/TestExpectations:
9:52 AM Changeset in webkit [282752] by jer.noble@apple.com
  • 11 edits in trunk/Source

[Cocoa] Make AVSampleBufferVideoOutput support an Experimental Feature
https://bugs.webkit.org/show_bug.cgi?id=230424

Reviewed by Eric Carlson.

Source/WebCore:

Move AVSampleBufferVideoOutput from a compile-time to a runtime enabled
feature for A/B testing purposes.

  • page/RuntimeEnabledFeatures.cpp:

(WebCore::RuntimeEnabledFeatures::setMediaSourceInlinePaintingEnabled):

  • page/RuntimeEnabledFeatures.h:

(WebCore::RuntimeEnabledFeatures::mediaSourceInlinePaintingEnabled const):

  • platform/audio/cocoa/MediaSessionManagerCocoa.h:
  • platform/audio/cocoa/MediaSessionManagerCocoa.mm:

(WebCore::MediaSessionManagerCocoa::setMediaSourceInlinePaintingEnabled):
(WebCore::MediaSessionManagerCocoa::mediaSourceInlinePaintingEnabled):

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:

(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::updateLastPixelBuffer):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::ensureLayer):

Source/WebCore/PAL:

Drive-by fix: fix up the declarations in AVFoundationSPI.h.

  • pal/spi/cocoa/AVFoundationSPI.h:

Source/WTF:

  • Scripts/Preferences/WebPreferencesExperimental.yaml:
  • wtf/PlatformHave.h:
9:26 AM Changeset in webkit [282751] by graouts@webkit.org
  • 8 edits in trunk/Source/WebCore

TimingFunction::transformTime() is poorly-named
https://bugs.webkit.org/show_bug.cgi?id=230478

Reviewed by Simon Fraser.

This function transforms an input _progress_ not a time, so we rename it to transformProgress()
and name its first parameter accordingly.

  • animation/AnimationEffect.cpp:

(WebCore::AnimationEffect::getComputedTiming const):

  • animation/KeyframeEffect.cpp:

(WebCore::KeyframeEffect::setAnimatedPropertiesInStyle):

  • platform/ScrollAnimationSmooth.cpp:

(WebCore::ScrollAnimationSmooth::animateScroll):

  • platform/animation/TimingFunction.cpp:

(WebCore::TimingFunction::transformProgress const):
(WebCore::TimingFunction::transformTime const): Deleted.

  • platform/animation/TimingFunction.h:
  • platform/graphics/nicosia/NicosiaAnimation.cpp:

(Nicosia::Animation::apply):

  • platform/mac/ScrollbarsControllerMac.mm:

(-[WebScrollbarPartAnimation setCurrentProgress:]):

9:19 AM Changeset in webkit [282750] by Aditya Keerthi
  • 20 edits
    12 adds in trunk

Implement input-security
https://bugs.webkit.org/show_bug.cgi?id=184510
rdar://79979992

Reviewed by Antti Koivisto.

LayoutTests/imported/w3c:

Add web platform tests for input-security.

  • web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt:
  • web-platform-tests/css/css-ui/input-security-auto-sensitive-text-input-expected.html: Added.
  • web-platform-tests/css/css-ui/input-security-auto-sensitive-text-input.html: Added.
  • web-platform-tests/css/css-ui/input-security-computed-expected.txt: Added.
  • web-platform-tests/css/css-ui/input-security-computed.html: Added.
  • web-platform-tests/css/css-ui/input-security-non-sensitive-elements-expected.html: Added.
  • web-platform-tests/css/css-ui/input-security-non-sensitive-elements.html: Added.
  • web-platform-tests/css/css-ui/input-security-none-sensitive-text-input-expected.html: Added.
  • web-platform-tests/css/css-ui/input-security-none-sensitive-text-input.html: Added.
  • web-platform-tests/css/css-ui/input-security-parsing-expected.txt: Added.
  • web-platform-tests/css/css-ui/input-security-parsing.html: Added.
  • web-platform-tests/css/cssom/cssstyledeclaration-csstext-expected.txt:
  • web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt:

Source/WebCore:

Implement the input-security property as specified in
https://drafts.csswg.org/css-ui-4/#input-security.

The property provides authors a way to enable/disable obscuring of text
in sensitive text inputs, such as <input type=password>. While the
property is similar to the non-standard -webkit-text-security property
at a surface level, there are several differences that make input-security
more than a simple alias/synonym.

  1. -webkit-text-security is an inherited property, input-security is not.
  1. input-security only applies to sensitive text inputs, whereas -webkit-text-security applies to everything but sensitive text inputs. The latter is due to the presence of an !important rule in the UA stylesheet that prevented authors from disabling/controlling obscuring.
  1. -webkit-text-security supports additional values that control the appearance of obscured characters. input-security is a simple toggle.

However, while an alias is not possible, the implementation can still
leverage the existing text security logic under the hood.

Tests: fast/css/computed-text-security-for-input-security.html

imported/w3c/web-platform-tests/css/css-ui/input-security-auto-sensitive-text-input.html
imported/w3c/web-platform-tests/css/css-ui/input-security-computed.html
imported/w3c/web-platform-tests/css/css-ui/input-security-non-sensitive-elements.html
imported/w3c/web-platform-tests/css/css-ui/input-security-none-sensitive-text-input.html
imported/w3c/web-platform-tests/css/css-ui/input-security-parsing.html

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::valueForPropertyInStyle):

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator InputSecurity const):

  • css/CSSProperties.json:
  • css/html.css:

(input[type="password"]):

Remove the -webkit-text-security rule, as password inputs are obscured
by default (input-security: auto), and to support disabling of
obscuring.

(input:-webkit-autofill-strong-password, input:-webkit-autofill-strong-password-viewable):

Use input-security to make the characters viewable, as
-webkit-text-security no longer has an effect on password inputs in
the UA stylesheet. Note that the property already had no effect in
author stylesheets.

  • css/parser/CSSParserFastPaths.cpp:

(WebCore::CSSParserFastPaths::isValidKeywordPropertyAndValue):
(WebCore::CSSParserFastPaths::isKeywordPropertyID):

  • rendering/style/RenderStyle.cpp:

(WebCore::rareNonInheritedDataChangeRequiresLayout):

  • rendering/style/RenderStyle.h:

(WebCore::RenderStyle::inputSecurity const):
(WebCore::RenderStyle::setInputSecurity):
(WebCore::RenderStyle::initialInputSecurity):

  • rendering/style/RenderStyleConstants.h:
  • rendering/style/StyleRareNonInheritedData.cpp:

(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
(WebCore::StyleRareNonInheritedData::operator== const):

  • rendering/style/StyleRareNonInheritedData.h:
  • style/StyleAdjuster.cpp:

(WebCore::Style::Adjuster::adjust const):

Control the obscuring of text in password inputs by setting appropriate
TextSecurity value in RenderStyle, corresponding to the InputSecurity
value. This implementation was chosen for two reasons:

  1. Leverage the existing logic which obscures characters based on the style's TextSecurity value. Note that it is already not possible to specify other TextSecurity value's for password inputs, so there is no risk in forcing a TextSecurity value for a given InputSecurity.
  1. Ensure the computed value for -webkit-text-security is not "none" (the default) when input-security is "auto". This behavior is necessary as there are known existing scripts that check the computed value for -webkit-text-security to determine whether text in an input is obscured.

LayoutTests:

Add a test to verify the interaction between the new input-security
property, and the existing -webkit-text-security property. See the
WebCore ChangeLog for more details.

Rebaselined existing tests to account for the existence of a new CSS
property.

  • fast/css/computed-text-security-for-input-security-expected.txt: Added.
  • fast/css/computed-text-security-for-input-security.html: Added.
  • platform/ios-wk2/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-csstext-expected.txt:
  • platform/ios-wk2/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt:
  • platform/ios/imported/w3c/web-platform-tests/css/cssom/cssstyledeclaration-csstext-expected.txt:
9:01 AM Changeset in webkit [282749] by Simon Fraser
  • 19 edits in trunk/Source/WebCore

Have ScrollingMomentumCalculator work in terms of ScrollExtents
https://bugs.webkit.org/show_bug.cgi?id=230465

Reviewed by Wenson Hsieh.

ScrollAnimator gets min/max scroll offsets and the viewport size via a ScrollExtents
class. To ease a future transition of ScrollingMomentumCalculator to be a ScrollAnimator,
move ScrollingMomentumCalculator to use the same struct, which is modified to satisfy
the need to provide ScrollingMomentumCalculatorMac with the contents size.

  • page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.h:
  • page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm:

(WebCore::ScrollingTreeScrollingNodeDelegateMac::scrollExtents const):
(WebCore::ScrollingTreeScrollingNodeDelegateMac::scrollExtent const): Deleted.
(WebCore::ScrollingTreeScrollingNodeDelegateMac::viewportSize const): Deleted.

  • platform/ScrollAnimation.h:
  • platform/ScrollAnimationKinetic.cpp:

(WebCore::ScrollAnimationKinetic::startAnimatedScrollWithInitialVelocity):

  • platform/ScrollAnimationSmooth.cpp:

(WebCore::ScrollAnimationSmooth::startOrRetargetAnimation):
(WebCore::ScrollAnimationSmooth::updateScrollExtents):

  • platform/ScrollAnimator.cpp:

(WebCore::ScrollAnimator::scrollExtents const):
(WebCore::ScrollAnimator::scrollExtentsForAnimation):
(WebCore::ScrollAnimator::scrollExtent const): Deleted.
(WebCore::ScrollAnimator::viewportSize const): Deleted.

  • platform/ScrollAnimator.h:
  • platform/ScrollSnapAnimatorState.cpp:

(WebCore::ScrollSnapAnimatorState::transitionToSnapAnimationState):
(WebCore::ScrollSnapAnimatorState::transitionToGlideAnimationState):
(WebCore::ScrollSnapAnimatorState::setupAnimationForState):
(WebCore::ScrollSnapAnimatorState::targetOffsetForStartOffset const):

  • platform/ScrollSnapAnimatorState.h:
  • platform/ScrollTypes.h:

(WebCore::ScrollExtents::minimumScrollOffset const):
(WebCore::ScrollExtents::maximumScrollOffset const):

  • platform/ScrollingEffectsController.cpp:

(WebCore::ScrollingEffectsController::setNearestScrollSnapIndexForAxisAndOffset):
(WebCore::ScrollingEffectsController::adjustScrollDestination):

  • platform/ScrollingEffectsController.h:
  • platform/ScrollingMomentumCalculator.cpp:

(WebCore::ScrollingMomentumCalculator::ScrollingMomentumCalculator):
(WebCore::ScrollingMomentumCalculator::predictedDestinationOffset):
(WebCore::ScrollingMomentumCalculator::create):
(WebCore::BasicScrollingMomentumCalculator::BasicScrollingMomentumCalculator):

  • platform/ScrollingMomentumCalculator.h:
  • platform/mac/ScrollingEffectsController.mm:

(WebCore::ScrollingEffectsController::statelessSnapTransitionTimerFired):
(WebCore::ScrollingEffectsController::processWheelEventForScrollSnap):

  • platform/mac/ScrollingMomentumCalculatorMac.h:
  • platform/mac/ScrollingMomentumCalculatorMac.mm:

(WebCore::ScrollingMomentumCalculator::create):
(WebCore::ScrollingMomentumCalculatorMac::ScrollingMomentumCalculatorMac):
(WebCore::ScrollingMomentumCalculatorMac::ensurePlatformMomentumCalculator):

8:04 AM Changeset in webkit [282748] by Chris Dumez
  • 2 edits in trunk/LayoutTests

Unskip COOP tests that were marked as flaky as they have no recent failures on the bots.

  • platform/mac/TestExpectations:
7:35 AM Changeset in webkit [282747] by ntim@apple.com
  • 2 edits
    2 adds in trunk/LayoutTests/imported/w3c

Import inert/inert-on-non-html.tentative.html from WPT
https://bugs.webkit.org/show_bug.cgi?id=230474

Reviewed by Youenn Fablet.

  • web-platform-tests/inert/inert-on-non-html.tentative.html: Added.
  • web-platform-tests/inert/inert-on-non-html.tentative-expected.txt: Added.
  • web-platform-tests/inert/w3c-import.log:
7:22 AM Changeset in webkit [282746] by commit-queue@webkit.org
  • 7 edits
    7 adds in trunk

Web Share permission policy "web-share" and "self" as the allowlist
https://bugs.webkit.org/show_bug.cgi?id=214448

Patch by Marcos Caceres <Marcos Caceres> on 2021-09-20
Reviewed by Youenn Fablet.

Source/WebCore:

Tests: http/tests/webshare/webshare-allow-attribute-canShare.https.html

http/tests/webshare/webshare-allow-attribute-share.https.html

  • html/FeaturePolicy.cpp:

(WebCore::policyTypeName):
(WebCore::FeaturePolicy::parse):
(WebCore::FeaturePolicy::allows const):

  • html/FeaturePolicy.h:
  • page/Navigator.cpp:

(WebCore::Navigator::canShare):
(WebCore::Navigator::share):

LayoutTests:

  • http/tests/webshare/resources/webshare-postmessage.html: Added.
  • http/tests/webshare/webshare-allow-attribute-canShare.https-expected.txt: Added.
  • http/tests/webshare/webshare-allow-attribute-canShare.https.html: Added.
  • http/tests/webshare/webshare-allow-attribute-share.https-expected.txt: Added.
  • http/tests/webshare/webshare-allow-attribute-share.https.html: Added.
  • platform/mac-wk1/TestExpectations:
  • platform/win/TestExpectations:
7:09 AM Changeset in webkit [282745] by commit-queue@webkit.org
  • 11 edits in trunk/LayoutTests

Web Share tests are out of date
https://bugs.webkit.org/show_bug.cgi?id=229489

Patch by Marcos Caceres <Marcos Caceres> on 2021-09-20
Reviewed by Youenn Fablet.

LayoutTests/imported/w3c:

  • web-platform-tests/web-share/canShare.https.html:
  • web-platform-tests/web-share/share-consume-activation.https.html:
  • web-platform-tests/web-share/share-empty.https.html:
  • web-platform-tests/web-share/share-securecontext.http.html:
  • web-platform-tests/web-share/share-simple-manual.https.html:

LayoutTests:

  • platform/ios-wk2/imported/w3c/web-platform-tests/web-share/canShare.https-expected.txt:
  • platform/ios-wk2/imported/w3c/web-platform-tests/web-share/share-empty.https-expected.txt:
  • platform/mac-wk2/imported/w3c/web-platform-tests/web-share/canShare.https-expected.txt:
  • platform/mac-wk2/imported/w3c/web-platform-tests/web-share/share-empty.https-expected.txt:
7:00 AM Changeset in webkit [282744] by Alan Bujtas
  • 3 edits in trunk/Source/WebCore

[LFC][Integration] Remove redundant Run::m_isLineSpanning
https://bugs.webkit.org/show_bug.cgi?id=230470

Reviewed by Antti Koivisto.

FIXME got implemented. Run iterators do skip line spanning inline boxes. We don't need this anymore.

  • layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp:

(WebCore::Layout::InlineDisplayContentBuilder::createRunsAndUpdateGeometryForLineSpanningInlineBoxes):

  • layout/formattingContexts/inline/InlineLineRun.h:

(WebCore::Layout::Run::hasContent const):
(WebCore::Layout::Run::Run):
(WebCore::Layout::Run::isLineSpanning const): Deleted.

5:04 AM Changeset in webkit [282743] by youenn@apple.com
  • 66 edits
    35 adds
    3 deletes in trunk/LayoutTests

Resync WPT webrtc tests from upstream
https://bugs.webkit.org/show_bug.cgi?id=229549
<rdar://problem/82670236>

Reviewed by Eric Carlson.

LayoutTests/imported/w3c:

  • resources/import-expectations.json:
  • web-platform-tests/webrtc/RTCConfiguration-iceServers-expected.txt:
  • web-platform-tests/webrtc/RTCConfiguration-iceServers.html:
  • web-platform-tests/webrtc/RTCDataChannel-bufferedAmount-expected.txt:
  • web-platform-tests/webrtc/RTCDataChannel-iceRestart-expected.txt: Added.
  • web-platform-tests/webrtc/RTCDataChannel-iceRestart.html: Added.
  • web-platform-tests/webrtc/RTCDataChannel-send-expected.txt:
  • web-platform-tests/webrtc/RTCDataChannel-send.html:
  • web-platform-tests/webrtc/RTCDtlsTransport-state-expected.txt:
  • web-platform-tests/webrtc/RTCDtlsTransport-state.html:
  • web-platform-tests/webrtc/RTCIceConnectionState-candidate-pair.https-expected.txt:
  • web-platform-tests/webrtc/RTCIceTransport-extension-helper.js: Removed.
  • web-platform-tests/webrtc/RTCIceTransport-extension.https-expected.txt:
  • web-platform-tests/webrtc/RTCIceTransport-extension.https.html:
  • web-platform-tests/webrtc/RTCPeerConnection-addIceCandidate-connectionSetup.html:
  • web-platform-tests/webrtc/RTCPeerConnection-addIceCandidate-expected.txt:
  • web-platform-tests/webrtc/RTCPeerConnection-addIceCandidate.html:
  • web-platform-tests/webrtc/RTCPeerConnection-addTrack.https-expected.txt:
  • web-platform-tests/webrtc/RTCPeerConnection-addTrack.https.html:
  • web-platform-tests/webrtc/RTCPeerConnection-capture-video.https.html: Added.
  • web-platform-tests/webrtc/RTCPeerConnection-connectionState-expected.txt:
  • web-platform-tests/webrtc/RTCPeerConnection-connectionState.html: Added.
  • web-platform-tests/webrtc/RTCPeerConnection-createOffer-offerToReceive-expected.txt: Added.
  • web-platform-tests/webrtc/RTCPeerConnection-createOffer-offerToReceive.html: Added.
  • web-platform-tests/webrtc/RTCPeerConnection-getDefaultIceServers-expected.txt: Added.
  • web-platform-tests/webrtc/RTCPeerConnection-getDefaultIceServers.html: Added.
  • web-platform-tests/webrtc/RTCPeerConnection-getIdentityAssertion.sub-expected.txt: Added.
  • web-platform-tests/webrtc/RTCPeerConnection-getIdentityAssertion.sub.html: Added.
  • web-platform-tests/webrtc/RTCPeerConnection-getStats.https.html:
  • web-platform-tests/webrtc/RTCPeerConnection-helper.js:

(doExchange):
(async listenForSSRCs):

  • web-platform-tests/webrtc/RTCPeerConnection-iceConnectionState-expected.txt:
  • web-platform-tests/webrtc/RTCPeerConnection-iceConnectionState.html: Added.
  • web-platform-tests/webrtc/RTCPeerConnection-iceConnectionState.https.html:
  • web-platform-tests/webrtc/RTCPeerConnection-iceGatheringState.html:
  • web-platform-tests/webrtc/RTCPeerConnection-mandatory-getStats.https-expected.txt:
  • web-platform-tests/webrtc/RTCPeerConnection-mandatory-getStats.https.html:
  • web-platform-tests/webrtc/RTCPeerConnection-peerIdentity-expected.txt: Added.
  • web-platform-tests/webrtc/RTCPeerConnection-peerIdentity.html: Added.
  • web-platform-tests/webrtc/RTCPeerConnection-perfect-negotiation-stress-glare-linear.https-expected.txt:
  • web-platform-tests/webrtc/RTCPeerConnection-perfect-negotiation.https-expected.txt:
  • web-platform-tests/webrtc/RTCPeerConnection-plan-b-is-not-supported-expected.txt: Added.
  • web-platform-tests/webrtc/RTCPeerConnection-plan-b-is-not-supported.html: Added.
  • web-platform-tests/webrtc/RTCPeerConnection-relay-canvas.https-expected.txt: Added.
  • web-platform-tests/webrtc/RTCPeerConnection-relay-canvas.https.html: Added.
  • web-platform-tests/webrtc/RTCPeerConnection-remote-track-mute.https-expected.txt:
  • web-platform-tests/webrtc/RTCPeerConnection-restartIce.https-expected.txt:
  • web-platform-tests/webrtc/RTCPeerConnection-restartIce.https.html:
  • web-platform-tests/webrtc/RTCPeerConnection-setLocalDescription-answer-expected.txt:
  • web-platform-tests/webrtc/RTCPeerConnection-setLocalDescription-offer-expected.txt:
  • web-platform-tests/webrtc/RTCPeerConnection-setLocalDescription-pranswer-expected.txt:
  • web-platform-tests/webrtc/RTCPeerConnection-setLocalDescription-pranswer.html:
  • web-platform-tests/webrtc/RTCPeerConnection-setRemoteDescription-tracks.https-expected.txt: Added.
  • web-platform-tests/webrtc/RTCRtpParameters-degradationPreference-expected.txt: Added.
  • web-platform-tests/webrtc/RTCRtpParameters-degradationPreference.html: Added.
  • web-platform-tests/webrtc/RTCRtpTransceiver-setDirection-expected.txt: Added.
  • web-platform-tests/webrtc/RTCRtpTransceiver-setDirection.html: Added.
  • web-platform-tests/webrtc/RTCRtpTransceiver-stop-expected.txt:
  • web-platform-tests/webrtc/RTCRtpTransceiver-stop.html:
  • web-platform-tests/webrtc/RTCRtpTransceiver.https.html:
  • web-platform-tests/webrtc/RTCStats-helper.js:

(validateCodecStats):

  • web-platform-tests/webrtc/datachannel-emptystring-expected.txt: Removed.
  • web-platform-tests/webrtc/datachannel-emptystring.html: Removed.
  • web-platform-tests/webrtc/getstats.html:
  • web-platform-tests/webrtc/identity-helper.sub.js: Added.

(parseAssertionResult):
(getIdpDomains):
(assert_rtcerror_rejection):
(set hostString):

  • web-platform-tests/webrtc/no-media-call.html:
  • web-platform-tests/webrtc/promises-call.html:
  • web-platform-tests/webrtc/protocol/README.txt:
  • web-platform-tests/webrtc/protocol/dtls-setup.https-expected.txt: Added.
  • web-platform-tests/webrtc/protocol/dtls-setup.https.html: Added.
  • web-platform-tests/webrtc/protocol/handover-datachannel-expected.txt: Added.
  • web-platform-tests/webrtc/protocol/handover-datachannel.html: Added.
  • web-platform-tests/webrtc/protocol/handover.html:
  • web-platform-tests/webrtc/protocol/rtp-clockrate-expected.txt: Added.
  • web-platform-tests/webrtc/protocol/rtp-clockrate.html: Added.
  • web-platform-tests/webrtc/protocol/rtp-extension-support-expected.txt: Added.
  • web-platform-tests/webrtc/protocol/rtp-extension-support.html: Added.
  • web-platform-tests/webrtc/protocol/rtp-payloadtypes.html:
  • web-platform-tests/webrtc/protocol/sdes-dont-dont-dont-expected.txt: Added.
  • web-platform-tests/webrtc/protocol/sdes-dont-dont-dont.html: Added.
  • web-platform-tests/webrtc/protocol/split.https.html:
  • web-platform-tests/webrtc/protocol/vp8-fmtp-expected.txt: Added.
  • web-platform-tests/webrtc/protocol/vp8-fmtp.html: Added.
  • web-platform-tests/webrtc/protocol/w3c-import.log:
  • web-platform-tests/webrtc/simplecall-no-ssrcs.https.html:
  • web-platform-tests/webrtc/simplecall.https.html:
  • web-platform-tests/webrtc/simulcast/basic.https-expected.txt:
  • web-platform-tests/webrtc/simulcast/basic.https.html:
  • web-platform-tests/webrtc/simulcast/getStats.https-expected.txt:
  • web-platform-tests/webrtc/simulcast/h264.https-expected.txt:
  • web-platform-tests/webrtc/simulcast/h264.https.html:
  • web-platform-tests/webrtc/simulcast/setParameters-active.https-expected.txt:
  • web-platform-tests/webrtc/simulcast/setParameters-active.https.html:
  • web-platform-tests/webrtc/simulcast/vp8.https-expected.txt:
  • web-platform-tests/webrtc/simulcast/vp8.https.html:
  • web-platform-tests/webrtc/tools/package.json:
  • web-platform-tests/webrtc/w3c-import.log:

LayoutTests:

Unskipping some tests that are no longer flaky.
Marking some new tests as flaky.

1:08 AM Changeset in webkit [282742] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[Flatpak SDK] Move toolchains to UserFlatpak and improve SDK upgrades
https://bugs.webkit.org/show_bug.cgi?id=230201

Patch by Philippe Normand <pnormand@igalia.com> on 2021-09-20
Reviewed by Carlos Alberto Lopez Perez.

As toolchain archives depend on the SDK runtime, it makes sense to move them in the
corresponding UserFlatpak folder, so that when SDK is upgraded, stale toolchains are
removed. The SDK upgrade is also now handling cached SSCache authentication tokens and
propagating those in the newly installed SDK. Finally, SDK upgrades will now also clear
CMake cache files on WebKit builds, so that hopefully, existing build directories no longer
need to be manually removed.

  • flatpak/flatpakutils.py:

(WebkitFlatpak.init):
(WebkitFlatpak.clean_args):
(WebkitFlatpak.setup_gstbuild):
(WebkitFlatpak.run_in_sandbox):
(WebkitFlatpak.main):
(WebkitFlatpak.acquire_sccache_auth_token_from_config_file):
(WebkitFlatpak.save_config):

Sep 19, 2021:

6:15 PM Changeset in webkit [282741] by Simon Fraser
  • 15 edits in trunk/Source/WebCore

Have ScrollAnimation work in terms of offsets, not positions
https://bugs.webkit.org/show_bug.cgi?id=230450

Reviewed by Antti Koivisto.

Scroll positions can have negative values in RTL content. It's simpler for ScrollAnimation
to work on zero-based scroll offsets. ScrollAnimator handles the mapping from these to
ScrollPositions.

Also share a bit of setCurrentPosition() code. This required adding an early return in
ScrollableArea::setScrollPositionFromAnimation() to avoid re-entrant calls during scrolling
tree commit, which would cause deadlocks on the scrolling tree lock, which happened when a
ScrollAnimation set a fractional offset.

  • platform/KeyboardScrollingAnimator.cpp:

(WebCore::KeyboardScrollingAnimator::scrollableDirectionsFromPosition const): Clarify offset vs. position.
(WebCore::KeyboardScrollingAnimator::updateKeyboardScrollPosition):
(WebCore::KeyboardScrollingAnimator::scrollableDirectionsFromOffset const): Deleted.

  • platform/KeyboardScrollingAnimator.h:
  • platform/ScrollAnimation.h:
  • platform/ScrollAnimationKinetic.cpp:

(WebCore::ScrollAnimationKinetic::PerAxisData::PerAxisData):
(WebCore::ScrollAnimationKinetic::PerAxisData::animateScroll):
(WebCore::ScrollAnimationKinetic::startAnimatedScrollWithInitialVelocity):
(WebCore::ScrollAnimationKinetic::animationTimerFired):

  • platform/ScrollAnimationKinetic.h:
  • platform/ScrollAnimationSmooth.cpp:

(WebCore::ScrollAnimationSmooth::startAnimatedScroll):
(WebCore::ScrollAnimationSmooth::startAnimatedScrollToDestination):
(WebCore::ScrollAnimationSmooth::retargetActiveAnimation):
(WebCore::ScrollAnimationSmooth::startOrRetargetAnimation):
(WebCore::ScrollAnimationSmooth::updateScrollExtents):
(WebCore::ScrollAnimationSmooth::animateScroll):
(WebCore::ScrollAnimationSmooth::animationTimerFired):

  • platform/ScrollAnimationSmooth.h:
  • platform/ScrollAnimator.cpp:

(WebCore::ScrollAnimator::scroll):
(WebCore::ScrollAnimator::scrollToPositionWithoutAnimation):
(WebCore::ScrollAnimator::scrollToPositionWithAnimation):
(WebCore::ScrollAnimator::offsetFromPosition const):
(WebCore::ScrollAnimator::positionFromOffset const):
(WebCore::ScrollAnimator::setCurrentPosition):
(WebCore::ScrollAnimator::notifyPositionChanged):
(WebCore::ScrollAnimator::scrollAnimationDidUpdate):
(WebCore::ScrollAnimator::scrollExtentsForAnimation):
(WebCore::ScrollAnimator::offsetFromPosition): Deleted.
(WebCore::ScrollAnimator::positionFromOffset): Deleted.

  • platform/ScrollAnimator.h:
  • platform/ScrollView.cpp:

(WebCore::ScrollView::setScrollOffset):

  • platform/ScrollableArea.cpp:

(WebCore::ScrollableArea::setScrollPositionFromAnimation):

  • platform/ScrollableArea.h:

(WebCore::ScrollableArea::minimumScrollOffset const): minimumScrollOffset is always 0,0 but add this function for symmetry.

  • platform/mac/ScrollAnimatorMac.mm:

(WebCore::ScrollAnimatorMac::immediateScrollBy):

  • rendering/RenderLayerScrollableArea.cpp:

(WebCore::RenderLayerScrollableArea::clampScrollOffset const):

5:10 PM Changeset in webkit [282740] by Wenson Hsieh
  • 7 edits in trunk/Source

Teach WebKit::createShareableBitmap to snapshot video elements
https://bugs.webkit.org/show_bug.cgi?id=230468

Reviewed by Tim Horton.

Source/WebCore:

Now that createShareableBitmap may return images for video elements, we need to ensure that we explicitly
avoid allowing Live Text in video elements, since doing so will (1) break built-in platform media controls,
which also share the same shadow root, and (2) lead to confusing results when playing or seeking in videos,
since the recognized text falls out of sync with the video frame.

  • html/HTMLVideoElement.h:
  • page/EventHandler.cpp:

(WebCore::EventHandler::textRecognitionCandidateElement const):

For the above reasons, we refactor logic to check if the currently hovered node is a candidate for text
recognition, such that the video element check is consolidated all in one place.

(WebCore::EventHandler::updateMouseEventTargetNode):
(WebCore::EventHandler::textRecognitionHoverTimerFired):

  • page/EventHandler.h:
  • rendering/RenderVideo.h:

Source/WebKit:

createShareableBitmap currently only returns a non-null image bitmap for image renderers that have cached
images; notably, this omits video elements. For use in future patches, we should allow this helper function to
handle video elements by snapshotting the current frame of the video.

  • WebProcess/WebCoreSupport/ShareableBitmapUtilities.cpp:

(WebKit::createShareableBitmap):

4:46 PM Changeset in webkit [282739] by Alan Bujtas
  • 2 edits in trunk/LayoutTests

Unreviewed gardening after r282738.

2:18 PM Changeset in webkit [282738] by Alan Bujtas
  • 4 edits in trunk

[LFC][IFC] overflow-wrap: anywhere/break-word rules over word-break: keep-all
https://bugs.webkit.org/show_bug.cgi?id=230458

Reviewed by Antti Koivisto.

LayoutTests/imported/w3c:

  • web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-keep-all-001-expected.txt:

Source/WebCore:

https://drafts.csswg.org/css-text/#overflow-wrap-property
"...An otherwise unbreakable sequence of characters may be broken at an arbitrary point if there are
no otherwise-acceptable break points in the line."

"word-break: keep all" makes the content "otherwise unbreakable sequence of characters". It simply means
that "overflow-wrap: anywhere/break-word" may break the content at an arbitrary position even when "keep-all" is set,

  • layout/formattingContexts/inline/InlineContentBreaker.cpp:

(WebCore::Layout::InlineContentBreaker::wordBreakBehavior const):

10:04 AM Changeset in webkit [282737] by Antti Koivisto
  • 4 edits in trunk/Source/WebCore

[lFC][Integration] Enable some text painting features
https://bugs.webkit.org/show_bug.cgi?id=230459

Reviewed by Sam Weinig.

Enable text-shadow and background-clip:text.

  • layout/integration/LayoutIntegrationCoverage.cpp:

(WebCore::LayoutIntegration::printReason):
(WebCore::LayoutIntegration::canUseForStyle):

  • layout/integration/LayoutIntegrationCoverage.h:
  • layout/integration/LayoutIntegrationLineLayout.cpp:

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

Allow TextClip paint phase.

9:42 AM Changeset in webkit [282736] by Antti Koivisto
  • 6 edits in trunk/Source/WebCore

[LFC][Integration] Make block selection gap painting use iterator
https://bugs.webkit.org/show_bug.cgi?id=230457

Reviewed by Alan Bujtas.

Make the code not depend on legacy inline boxes.

  • rendering/LegacyRootInlineBox.cpp:

(WebCore::LegacyRootInlineBox::lineSelectionGap): Deleted.

  • rendering/LegacyRootInlineBox.h:
  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::logicalLeftSelectionGap):
(WebCore::RenderBlock::logicalRightSelectionGap):

  • rendering/RenderBlock.h:
  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::inlineSelectionGaps):

7:27 AM Changeset in webkit [282735] by Antti Koivisto
  • 7 edits in trunk/Source/WebCore

[LFC][Integration] Paint LFC text runs with TextBoxPainter
https://bugs.webkit.org/show_bug.cgi?id=230455

Reviewed by Alan Bujtas.

This will give LFC path all the same painting features (including selections, markers etc) that
the legacy path has. This patch does not enable any new features yet.

  • layout/integration/LayoutIntegrationLineLayout.cpp:

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

Use TextBoxPainter.

  • layout/integration/LayoutIntegrationLineLayout.h:
  • rendering/LegacyInlineTextBox.cpp:

(WebCore::LegacyInlineTextBox::textOriginFromBoxRect const): Deleted.
(WebCore::LegacyInlineTextBox::debugTextShadow const): Deleted.

  • rendering/LegacyInlineTextBox.h:
  • rendering/TextBoxPainter.cpp:

(WebCore::TextBoxPainter::TextBoxPainter):

TextBoxPainter now uses the inline iterator instead of directly accessing LegacyInlineTextBox.

(WebCore::TextBoxPainter::paint):
(WebCore::TextBoxPainter::createMarkedTextFromSelectionInBox):
(WebCore::TextBoxPainter::paintBackground):
(WebCore::TextBoxPainter::paintForegroundAndDecorations):
(WebCore::TextBoxPainter::paintCompositionBackground):
(WebCore::TextBoxPainter::paintForeground):
(WebCore::TextBoxPainter::paintDecoration):
(WebCore::TextBoxPainter::paintCompositionUnderlines):
(WebCore::textPosition):
(WebCore::TextBoxPainter::paintCompositionUnderline):
(WebCore::TextBoxPainter::paintPlatformDocumentMarkers):
(WebCore::TextBoxPainter::calculateUnionOfAllDocumentMarkerBounds):
(WebCore::TextBoxPainter::computePaintRect):
(WebCore::fontCascadeFor):
(WebCore::TextBoxPainter::calculateDocumentMarkerBounds):
(WebCore::TextBoxPainter::computeHaveSelection const):
(WebCore::TextBoxPainter::combinedText const):
(WebCore::TextBoxPainter::fontCascade const):
(WebCore::TextBoxPainter::textOriginFromPaintRect const):
(WebCore::TextBoxPainter::debugTextShadow const):
(WebCore::createMarkedTextFromSelectionInBox): Deleted.

  • rendering/TextBoxPainter.h:

Sep 18, 2021:

9:25 PM Changeset in webkit [282734] by mmaxfield@apple.com
  • 4 edits in trunk/Source/WebCore

[Cocoa] Add "Shaping" log channel
https://bugs.webkit.org/show_bug.cgi?id=230440

Reviewed by Darin Adler.

This logging has been useful to me before, so I figure it might be useful to other people.

This new channel is off by default.

No new tests because there is no behavior change.

  • platform/Logging.h:
  • platform/graphics/coretext/FontCoreText.cpp:

(WebCore::Font::applyTransforms const):

  • platform/graphics/mac/ComplexTextControllerCoreText.mm:

(WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun):
(WebCore::ComplexTextController::collectComplexTextRunsForCharacters):

7:55 PM Changeset in webkit [282733] by Simon Fraser
  • 7 edits
    4 moves in trunk/Source/WebCore

Move ScrollingMomentumCalculator into the platform directory
https://bugs.webkit.org/show_bug.cgi?id=230452

Reviewed by Wenson Hsieh.

ScrollingMomentumCalculator/ScrollingMomentumCalculatorMac have no non-platform dependencies.

Other changes are unified sources fallout.

  • Sources.txt:
  • SourcesCocoa.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/ScrollingMomentumCalculator.cpp: Renamed from Source/WebCore/page/scrolling/ScrollingMomentumCalculator.cpp.
  • platform/ScrollingMomentumCalculator.h: Renamed from Source/WebCore/page/scrolling/ScrollingMomentumCalculator.h.
  • platform/gamepad/mac/HIDGamepadElement.cpp:
  • platform/graphics/Model.cpp:
  • platform/mac/ScrollingMomentumCalculatorMac.h: Renamed from Source/WebCore/page/scrolling/mac/ScrollingMomentumCalculatorMac.h.
  • platform/mac/ScrollingMomentumCalculatorMac.mm: Renamed from Source/WebCore/page/scrolling/mac/ScrollingMomentumCalculatorMac.mm.
5:56 PM Changeset in webkit [282732] by Simon Fraser
  • 5 edits in trunk/Source/WebCore

Scroll offsets in ScrollingMomentumCalculator should be FloatPoint, not FloatSize
https://bugs.webkit.org/show_bug.cgi?id=230451

Reviewed by Wenson Hsieh.

Scroll offsets are generally represented as IntPoint or FloatPoint. Have
ScrollingMomentumCalculator conform to this convention.

  • page/scrolling/ScrollingMomentumCalculator.cpp:

(WebCore::ScrollingMomentumCalculator::ScrollingMomentumCalculator):
(WebCore::ScrollingMomentumCalculator::setRetargetedScrollOffset):
(WebCore::ScrollingMomentumCalculator::predictedDestinationOffset):
(WebCore::BasicScrollingMomentumCalculator::linearlyInterpolatedOffsetAtProgress):
(WebCore::BasicScrollingMomentumCalculator::cubicallyInterpolatedOffsetAtProgress const):
(WebCore::BasicScrollingMomentumCalculator::scrollOffsetAfterElapsedTime):
(WebCore::BasicScrollingMomentumCalculator::initializeInterpolationCoefficientsIfNecessary):

  • page/scrolling/ScrollingMomentumCalculator.h:

(WebCore::ScrollingMomentumCalculator::retargetedScrollOffset const):

  • page/scrolling/mac/ScrollingMomentumCalculatorMac.h:
  • page/scrolling/mac/ScrollingMomentumCalculatorMac.mm:

(WebCore::ScrollingMomentumCalculatorMac::scrollOffsetAfterElapsedTime):
(WebCore::ScrollingMomentumCalculatorMac::predictedDestinationOffset):
(WebCore::ScrollingMomentumCalculatorMac::retargetedScrollOffsetDidChange):
(WebCore::ScrollingMomentumCalculatorMac::ensurePlatformMomentumCalculator):

3:59 PM Changeset in webkit [282731] by Simon Fraser
  • 3 edits in trunk/Source/WebCore

Remove some logging left in by mistake.

Unreviewed.

  • platform/ScrollAnimationSmooth.cpp:

(WebCore::ScrollAnimationSmooth::startAnimatedScroll):
(WebCore::ScrollAnimationSmooth::startAnimatedScrollToDestination):

  • platform/ScrollAnimator.cpp:

(WebCore::ScrollAnimator::setCurrentPosition):
(WebCore::ScrollAnimator::scrollAnimationDidUpdate):

3:44 PM Changeset in webkit [282730] by Simon Fraser
  • 6 edits in trunk/Source/WebCore

Remove use of NSScrollAnimationHelper for animated scrolls
https://bugs.webkit.org/show_bug.cgi?id=230445

Reviewed by Martin Robinson.

NSScrollAnimationHelper provided little utility. Under the hood it's ust an ease-in-out
animation with a duration based on distance, and that's exactly what ScrollAnimationSmooth
is now, so we can remove use of NSScrollAnimationHelper in ScrollAnimatorMac and just
use the ScrollAnimationSmooth from the base class.

This unifies the scroll animation used for keyboard scrolling and CSS smooth scrolling.

  • platform/ScrollAnimator.cpp:

(WebCore::ScrollAnimator::scroll):
(WebCore::ScrollAnimator::scrollToPositionWithoutAnimation):
(WebCore::ScrollAnimator::setCurrentPosition):
(WebCore::ScrollAnimator::scrollAnimationDidUpdate):

  • platform/ScrollAnimator.h:

(WebCore::ScrollAnimator::platformAllowsScrollAnimation const):

  • platform/mac/ScrollAnimatorMac.h:
  • platform/mac/ScrollAnimatorMac.mm:

(WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
(WebCore::scrollAnimationEnabledForSystem):
(WebCore::ScrollAnimatorMac::platformAllowsScrollAnimation const):
(WebCore::ScrollAnimatorMac::scroll):
(abs): Deleted.
(-[WebScrollAnimationHelperDelegate initWithScrollAnimator:]): Deleted.
(-[WebScrollAnimationHelperDelegate invalidate]): Deleted.
(-[WebScrollAnimationHelperDelegate bounds]): Deleted.
(-[WebScrollAnimationHelperDelegate _immediateScrollToPoint:]): Deleted.
(-[WebScrollAnimationHelperDelegate _pixelAlignProposedScrollPosition:]): Deleted.
(-[WebScrollAnimationHelperDelegate convertSizeToBase:]): Deleted.
(-[WebScrollAnimationHelperDelegate convertSizeFromBase:]): Deleted.
(-[WebScrollAnimationHelperDelegate convertSizeToBacking:]): Deleted.
(-[WebScrollAnimationHelperDelegate convertSizeFromBacking:]): Deleted.
(-[WebScrollAnimationHelperDelegate superview]): Deleted.
(-[WebScrollAnimationHelperDelegate documentView]): Deleted.
(-[WebScrollAnimationHelperDelegate window]): Deleted.
(-[WebScrollAnimationHelperDelegate _recursiveRecomputeToolTips]): Deleted.
(WebCore::ScrollAnimatorMac::scrollToPositionWithAnimation): Deleted.
(WebCore::ScrollAnimatorMac::scrollToPositionWithoutAnimation): Deleted.
(WebCore::ScrollAnimatorMac::immediateScrollToPositionForScrollAnimation): Deleted.

  • platform/mac/ScrollbarsControllerMac.h:
1:41 PM Changeset in webkit [282729] by Simon Fraser
  • 9 edits in trunk/Source/WebCore

Rename haveScrolledSincePageLoad() and push the state to ScrollbarsController
https://bugs.webkit.org/show_bug.cgi?id=230444

Reviewed by Myles C. Maxfield.

r81159 added logic to suppress scrollbar animations during page load (delayed using a 100ms
timer in ScrollbarsControllerMac), but to unsuppress the animations when receiving user
events or scrolling. This state using the confusingly named "haveScrolledSincePageLoad",
which is really "a wheel evnet or scroll requires that we stop suppressing scrollbar
animations". So name it scrollbarAnimationsUnsuspendedByUserInteraction", and have
ScrollbarsController maintain the state, rather than ScrollAnimator.

Add some OverlayScrollbars logging to show this working (although it reveals that the
100ms timer can fire multiple times).

  • platform/ScrollAnimator.cpp:

(WebCore::ScrollAnimator::cancelAnimations):

  • platform/ScrollAnimator.h:

(WebCore::ScrollAnimator::haveScrolledSincePageLoad const): Deleted.
(WebCore::ScrollAnimator::setHaveScrolledSincePageLoad): Deleted.

  • platform/ScrollbarsController.cpp:

(WebCore::ScrollbarsController::shouldSuspendScrollbarAnimations const):
(WebCore::ScrollbarsController::cancelAnimations):
(WebCore::ScrollbarsController::didBeginScrollGesture):
(WebCore::ScrollbarsController::didEndScrollGesture):
(WebCore::ScrollbarsController::mayBeginScrollGesture):

  • platform/ScrollbarsController.h:

(WebCore::ScrollbarsController::scrollbarAnimationsUnsuspendedByUserInteraction const):
(WebCore::ScrollbarsController::setScrollbarAnimationsUnsuspendedByUserInteraction):
(WebCore::ScrollbarsController::cancelAnimations): Deleted.
(WebCore::ScrollbarsController::didBeginScrollGesture const): Deleted.
(WebCore::ScrollbarsController::didEndScrollGesture const): Deleted.
(WebCore::ScrollbarsController::mayBeginScrollGesture const): Deleted.

  • platform/mac/ScrollAnimatorMac.h:
  • platform/mac/ScrollAnimatorMac.mm:

(WebCore::ScrollAnimatorMac::scroll):
(WebCore::ScrollAnimatorMac::handleWheelEventPhase):
(WebCore::ScrollAnimatorMac::handleWheelEvent):
(WebCore::ScrollAnimatorMac::cancelAnimations): Deleted.

  • platform/mac/ScrollbarsControllerMac.h:
  • platform/mac/ScrollbarsControllerMac.mm:

(-[WebScrollbarPartAnimation setCurrentProgress:]):
(-[WebScrollerImpDelegate setUpAlphaAnimation:scrollerPainter:part:animateAlphaTo:duration:]):
(WebCore::ScrollbarsControllerMac::cancelAnimations):
(WebCore::ScrollbarsControllerMac::didBeginScrollGesture):
(WebCore::ScrollbarsControllerMac::didEndScrollGesture):
(WebCore::ScrollbarsControllerMac::mayBeginScrollGesture):
(WebCore::ScrollbarsControllerMac::initialScrollbarPaintTimerFired):
(WebCore::ScrollbarsControllerMac::haveScrolledSincePageLoad const): Deleted.
(WebCore::ScrollbarsControllerMac::didBeginScrollGesture const): Deleted.
(WebCore::ScrollbarsControllerMac::didEndScrollGesture const): Deleted.
(WebCore::ScrollbarsControllerMac::mayBeginScrollGesture const): Deleted.

12:05 PM Changeset in webkit [282728] by Simon Fraser
  • 4 edits in trunk/Source/WebCore

Clean up the ScrollAnimator interface a little
https://bugs.webkit.org/show_bug.cgi?id=230324

Reviewed by Myles C. Maxfield.

Reduce brainprint by removing the "scroll to offset" variants; have the caller
do offset -> position conversion instead.

Move virtual functions close together. Remove updateScrollSnapState()
which was unimplemented.

  • platform/ScrollAnimator.cpp:

(WebCore::ScrollAnimator::immediateScrollOnAxis):
(WebCore::ScrollAnimator::scrollToOffsetWithoutAnimation): Deleted.
(WebCore::ScrollAnimator::scrollToOffsetWithAnimation): Deleted.

  • platform/ScrollAnimator.h:

(WebCore::ScrollAnimator::scrollableArea const):
(WebCore::ScrollAnimator::processWheelEventForScrollSnap):
(WebCore::ScrollAnimator::currentPosition const):
(WebCore::ScrollAnimator::haveScrolledSincePageLoad const):
(WebCore::ScrollAnimator::setHaveScrolledSincePageLoad):

  • platform/ScrollableArea.cpp:

(WebCore::ScrollableArea::scrollToOffsetWithoutAnimation):
(WebCore::ScrollableArea::doPostThumbMoveSnapping):

  • platform/mac/ScrollAnimatorMac.mm:
9:12 AM Changeset in webkit [282727] by Patrick Griffis
  • 7 edits in trunk/Source/WebCore

[GTK] Disable MediaSessionManagerGLib when MEDIA_SESSION disabled
https://bugs.webkit.org/show_bug.cgi?id=230420

Reviewed by Philippe Normand.

Previously WebKit would try to own the MPRIS bus names even though
the feature was disabled.

  • platform/RemoteCommandListener.cpp:

(WebCore::RemoteCommandListener::resetCreationFunction):

  • platform/audio/PlatformMediaSessionManager.cpp:
  • platform/audio/glib/MediaSessionManagerGLib.cpp:
  • platform/audio/glib/MediaSessionManagerGLib.h:
  • platform/glib/RemoteCommandListenerGLib.cpp:
  • platform/glib/RemoteCommandListenerGLib.h:
8:59 AM Changeset in webkit [282726] by Alan Bujtas
  • 3 edits in trunk/Source/WebCore

[LFC][IFC] Stretch the inline box with glyphs coming from fallback fonts.
https://bugs.webkit.org/show_bug.cgi?id=230439

Reviewed by Antti Koivisto.

https://www.w3.org/TR/css-inline-3/#inline-height
"...
When the computed line-height is normal, the layout bounds of an inline box encloses all its glyphs, going from the highest A to the deepest D.
(Note that glyphs in a single box can come from different fonts and thus might not all have the same A and D.)
..."
(This is still no-op as TextUtil::fallbackFontsForRun returns an empty set)

  • layout/formattingContexts/inline/InlineLineBoxBuilder.cpp:

(WebCore::Layout::LineBoxBuilder::adjustVerticalGeometryForInlineBoxWithFallbackFonts const):
(WebCore::Layout::LineBoxBuilder::constructAndAlignInlineLevelBoxes):

  • layout/formattingContexts/inline/InlineLineBoxBuilder.h:
6:29 AM Changeset in webkit [282725] by Alan Bujtas
  • 5 edits in trunk/Source/WebCore

[LFC][IFC] Add skeleton implementation for fallback font support
https://bugs.webkit.org/show_bug.cgi?id=230433

Reviewed by Antti Koivisto.

This is in preparation for supporting inline box stretching glyphs coming from fallback fonts.

  • layout/formattingContexts/inline/InlineLineBoxBuilder.cpp:

(WebCore::Layout::LineBoxBuilder::adjustVerticalGeometryForInlineBoxWithFallbackFonts const):
(WebCore::Layout::LineBoxBuilder::setInitialVerticalGeometryForInlineBox const):
(WebCore::Layout::LineBoxBuilder::constructAndAlignInlineLevelBoxes):
(WebCore::Layout::LineBoxBuilder::setVerticalGeometryForInlineBox const): Deleted.

  • layout/formattingContexts/inline/InlineLineBoxBuilder.h:
  • layout/formattingContexts/inline/text/TextUtil.cpp:

(WebCore::Layout::TextUtil::fallbackFontsForRun):

  • layout/formattingContexts/inline/text/TextUtil.h:
6:29 AM Changeset in webkit [282724] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

[IFC][Integration] Enable surrogate pairs
https://bugs.webkit.org/show_bug.cgi?id=229434

Reviewed by Antti Koivisto.

The "break the content at arbitrary position" feature is already surrogate pair aware, so
let's enable this for IFC.

  • layout/integration/LayoutIntegrationCoverage.cpp:

(WebCore::LayoutIntegration::canUseForCharacter):

1:56 AM Changeset in webkit [282723] by mmaxfield@apple.com
  • 21 edits
    1 add
    8 deletes in trunk

[iOS Family] Delete letterpress support
https://bugs.webkit.org/show_bug.cgi?id=230441

Reviewed by Tim Horton.

Source/WebCore:

It isn't necessary anymore.

Tests deleted.

  • PlatformMac.cmake:
  • SourcesCocoa.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::renderTextDecorationFlagsToCSSValue):

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::operator OptionSet<TextDecoration> const):

  • css/CSSValueKeywords.in:
  • css/parser/CSSPropertyParser.cpp:

(WebCore::consumeTextDecorationLine):

  • platform/graphics/FontCascade.h:
  • platform/graphics/GraphicsContext.h:
  • platform/graphics/cocoa/FontCascadeCocoa.cpp: Added.

(WebCore::FontCascade::canReturnFallbackFontsForComplexText):
(WebCore::FontCascade::canExpandAroundIdeographsInComplexText):

  • platform/graphics/cocoa/FontCascadeCocoa.mm: Removed.
  • platform/graphics/coretext/FontCascadeCoreText.cpp:

(WebCore::FontCascade::drawGlyphs):
(WebCore::shouldUseLetterpressEffect): Deleted.

  • rendering/TextPaintStyle.cpp:

(WebCore::TextPaintStyle::operator== const):
(WebCore::computeTextPaintStyle):
(WebCore::updateGraphicsContext):

  • rendering/TextPaintStyle.h:
  • rendering/style/RenderStyleConstants.cpp:

(WebCore::operator<<):

  • rendering/style/RenderStyleConstants.h:

Source/WTF:

  • wtf/PlatformEnable.h:
  • wtf/PlatformEnableCocoa.h:

LayoutTests:

  • TestExpectations:
  • fast/text/letterpress-different-expected-mismatch.html: Removed.
  • fast/text/letterpress-different.html: Removed.
  • fast/text/letterpress-paint-expected-mismatch.html: Removed.
  • fast/text/letterpress-paint.html: Removed.
  • platform/ios/TestExpectations:
  • platform/ios/ios/getComputedStyle-text-decoration-letterpress-expected.txt: Removed.
  • platform/ios/ios/getComputedStyle-text-decoration-letterpress.html: Removed.
  • platform/ios/ios/resources/getComputedStyle-text-decoration-letterpress.js: Removed.

Sep 17, 2021:

11:51 PM Changeset in webkit [282722] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Fix CellTag being set 32 bits even if the base is not a cell
https://bugs.webkit.org/show_bug.cgi?id=230364

Patch by Mikhail R. Gadelha <Mikhail R. Gadelha> on 2021-09-17
Reviewed by Yusuke Suzuki.

Initial patch by Caio Lima.

In 32 bits the tag of the base was not being preserved before calling
the slow path and was instead being always being set to cellTag.

This patch slightly changes the code to instead of setting the cellTag,
it now calls the slow path using only the payload if the base is a cell,
otherwise it uses tag+payload.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileEnumeratorHasProperty):

11:03 PM Changeset in webkit [282721] by Simon Fraser
  • 5 edits in trunk/Source/WebCore

Replace all the complex math in ScrollAnimationSmooth with a single call into a CubicBezierTimingFunction
https://bugs.webkit.org/show_bug.cgi?id=230436

Reviewed by Tim Horton.

ScrollAnimationSmooth had a lot of math that computed velocities for attack, drift and
release phases, but they resulted in odd-feeling animations for long scrolls. We can replace
it all, and get nice-feeling scrolls, by just using an ease-in-out timing function.

Duration is compusted from distance with a max of 200ms, matching macOS behavior.

  • platform/ScrollAnimationSmooth.cpp:

(WebCore::ScrollAnimationSmooth::ScrollAnimationSmooth):
(WebCore::ScrollAnimationSmooth::startAnimatedScroll):
(WebCore::ScrollAnimationSmooth::startAnimatedScrollToDestination):
(WebCore::ScrollAnimationSmooth::startOrRetargetAnimation):
(WebCore::ScrollAnimationSmooth::updateScrollExtents):
(WebCore::linearInterpolation):
(WebCore::ScrollAnimationSmooth::animateScroll):
(WebCore::ScrollAnimationSmooth::animationTimerFired):
(WebCore::ScrollAnimationSmooth::initializeAxesData): Deleted.
(WebCore::curveAt): Deleted.
(WebCore::attackCurve): Deleted.
(WebCore::releaseCurve): Deleted.
(WebCore::coastCurve): Deleted.
(WebCore::curveIntegralAt): Deleted.
(WebCore::attackArea): Deleted.
(WebCore::releaseArea): Deleted.
(WebCore::getAnimationParametersForGranularity): Deleted.
(WebCore::ScrollAnimationSmooth::updatePerAxisData): Deleted.

  • platform/ScrollAnimationSmooth.h:
9:24 PM Changeset in webkit [282720] by Simon Fraser
  • 19 edits
    3 copies
    2 moves
    3 adds in trunk

Move scrollbar-related code out of ScrollAnimator and into ScrollbarsController
https://bugs.webkit.org/show_bug.cgi?id=230295

Reviewed by Tim Horton.

As the first step to cleaning up ScrollAnimator/ScrollController, move scrollbar-related code out of
ScrollAnimator and into a new ScrollbarsController class, with platform-specific subclasses.
This makes it much easier to understand the responsibilities of ScrollAnimator.

  • Sources.txt:
  • SourcesCocoa.txt:
  • SourcesGTK.txt:
  • SourcesWPE.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/ScrollAnimator.cpp:

(WebCore::ScrollAnimator::contentsSizeChanged const):
(WebCore::ScrollAnimator::contentsResized const): Deleted.
(WebCore::ScrollAnimator::willEndLiveResize): Deleted.
(WebCore::ScrollAnimator::didAddVerticalScrollbar): Deleted.
(WebCore::ScrollAnimator::didAddHorizontalScrollbar): Deleted.

  • platform/ScrollAnimator.h:

(WebCore::ScrollAnimator::haveScrolledSincePageLoad const):
(WebCore::ScrollAnimator::setHaveScrolledSincePageLoad):
(WebCore::ScrollAnimator::wheelEventTestMonitor const):
(WebCore::ScrollAnimator::contentAreaWillPaint const): Deleted.
(WebCore::ScrollAnimator::mouseEnteredContentArea): Deleted.
(WebCore::ScrollAnimator::mouseExitedContentArea): Deleted.
(WebCore::ScrollAnimator::mouseMovedInContentArea): Deleted.
(WebCore::ScrollAnimator::mouseEnteredScrollbar const): Deleted.
(WebCore::ScrollAnimator::mouseExitedScrollbar const): Deleted.
(WebCore::ScrollAnimator::mouseIsDownInScrollbar const): Deleted.
(WebCore::ScrollAnimator::willStartLiveResize): Deleted.
(WebCore::ScrollAnimator::contentAreaDidShow): Deleted.
(WebCore::ScrollAnimator::contentAreaDidHide): Deleted.
(WebCore::ScrollAnimator::lockOverlayScrollbarStateToHidden): Deleted.
(WebCore::ScrollAnimator::scrollbarsCanBeActive const): Deleted.
(WebCore::ScrollAnimator::willRemoveVerticalScrollbar): Deleted.
(WebCore::ScrollAnimator::willRemoveHorizontalScrollbar): Deleted.
(WebCore::ScrollAnimator::invalidateScrollbarPartLayers): Deleted.
(WebCore::ScrollAnimator::verticalScrollbarLayerDidChange): Deleted.
(WebCore::ScrollAnimator::horizontalScrollbarLayerDidChange): Deleted.
(WebCore::ScrollAnimator::shouldScrollbarParticipateInHitTesting): Deleted.
(WebCore::ScrollAnimator::notifyContentAreaScrolled): Deleted.
(WebCore::ScrollAnimator::horizontalScrollbarStateForTesting const): Deleted.
(WebCore::ScrollAnimator::verticalScrollbarStateForTesting const): Deleted.

  • platform/ScrollableArea.cpp:

(WebCore::ScrollableArea::scrollAnimator const):
(WebCore::ScrollableArea::scrollbarsController const):
(WebCore::ScrollableArea::scrollPositionChanged):
(WebCore::ScrollableArea::willStartLiveResize):
(WebCore::ScrollableArea::willEndLiveResize):
(WebCore::ScrollableArea::contentAreaWillPaint const):
(WebCore::ScrollableArea::mouseEnteredContentArea const):
(WebCore::ScrollableArea::mouseExitedContentArea const):
(WebCore::ScrollableArea::mouseMovedInContentArea const):
(WebCore::ScrollableArea::mouseEnteredScrollbar const):
(WebCore::ScrollableArea::mouseExitedScrollbar const):
(WebCore::ScrollableArea::mouseIsDownInScrollbar const):
(WebCore::ScrollableArea::contentAreaDidShow const):
(WebCore::ScrollableArea::contentAreaDidHide const):
(WebCore::ScrollableArea::lockOverlayScrollbarStateToHidden const):
(WebCore::ScrollableArea::scrollbarsCanBeActive const):
(WebCore::ScrollableArea::didAddScrollbar):
(WebCore::ScrollableArea::willRemoveScrollbar):
(WebCore::ScrollableArea::contentsResized):
(WebCore::ScrollableArea::availableContentSizeChanged):
(WebCore::ScrollableArea::invalidateScrollbars):
(WebCore::ScrollableArea::verticalScrollbarLayerDidChange):
(WebCore::ScrollableArea::horizontalScrollbarLayerDidChange):
(WebCore::ScrollableArea::horizontalScrollbarStateForTesting const):
(WebCore::ScrollableArea::verticalScrollbarStateForTesting const):
(WebCore::ScrollableArea::resnapAfterLayout):

  • platform/ScrollableArea.h:
  • platform/Scrollbar.cpp:

(WebCore::Scrollbar::shouldParticipateInHitTesting):

  • platform/ScrollbarsController.cpp: Copied from Source/WebCore/platform/ios/ScrollAnimatorIOS.h.

(WebCore::ScrollbarsController::create):
(WebCore::ScrollbarsController::ScrollbarsController):

  • platform/ScrollbarsController.h: Added.

(WebCore::ScrollbarsController::scrollableArea const):
(WebCore::ScrollbarsController::notifyPositionChanged):
(WebCore::ScrollbarsController::cancelAnimations):
(WebCore::ScrollbarsController::didBeginScrollGesture const):
(WebCore::ScrollbarsController::didEndScrollGesture const):
(WebCore::ScrollbarsController::mayBeginScrollGesture const):
(WebCore::ScrollbarsController::contentAreaWillPaint const):
(WebCore::ScrollbarsController::mouseEnteredContentArea):
(WebCore::ScrollbarsController::mouseExitedContentArea):
(WebCore::ScrollbarsController::mouseMovedInContentArea):
(WebCore::ScrollbarsController::mouseEnteredScrollbar const):
(WebCore::ScrollbarsController::mouseExitedScrollbar const):
(WebCore::ScrollbarsController::mouseIsDownInScrollbar const):
(WebCore::ScrollbarsController::willStartLiveResize):
(WebCore::ScrollbarsController::contentsSizeChanged const):
(WebCore::ScrollbarsController::willEndLiveResize):
(WebCore::ScrollbarsController::contentAreaDidShow):
(WebCore::ScrollbarsController::contentAreaDidHide):
(WebCore::ScrollbarsController::lockOverlayScrollbarStateToHidden):
(WebCore::ScrollbarsController::scrollbarsCanBeActive const):
(WebCore::ScrollbarsController::didAddVerticalScrollbar):
(WebCore::ScrollbarsController::willRemoveVerticalScrollbar):
(WebCore::ScrollbarsController::didAddHorizontalScrollbar):
(WebCore::ScrollbarsController::willRemoveHorizontalScrollbar):
(WebCore::ScrollbarsController::invalidateScrollbarPartLayers):
(WebCore::ScrollbarsController::verticalScrollbarLayerDidChange):
(WebCore::ScrollbarsController::horizontalScrollbarLayerDidChange):
(WebCore::ScrollbarsController::shouldScrollbarParticipateInHitTesting):
(WebCore::ScrollbarsController::notifyContentAreaScrolled):
(WebCore::ScrollbarsController::horizontalScrollbarStateForTesting const):
(WebCore::ScrollbarsController::verticalScrollbarStateForTesting const):

  • platform/generic/ScrollAnimatorGeneric.cpp:

(WebCore::ScrollAnimatorGeneric::ScrollAnimatorGeneric):
(WebCore::ScrollAnimatorGeneric::didAddVerticalScrollbar): Deleted.
(WebCore::ScrollAnimatorGeneric::didAddHorizontalScrollbar): Deleted.
(WebCore::ScrollAnimatorGeneric::willRemoveVerticalScrollbar): Deleted.
(WebCore::ScrollAnimatorGeneric::willRemoveHorizontalScrollbar): Deleted.
(WebCore::ScrollAnimatorGeneric::updateOverlayScrollbarsOpacity): Deleted.
(WebCore::easeOutCubic): Deleted.
(WebCore::ScrollAnimatorGeneric::overlayScrollbarAnimationTimerFired): Deleted.
(WebCore::ScrollAnimatorGeneric::showOverlayScrollbars): Deleted.
(WebCore::ScrollAnimatorGeneric::hideOverlayScrollbars): Deleted.
(WebCore::ScrollAnimatorGeneric::mouseEnteredContentArea): Deleted.
(WebCore::ScrollAnimatorGeneric::mouseExitedContentArea): Deleted.
(WebCore::ScrollAnimatorGeneric::mouseMovedInContentArea): Deleted.
(WebCore::ScrollAnimatorGeneric::contentAreaDidShow): Deleted.
(WebCore::ScrollAnimatorGeneric::contentAreaDidHide): Deleted.
(WebCore::ScrollAnimatorGeneric::notifyContentAreaScrolled): Deleted.
(WebCore::ScrollAnimatorGeneric::lockOverlayScrollbarStateToHidden): Deleted.

  • platform/generic/ScrollAnimatorGeneric.h:
  • platform/ios/ScrollAnimatorIOS.h:
  • platform/ios/ScrollAnimatorIOS.mm:

(WebCore::ScrollAnimatorIOS::ScrollAnimatorIOS):

  • platform/mac/ScrollAnimatorMac.h:

(WebCore::ScrollAnimatorMac::haveScrolledSincePageLoad const): Deleted.

  • platform/mac/ScrollAnimatorMac.mm:

(WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
(WebCore::ScrollAnimatorMac::scroll):
(WebCore::ScrollAnimatorMac::notifyPositionChanged):
(WebCore::ScrollAnimatorMac::cancelAnimations):
(WebCore::ScrollAnimatorMac::handleWheelEventPhase):
(WebCore::ScrollAnimatorMac::handleWheelEvent):
(WebCore::macScrollbarTheme): Deleted.
(WebCore::scrollerImpForScrollbar): Deleted.
(-[WebScrollerImpPairDelegate initWithScrollableArea:]): Deleted.
(-[WebScrollerImpPairDelegate invalidate]): Deleted.
(-[WebScrollerImpPairDelegate contentAreaRectForScrollerImpPair:]): Deleted.
(-[WebScrollerImpPairDelegate inLiveResizeForScrollerImpPair:]): Deleted.
(-[WebScrollerImpPairDelegate mouseLocationInContentAreaForScrollerImpPair:]): Deleted.
(-[WebScrollerImpPairDelegate scrollerImpPair:convertContentPoint:toScrollerImp:]): Deleted.
(-[WebScrollerImpPairDelegate scrollerImpPair:setContentAreaNeedsDisplayInRect:]): Deleted.
(-[WebScrollerImpPairDelegate scrollerImpPair:updateScrollerStyleForNewRecommendedScrollerStyle:]): Deleted.
(operator<<): Deleted.
(-[WebScrollbarPartAnimation initWithScrollbar:featureToAnimate:animateFrom:animateTo:duration:]): Deleted.
(-[WebScrollbarPartAnimation startAnimation]): Deleted.
(-[WebScrollbarPartAnimation setStartValue:]): Deleted.
(-[WebScrollbarPartAnimation setEndValue:]): Deleted.
(-[WebScrollbarPartAnimation setCurrentProgress:]): Deleted.
(-[WebScrollbarPartAnimation invalidate]): Deleted.
(-[WebScrollbarPartAnimation setDuration:]): Deleted.
(-[WebScrollbarPartAnimation stopAnimation]): Deleted.
(-[WebScrollerImpDelegate initWithScrollbar:]): Deleted.
(-[WebScrollerImpDelegate cancelAnimations]): Deleted.
(-[WebScrollerImpDelegate scrollAnimator]): Deleted.
(-[WebScrollerImpDelegate convertRectToBacking:]): Deleted.
(-[WebScrollerImpDelegate convertRectFromBacking:]): Deleted.
(-[WebScrollerImpDelegate layer]): Deleted.
(-[WebScrollerImpDelegate mouseLocationInScrollerForScrollerImp:]): Deleted.
(-[WebScrollerImpDelegate convertRectToLayer:]): Deleted.
(-[WebScrollerImpDelegate shouldUseLayerPerPartForScrollerImp:]): Deleted.
(-[WebScrollerImpDelegate effectiveAppearanceForScrollerImp:]): Deleted.
(-[WebScrollerImpDelegate setUpAlphaAnimation:scrollerPainter:part:animateAlphaTo:duration:]): Deleted.
(-[WebScrollerImpDelegate scrollerImp:animateKnobAlphaTo:duration:]): Deleted.
(-[WebScrollerImpDelegate scrollerImp:animateTrackAlphaTo:duration:]): Deleted.
(-[WebScrollerImpDelegate scrollerImp:animateUIStateTransitionWithDuration:]): Deleted.
(-[WebScrollerImpDelegate scrollerImp:animateExpansionTransitionWithDuration:]): Deleted.
(-[WebScrollerImpDelegate scrollerImp:overlayScrollerStateChangedTo:]): Deleted.
(-[WebScrollerImpDelegate invalidate]): Deleted.
(WebCore::ScrollAnimatorMac::~ScrollAnimatorMac): Deleted.
(WebCore::scrollbarState): Deleted.
(WebCore::ScrollAnimatorMac::horizontalScrollbarStateForTesting const): Deleted.
(WebCore::ScrollAnimatorMac::verticalScrollbarStateForTesting const): Deleted.
(WebCore::ScrollAnimatorMac::contentAreaWillPaint const): Deleted.
(WebCore::ScrollAnimatorMac::mouseEnteredContentArea): Deleted.
(WebCore::ScrollAnimatorMac::mouseExitedContentArea): Deleted.
(WebCore::ScrollAnimatorMac::mouseMovedInContentArea): Deleted.
(WebCore::ScrollAnimatorMac::mouseEnteredScrollbar const): Deleted.
(WebCore::ScrollAnimatorMac::mouseExitedScrollbar const): Deleted.
(WebCore::ScrollAnimatorMac::mouseIsDownInScrollbar const): Deleted.
(WebCore::ScrollAnimatorMac::willStartLiveResize): Deleted.
(WebCore::ScrollAnimatorMac::contentsResized const): Deleted.
(WebCore::ScrollAnimatorMac::willEndLiveResize): Deleted.
(WebCore::ScrollAnimatorMac::contentAreaDidShow): Deleted.
(WebCore::ScrollAnimatorMac::contentAreaDidHide): Deleted.
(WebCore::ScrollAnimatorMac::didBeginScrollGesture const): Deleted.
(WebCore::ScrollAnimatorMac::didEndScrollGesture const): Deleted.
(WebCore::ScrollAnimatorMac::mayBeginScrollGesture const): Deleted.
(WebCore::ScrollAnimatorMac::lockOverlayScrollbarStateToHidden): Deleted.
(WebCore::ScrollAnimatorMac::scrollbarsCanBeActive const): Deleted.
(WebCore::ScrollAnimatorMac::didAddVerticalScrollbar): Deleted.
(WebCore::ScrollAnimatorMac::willRemoveVerticalScrollbar): Deleted.
(WebCore::ScrollAnimatorMac::didAddHorizontalScrollbar): Deleted.
(WebCore::ScrollAnimatorMac::willRemoveHorizontalScrollbar): Deleted.
(WebCore::ScrollAnimatorMac::invalidateScrollbarPartLayers): Deleted.
(WebCore::ScrollAnimatorMac::verticalScrollbarLayerDidChange): Deleted.
(WebCore::ScrollAnimatorMac::horizontalScrollbarLayerDidChange): Deleted.
(WebCore::ScrollAnimatorMac::shouldScrollbarParticipateInHitTesting): Deleted.
(WebCore::ScrollAnimatorMac::notifyContentAreaScrolled): Deleted.
(WebCore::ScrollAnimatorMac::updateScrollerStyle): Deleted.
(WebCore::ScrollAnimatorMac::startScrollbarPaintTimer): Deleted.
(WebCore::ScrollAnimatorMac::scrollbarPaintTimerIsActive const): Deleted.
(WebCore::ScrollAnimatorMac::stopScrollbarPaintTimer): Deleted.
(WebCore::ScrollAnimatorMac::initialScrollbarPaintTimerFired): Deleted.
(WebCore::ScrollAnimatorMac::sendContentAreaScrolledSoon): Deleted.
(WebCore::ScrollAnimatorMac::sendContentAreaScrolled): Deleted.
(WebCore::ScrollAnimatorMac::sendContentAreaScrolledTimerFired): Deleted.
(WebCore::ScrollAnimatorMac::setVisibleScrollerThumbRect): Deleted.

  • platform/mac/ScrollbarsControllerMac.h: Added.
  • platform/mac/ScrollbarsControllerMac.mm: Copied from Source/WebCore/platform/mac/ScrollAnimatorMac.mm.

(WebCore::macScrollbarTheme):
(WebCore::scrollerImpForScrollbar):
(-[WebScrollerImpPairDelegate initWithScrollableArea:]):
(-[WebScrollerImpPairDelegate invalidate]):
(-[WebScrollerImpPairDelegate contentAreaRectForScrollerImpPair:]):
(-[WebScrollerImpPairDelegate inLiveResizeForScrollerImpPair:]):
(-[WebScrollerImpPairDelegate mouseLocationInContentAreaForScrollerImpPair:]):
(-[WebScrollerImpPairDelegate scrollerImpPair:convertContentPoint:toScrollerImp:]):
(-[WebScrollerImpPairDelegate scrollerImpPair:setContentAreaNeedsDisplayInRect:]):
(-[WebScrollerImpPairDelegate scrollerImpPair:updateScrollerStyleForNewRecommendedScrollerStyle:]):
(operator<<):
(-[WebScrollbarPartAnimation initWithScrollbar:featureToAnimate:animateFrom:animateTo:duration:]):
(-[WebScrollbarPartAnimation startAnimation]):
(-[WebScrollbarPartAnimation setStartValue:]):
(-[WebScrollbarPartAnimation setEndValue:]):
(-[WebScrollbarPartAnimation setCurrentProgress:]):
(-[WebScrollbarPartAnimation invalidate]):
(-[WebScrollbarPartAnimation setDuration:]):
(-[WebScrollbarPartAnimation stopAnimation]):
(-[WebScrollerImpDelegate initWithScrollbar:]):
(-[WebScrollerImpDelegate cancelAnimations]):
(-[WebScrollerImpDelegate scrollbarsController]):
(-[WebScrollerImpDelegate convertRectToBacking:]):
(-[WebScrollerImpDelegate convertRectFromBacking:]):
(-[WebScrollerImpDelegate layer]):
(-[WebScrollerImpDelegate mouseLocationInScrollerForScrollerImp:]):
(-[WebScrollerImpDelegate convertRectToLayer:]):
(-[WebScrollerImpDelegate shouldUseLayerPerPartForScrollerImp:]):
(-[WebScrollerImpDelegate effectiveAppearanceForScrollerImp:]):
(-[WebScrollerImpDelegate setUpAlphaAnimation:scrollerPainter:part:animateAlphaTo:duration:]):
(-[WebScrollerImpDelegate scrollerImp:animateKnobAlphaTo:duration:]):
(-[WebScrollerImpDelegate scrollerImp:animateTrackAlphaTo:duration:]):
(-[WebScrollerImpDelegate scrollerImp:animateUIStateTransitionWithDuration:]):
(-[WebScrollerImpDelegate scrollerImp:animateExpansionTransitionWithDuration:]):
(-[WebScrollerImpDelegate scrollerImp:overlayScrollerStateChangedTo:]):
(-[WebScrollerImpDelegate invalidate]):
(WebCore::ScrollbarsController::create):
(WebCore::ScrollbarsControllerMac::ScrollbarsControllerMac):
(WebCore::ScrollbarsControllerMac::~ScrollbarsControllerMac):
(WebCore::ScrollbarsControllerMac::notifyPositionChanged):
(WebCore::ScrollbarsControllerMac::cancelAnimations):
(WebCore::ScrollbarsControllerMac::setVisibleScrollerThumbRect):
(WebCore::ScrollbarsControllerMac::haveScrolledSincePageLoad const):
(WebCore::ScrollbarsControllerMac::contentAreaWillPaint const):
(WebCore::ScrollbarsControllerMac::mouseEnteredContentArea):
(WebCore::ScrollbarsControllerMac::mouseExitedContentArea):
(WebCore::ScrollbarsControllerMac::mouseMovedInContentArea):
(WebCore::ScrollbarsControllerMac::mouseEnteredScrollbar const):
(WebCore::ScrollbarsControllerMac::mouseExitedScrollbar const):
(WebCore::ScrollbarsControllerMac::mouseIsDownInScrollbar const):
(WebCore::ScrollbarsControllerMac::willStartLiveResize):
(WebCore::ScrollbarsControllerMac::contentsSizeChanged const):
(WebCore::ScrollbarsControllerMac::willEndLiveResize):
(WebCore::ScrollbarsControllerMac::contentAreaDidShow):
(WebCore::ScrollbarsControllerMac::contentAreaDidHide):
(WebCore::ScrollbarsControllerMac::didBeginScrollGesture const):
(WebCore::ScrollbarsControllerMac::didEndScrollGesture const):
(WebCore::ScrollbarsControllerMac::mayBeginScrollGesture const):
(WebCore::ScrollbarsControllerMac::lockOverlayScrollbarStateToHidden):
(WebCore::ScrollbarsControllerMac::scrollbarsCanBeActive const):
(WebCore::ScrollbarsControllerMac::didAddVerticalScrollbar):
(WebCore::ScrollbarsControllerMac::willRemoveVerticalScrollbar):
(WebCore::ScrollbarsControllerMac::didAddHorizontalScrollbar):
(WebCore::ScrollbarsControllerMac::willRemoveHorizontalScrollbar):
(WebCore::ScrollbarsControllerMac::invalidateScrollbarPartLayers):
(WebCore::ScrollbarsControllerMac::verticalScrollbarLayerDidChange):
(WebCore::ScrollbarsControllerMac::horizontalScrollbarLayerDidChange):
(WebCore::ScrollbarsControllerMac::shouldScrollbarParticipateInHitTesting):
(WebCore::ScrollbarsControllerMac::notifyContentAreaScrolled):
(WebCore::ScrollbarsControllerMac::updateScrollerStyle):
(WebCore::ScrollbarsControllerMac::startScrollbarPaintTimer):
(WebCore::ScrollbarsControllerMac::scrollbarPaintTimerIsActive const):
(WebCore::ScrollbarsControllerMac::stopScrollbarPaintTimer):
(WebCore::ScrollbarsControllerMac::initialScrollbarPaintTimerFired):
(WebCore::ScrollbarsControllerMac::sendContentAreaScrolledTimerFired):
(WebCore::ScrollbarsControllerMac::sendContentAreaScrolledSoon):
(WebCore::ScrollbarsControllerMac::sendContentAreaScrolled):
(WebCore::scrollbarState):
(WebCore::ScrollbarsControllerMac::horizontalScrollbarStateForTesting const):
(WebCore::ScrollbarsControllerMac::verticalScrollbarStateForTesting const):
(WebCore::ScrollbarsControllerMac::wheelEventTestMonitor const):

  • platform/mock/ScrollAnimatorMock.h: Removed.
  • platform/mock/ScrollbarsControllerMock.cpp: Renamed from Source/WebCore/platform/mock/ScrollAnimatorMock.cpp.

(WebCore::ScrollbarsControllerMock::ScrollbarsControllerMock):
(WebCore::ScrollbarsControllerMock::didAddVerticalScrollbar):
(WebCore::ScrollbarsControllerMock::didAddHorizontalScrollbar):
(WebCore::ScrollbarsControllerMock::willRemoveVerticalScrollbar):
(WebCore::ScrollbarsControllerMock::willRemoveHorizontalScrollbar):
(WebCore::ScrollbarsControllerMock::mouseEnteredContentArea):
(WebCore::ScrollbarsControllerMock::mouseMovedInContentArea):
(WebCore::ScrollbarsControllerMock::mouseExitedContentArea):
(WebCore::ScrollbarsControllerMock::scrollbarPrefix const):
(WebCore::ScrollbarsControllerMock::mouseEnteredScrollbar const):
(WebCore::ScrollbarsControllerMock::mouseExitedScrollbar const):
(WebCore::ScrollbarsControllerMock::mouseIsDownInScrollbar const):

  • platform/mock/ScrollbarsControllerMock.h: Added.
8:27 PM Changeset in webkit [282719] by Chris Dumez
  • 2 edits in trunk/Tools

[ macOS Release ] TestWebKitAPI.NetworkProcess.BroadcastChannelCrashRecovery is flaky timing out
https://bugs.webkit.org/show_bug.cgi?id=230430
<rdar://problem/83256307>

Reviewed by Alex Christensen.

I suspect that the flakiness is due to the BroadcastChannel.postMessage() sometimes failing right
after we kill the network process and relaunch it. I believe this could happen because the test
was only making sure that [[WKWebsiteDataStore defaultDataStore] _networkProcessIdentifier]
changed. This meant that the UIProcess was indeed notified that the network process crashed and
that a new one was relaunched. However, this doesn't necessarily indicate that the view's
WebProcesses were notified yet. As a result, when we evaluate JS to post a message on a
BroadcastChannel, the WebProcess could potentially still try to send the IPC via the
IPC::Connection for the old network process.

To try and address this race, I am adding code to wait until cookie synchronization is
working across both web views before I try posting the message. Because cookie synchronization
involves the network process and both WebProcesses, once this happens, we know that both
WebProcesses are properly connected to the new NetworkProcess.

  • TestWebKitAPI/Tests/WebKitCocoa/NetworkProcess.mm:

(waitUntilNetworkProcessIsResponsive):
(TEST):

7:30 PM Changeset in webkit [282718] by Alan Bujtas
  • 4 edits in trunk

[LFC][IFC] Enable content with synthetic bold for IFC
https://bugs.webkit.org/show_bug.cgi?id=230383

Reviewed by Antti Koivisto.

Synthetic bold prevents us from using the fast text measuring codepath, but IFC does work
with the slow codepath too (FontCascade::widthForSimpleText vs FontCascade::width).

  • layout/integration/LayoutIntegrationCoverage.cpp:

(WebCore::LayoutIntegration::canUseForText):

  • rendering/RenderText.cpp:

(WebCore::RenderText::computeCanUseSimplifiedTextMeasuring const):

5:43 PM Changeset in webkit [282717] by commit-queue@webkit.org
  • 4 edits in trunk/Tools

[results.webkit.org] Add ability to access Bugzilla and Radar links from commit messages
https://bugs.webkit.org/show_bug.cgi?id=229160

Patch by Kevin Neal <kevin_neal@apple.com> on 2021-09-17
Reviewed by Jonathan Bedard.

  • Scripts/libraries/resultsdbpy/resultsdbpy/view/static/css/tooltip.css:

(.tooltip-content hr):
(@media (prefers-color-scheme: dark) .tooltip-content hr):

  • Scripts/libraries/resultsdbpy/resultsdbpy/view/static/js/commit.js:

(Commit):

  • Scripts/libraries/resultsdbpy/resultsdbpy/view/static/js/timeline.js:

(xAxisFromScale):

5:39 PM Changeset in webkit [282716] by Chris Dumez
  • 2 edits in trunk/LayoutTests

[ Catalina+ Win WK1 ] http/tests/misc/iframe-reparenting-id-collision.html is a flaky text failure
https://bugs.webkit.org/show_bug.cgi?id=230423
<rdar://problem/83252545>

Reviewed by Geoffrey Garen.

The test opens 2 identical windows. Each of these windows has an iframe which starts an XHR and then
calls iframeXHRStarted() and end up outputing the following line:
"Started loading iframe XHR request."

When the test fails, we see this line logged a third time, even though there are 2 popup windows.
The reason for this is that iframeXHRStarted() transfers an iframe from one popup to another once
both XHRs have started. When transferring the iframe a new XHR starts. The test calls
testRunner.notifyDone() right away but in some cases, the XHR still has time to start and print
the extra line.

  • http/tests/misc/iframe-reparenting-id-collision.html:
5:28 PM Changeset in webkit [282715] by Jonathan Bedard
  • 2 edits in trunk/Tools

[git-webkit] Reset author time when editing commits (Follow-up fix)
https://bugs.webkit.org/show_bug.cgi?id=230224
<rdar://problem/83065417>

Unreviewed follow-up fix.

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

(Git.pull): We can't update SVN if the HEAD commit does not have a revision.

5:22 PM Changeset in webkit [282714] by Jonathan Bedard
  • 6 edits in trunk/Tools

[webkitscmpy] Refactor PR branch management
https://bugs.webkit.org/show_bug.cgi?id=230432
<rdar://problem/83258413>

Reviewed by Stephanie Lewis.

  • Scripts/libraries/webkitscmpy/setup.py: Bump version.
  • Scripts/libraries/webkitscmpy/webkitscmpy/init.py: Ditto.
  • Scripts/libraries/webkitscmpy/webkitscmpy/program/branch.py:

(Branch): Specify that the 'eng' prefix is for pull-requests.
(Branch.normalize_branch_name): Normalized branch names should consider other developement prefixes.
(Branch.editable): Check if a branch is editable. Only includes development branches at the moment,
will include commit-queue in the near future.
(Branch.branch_point): Moved from pull_request.py.
(Branch.main):
(Branch.normalize_issue): Renamed normalize_branch_name.

  • Scripts/libraries/webkitscmpy/webkitscmpy/program/pull.py:

(Pull.main): branch_point is now owned Branch command.

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

(PullRequest.main): Match DEV_BRANCHES instead of PREFIX, branch_point is now owned Branch command.
(PullRequest.branch_point): Moved to branch.py.

5:16 PM Changeset in webkit [282713] by Simon Fraser
  • 4 edits in trunk/LayoutTests

css/cssom-view/mouseEvent-offsetXY-svg.html passes now
https://bugs.webkit.org/show_bug.cgi?id=230271

Reviewed by Ryan Haddad.
LayoutTests/imported/w3c:

css/cssom-view/mouseEvent-offsetXY-svg.html passes after r282316.

  • web-platform-tests/css/cssom-view/mouseEvent-offsetXY-svg-expected.txt:

LayoutTests:

css/cssom-view/mouseEvent-offsetXY-svg.html passes after r282316.

5:10 PM Changeset in webkit [282712] by achristensen@apple.com
  • 125 edits
    1 add in trunk/Source

Use ObjectIdentifier for ResourceLoader
https://bugs.webkit.org/show_bug.cgi?id=230278

Reviewed by Michael Catanzaro.

Source/WebCore:

  • Modules/fetch/FetchLoader.cpp:

(WebCore::FetchLoader::didReceiveResponse):
(WebCore::FetchLoader::didFinishLoading):

  • Modules/fetch/FetchLoader.h:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/WorkerModuleScriptLoader.h:
  • dom/Document.cpp:

(WebCore::Document::processMetaHttpEquiv):

  • fileapi/FileReaderLoader.cpp:

(WebCore::FileReaderLoader::didReceiveResponse):
(WebCore::FileReaderLoader::didFinishLoading):

  • fileapi/FileReaderLoader.h:
  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::willSendRequestImpl):
(WebCore::InspectorInstrumentation::willSendRequestOfTypeImpl):
(WebCore::InspectorInstrumentation::didReceiveResourceResponseImpl):
(WebCore::InspectorInstrumentation::didReceiveThreadableLoaderResponseImpl):
(WebCore::InspectorInstrumentation::didReceiveDataImpl):
(WebCore::InspectorInstrumentation::didFinishLoadingImpl):
(WebCore::InspectorInstrumentation::didFailLoadingImpl):
(WebCore::InspectorInstrumentation::scriptImportedImpl):
(WebCore::InspectorInstrumentation::didReceiveScriptResponseImpl):
(WebCore::InspectorInstrumentation::interceptResponseImpl):

  • inspector/InspectorInstrumentation.h:

(WebCore::InspectorInstrumentation::willSendRequest):
(WebCore::InspectorInstrumentation::willSendRequestOfType):
(WebCore::InspectorInstrumentation::didReceiveResourceResponse):
(WebCore::InspectorInstrumentation::didReceiveThreadableLoaderResponse):
(WebCore::InspectorInstrumentation::didReceiveData):
(WebCore::InspectorInstrumentation::didFinishLoading):
(WebCore::InspectorInstrumentation::didFailLoading):
(WebCore::InspectorInstrumentation::continueAfterXFrameOptionsDenied):
(WebCore::InspectorInstrumentation::continueWithPolicyDownload):
(WebCore::InspectorInstrumentation::continueWithPolicyIgnore):
(WebCore::InspectorInstrumentation::scriptImported):
(WebCore::InspectorInstrumentation::didReceiveScriptResponse):
(WebCore::InspectorInstrumentation::interceptResponse):

  • inspector/InspectorInstrumentationWebKit.cpp:

(WebCore::InspectorInstrumentationWebKit::interceptResponseInternal):

  • inspector/InspectorInstrumentationWebKit.h:

(WebCore::InspectorInstrumentationWebKit::interceptResponse):

  • inspector/agents/InspectorNetworkAgent.cpp:

(WebCore::InspectorNetworkAgent::willSendRequest):
(WebCore::InspectorNetworkAgent::willSendRequestOfType):
(WebCore::InspectorNetworkAgent::didReceiveResponse):
(WebCore::InspectorNetworkAgent::didReceiveData):
(WebCore::InspectorNetworkAgent::didFinishLoading):
(WebCore::InspectorNetworkAgent::didFailLoading):
(WebCore::InspectorNetworkAgent::didLoadResourceFromMemoryCache):
(WebCore::InspectorNetworkAgent::setInitialScriptContent):
(WebCore::InspectorNetworkAgent::didReceiveScriptResponse):
(WebCore::InspectorNetworkAgent::didReceiveThreadableLoaderResponse):
(WebCore::InspectorNetworkAgent::interceptRequest):
(WebCore::InspectorNetworkAgent::interceptResponse):

  • inspector/agents/InspectorNetworkAgent.h:
  • inspector/agents/WebConsoleAgent.cpp:

(WebCore::WebConsoleAgent::didReceiveResponse):
(WebCore::WebConsoleAgent::didFailLoading):

  • inspector/agents/WebConsoleAgent.h:
  • loader/CrossOriginPreflightChecker.cpp:

(WebCore::CrossOriginPreflightChecker::validatePreflightResponse):
(WebCore::CrossOriginPreflightChecker::doPreflight):

  • loader/CrossOriginPreflightChecker.h:
  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::finishedLoading):
(WebCore::DocumentLoader::tryLoadingSubstituteData):
(WebCore::DocumentLoader::stopLoadingAfterXFrameOptionsOrContentSecurityPolicyDenied):
(WebCore::DocumentLoader::responseReceived):
(WebCore::DocumentLoader::disallowDataRequest const):
(WebCore::DocumentLoader::addSubresourceLoader):
(WebCore::DocumentLoader::loadMainResource):
(WebCore::DocumentLoader::subresourceLoaderFinishedLoadingOnePart):

  • loader/DocumentLoader.h:
  • loader/DocumentThreadableLoader.cpp:

(WebCore::DocumentThreadableLoader::didReceiveResponse):
(WebCore::DocumentThreadableLoader::didReceiveData):
(WebCore::DocumentThreadableLoader::didFinishLoading):
(WebCore::DocumentThreadableLoader::didFail):
(WebCore::DocumentThreadableLoader::preflightFailure):
(WebCore::DocumentThreadableLoader::loadRequest):

  • loader/DocumentThreadableLoader.h:
  • loader/EmptyClients.cpp:

(WebCore::EmptyFrameLoaderClient::assignIdentifierToInitialRequest):
(WebCore::EmptyFrameLoaderClient::shouldUseCredentialStorage):
(WebCore::EmptyFrameLoaderClient::dispatchWillSendRequest):
(WebCore::EmptyFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
(WebCore::EmptyFrameLoaderClient::canAuthenticateAgainstProtectionSpace):
(WebCore::EmptyFrameLoaderClient::connectionProperties):
(WebCore::EmptyFrameLoaderClient::dispatchDidReceiveResponse):
(WebCore::EmptyFrameLoaderClient::dispatchDidReceiveContentLength):
(WebCore::EmptyFrameLoaderClient::dispatchDidFinishLoading):
(WebCore::EmptyFrameLoaderClient::dispatchDidFailLoading):
(WebCore::EmptyFrameLoaderClient::willCacheResponse const):
(WebCore::EmptyFrameLoaderClient::shouldCacheResponse):

  • loader/EmptyFrameLoaderClient.h:
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::willLoadMediaElementURL):
(WebCore::FrameLoader::commitProvisionalLoad):
(WebCore::FrameLoader::loadResourceSynchronously):
(WebCore::FrameLoader::requestFromDelegate):
(WebCore::FrameLoader::loadedResourceFromMemoryCache):
(WebCore::FrameLoader::shouldInterruptLoadForXFrameOptions):

  • loader/FrameLoader.h:
  • loader/FrameLoaderClient.h:
  • loader/LoaderStrategy.cpp:

(WebCore::LoaderStrategy::responseFromResourceLoadIdentifier):
(WebCore::LoaderStrategy::networkMetricsFromResourceLoadIdentifier):
(WebCore::LoaderStrategy::intermediateLoadInformationFromResourceLoadIdentifier):

  • loader/LoaderStrategy.h:

(WebCore::LoaderStrategy::ongoingLoads const):
(): Deleted.

  • loader/PingLoader.cpp:

(WebCore::PingLoader::startPingLoad):

  • loader/ProgressTracker.cpp:

(WebCore::ProgressTracker::incrementProgress):
(WebCore::ProgressTracker::completeProgress):
(WebCore::ProgressTracker::createUniqueIdentifier):

  • loader/ProgressTracker.h:
  • loader/ResourceLoadNotifier.cpp:

(WebCore::ResourceLoadNotifier::didReceiveAuthenticationChallenge):
(WebCore::ResourceLoadNotifier::assignIdentifierToInitialRequest):
(WebCore::ResourceLoadNotifier::dispatchWillSendRequest):
(WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse):
(WebCore::ResourceLoadNotifier::dispatchDidReceiveData):
(WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
(WebCore::ResourceLoadNotifier::dispatchDidFailLoading):
(WebCore::ResourceLoadNotifier::sendRemainingDelegateMessages):

  • loader/ResourceLoadNotifier.h:
  • loader/ResourceLoader.cpp:

(WebCore::ResourceLoader::releaseResources):
(WebCore::ResourceLoader::willSendRequestInternal):

  • loader/ResourceLoader.h:

(WebCore::ResourceLoader::identifier const):

  • loader/ResourceLoaderIdentifier.h: Copied from Source/WebKit/Shared/URLSchemeTaskParameters.h.
  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::init):
(WebCore::SubresourceLoader::willSendRequestInternal):
(WebCore::SubresourceLoader::didReceiveResponse):
(WebCore::SubresourceLoader::didFinishLoading):
(WebCore::SubresourceLoader::didFail):
(WebCore::SubresourceLoader::didCancel):

  • loader/ThreadableLoaderClient.h:

(WebCore::ThreadableLoaderClient::didSendData):
(WebCore::ThreadableLoaderClient::didReceiveResponse):
(WebCore::ThreadableLoaderClient::didReceiveData):
(WebCore::ThreadableLoaderClient::didFinishLoading):
(WebCore::ThreadableLoaderClient::didFail):
(WebCore::ThreadableLoaderClient::didFinishTiming):
(WebCore::ThreadableLoaderClient::notifyIsDone):

  • loader/ThreadableLoaderClientWrapper.h:

(WebCore::ThreadableLoaderClientWrapper::didReceiveResponse):
(WebCore::ThreadableLoaderClientWrapper::didFinishLoading):
(WebCore::ThreadableLoaderClientWrapper::didReceiveAuthenticationCancellation):

  • loader/WorkerThreadableLoader.cpp:

(WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge):
(WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveResponse):
(WebCore::WorkerThreadableLoader::MainThreadBridge::didFinishLoading):

  • loader/WorkerThreadableLoader.h:

(WebCore::WorkerThreadableLoader::create):
(WebCore::WorkerThreadableLoader::done const):

  • loader/appcache/ApplicationCacheGroup.cpp:

(WebCore::ApplicationCacheGroup::update):
(WebCore::ApplicationCacheGroup::startLoadingEntry):

  • loader/appcache/ApplicationCacheGroup.h:
  • loader/cache/CachedRawResource.cpp:

(WebCore::CachedRawResource::CachedRawResource):

  • loader/cache/CachedRawResource.h:
  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::load):

  • loader/cache/CachedResource.h:

(WebCore::CachedResource::identifierForLoadWithoutResourceLoader const):

  • page/EventSource.cpp:

(WebCore::EventSource::didReceiveResponse):
(WebCore::EventSource::didFinishLoading):

  • page/EventSource.h:
  • workers/Worker.cpp:

(WebCore::Worker::didReceiveResponse):

  • workers/Worker.h:
  • workers/WorkerFontLoadRequest.cpp:

(WebCore::WorkerFontLoadRequest::didReceiveResponse):
(WebCore::WorkerFontLoadRequest::didFinishLoading):

  • workers/WorkerFontLoadRequest.h:
  • workers/WorkerOrWorkletGlobalScope.h:

(WebCore::WorkerOrWorkletGlobalScope::createUniqueIdentifier): Deleted.

  • workers/WorkerScriptLoader.cpp:

(WebCore::WorkerScriptLoader::didReceiveResponse):
(WebCore::WorkerScriptLoader::didFinishLoading):

  • workers/WorkerScriptLoader.h:

(WebCore::WorkerScriptLoader::identifier const):

  • workers/WorkerScriptLoaderClient.h:
  • workers/service/ServiceWorkerJob.cpp:

(WebCore::ServiceWorkerJob::didReceiveResponse):

  • workers/service/ServiceWorkerJob.h:
  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::didFinishLoading):
(WebCore::XMLHttpRequest::didReceiveResponse):

  • xml/XMLHttpRequest.h:

Source/WebKit:

  • NetworkProcess/NetworkConnectionToWebProcess.cpp:

(WebKit::NetworkConnectionToWebProcess::didReceiveMessage):
(WebKit::NetworkConnectionToWebProcess::resolveBlobReferences):
(WebKit::NetworkConnectionToWebProcess::scheduleResourceLoad):
(WebKit::NetworkConnectionToWebProcess::performSynchronousLoad):
(WebKit::NetworkConnectionToWebProcess::loadPing):
(WebKit::NetworkConnectionToWebProcess::removeLoadIdentifier):
(WebKit::NetworkConnectionToWebProcess::preconnectTo):
(WebKit::NetworkConnectionToWebProcess::isResourceLoadFinished):
(WebKit::NetworkConnectionToWebProcess::didFinishPreconnection):
(WebKit::NetworkConnectionToWebProcess::convertMainResourceLoadToDownload):
(WebKit::NetworkConnectionToWebProcess::startTrackingResourceLoad):
(WebKit::NetworkConnectionToWebProcess::stopTrackingResourceLoad):
(WebKit::NetworkConnectionToWebProcess::findNetworkActivityTracker):
(WebKit::NetworkConnectionToWebProcess::prioritizeResourceLoads):
(WebKit::NetworkConnectionToWebProcess::takeNetworkResourceLoader):

  • NetworkProcess/NetworkConnectionToWebProcess.h:

(WebKit::NetworkConnectionToWebProcess::getNetworkLoadInformationResponse):
(WebKit::NetworkConnectionToWebProcess::getNetworkLoadIntermediateInformation):
(WebKit::NetworkConnectionToWebProcess::takeNetworkLoadInformationMetrics):
(WebKit::NetworkConnectionToWebProcess::addNetworkLoadInformation):
(WebKit::NetworkConnectionToWebProcess::addNetworkLoadInformationMetrics):
(WebKit::NetworkConnectionToWebProcess::removeNetworkLoadInformation):
(WebKit::NetworkConnectionToWebProcess::ResourceNetworkActivityTracker::ResourceNetworkActivityTracker):

  • NetworkProcess/NetworkConnectionToWebProcess.messages.in:
  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::prepareLoadForWebProcessTransfer):

  • NetworkProcess/NetworkProcess.h:
  • NetworkProcess/NetworkProcess.messages.in:
  • NetworkProcess/NetworkResourceLoadMap.cpp:

(WebKit::NetworkResourceLoadMap::add):
(WebKit::NetworkResourceLoadMap::remove):
(WebKit::NetworkResourceLoadMap::take):
(WebKit::NetworkResourceLoadMap::get const):

  • NetworkProcess/NetworkResourceLoadMap.h:

(WebKit::NetworkResourceLoadMap::contains const):

  • NetworkProcess/NetworkResourceLoadParameters.h:
  • NetworkProcess/NetworkResourceLoader.cpp:

(WebKit::NetworkResourceLoader::transferToNewWebProcess):
(WebKit::escapeIDForJSON):
(WebKit::logBlockedCookieInformation):
(WebKit::logCookieInformationInternal):
(WebKit::NetworkResourceLoader::logCookieInformation):

  • NetworkProcess/NetworkResourceLoader.h:
  • Scripts/webkit/messages.py:

(types_that_cannot_be_forward_declared):

  • Shared/URLSchemeTaskParameters.cpp:

(WebKit::URLSchemeTaskParameters::decode):

  • Shared/URLSchemeTaskParameters.h:
  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::prepareLoadForWebProcessTransfer):

  • UIProcess/Network/NetworkProcessProxy.h:
  • UIProcess/ProvisionalPageProxy.cpp:

(WebKit::ProvisionalPageProxy::decidePolicyForResponse):

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

(WebKit::WebPageProxy::decidePolicyForResponse):
(WebKit::WebPageProxy::decidePolicyForResponseShared):
(WebKit::WebPageProxy::stopURLSchemeTask):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/WebURLSchemeHandler.cpp:

(WebKit::WebURLSchemeHandler::startTask):
(WebKit::WebURLSchemeHandler::processForTaskIdentifier const):
(WebKit::WebURLSchemeHandler::stopAllTasksForPage):
(WebKit::WebURLSchemeHandler::stopTask):
(WebKit::WebURLSchemeHandler::removeTaskFromPageMap):

  • UIProcess/WebURLSchemeHandler.h:
  • UIProcess/WebURLSchemeTask.h:

(WebKit::WebURLSchemeTask::identifier const):

  • WebProcess/InjectedBundle/API/APIInjectedBundlePageResourceLoadClient.h:

(API::InjectedBundle::ResourceLoadClient::didInitiateLoadForResource):
(API::InjectedBundle::ResourceLoadClient::willSendRequestForFrame):
(API::InjectedBundle::ResourceLoadClient::didReceiveResponseForResource):
(API::InjectedBundle::ResourceLoadClient::didReceiveContentLengthForResource):
(API::InjectedBundle::ResourceLoadClient::didFinishLoadForResource):
(API::InjectedBundle::ResourceLoadClient::didFailLoadForResource):
(API::InjectedBundle::ResourceLoadClient::shouldCacheResponse):
(API::InjectedBundle::ResourceLoadClient::shouldUseCredentialStorage):

  • WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.cpp:

(WebKit::InjectedBundlePageResourceLoadClient::didInitiateLoadForResource):
(WebKit::InjectedBundlePageResourceLoadClient::willSendRequestForFrame):
(WebKit::InjectedBundlePageResourceLoadClient::didReceiveResponseForResource):
(WebKit::InjectedBundlePageResourceLoadClient::didReceiveContentLengthForResource):
(WebKit::InjectedBundlePageResourceLoadClient::didFinishLoadForResource):
(WebKit::InjectedBundlePageResourceLoadClient::didFailLoadForResource):
(WebKit::InjectedBundlePageResourceLoadClient::shouldCacheResponse):
(WebKit::InjectedBundlePageResourceLoadClient::shouldUseCredentialStorage):

  • WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.h:
  • WebProcess/Network/NetworkProcessConnection.cpp:

(WebKit::NetworkProcessConnection::didReceiveMessage):
(WebKit::NetworkProcessConnection::didFinishPingLoad):
(WebKit::NetworkProcessConnection::didFinishPreconnection):

  • WebProcess/Network/NetworkProcessConnection.h:
  • WebProcess/Network/NetworkProcessConnection.messages.in:
  • WebProcess/Network/WebLoaderStrategy.cpp:

(WebKit::WebLoaderStrategy::scheduleLoad):
(WebKit::WebLoaderStrategy::scheduleLoadFromNetworkProcess):
(WebKit::WebLoaderStrategy::remove):
(WebKit::WebLoaderStrategy::tryLoadingSynchronouslyUsingURLSchemeHandler):
(WebKit::WebLoaderStrategy::loadResourceSynchronously):
(WebKit::WebLoaderStrategy::startPingLoad):
(WebKit::WebLoaderStrategy::didFinishPingLoad):
(WebKit::WebLoaderStrategy::preconnectTo):
(WebKit::WebLoaderStrategy::didFinishPreconnection):
(WebKit::WebLoaderStrategy::responseFromResourceLoadIdentifier):
(WebKit::WebLoaderStrategy::intermediateLoadInformationFromResourceLoadIdentifier):
(WebKit::WebLoaderStrategy::networkMetricsFromResourceLoadIdentifier):
(WebKit::WebLoaderStrategy::prioritizeResourceLoads):
(WebKit::WebLoaderStrategy::generateLoadIdentifier): Deleted.

  • WebProcess/Network/WebLoaderStrategy.h:
  • WebProcess/Network/WebResourceInterceptController.cpp:

(WebKit::WebResourceInterceptController::isIntercepting const):
(WebKit::WebResourceInterceptController::beginInterceptingResponse):
(WebKit::WebResourceInterceptController::continueResponse):
(WebKit::WebResourceInterceptController::interceptedResponse):
(WebKit::WebResourceInterceptController::defer):

  • WebProcess/Network/WebResourceInterceptController.h:
  • WebProcess/Network/WebResourceLoader.cpp:

(WebKit::WebResourceLoader::messageSenderDestinationID const):
(WebKit::WebResourceLoader::didReceiveResponse):

  • WebProcess/Network/WebResourceLoader.h:
  • WebProcess/Storage/WebSWContextManagerConnection.h:
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::assignIdentifierToInitialRequest):
(WebKit::WebFrameLoaderClient::dispatchWillSendRequest):
(WebKit::WebFrameLoaderClient::shouldUseCredentialStorage):
(WebKit::WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
(WebKit::WebFrameLoaderClient::canAuthenticateAgainstProtectionSpace):
(WebKit::WebFrameLoaderClient::dispatchDidReceiveResponse):
(WebKit::WebFrameLoaderClient::dispatchDidReceiveContentLength):
(WebKit::WebFrameLoaderClient::dispatchDidFinishLoading):
(WebKit::WebFrameLoaderClient::dispatchDidFailLoading):
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
(WebKit::WebFrameLoaderClient::willCacheResponse const):
(WebKit::WebFrameLoaderClient::sendH2Ping):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::convertMainResourceLoadToDownload):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::addConsoleMessage):
(WebKit::WebPage::addResourceRequest):
(WebKit::WebPage::removeResourceRequest):
(WebKit::WebPage::urlSchemeTaskWillPerformRedirection):
(WebKit::WebPage::urlSchemeTaskDidPerformRedirection):
(WebKit::WebPage::urlSchemeTaskDidReceiveResponse):
(WebKit::WebPage::urlSchemeTaskDidReceiveData):
(WebKit::WebPage::urlSchemeTaskDidComplete):

  • WebProcess/WebPage/WebPage.h:

(WebKit::WebPage::addConsoleMessage):

  • WebProcess/WebPage/WebPage.messages.in:
  • WebProcess/WebPage/WebURLSchemeHandlerProxy.cpp:

(WebKit::WebURLSchemeHandlerProxy::loadSynchronously):
(WebKit::WebURLSchemeHandlerProxy::taskDidPerformRedirection):
(WebKit::WebURLSchemeHandlerProxy::taskDidReceiveResponse):
(WebKit::WebURLSchemeHandlerProxy::taskDidReceiveData):
(WebKit::WebURLSchemeHandlerProxy::taskDidComplete):
(WebKit::WebURLSchemeHandlerProxy::removeTask):

  • WebProcess/WebPage/WebURLSchemeHandlerProxy.h:
  • WebProcess/WebPage/WebURLSchemeTaskProxy.cpp:
  • WebProcess/WebPage/WebURLSchemeTaskProxy.h:

(WebKit::WebURLSchemeTaskProxy::identifier const):

Source/WebKitLegacy:

  • WebCoreSupport/WebResourceLoadScheduler.cpp:

(WebResourceLoadScheduler::loadResourceSynchronously):

  • WebCoreSupport/WebResourceLoadScheduler.h:

Source/WebKitLegacy/mac:

  • WebCoreSupport/WebFrameLoaderClient.h:
  • WebCoreSupport/WebFrameLoaderClient.mm:

(WebFrameLoaderClient::assignIdentifierToInitialRequest):
(WebFrameLoaderClient::dispatchWillSendRequest):
(WebFrameLoaderClient::shouldUseCredentialStorage):
(WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
(WebFrameLoaderClient::canAuthenticateAgainstProtectionSpace):
(WebFrameLoaderClient::connectionProperties):
(WebFrameLoaderClient::dispatchDidReceiveResponse):
(WebFrameLoaderClient::willCacheResponse const):
(WebFrameLoaderClient::dispatchDidReceiveContentLength):
(WebFrameLoaderClient::dispatchDidFinishLoading):
(WebFrameLoaderClient::dispatchDidFailLoading):

  • WebView/WebDocumentLoaderMac.h:
  • WebView/WebDocumentLoaderMac.mm:

(WebDocumentLoaderMac::increaseLoadCount):
(WebDocumentLoaderMac::decreaseLoadCount):

  • WebView/WebViewInternal.h:

Source/WebKitLegacy/win:

  • WebCoreSupport/WebFrameLoaderClient.cpp:

(WebFrameLoaderClient::assignIdentifierToInitialRequest):
(WebFrameLoaderClient::shouldUseCredentialStorage):
(WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
(WebFrameLoaderClient::dispatchWillSendRequest):
(WebFrameLoaderClient::dispatchDidReceiveResponse):
(WebFrameLoaderClient::dispatchDidReceiveContentLength):
(WebFrameLoaderClient::dispatchDidFinishLoading):
(WebFrameLoaderClient::dispatchDidFailLoading):
(WebFrameLoaderClient::shouldCacheResponse):

  • WebCoreSupport/WebFrameLoaderClient.h:
4:46 PM Changeset in webkit [282711] by Kate Cheney
  • 8 edits
    1 delete in trunk

Remove unnecessary ITP memory store code
https://bugs.webkit.org/show_bug.cgi?id=229512
<rdar://problem/82644309>

Reviewed by John Wilander.

Source/WebKit:

No new tests. Confirmed by existing tests.

Remove ITP Memory store. This is the first part of a two part operation,
which removes the ResourceLoadStatisticsMemoryStore class. The next
step will be reducing ResourceLoadStatisticsStore and
ResourceLoadStatisticsDatabaseStore to one single ResourceLoadStatisticsStore class.

  • NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp:

(WebKit::ResourceLoadStatisticsDatabaseStore::populateFromMemoryStore): Deleted.

  • NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.h:
  • NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp: Removed.
  • NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp:

(WebKit::WebResourceLoadStatisticsStore::WebResourceLoadStatisticsStore):

  • Sources.txt:
  • WebKit.xcodeproj/project.pbxproj:

Tools:

  • TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:

(TEST):
Deleted an extra memory store test leftover from when we still had
a functioning memory store. Now it is just a duplicate of the database
test, so we can remove it.

4:45 PM Changeset in webkit [282710] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebCore

Fix the Xcode build

Unreviewed.

No new tests because there is no behavior change.

  • DerivedSources-output.xcfilelist:
4:40 PM Changeset in webkit [282709] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ MacOS ] http/tests/media/track-in-band-hls-metadata.htm is a flaky failure.
https://bugs.webkit.org/show_bug.cgi?id=230435

Unreviewed test gardening.

  • platform/mac/TestExpectations:
4:33 PM Changeset in webkit [282708] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[iOS] http/tests/navigation/back-to-slow-frame.html is a flaky crash.
https://bugs.webkit.org/show_bug.cgi?id=230434.

Unreviewed test gardening.

  • platform/ios-wk2/TestExpectations:
4:17 PM Changeset in webkit [282707] by ysuzuki@apple.com
  • 15 edits
    1 add in trunk

[JSC] Add fast property enumeration mode for JSON.stringify
https://bugs.webkit.org/show_bug.cgi?id=230393

Reviewed by Mark Lam.

JSTests:

  • stress/json-stringify-object-modify.js: Added.

(shouldBe):
(throw.new.Error.let.object.hello.get inner):
(throw.new.Error):
(shouldBe.let.object.hello.get inner):

Source/JavaScriptCore:

We collected profiles and found several subtests are using JSON.stringify enough. And generated strings are many serialized leaf objects.

This patch adds fast object property enumeration. When we know that source object meets some conditions, we can say that,
as long as structure is not changed, we can continue using property names and offset collected from the structure.
This way removes non observable Get? operations to accelerate JSON.stringify performance for major object iteration cases.

We also extend MarkedArgumentBuffer: introducing MarkedArgumentBufferWithSize which can take default inline capacity as a template
parameter. This is used in JSON.stringify to increase the buffer because now we also need to record structures in MarkedArgumentBuffer.

This offers 0.4% improvement in Speedometer2 (EmberJS-TodoMVC, Vanilla-XXX, EmberJS-Debug-TodoMVC, they have enough amount of JSON.stringify
time).


| subtest | ms | ms | b / a | pValue (significance using False Discovery Rate) |


| Elm-TodoMVC |117.710000 |117.751667 |1.000354 | 0.883246 |
| VueJS-TodoMVC |24.500000 |24.311667 |0.992313 | 0.365130 |
| EmberJS-TodoMVC |126.646667 |125.738333 |0.992828 | 0.002587 (significant) |
| BackboneJS-TodoMVC |47.873333 |47.911667 |1.000801 | 0.762509 |
| Preact-TodoMVC |17.020000 |17.070000 |1.002938 | 0.786799 |
| AngularJS-TodoMVC |129.856667 |129.353333 |0.996124 | 0.177632 |
| Vanilla-ES2015-TodoMVC |61.698333 |61.120000 |0.990626 | 0.000003 (significant) |
| Inferno-TodoMVC |62.840000 |62.496667 |0.994536 | 0.312340 |
| Flight-TodoMVC |77.095000 |76.936667 |0.997946 | 0.702724 |
| Angular2-TypeScript-TodoMVC |39.740000 |39.191667 |0.986202 | 0.053485 |
| VanillaJS-TodoMVC |49.008333 |48.346667 |0.986499 | 0.000638 (significant) |
| jQuery-TodoMVC |216.785000 |217.188333 |1.001861 | 0.270747 |
| EmberJS-Debug-TodoMVC |344.230000 |342.993333 |0.996407 | 0.012262 (significant) |
| React-TodoMVC |85.461667 |85.411667 |0.999415 | 0.758049 |
| React-Redux-TodoMVC |140.681667 |140.640000 |0.999704 | 0.871277 |
| Vanilla-ES2015-Babel-Webpack-TodoMVC |59.928333 |59.351667 |0.990377 | 0.000000 (significant) |


a mean = 264.40650
b mean = 265.51533
pValue = 0.0005567357
(Bigger means are better.)
1.004 times better
Results ARE significant

  • heap/Heap.cpp:

(JSC::Heap::addCoreConstraints):

  • heap/Heap.h:
  • heap/HeapInlines.h:
  • runtime/ArgList.cpp:

(JSC::MarkedArgumentBufferBase::addMarkSet):
(JSC::MarkedArgumentBufferBase::markLists):
(JSC::MarkedArgumentBufferBase::slowEnsureCapacity):
(JSC::MarkedArgumentBufferBase::expandCapacity):
(JSC::MarkedArgumentBufferBase::slowAppend):
(JSC::MarkedArgumentBuffer::addMarkSet): Deleted.
(JSC::MarkedArgumentBuffer::markLists): Deleted.
(JSC::MarkedArgumentBuffer::slowEnsureCapacity): Deleted.
(JSC::MarkedArgumentBuffer::expandCapacity): Deleted.
(JSC::MarkedArgumentBuffer::slowAppend): Deleted.

  • runtime/ArgList.h:

(JSC::MarkedArgumentBufferWithSize::MarkedArgumentBufferWithSize):
(JSC::MarkedArgumentBuffer::MarkedArgumentBuffer): Deleted.
(JSC::MarkedArgumentBuffer::~MarkedArgumentBuffer): Deleted.
(JSC::MarkedArgumentBuffer::size const): Deleted.
(JSC::MarkedArgumentBuffer::isEmpty const): Deleted.
(JSC::MarkedArgumentBuffer::at const): Deleted.
(JSC::MarkedArgumentBuffer::clear): Deleted.
(JSC::MarkedArgumentBuffer::appendWithAction): Deleted.
(JSC::MarkedArgumentBuffer::append): Deleted.
(JSC::MarkedArgumentBuffer::appendWithCrashOnOverflow): Deleted.
(JSC::MarkedArgumentBuffer::removeLast): Deleted.
(JSC::MarkedArgumentBuffer::last): Deleted.
(JSC::MarkedArgumentBuffer::takeLast): Deleted.
(JSC::MarkedArgumentBuffer::ensureCapacity): Deleted.
(JSC::MarkedArgumentBuffer::hasOverflowed): Deleted.
(JSC::MarkedArgumentBuffer::overflowCheckNotNeeded): Deleted.
(JSC::MarkedArgumentBuffer::fill): Deleted.
(JSC::MarkedArgumentBuffer::slotFor const): Deleted.
(JSC::MarkedArgumentBuffer::mallocBase): Deleted.
(JSC::MarkedArgumentBuffer::setNeedsOverflowCheck): Deleted.
(JSC::MarkedArgumentBuffer::clearNeedsOverflowCheck): Deleted.

  • runtime/JSONObject.cpp:

(JSC::Stringifier::Holder::hasFastObjectProperties const):
(JSC::Stringifier::appendStringifiedValue):
(JSC::Stringifier::Holder::Holder):
(JSC::Stringifier::Holder::appendNextProperty):

  • runtime/ObjectConstructorInlines.h:

(JSC::canPerformFastPropertyEnumerationForJSONStringify):

Source/WebCore:

  • Modules/webaudio/AudioWorkletProcessor.cpp:

(WebCore::AudioWorkletProcessor::buildJSArguments):

  • Modules/webaudio/AudioWorkletProcessor.h:

Source/WebKitLegacy/mac:

  • Plugins/Hosted/NetscapePluginInstanceProxy.h:
  • Plugins/Hosted/NetscapePluginInstanceProxy.mm:

(WebKit::NetscapePluginInstanceProxy::demarshalValues):

4:15 PM Changeset in webkit [282706] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Add CustomToJSObject wrapper for CSSStyleValueCustom
https://bugs.webkit.org/show_bug.cgi?id=230422

Patch by Johnson Zhou <qiaosong_zhou@apple.com> on 2021-09-17
Reviewed by Alex Christensen.

  • bindings/js/JSCSSStyleValueCustom.cpp:

(WebCore::toJSNewlyCreated):

  • css/typedom/CSSKeywordValue.h:

(isType):

4:13 PM Changeset in webkit [282705] by ddkilzer@apple.com
  • 3 edits in trunk

Remove duplicate ChangeLog entries.

4:08 PM Changeset in webkit [282704] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WTF

Build fix: WebKit::WebProcessPool should use a weak observer with CFNotificationCenter
<https://webkit.org/b/230227>
<rdar://problem/83067708>

  • wtf/spi/cocoa/NSObjCRuntimeSPI.h:
  • Fix internal Catalina builds by including NSObjCRuntime_Private.h, but falling through to define NS_DIRECT and NS_DIRECT_MEMBERS if they weren't defined in the private header.
4:08 PM Changeset in webkit [282703] by ddkilzer@apple.com
  • 3 edits in trunk

WebKit::WebProcessPool should use a weak observer with CFNotificationCenter
<https://webkit.org/b/230227>
<rdar://problem/83067708>

Reviewed by Darin Adler.

Source/WebKit:

To fix the bug, implement an Objective-C class named
WKProcessPoolWeakObserver which contains an instance variable
holding a WeakPtr<WebProcessPool>, and tell CFNotificationCenter
to hold a weak reference to WKProcessPoolWeakObserver.

Since WKProcessPoolWeakObserver is self-contained within the
source file, it uses the NS_DIRECT_MEMBERS attribute since it
does not require the overhead of dynamic Objective-C method
dispatch.

  • UIProcess/Cocoa/WebProcessPoolCocoa.mm:

(-[WKProcessPoolWeakObserver initWithWeakPtr:]): Add.
(-[WKProcessPoolWeakObserver pool]): Add.

  • Implement WKProcessPoolWeakObserver class.
  • Note that init methods can never be marked as NS_DIRECT, and @property statements can't use NS_DIRECT in their declaration, so the @property is declared in a category which uses NS_DIRECT_MEMBERS.

(WebKit::extractWebProcessPool): Add.

  • Static helper method for extracting RefPtr<WebProcessPool> from type-punned WKProcessPoolWeakObserver.

(WebKit::WebProcessPool::backlightLevelDidChangeCallback):
(WebKit::WebProcessPool::accessibilityPreferencesChangedCallback):
(WebKit::WebProcessPool::mediaAccessibilityPreferencesChangedCallback):
(WebKit::WebProcessPool::colorPreferencesDidChangeCallback):
(WebKit::WebProcessPool::remoteWebInspectorEnabledCallback):

  • Clean up function parameter list.
  • Use extractWebProcessPool() helper method to get a RefPtr<WebProcessPool> from observer.

(WebKit::WebProcessPool::addCFNotificationObserver): Add.
(WebKit::WebProcessPool::removeCFNotificationObserver): Add.

  • Private helper methods to reduce duplicate code.
  • Use m_weakObserver for CFNotificationCenter observer and include _CFNotificationObserverIsObjC to fix the bug.

(WebKit::WebProcessPool::registerNotificationObservers):

  • Make use of new addCFNotificationObserver() helper method.
  • Fixes use of static_cast<CFStringRef> to make code ready for ARC by using a bridge cast or removing the static_cast when CFSTR() is used.

(WebKit::WebProcessPool::unregisterNotificationObservers):

  • Make use of new removeCFNotificationObserver() helper method.
  • UIProcess/WebProcessPool.h:
  • Add m_weakObserver instance variable to hold the WKProcessPoolWeakObserver object.

(WebKit::WebProcessPool::addCFNotificationObserver): Add.
(WebKit::WebProcessPool::removeCFNotificationObserver): Add.

  • Add declarations for new helper methods.

(WebKit::WebProcessPool::backlightLevelDidChangeCallback):
(WebKit::WebProcessPool::accessibilityPreferencesChangedCallback):
(WebKit::WebProcessPool::mediaAccessibilityPreferencesChangedCallback):
(WebKit::WebProcessPool::colorPreferencesDidChangeCallback):
(WebKit::WebProcessPool::remoteWebInspectorEnabledCallback):

  • Clean up function parameter list.

Source/WTF:

Tests (API):

TestWTF.TypeCastsNS.checked_ns_cast
TestWTF.TypeCastsNS.dynamic_ns_cast
TestWTF.TypeCastsNS.dynamic_ns_cast_RetainPtr

  • WTF.xcodeproj/project.pbxproj:
  • wtf/PlatformMac.cmake:
  • Add new header files to the project.
  • wtf/cocoa/TypeCastsNS.h: Add.

(WTF::checked_ns_cast):
(WTF::dynamic_ns_cast):

  • Add casts for NS objects similar to TypeCastsCF.h.
  • wtf/PlatformHave.h:

(HAVE_NS_DIRECT_SUPPORT): Add.

  • Note that clang for macOS 11 Big Sur claims to know about the attributes, but will fail to compile if they are actually used.
  • wtf/spi/cocoa/NSObjCRuntimeSPI.h: Add.

(NS_DIRECT):
(NS_DIRECT_MEMBERS):

  • Define compiler attributes for direct dispatch of Objective-C methods.

Tools:

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • Add TypeCastsNS.mm to the project.
  • TestWebKitAPI/Tests/WTF/cocoa/TypeCastsNS.mm: Add.

(TestWebKitAPI::TEST): Add tests for <wtf/TypeCastsNS.h>.

4:02 PM Changeset in webkit [282702] by achristensen@apple.com
  • 28 edits
    34 adds in trunk

Addition of CSSTransformValue, CSSTransformComponent & subclasses
https://bugs.webkit.org/show_bug.cgi?id=230284

LayoutTests/imported/w3c:

Reviewed by Alex Christensen.

  • web-platform-tests/css/css-typed-om/idlharness-expected.txt:
  • web-platform-tests/css/css-typed-om/rotate-by-added-angle-expected.txt:
  • web-platform-tests/css/css-typed-om/stylevalue-normalization/transformvalue-normalization.tentative-expected.txt:
  • web-platform-tests/css/css-typed-om/stylevalue-serialization/crashtests/cssTransform-Internal-value-expected.txt:
  • web-platform-tests/css/css-typed-om/stylevalue-serialization/cssTransformValue.tentative-expected.txt:
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssMatrixComponent.tentative-expected.txt:
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssPerspective.tentative-expected.txt:
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssRotate.tentative-expected.txt:
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssScale.tentative-expected.txt:
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssSkew.tentative-expected.txt:
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssSkewX.tentative-expected.txt:
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssSkewY.tentative-expected.txt:
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssTransformComponent-toMatrix-expected.txt:
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssTransformComponent-toMatrix-relative-units-expected.txt:
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssTransformValue-toMatrix-expected.txt:
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssTransformValue.tentative-expected.txt:
  • web-platform-tests/css/css-typed-om/stylevalue-subclasses/cssTranslate.tentative-expected.txt:

Source/WebCore:

Patch by Johnson Zhou <qiaosong_zhou@apple.com> on 2021-09-17
Reviewed by Alex Christensen.

  • CMakeLists.txt:
  • DerivedSources-input.xcfilelist:
  • DerivedSources.make:
  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/WebCoreBuiltinNames.h:
  • css/DOMMatrix.idl:
  • css/DOMMatrixReadOnly.h:
  • css/typedom/transform/CSSMatrixComponent.cpp: Added.

(WebCore::CSSMatrixComponent::create):
(WebCore::CSSMatrixComponent::CSSMatrixComponent):
(WebCore::CSSMatrixComponent::toString const):
(WebCore::CSSMatrixComponent::toMatrix):

  • css/typedom/transform/CSSMatrixComponent.h: Added.

(WebCore::CSSMatrixComponent::create):
(WebCore::CSSMatrixComponent::matrix):
(WebCore::CSSMatrixComponent::setMatrix):

  • css/typedom/transform/CSSMatrixComponent.idl: Added.
  • css/typedom/transform/CSSMatrixComponentOptions.h: Added.
  • css/typedom/transform/CSSMatrixComponentOptions.idl: Added.
  • css/typedom/transform/CSSPerspective.cpp: Added.

(WebCore::CSSPerspective::create):
(WebCore::CSSPerspective::CSSPerspective):
(WebCore::CSSPerspective::toString const):
(WebCore::CSSPerspective::toMatrix):

  • css/typedom/transform/CSSPerspective.h: Added.

(WebCore::CSSPerspective::length):
(WebCore::CSSPerspective::setLength):

  • css/typedom/transform/CSSPerspective.idl: Added.
  • css/typedom/transform/CSSRotate.cpp: Added.

(WebCore::CSSRotate::create):
(WebCore::CSSRotate::CSSRotate):
(WebCore::CSSRotate::toString const):
(WebCore::CSSRotate::toMatrix):

  • css/typedom/transform/CSSRotate.h: Added.

(WebCore::CSSRotate::x):
(WebCore::CSSRotate::y):
(WebCore::CSSRotate::z):
(WebCore::CSSRotate::angle):
(WebCore::CSSRotate::setX):
(WebCore::CSSRotate::setY):
(WebCore::CSSRotate::setZ):
(WebCore::CSSRotate::setAngle):

  • css/typedom/transform/CSSRotate.idl: Added.
  • css/typedom/transform/CSSScale.cpp: Added.

(WebCore::CSSScale::create):
(WebCore::CSSScale::CSSScale):
(WebCore::CSSScale::toString const):
(WebCore::CSSScale::toMatrix):

  • css/typedom/transform/CSSScale.h: Added.

(WebCore::CSSScale::x):
(WebCore::CSSScale::y):
(WebCore::CSSScale::z):
(WebCore::CSSScale::setX):
(WebCore::CSSScale::setY):
(WebCore::CSSScale::setZ):

  • css/typedom/transform/CSSScale.idl: Added.
  • css/typedom/transform/CSSSkew.cpp: Added.

(WebCore::CSSSkew::create):
(WebCore::CSSSkew::CSSSkew):
(WebCore::CSSSkew::toString const):
(WebCore::CSSSkew::toMatrix):

  • css/typedom/transform/CSSSkew.h: Added.

(WebCore::CSSSkew::ax):
(WebCore::CSSSkew::ay):
(WebCore::CSSSkew::setAx):
(WebCore::CSSSkew::setAy):

  • css/typedom/transform/CSSSkew.idl: Added.
  • css/typedom/transform/CSSSkewX.cpp: Added.

(WebCore::CSSSkewX::create):
(WebCore::CSSSkewX::CSSSkewX):
(WebCore::CSSSkewX::toString const):
(WebCore::CSSSkewX::toMatrix):

  • css/typedom/transform/CSSSkewX.h: Added.

(WebCore::CSSSkewX::ax):
(WebCore::CSSSkewX::setAx):

  • css/typedom/transform/CSSSkewX.idl: Added.
  • css/typedom/transform/CSSSkewY.cpp: Added.

(WebCore::CSSSkewY::create):
(WebCore::CSSSkewY::CSSSkewY):
(WebCore::CSSSkewY::toString const):
(WebCore::CSSSkewY::toMatrix):

  • css/typedom/transform/CSSSkewY.h: Added.

(WebCore::CSSSkewY::ay):
(WebCore::CSSSkewY::setAy):

  • css/typedom/transform/CSSSkewY.idl: Added.
  • css/typedom/transform/CSSTransformComponent.cpp: Added.

(WebCore::CSSTransformComponent::toString const):
(WebCore::CSSTransformComponent::toMatrix):

  • css/typedom/transform/CSSTransformComponent.h: Added.

(WebCore::CSSTransformComponent::is2D const):
(WebCore::CSSTransformComponent::setIs2D):

  • css/typedom/transform/CSSTransformComponent.idl: Added.
  • css/typedom/transform/CSSTransformValue.cpp: Added.

(WebCore::CSSTransformValue::create):
(WebCore::CSSTransformValue::item):
(WebCore::CSSTransformValue::setItem):
(WebCore::CSSTransformValue::is2D const):
(WebCore::CSSTransformValue::setIs2D):
(WebCore::CSSTransformValue::toMatrix):
(WebCore::CSSTransformValue::CSSTransformValue):

  • css/typedom/transform/CSSTransformValue.h: Added.

(WebCore::CSSTransformValue::length const):
(isType):

  • css/typedom/transform/CSSTransformValue.idl: Added.
  • css/typedom/transform/CSSTranslate.cpp: Added.

(WebCore::CSSTranslate::create):
(WebCore::CSSTranslate::CSSTranslate):
(WebCore::CSSTranslate::toString const):
(WebCore::CSSTranslate::toMatrix):

  • css/typedom/transform/CSSTranslate.h: Added.

(WebCore::CSSTranslate::x):
(WebCore::CSSTranslate::y):
(WebCore::CSSTranslate::z):
(WebCore::CSSTranslate::setX):
(WebCore::CSSTranslate::setY):
(WebCore::CSSTranslate::setZ):

  • css/typedom/transform/CSSTranslate.idl: Added.
3:58 PM Changeset in webkit [282701] by Ross Kirsling
  • 9 edits in trunk/Source/JavaScriptCore

Unreviewed fix for JSCOnly build with ENABLE_DFG_JIT off.

  • b3/testb3_1.cpp:
  • wasm/WasmEntryPlan.cpp:
  • wasm/WasmLLIntPlan.cpp:
  • wasm/WasmOperations.cpp:
  • wasm/WasmSignature.cpp:
  • wasm/WasmSignature.h:
  • wasm/generateWasmOpsHeader.py:
  • wasm/js/JSToWasm.h:
3:58 PM Changeset in webkit [282700] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

http/wpt/fetch/fetch-response-body-stop-in-worker.html crashing on EWS in iOS.
https://bugs.webkit.org/show_bug.cgi?id=225528.

Unreviewed test gardening.

  • platform/ios-14-wk2/TestExpectations:
3:39 PM Changeset in webkit [282699] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WTF

Enable UseCGDisplayListsForDOMRendering by default where it is available
https://bugs.webkit.org/show_bug.cgi?id=230387

Reviewed by Dean Jackson.

  • Scripts/Preferences/WebPreferencesInternal.yaml:
2:49 PM Changeset in webkit [282698] by Chris Dumez
  • 2 edits in trunk/Source/WebKit

Unreviewed build fix.

  • Shared/Cocoa/AuxiliaryProcessCocoa.mm:
2:43 PM Changeset in webkit [282697] by Simon Fraser
  • 16 edits in trunk/Source/WebCore

Make ScrollAnimation a little more generic
https://bugs.webkit.org/show_bug.cgi?id=230385

Reviewed by Tim Horton.

Prepare for new ScrollAnimation subclasses by making it a little more generic. Rather
than the function callbacks, use a virtual client class, implemented by ScrollAnimator
and ScrollingTreeScrollingNodeDelegateNicosia. Remove the generic 'scroll' methods
from the base class, since they only apply to ScrollAnimationSmooth (clients need
to keep derived class pointers, and most already do).

Remove ambiguity around the currentPosition by requiring it for every 'start' call.
Remove ambiguity around setCurrentPosition() by removing it. Clients just call stop().
Remove ambiguity around retargeting by making it explicit.

Do per-axis setup when starting animations, not when creating one, so the animation starts
out stateless.

  • Sources.txt: Build platform/ScrollAnimationKinetic.cpp for macOS, mostly to catch

build errors (it's currently unused).

  • WebCore.xcodeproj/project.pbxproj:
  • page/scrolling/nicosia/ScrollingTreeScrollingNodeDelegateNicosia.cpp:

(WebCore::ScrollingTreeScrollingNodeDelegateNicosia::resetCurrentPosition):
(WebCore::ScrollingTreeScrollingNodeDelegateNicosia::ensureScrollAnimationKinetic):
(WebCore::ScrollingTreeScrollingNodeDelegateNicosia::ensureScrollAnimationSmooth):
(WebCore::ScrollingTreeScrollingNodeDelegateNicosia::handleWheelEvent):
(WebCore::ScrollingTreeScrollingNodeDelegateNicosia::scrollAnimationDidUpdate):
(WebCore::ScrollingTreeScrollingNodeDelegateNicosia::scrollAnimationDidEnd):
(WebCore::ScrollingTreeScrollingNodeDelegateNicosia::scrollExtentsForAnimation):

  • page/scrolling/nicosia/ScrollingTreeScrollingNodeDelegateNicosia.h:
  • platform/ScrollAnimation.h:

(WebCore::ScrollAnimation::ScrollAnimation):
(WebCore::ScrollAnimation::updateScrollExtents):
(WebCore::ScrollAnimation::serviceAnimation):
(WebCore::ScrollAnimation::~ScrollAnimation): Deleted.
(WebCore::ScrollAnimation::scroll): Deleted.
(WebCore::ScrollAnimation::updateVisibleLengths): Deleted.
(WebCore::ScrollAnimation::setCurrentPosition): Deleted.

  • platform/ScrollAnimationKinetic.cpp:

(WebCore::ScrollAnimationKinetic::ScrollAnimationKinetic):
(WebCore::ScrollAnimationKinetic::startAnimatedScrollWithInitialVelocity):
(WebCore::ScrollAnimationKinetic::animationTimerFired):
(WebCore::ScrollAnimationKinetic::start): Deleted.

  • platform/ScrollAnimationKinetic.h:
  • platform/ScrollAnimationSmooth.cpp:

(WebCore::ScrollAnimationSmooth::ScrollAnimationSmooth):
(WebCore::ScrollAnimationSmooth::startAnimatedScroll):
(WebCore::ScrollAnimationSmooth::startAnimatedScrollToDestination):
(WebCore::ScrollAnimationSmooth::stop):
(WebCore::ScrollAnimationSmooth::updateScrollExtents):
(WebCore::ScrollAnimationSmooth::initializeAxesData):
(WebCore::ScrollAnimationSmooth::animationTimerFired):
(WebCore::ScrollAnimationSmooth::PerAxisData::PerAxisData): Deleted.
(WebCore::ScrollAnimationSmooth::scroll): Deleted.
(WebCore::ScrollAnimationSmooth::updateVisibleLengths): Deleted.
(WebCore::ScrollAnimationSmooth::setCurrentPosition): Deleted.

  • platform/ScrollAnimationSmooth.h: Rename some "time" variables to "duration" for clarity
  • platform/ScrollAnimator.cpp:

(WebCore::ScrollAnimator::ScrollAnimator):
(WebCore::ScrollAnimator::scroll):
(WebCore::ScrollAnimator::scrollToPositionWithoutAnimation):
(WebCore::ScrollAnimator::scrollToPositionWithAnimation):
(WebCore::ScrollAnimator::retargetRunningAnimation):
(WebCore::ScrollAnimator::contentsResized const):
(WebCore::ScrollAnimator::willEndLiveResize):
(WebCore::ScrollAnimator::didAddVerticalScrollbar):
(WebCore::ScrollAnimator::didAddHorizontalScrollbar):
(WebCore::ScrollAnimator::scrollAnimationDidUpdate):
(WebCore::ScrollAnimator::scrollAnimationDidEnd):
(WebCore::ScrollAnimator::scrollExtentsForAnimation):
(): Deleted.
(WebCore::m_keyboardScrollingAnimator): Deleted.

  • platform/ScrollAnimator.h:
  • platform/generic/ScrollAnimatorGeneric.cpp:

(WebCore::ScrollAnimatorGeneric::ScrollAnimatorGeneric):
(WebCore::ScrollAnimatorGeneric::handleWheelEvent):
(WebCore::ScrollAnimatorGeneric::updatePosition):
(WebCore::ScrollAnimatorGeneric::scrollAnimationDidUpdate):

  • platform/generic/ScrollAnimatorGeneric.h:
2:42 PM Changeset in webkit [282696] by Cameron McCormack
  • 21 edits
    12 adds in trunk

Preserve color space when creating ImageBuffers for ImageBitmaps
https://bugs.webkit.org/show_bug.cgi?id=229022
<rdar://problem/81828459>

Reviewed by Sam Weinig.

LayoutTests/imported/w3c:

  • web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-ImageBitmap-Blob-expected.txt: Added.
  • web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-ImageBitmap-Blob.html: Added.
  • web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-ImageBitmap-ImageBitmap-expected.txt: Added.
  • web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-ImageBitmap-ImageBitmap.html: Added.
  • web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-ImageBitmap-ImageData-expected.txt: Added.
  • web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-ImageBitmap-ImageData.html: Added.
  • web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-ImageBitmap-canvas-expected.txt: Added.
  • web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-ImageBitmap-canvas.html: Added.
  • web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-ImageBitmap-cloned-expected.txt: Added.
  • web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-ImageBitmap-cloned.html: Added.
  • web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-ImageBitmap-image-expected.txt: Added.
  • web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-ImageBitmap-image.html: Added.

Source/WebCore:

ImageBitmaps can be created with various sources of image data.
Currently, they always create an sRGB ImageBuffer to copy the
image data into. This patch tries to preserve the color space
of the source image data. Because ImageBuffer only works with 8 bit
RGBA data, other color space models (such as CMYK) get converted
to Display P3 if available, or sRGB otherwise. The rationale for
this is that ImageBitmaps are designed to be drawn into canvases,
and we currently only support sRGB and Display P3 for canvas backing
stores.

It's not ideal that we do the color space conversion, since it would
be better to delay the conversion until it's needed when drawing onto
the canvas. It's also not ideal that we can't preserve the pixel
format of the image data, which might be 16 bit color or floats. We
could support these only if ImageBuffer were extended to support them.
A different design for ImageBitmap where it can hold on to the image
data source directly (and support for structured cloning and worker
thread transferrance added) could also work. For now, we don't worry,
and accept the loss of color fidelity when downsampling or converting
from non-RGB color space models.

Support for structured cloning of ImageBitmaps with non-sRGB data
isn't added, but a test for this is. (This will need a way to
serialize the DestinationColorSpace.)

Tests: imported/w3c/web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-ImageBitmap-Blob.html

imported/w3c/web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-ImageBitmap-ImageBitmap.html
imported/w3c/web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-ImageBitmap-ImageData.html
imported/w3c/web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-ImageBitmap-canvas.html
imported/w3c/web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-ImageBitmap-cloned.html
imported/w3c/web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-ImageBitmap-image.html

  • bindings/js/SerializedScriptValue.cpp:

(WebCore::CloneSerializer::dumpImageBitmap):
(WebCore::CloneDeserializer::readImageBitmap):

  • html/ImageBitmap.cpp:

(WebCore::ImageBitmap::create):
(WebCore::ImageBitmap::createImageBuffer):
(WebCore::ImageBitmap::resolveWithBlankImageBuffer):
(WebCore::ImageBitmap::createPromise):
(WebCore::ImageBitmap::createFromBuffer):

  • html/ImageBitmap.h:
  • html/OffscreenCanvas.cpp:

(WebCore::OffscreenCanvas::transferToImageBitmap):
(WebCore::OffscreenCanvas::createImageBuffer const):

  • platform/graphics/BitmapImage.cpp:

(WebCore::BitmapImage::colorSpace):

  • platform/graphics/BitmapImage.h:
  • platform/graphics/DestinationColorSpace.cpp:

(WebCore::DestinationColorSpace::asRGB const): New function that
abstracts out the behavior "tell me whether the color space is
appropriate for use with an 8 bit RGB buffer", which is common
to ImageBitmap and ShareableBitmapCG.

  • platform/graphics/DestinationColorSpace.h:
  • platform/graphics/Image.cpp:

(WebCore::Image::colorSpace):

  • platform/graphics/Image.h:

Source/WebKit:

  • Shared/cg/ShareableBitmapCG.cpp:

(WebKit::ShareableBitmap::validateConfiguration): Factor out some
loging into DestinationColorSpace::asRGB.

Source/WTF:

  • wtf/PlatformHave.h:

LayoutTests:

  • TestExpectations:
  • platform/ios-14/TestExpectations:
  • platform/ios/TestExpectations:
  • platform/mac/TestExpectations:
2:26 PM Changeset in webkit [282695] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

Update test expectations for js/dfg-int32array-overflow-values.html.
https://bugs.webkit.org/show_bug.cgi?id=229594.

Unreviewed test gardening.

  • platform/win/TestExpectations:
2:24 PM Changeset in webkit [282694] by Ayumi Kojima
  • 3 edits in trunk/LayoutTests

[ BigSur iOS14 ] http/tests/xmlhttprequest/redirect-cross-origin-tripmine.html (layout-test) is a flaky timeout.
https://bugs.webkit.org/show_bug.cgi?id=225668

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
  • platform/mac/TestExpectations:
2:19 PM Changeset in webkit [282693] by Chris Dumez
  • 2 edits in trunk/Source/WebKit

Unreviewed, reverting r282011.

This causes GPUProcess main thread hangs on memory pressure

Reverted changeset:

"Fix race in
RemoteRenderingBackend::allowsExitUnderMemoryPressure()"
https://bugs.webkit.org/show_bug.cgi?id=229870
https://commits.webkit.org/r282011

2:12 PM Changeset in webkit [282692] by Ayumi Kojima
  • 3 edits in trunk/LayoutTests

[ iOS MacOS ] http/tests/security/contentSecurityPolicy/frame-src-cross-origin-load.html is a flakey failure/timeout.
https://bugs.webkit.org/show_bug.cgi?id=230428

Unreviewed test gardening.

  • platform/ios-wk2/TestExpectations:
  • platform/mac/TestExpectations:
2:09 PM Changeset in webkit [282691] by Eric Hutchison
  • 3 edits in trunk/LayoutTests

[Mac wk1, Win] http/tests/misc/iframe-reparenting-id-collision.html is a flaky image failure.

https://bugs.webkit.org/show_bug.cgi?id=230427.

Unreviewed test gardening.

  • platform/mac-wk1/TestExpectations:
  • platform/win/TestExpectations:
1:39 PM Changeset in webkit [282690] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[MacOS Debug] http/tests/security/contentSecurityPolicy/frame-src-cross-origin-load.html is a flakey failure.
https://bugs.webkit.org/show_bug.cgi?id=222748

Unreviewed test gardening.

  • platform/mac/TestExpectations: Removed test expectation
1:22 PM Changeset in webkit [282689] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ BigSur wk1 ] printing/allowed-breaks.html is a flaky failure.
https://bugs.webkit.org/show_bug.cgi?id=230425

Unreviewed test gardening.

  • platform/mac-wk1/TestExpectations:
1:15 PM Changeset in webkit [282688] by Russell Epstein
  • 1 copy in tags/Safari-613.1.2.1

Tag Safari-613.1.2.1.

1:10 PM Changeset in webkit [282687] by Russell Epstein
  • 8 edits in branches/safari-613.1.2-branch/Source

Versioning.

WebKit-7613.1.2.1

1:07 PM Changeset in webkit [282686] by Simon Fraser
  • 26 edits in trunk

Convert usesMockScrollAnimator from a DeprecatedGlobalSettings to a WebPreference
https://bugs.webkit.org/show_bug.cgi?id=230371

Reviewed by Tim Horton.
Source/WebCore:

There were ordering problems that resulted from timing of a test calling
internals.setUsesMockScrollAnimator(true) and the first access of the scrollAnimator(),
which resulted in fast/scrolling/scroll-animator-select-list-events.html failing
when run twice in a row.

Fix by making usesMockScrollAnimator a WebPreference, which means that tests
can use <!-- webkit-test-runner --> options to enable it, which avoids the
ordering dependency.

  • page/DeprecatedGlobalSettings.cpp:

(WebCore::DeprecatedGlobalSettings::setUsesMockScrollAnimator): Deleted.
(WebCore::DeprecatedGlobalSettings::usesMockScrollAnimator): Deleted.

  • page/DeprecatedGlobalSettings.h:
  • page/FrameView.cpp:

(WebCore::FrameView::mockScrollAnimatorEnabled const):
(WebCore::FrameView::usesMockScrollAnimator const): Deleted.

  • page/FrameView.h:
  • platform/ScrollableArea.cpp:

(WebCore::ScrollableArea::scrollAnimator const):

  • platform/ScrollableArea.h:

(WebCore::ScrollableArea::mockScrollAnimatorEnabled const):
(WebCore::ScrollableArea::usesMockScrollAnimator const): Deleted.

  • rendering/RenderLayerScrollableArea.cpp:

(WebCore::RenderLayerScrollableArea::mockScrollAnimatorEnabled const):
(WebCore::RenderLayerScrollableArea::usesMockScrollAnimator const): Deleted.

  • rendering/RenderLayerScrollableArea.h:
  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::mockScrollAnimatorEnabled const):
(WebCore::RenderListBox::usesMockScrollAnimator const): Deleted.

  • rendering/RenderListBox.h:
  • testing/Internals.cpp:

(WebCore::Internals::resetToConsistentState):
(WebCore::Internals::setUsesMockScrollAnimator): Deleted.

  • testing/Internals.h:
  • testing/Internals.idl:

Source/WebKitLegacy/win:

Add Windows preferences.

  • WebPreferences.cpp:

(WebPreferences::mockScrollAnimatorEnabled):

  • WebPreferences.h:
  • WebView.cpp:

(WebView::notifyPreferencesChanged):

Source/WTF:

Add a MockScrollAnimatorEnabled setting.

  • Scripts/Preferences/WebPreferences.yaml:

LayoutTests:

Convert to use the <!-- webkit-test-runner --> format for specifying MockScrollAnimatorEnabled.

  • fast/scrolling/scroll-animator-basic-events.html:
  • fast/scrolling/scroll-animator-overlay-scrollbars-clicked.html:
  • fast/scrolling/scroll-animator-overlay-scrollbars-hovered.html:
  • fast/scrolling/scroll-animator-select-list-events.html:
1:03 PM Changeset in webkit [282685] by Angelos Oikonomopoulos
  • 4 edits in trunk

Unbreak GCC_OFFLINEASM_SOURCE_MAP when LTO is in use
https://bugs.webkit.org/show_bug.cgi?id=230061
<rdar://problem/83166173>

Reviewed by Michael Catanzaro.

.:

  • Source/cmake/OptionsCommon.cmake:

Re-enable GCC_OFFLINEASM_SOURCE_MAP.

Source/JavaScriptCore:

Our ASM postprocessing hack is incompatible with
LTO. Unconditionally disable LTO for LowLevelInterpreter.cxx when
GCC_OFFLINEASM_SOURCE_MAP is in use.

  • CMakeLists.txt:
12:28 PM Changeset in webkit [282684] by Alan Bujtas
  • 5 edits in trunk/Source/WebCore

[LFC][IFC] Add InlineInvalidation::horizontalConstraintChanged
https://bugs.webkit.org/show_bug.cgi?id=230290

Reviewed by Antti Koivisto.

Add the "resize" invalidation codepath. It notifies formatting context about the available horizontal space change.

  • layout/formattingContexts/inline/InlineFormattingContext.cpp:

(WebCore::Layout::InlineFormattingContext::invalidateFormattingState):

  • layout/formattingContexts/inline/invalidation/InlineInvalidation.cpp:

(WebCore::Layout::InlineInvalidation::horizontalConstraintChanged):

  • layout/formattingContexts/inline/invalidation/InlineInvalidation.h:
  • layout/integration/LayoutIntegrationLineLayout.cpp:

(WebCore::LayoutIntegration::LineLayout::layout):
(WebCore::LayoutIntegration::LineLayout::updateFormattingRootGeometry):
(WebCore::LayoutIntegration::LineLayout::prepareLayoutState):

  • layout/integration/LayoutIntegrationLineLayout.h:
12:08 PM Changeset in webkit [282683] by Russell Epstein
  • 1 edit in branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/WebPage.cpp

Unreviewed build fix. rdar://83183884

12:03 PM Changeset in webkit [282682] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ iOS ] http/wpt/webaudio/the-audio-api/the-audioworklet-interface/context-already-rendering.html is flaky.
https://bugs.webkit.org/show_bug.cgi?id=230421

Unreviewed test gardening.

  • platform/ios-wk2/TestExpectations:
12:01 PM Changeset in webkit [282681] by Eric Hutchison
  • 2 edits in trunk/LayoutTests

[iOS wk2 iPad] platform/ipad/media/modern-media-controls/media-documents/media-document-video-ios-sizing.html is a flaky timeout.
https://bugs.webkit.org/show_bug.cgi?id=230419.

Unreviewed test gardening.

  • platform/ipad/TestExpectations:
11:57 AM Changeset in webkit [282680] by commit-queue@webkit.org
  • 4 edits in trunk

REGRESSION(r282220): [GCC] Several flaky crashes on media/track/cue tests
https://bugs.webkit.org/show_bug.cgi?id=230318

Patch by Philippe Normand <pnormand@igalia.com> on 2021-09-17
Reviewed by Xabier Rodriguez-Calvar.

Source/WebCore:

The crashes were happening because the text track(s) managed by the media element still had
their client set to the media element being destroyed, so the TextTrack destructor was
looping back to its client, the media element being destroyed. This is particularly an issue
in GCC/Release builds, most likely undefined behavior. The proposed solution is to
explicitely break the link between the media element and the tracks it manages when
destroying the media element. This matches existing code as well in the same destructor
(CDMClient, audio session).

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::~HTMLMediaElement):

LayoutTests:

  • platform/glib/TestExpectations: Unflag tests no longer flaky.
11:57 AM Changeset in webkit [282679] by Russell Epstein
  • 1 edit in branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/WebPage.cpp

Unreviewed build fix. rdar://83183884

11:56 AM Changeset in webkit [282678] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

REGRESSION: [ iOS ] 5 TestWebKitAPI.WebpagePreferences.* api tests are flaky timing out
https://bugs.webkit.org/show_bug.cgi?id=229094

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

Disable the tests on iOS until we can fix the problem.
This will help EWS be much faster and more reliable.

  • TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:

(TEST):

11:50 AM Changeset in webkit [282677] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

[GLIB] Update test expectations. Unreviewed test gardening.
https://bugs.webkit.org/show_bug.cgi?id=230416

Patch by Arcady Goldmints-Orlov <Arcady Goldmints-Orlov> on 2021-09-17

  • platform/glib/TestExpectations:
  • platform/gtk/TestExpectations:
11:48 AM Changeset in webkit [282676] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ iOS ] imported/w3c/web-platform-tests/fetch/data-urls/base64.any.worker.html is flaky crashing.
https://bugs.webkit.org/show_bug.cgi?id=230418

Unreviewed test gardening.

  • platform/ios-wk2/TestExpectations:
11:22 AM Changeset in webkit [282675] by Ayumi Kojima
  • 3 edits in trunk/LayoutTests

[ iOS Debug & Mac wk2 ] media/video-seek-with-negative-playback.html is a flaky failure..
https://bugs.webkit.org/show_bug.cgi?id=228087

Unreviewed test gardening.

  • platform/ios-wk2/TestExpectations:
  • platform/mac-wk2/TestExpectations:
11:15 AM Changeset in webkit [282674] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Speed up run-jsc-stress-tests with parallel processing
https://bugs.webkit.org/show_bug.cgi?id=230251

Patch by Geza Lore <gezalore@gmail.com> on 2021-09-17
Reviewed by Yusuke Suzuki.

Around 2/3 of the time spent in the initial serial processing phase of
run-jsc-stress-tests is simply writing out the many test runner
scripts to disk, which is trivially parallelizable. The change in this
patch forks sub-processes to emit the test runner scripts which makes
the serial startup phase overall about 2.5x faster on my test machine
(47 sec -> 19 sec).

  • Scripts/run-jsc-stress-tests:
11:07 AM Changeset in webkit [282673] by Ayumi Kojima
  • 3 edits in trunk/LayoutTests

[ iOS Debug & macOS wk2 ] fast/canvas/canvas-drawImage-detached-leak.html is a flaky failure.
https://bugs.webkit.org/show_bug.cgi?id=230413

Unreviewed test gardening.

  • platform/ios-wk2/TestExpectations:
  • platform/mac-wk2/TestExpectations:
11:03 AM Changeset in webkit [282672] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ iOS ] imported/w3c/web-platform-tests/html/dom/idlharness.https.html is flaky failing after rebaselining.
https://bugs.webkit.org/show_bug.cgi?id=230407

Unreviewed test gardening.

  • platform/ios-wk2/TestExpectations:
10:53 AM Changeset in webkit [282671] by Eric Hutchison
  • 3 edits in trunk/LayoutTests

[Mac iOS] imported/w3c/web-platform-tests/service-workers/service-worker/clients-matchall-client-types.https.html is a flaky failure.
https://bugs.webkit.org/show_bug.cgi?id=230412.

Unreviewed test gardening.

  • platform/ios-wk2/TestExpectations:
  • platform/mac-wk2/TestExpectations:
10:44 AM Changeset in webkit [282670] by Ayumi Kojima
  • 2 edits in trunk/LayoutTests

[ macOS ] http/tests/media/hls/video-controller-getStartDate.html is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=230411

Unreviewed test gardening.

  • platform/mac/TestExpectations:
10:36 AM Changeset in webkit [282669] by pvollan@apple.com
  • 7 edits in trunk/Source/WebKit

[GPUP] Update AX settings on preference updates
https://bugs.webkit.org/show_bug.cgi?id=230409

Reviewed by Chris Fleizach.

We should update AX settings in the GPUP process on preference updates, like we do in the WebContent process. To address this,
move associated code from the WebProcess class to the AuxiliaryProcess class.

  • GPUProcess/GPUProcess.h:
  • GPUProcess/cocoa/GPUProcessCocoa.mm:

(WebKit::GPUProcess::notifyPreferencesChanged):
(WebKit::GPUProcess::dispatchSimulatedNotificationsForPreferenceChange):

  • Shared/AuxiliaryProcess.h:

(WebKit::AuxiliaryProcess::dispatchSimulatedNotificationsForPreferenceChange):

  • Shared/Cocoa/AuxiliaryProcessCocoa.mm:

(WebKit::AuxiliaryProcess::preferenceDidUpdate):
(WebKit::AuxiliaryProcess::handlePreferenceChange):

  • WebProcess/WebProcess.h:
  • WebProcess/cocoa/WebProcessCocoa.mm:

(WebKit::WebProcess::dispatchSimulatedNotificationsForPreferenceChange):
(WebKit::WebProcess::handlePreferenceChange):
(WebKit::WebProcess::notifyPreferencesChanged):
(WebKit::dispatchSimulatedNotificationsForPreferenceChange): Deleted.
(WebKit::handlePreferenceChange): Deleted.

10:27 AM Changeset in webkit [282668] by Eric Hutchison
  • 3 edits in trunk/LayoutTests

Update test expectations for imported/w3c/web-platform-tests/css/css-transforms/crashtests/transform-marquee-resize-div-image-001.html to include wk1.
https://bugs.webkit.org/show_bug.cgi?id=230327.

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
  • platform/mac/TestExpectations:
10:18 AM Changeset in webkit [282667] by weinig@apple.com
  • 4 edits in trunk/Source/WebCore

Add MIME type and URL to WebCore::Model to allow processing different model types
https://bugs.webkit.org/show_bug.cgi?id=230384

Reviewed by Darin Adler.

Adds MIME type and URL to WebCore::Model to allow processing different model types.
This change does not take advantave of them (and we still only support one type)
but this will allow us to add additional types going forward.

  • Modules/model-element/HTMLModelElement.cpp:

(WebCore::HTMLModelElement::notifyFinished):

  • platform/graphics/Model.cpp:

(WebCore::Model::create):
(WebCore::Model::Model):
(WebCore::operator<<):

  • platform/graphics/Model.h:

(WebCore::Model::encode const):
(WebCore::Model::decode):

10:15 AM Changeset in webkit [282666] by Chris Dumez
  • 4 edits in trunk

Crash under RemoteMediaPlayerManager::getSupportedTypes()
https://bugs.webkit.org/show_bug.cgi?id=230410

Reviewed by Eric Carlson.

The code would do a null dereference of m_supportedTypesCache if the IPC to the GPUProcess
failed, which could happen in the event of the GPUProcess crash or jetsam.

  • WebProcess/GPU/media/RemoteMediaPlayerMIMETypeCache.cpp:

(WebKit::RemoteMediaPlayerMIMETypeCache::addSupportedTypes):
(WebKit::RemoteMediaPlayerMIMETypeCache::isEmpty const):
(WebKit::RemoteMediaPlayerMIMETypeCache::supportedTypes):

  • WebProcess/GPU/media/RemoteMediaPlayerMIMETypeCache.h:
10:13 AM Changeset in webkit [282665] by pvollan@apple.com
  • 2 edits in trunk/Source/WebCore/PAL

[Mac Catalyst] Fix build issue
https://bugs.webkit.org/show_bug.cgi?id=230373

Reviewed by Darin Adler.

There's an issue with the Mac Catalyst build where LSSessionID is being redefined. Address this by removing the second definition,
and moving the related function into the open source section.

  • pal/spi/cocoa/LaunchServicesSPI.h:
8:58 AM Changeset in webkit [282664] by Justin Michaud
  • 11 edits in trunk/Source/JavaScriptCore

Improve access case printing and show inline capacity for structures
https://bugs.webkit.org/show_bug.cgi?id=230357

Reviewed by Saam Barati.

This just makes the printing of access cases slightly more readable.

  • bytecode/AccessCase.cpp:

(JSC::AccessCase::dump const):

  • bytecode/AccessCase.h:

(JSC::AccessCase::dumpImpl const):

  • bytecode/GetterSetterAccessCase.cpp:

(JSC::GetterSetterAccessCase::dumpImpl const):

  • bytecode/GetterSetterAccessCase.h:
  • bytecode/InstanceOfAccessCase.cpp:

(JSC::InstanceOfAccessCase::dumpImpl const):

  • bytecode/InstanceOfAccessCase.h:
  • bytecode/ProxyableAccessCase.cpp:

(JSC::ProxyableAccessCase::dumpImpl const):

  • bytecode/ProxyableAccessCase.h:
  • heap/Heap.cpp:

(JSC::Heap::runEndPhase):

  • runtime/JSCJSValue.cpp:

(JSC::JSValue::dumpInContextAssumingStructure const):

  • runtime/Structure.cpp:

(JSC::Structure::dump const):

8:56 AM Changeset in webkit [282663] by Justin Michaud
  • 2 edits
    2 adds in trunk

PutByVal and PutPrivateName ICs should emit a write barrier if a butterfly might be allocated
https://bugs.webkit.org/show_bug.cgi?id=230378

Reviewed by Yusuke Suzuki.

Right now, PutByVal and PutPrivateName check the value type to determine
if a write barrier is needed. For example, putting a primitive is considered
to not require a write barrier. This makes sense, except for the case when we
might allocate or re-allocate a butterfly in the IC. This does not emit a write
barrier, and so the GC might miss the new butterfly. That is somewhat undesirable.
This is a temporary conservative fix. If we don't write to the butterfly pointer,
then we still don't need a write barrier; this work is captured by
https://bugs.webkit.org/show_bug.cgi?id=230377

  • dfg/DFGStoreBarrierInsertionPhase.cpp:
8:03 AM Changeset in webkit [282662] by Alan Bujtas
  • 10 edits in trunk/Source/WebCore

[LFC][Integration] Start using InlineInvalidation to clean runs and lines
https://bugs.webkit.org/show_bug.cgi?id=229294
<rdar://problem/82395169>

Reviewed by Antti Koivisto.

This patch is in preparation for supporting partial line layout.
No change in functionality yet.

  • layout/formattingContexts/inline/InlineFormattingContext.cpp:

(WebCore::Layout::InlineFormattingContext::InlineFormattingContext):
(WebCore::Layout::InlineFormattingContext::invalidateFormattingState):

  • layout/formattingContexts/inline/InlineFormattingContext.h:
  • layout/formattingContexts/inline/InlineFormattingState.h:

(WebCore::Layout::InlineFormattingState::clearInlineItems):

  • layout/integration/LayoutIntegrationLineLayout.cpp:

(WebCore::LayoutIntegration::LineLayout::updateStyle):
(WebCore::LayoutIntegration::LineLayout::layout):
(WebCore::LayoutIntegration::LineLayout::prepareLayoutState):
(WebCore::LayoutIntegration::LineLayout::ensureLineDamage):

  • layout/integration/LayoutIntegrationLineLayout.h:
  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::styleDidChange): The initial styleDidChange (when oldStyle is nullptr) does not go through the integration codepath.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::styleDidChange):

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::styleDidChange):

8:01 AM Changeset in webkit [282661] by Antti Koivisto
  • 8 edits in trunk/Source/WebCore

[LFC][Integration] Add some useful functions to iterators
https://bugs.webkit.org/show_bug.cgi?id=230398

Reviewed by Alan Bujtas.

For future use.

  • layout/integration/LayoutIntegrationLineIterator.cpp:

(WebCore::LayoutIntegration::LineIterator::closestRunForLogicalLeftPosition):
(WebCore::LayoutIntegration::PathLine::selectionTopAdjustedForPrecedingBlock const):
(WebCore::LayoutIntegration::PathLine::selectionHeightAdjustedForPrecedingBlock const):
(WebCore::LayoutIntegration::PathLine::firstSelectedBox const):
(WebCore::LayoutIntegration::PathLine::lastSelectedBox const):

  • layout/integration/LayoutIntegrationLineIterator.h:

(WebCore::LayoutIntegration::PathLine::contentLogicalWidth const):

  • layout/integration/LayoutIntegrationLineIteratorModernPath.h:
  • layout/integration/LayoutIntegrationRunIterator.h:

(WebCore::LayoutIntegration::PathTextRun::legacyInlineBox const):
(WebCore::LayoutIntegration::PathRun::legacyInlineBox const):
(WebCore::LayoutIntegration::PathRun::inlineBox const):
(WebCore::LayoutIntegration::PathTextRun::createTextRun const):

  • layout/integration/LayoutIntegrationRunIteratorLegacyPath.h:

(WebCore::LayoutIntegration::RunIteratorLegacyPath::createTextRun const):

  • layout/integration/LayoutIntegrationRunIteratorModernPath.h:

(WebCore::LayoutIntegration::RunIteratorModernPath::createTextRun const):
(WebCore::LayoutIntegration::RunIteratorModernPath::run const):
(WebCore::LayoutIntegration::RunIteratorModernPath::runs const):
(WebCore::LayoutIntegration::RunIteratorModernPath::legacyInlineBox const): Deleted.

  • rendering/LegacyInlineTextBox.h:
6:41 AM Changeset in webkit [282660] by Adrian Perez de Castro
  • 1 copy in releases/WPE WebKit/webkit-2.32.4

WPE WebKit 2.32.4

6:40 AM Changeset in webkit [282659] by Adrian Perez de Castro
  • 2 edits in releases/WebKitGTK/webkit-2.32/Source

wip

6:24 AM Changeset in webkit [282658] by Antti Koivisto
  • 19 edits in trunk/Source/WebCore

[LFC][Integration] Move non-traversal functions from iterator to the dereferenced type
https://bugs.webkit.org/show_bug.cgi?id=230396

Reviewed by Alan Bujtas.

Improve the logic of the iterator interface so the code does not end up as a mixture of . and -> access.
This also makes the dereferenced box/line type more useful in itself.

For example to get a new iterator pointing to the next line:

auto nextLine = line->next();

but to mutate the iterator so it points to the next line:

line.traverseNext();

  • dom/Position.cpp:

(WebCore::Position::upstream const):
(WebCore::Position::downstream const):
(WebCore::Position::rendersInDifferentPosition const):
(WebCore::Position::inlineRunAndOffset const):

  • editing/RenderedPosition.cpp:

(WebCore::RenderedPosition::previousLeafOnLine const):
(WebCore::RenderedPosition::nextLeafOnLine const):
(WebCore::RenderedPosition::leftBoundaryOfBidiRun):
(WebCore::RenderedPosition::rightBoundaryOfBidiRun):

  • editing/RenderedPosition.h:

(WebCore::RenderedPosition::line const):

  • editing/VisiblePosition.cpp:

(WebCore::VisiblePosition::leftVisuallyDistinctCandidate const):
(WebCore::VisiblePosition::rightVisuallyDistinctCandidate const):
(WebCore::VisiblePosition::absoluteSelectionBoundsForLine const):

  • editing/VisibleUnits.cpp:

(WebCore::startTextOrLineBreakRun):
(WebCore::endTextOrLineBreakRun):
(WebCore::logicallyPreviousRun):
(WebCore::logicallyNextRun):
(WebCore::startPositionForLine):
(WebCore::endPositionForLine):
(WebCore::previousLinePosition):
(WebCore::nextLinePosition):

  • html/HTMLTextFormControlElement.cpp:

(WebCore::HTMLTextFormControlElement::valueWithHardLineBreaks const):

  • layout/integration/LayoutIntegrationLineIterator.cpp:

(WebCore::LayoutIntegration::LineIterator::LineIterator):
(WebCore::LayoutIntegration::firstLineFor):
(WebCore::LayoutIntegration::lastLineFor):
(WebCore::LayoutIntegration::PathLine::next const):
(WebCore::LayoutIntegration::PathLine::previous const):
(WebCore::LayoutIntegration::PathLine::firstRun const):
(WebCore::LayoutIntegration::PathLine::lastRun const):
(WebCore::LayoutIntegration::PathLine::logicalStartRun const):
(WebCore::LayoutIntegration::PathLine::logicalEndRun const):
(WebCore::LayoutIntegration::PathLine::logicalStartRunWithNode const):
(WebCore::LayoutIntegration::PathLine::logicalEndRunWithNode const):
(WebCore::LayoutIntegration::PathLine::closestRunForPoint const):
(WebCore::LayoutIntegration::PathLine::closestRunForLogicalLeftPosition const):
(WebCore::LayoutIntegration::LineIterator::next const): Deleted.
(WebCore::LayoutIntegration::LineIterator::previous const): Deleted.
(WebCore::LayoutIntegration::LineIterator::firstRun const): Deleted.
(WebCore::LayoutIntegration::LineIterator::lastRun const): Deleted.
(WebCore::LayoutIntegration::LineIterator::logicalStartRun const): Deleted.
(WebCore::LayoutIntegration::LineIterator::logicalEndRun const): Deleted.
(WebCore::LayoutIntegration::LineIterator::logicalStartRunWithNode const): Deleted.
(WebCore::LayoutIntegration::LineIterator::logicalEndRunWithNode const): Deleted.
(WebCore::LayoutIntegration::LineIterator::closestRunForPoint): Deleted.
(WebCore::LayoutIntegration::LineIterator::closestRunForLogicalLeftPosition): Deleted.

  • layout/integration/LayoutIntegrationLineIterator.h:

(WebCore::LayoutIntegration::PathLine::isFirst const):
(WebCore::LayoutIntegration::LineIterator::isFirst const): Deleted.

  • layout/integration/LayoutIntegrationRunIterator.cpp:

(WebCore::LayoutIntegration::RunIterator::RunIterator):
(WebCore::LayoutIntegration::PathRun::nextOnLine const):
(WebCore::LayoutIntegration::PathRun::previousOnLine const):
(WebCore::LayoutIntegration::PathRun::nextOnLineIgnoringLineBreak const):
(WebCore::LayoutIntegration::PathRun::previousOnLineIgnoringLineBreak const):
(WebCore::LayoutIntegration::PathRun::style const):
(WebCore::LayoutIntegration::PathTextRun::nextTextRun const):
(WebCore::LayoutIntegration::PathTextRun::nextTextRunInTextOrder const):
(WebCore::LayoutIntegration::TextRunIterator::TextRunIterator):
(WebCore::LayoutIntegration::RunIterator::nextOnLine const): Deleted.
(WebCore::LayoutIntegration::RunIterator::previousOnLine const): Deleted.
(WebCore::LayoutIntegration::RunIterator::nextOnLineIgnoringLineBreak const): Deleted.
(WebCore::LayoutIntegration::RunIterator::previousOnLineIgnoringLineBreak const): Deleted.
(WebCore::LayoutIntegration::RunIterator::line const): Deleted.

  • layout/integration/LayoutIntegrationRunIterator.h:

(WebCore::LayoutIntegration::TextRunIterator::nextTextRun const): Deleted.
(WebCore::LayoutIntegration::TextRunIterator::nextTextRunInTextOrder const): Deleted.

  • rendering/CaretRectComputation.cpp:

(WebCore::computeCaretRectForText):
(WebCore::computeCaretRectForLineBreak):
(WebCore::computeCaretRectForBox):

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::findClosestTextAtAbsolutePoint):
(WebCore::RenderBlockFlow::positionForPointWithInlineChildren):

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::getLeadingCorner const):

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::collectSelectionGeometries):

  • rendering/RenderLineBreak.cpp:

(WebCore::RenderLineBreak::collectSelectionGeometries):

  • rendering/RenderReplaced.cpp:

(WebCore::RenderReplaced::positionForPoint):

  • rendering/RenderText.cpp:

(WebCore::RenderText::collectSelectionGeometries):
(WebCore::lineDirectionPointFitsInBox):
(WebCore::createVisiblePositionAfterAdjustingOffsetForBiDi):
(WebCore::RenderText::positionForPoint):

  • style/InlineTextBoxStyle.cpp:

(WebCore::minLogicalTopForTextDecorationLine):
(WebCore::maxLogicalBottomForTextDecorationLine):
(WebCore::computeUnderlineOffset):

5:30 AM Changeset in webkit [282657] by Carlos Garcia Campos
  • 2 edits in trunk

Unreviewed. [GTK] Bump version numbers

  • Source/cmake/OptionsGTK.cmake:
5:21 AM Changeset in webkit [282656] by Carlos Garcia Campos
  • 1 copy in releases/WebKitGTK/webkit-2.33.91

WebKitGTK 2.33.91

5:20 AM Changeset in webkit [282655] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.34

Unreviewed. Update OptionsGTK.cmake and NEWS for 2.33.91 release

.:

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

Source/WebKit:

  • gtk/NEWS: Add release notes for 2.33.91.
4:02 AM Changeset in webkit [282654] by Lauro Moura
  • 5 edits in trunk/Tools

REGRESSION(r275267) [GLIB] API test /webkit/WebKitWebsiteData/configuration is failing
https://bugs.webkit.org/show_bug.cgi?id=224175

Reviewed by Carlos Garcia Campos.

Some WebsiteData tests rely on checking whether some specific files
are created in the background. Currently, this is done through
waitUntilFileChanged(), which first g_file_query() whether the file
exists before entering a main loop which uses GFileMonitor. While this
worked most of the time, some tests were flaky due to likely the file
being created between the query call and the monitoring starting,
especially after revisions like r275267.

This commit replaces the waitUntilFileChanged calls with an explicit
check loop, like was done for the applicationCache file in the
configuration test.

Also, for the ITP test, there's no need to check for the file to be
deleted, as the ResourceLoadStatistics just clears the database and
recreates the schema, reusing the existing file.

Covered by existing tests.

  • TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:

(testWebsiteDataConfiguration):
(testWebsiteDataITP):
(testWebsiteDataDOMCache):

  • TestWebKitAPI/glib/TestExpectations.json:
  • TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:

(WebViewTest::assertFileIsCreated):
(WebViewTest::assertJavaScriptBecomesTrue):

  • TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
3:33 AM Changeset in webkit [282653] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.34/Source/JavaScriptCore

Merge r281933 - Fix IndexedDoubleStore InlineAccess for 32 bits
https://bugs.webkit.org/show_bug.cgi?id=229772

Patch by Mikhail R. Gadelha <Mikhail R. Gadelha> on 2021-09-02
Reviewed by Caio Araujo Neponoceno de Lima.

In IndexedDoubleStore inline access, the path if the value is NaN
is only being handled in 64 bits, thus introducing some wrong
results in 32 bits. This patch fixes:

stress/double-add-sub-mul-can-produce-nan.js
stress/pow-stable-results.js
stress/math-pow-stable-results.js

  • bytecode/AccessCase.cpp:

(JSC::AccessCase::generateWithGuard):

3:33 AM Changeset in webkit [282652] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.34/Source/JavaScriptCore

Merge r282540 - Fix crash in 32 bits due to not enough scratch registers available
https://bugs.webkit.org/show_bug.cgi?id=230241

Patch by Mikhail R. Gadelha <Mikhail R. Gadelha> on 2021-09-16
Reviewed by Filip Pizlo.

Since patch 229229 (Polymorphic PutByVal) landed, jsc is now reaching
the case Transition in AccessCase::generateImpl which needs three
scratch registers when reallocating, but in ARMv7/MIPS, there are only
two registers available.

So in this patch, AccessCase::createTransition is changed to actually
check if there are enough registers available before creating the
AccessCase object.

  • bytecode/AccessCase.cpp:

(JSC::AccessCase::generateImpl):

3:33 AM Changeset in webkit [282651] by Carlos Garcia Campos
  • 8 edits in releases/WebKitGTK/webkit-2.34/Source/JavaScriptCore

Merge r282385 - [JSC] ASSERT failed in stress/for-in-tests.js (32bit)
https://bugs.webkit.org/show_bug.cgi?id=229543

Patch by Xan López <Xan Lopez> on 2021-09-14
Reviewed by Yusuke Suzuki.

Since r280760 DFG::SpeculativeJIT::compileEnumeratorGetByVal uses
too many registers for 32bit. Revert to the slow path as a
temporary measure to avoid crashes, we'll try to reenable the
optimizations later on (see bug #230189).

  • dfg/DFGOperations.cpp:

(JSC::DFG::JSC_DEFINE_JIT_OPERATION): define a generic call
operation for compileEnumeratorGetByVal.

  • dfg/DFGOperations.h:
  • dfg/DFGSpeculativeJIT.cpp: move the current version of

compileEnumeratorGetByVal to 64bit, since it won't work on 32bit.

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compileEnumeratorGetByVal): call the generic call op always.

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compileEnumeratorGetByVal): use the previous version here.

  • runtime/CommonSlowPaths.cpp:

(JSC::JSC_DEFINE_COMMON_SLOW_PATH): refactor a bit the slow path
for enumeratorGetByVal so it can be called from DFG as a call
operation.

  • runtime/CommonSlowPaths.h:

(JSC::CommonSlowPaths::opEnumeratorGetByVal):

3:33 AM Changeset in webkit [282650] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.34/Source/JavaScriptCore

Merge r282336 - [JSC][32bit] in-by-val fails inside for-in loop after delete
https://bugs.webkit.org/show_bug.cgi?id=230150

Patch by Xan López <Xan Lopez> on 2021-09-13
Reviewed by Carlos Garcia Campos.

The order of payload and tag was reversed when constructing the
base value for compileEnumeratorHasProperty.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileEnumeratorHasProperty):

3:13 AM Changeset in webkit [282649] by Carlos Garcia Campos
  • 1 copy in releases/WebKitGTK/webkit-2.32.4

WebKitGTK 2.32.4

3:12 AM Changeset in webkit [282648] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.32

Unreviewed. Update OptionsGTK.cmake and NEWS for 2.32.4 release

.:

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

Source/WebKit:

  • gtk/NEWS: Add release notes for 2.32.4
2:58 AM Changeset in webkit [282647] by Martin Robinson
  • 2 edits in trunk

Add Martin Robinson as a reviewer
https://bugs.webkit.org/show_bug.cgi?id=230392

Unreviewed.

  • metadata/contributors.json: Add myself as a reviewer and update my specializations.
2:15 AM Changeset in webkit [282646] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.34

Merge r282065 - [CMake] Prefer python3 over python2
https://bugs.webkit.org/show_bug.cgi?id=229969

Reviewed by Michael Catanzaro.

Use the CMake module FindPython instead of FindPythonInterp.
FindPython looks preferably for version 3 of Python. If not found, then it looks for version 2.

  • Source/cmake/WebKitCommon.cmake:
2:15 AM WebKitGTK/2.34.x edited by Carlos Garcia Campos
(diff)
2:13 AM Changeset in webkit [282645] by Adrian Perez de Castro
  • 2 edits in releases/WebKitGTK/webkit-2.32/LayoutTests

Unreviewed fix to remove stray conflict markers after r276759

  • platform/glib/TestExpectations: Remove stray conflict markers.
1:41 AM Changeset in webkit [282644] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.34/Source/WebKit

Merge r282490 - [GTK][WPE] test animations/steps-transform-rendering-updates.html fails
https://bugs.webkit.org/show_bug.cgi?id=230307

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2021-09-16
Reviewed by Carlos Alberto Lopez Perez.

ThreadedDisplayRefreshMonitor is not setting isScheduled back to false when it's fired. That causes
hasBeenRescheduled to be true and handleDisplayRefreshMonitorUpdate() is called with force repaint option, so we
end up flushing layers on every display refresh update.

  • Shared/CoordinatedGraphics/threadedcompositor/ThreadedDisplayRefreshMonitor.cpp:

(WebKit::ThreadedDisplayRefreshMonitor::displayRefreshCallback):

1:41 AM Changeset in webkit [282643] by Carlos Garcia Campos
  • 59 edits
    5 copies
    6 adds in trunk

[GTK][a11y] Add a build option to enable ATSPI
https://bugs.webkit.org/show_bug.cgi?id=230254

Reviewed by Adrian Perez de Castro.

.:

Add USE_ATSPI build option that disables ATK and enables isolated tree.

  • Source/cmake/OptionsGTK.cmake:

Source/WebCore:

Add stubs for ATSPI implementation.

  • PlatformGTK.cmake:
  • SourcesGTK.txt:
  • accessibility/AccessibilityObjectInterface.h:
  • accessibility/atk/AXObjectCacheAtk.cpp:
  • accessibility/atk/AccessibilityObjectAtk.cpp:
  • accessibility/atk/WebKitAccessible.cpp:
  • accessibility/atk/WebKitAccessible.h:
  • accessibility/atk/WebKitAccessibleHyperlink.cpp:
  • accessibility/atk/WebKitAccessibleHyperlink.h:
  • accessibility/atk/WebKitAccessibleInterfaceAction.cpp:
  • accessibility/atk/WebKitAccessibleInterfaceAction.h:
  • accessibility/atk/WebKitAccessibleInterfaceComponent.cpp:
  • accessibility/atk/WebKitAccessibleInterfaceComponent.h:
  • accessibility/atk/WebKitAccessibleInterfaceDocument.cpp:
  • accessibility/atk/WebKitAccessibleInterfaceDocument.h:
  • accessibility/atk/WebKitAccessibleInterfaceEditableText.cpp:
  • accessibility/atk/WebKitAccessibleInterfaceEditableText.h:
  • accessibility/atk/WebKitAccessibleInterfaceHyperlinkImpl.cpp:
  • accessibility/atk/WebKitAccessibleInterfaceHyperlinkImpl.h:
  • accessibility/atk/WebKitAccessibleInterfaceHypertext.cpp:
  • accessibility/atk/WebKitAccessibleInterfaceHypertext.h:
  • accessibility/atk/WebKitAccessibleInterfaceImage.cpp:
  • accessibility/atk/WebKitAccessibleInterfaceImage.h:
  • accessibility/atk/WebKitAccessibleInterfaceSelection.cpp:
  • accessibility/atk/WebKitAccessibleInterfaceSelection.h:
  • accessibility/atk/WebKitAccessibleInterfaceTable.cpp:
  • accessibility/atk/WebKitAccessibleInterfaceTable.h:
  • accessibility/atk/WebKitAccessibleInterfaceTableCell.cpp:
  • accessibility/atk/WebKitAccessibleInterfaceTableCell.h:
  • accessibility/atk/WebKitAccessibleInterfaceText.cpp:
  • accessibility/atk/WebKitAccessibleInterfaceText.h:
  • accessibility/atk/WebKitAccessibleInterfaceValue.cpp:
  • accessibility/atk/WebKitAccessibleInterfaceValue.h:
  • accessibility/atk/WebKitAccessibleUtil.cpp:
  • accessibility/atk/WebKitAccessibleUtil.h:
  • accessibility/atspi/AXObjectCacheAtspi.cpp: Added.

(WebCore::AXObjectCache::detachWrapper):
(WebCore::AXObjectCache::attachWrapper):
(WebCore::AXObjectCache::platformPerformDeferredCacheUpdate):
(WebCore::AXObjectCache::postPlatformNotification):
(WebCore::AXObjectCache::nodeTextChangePlatformNotification):
(WebCore::AXObjectCache::frameLoadingEventPlatformNotification):
(WebCore::AXObjectCache::platformHandleFocusedUIElementChanged):
(WebCore::AXObjectCache::handleScrolledToAnchor):

  • accessibility/atspi/AccessibilityObjectAtspi.cpp: Added.

(WebCore::AccessibilityObjectAtspi::create):
(WebCore::AccessibilityObjectAtspi::AccessibilityObjectAtspi):
(WebCore::AccessibilityObject::detachPlatformWrapper):
(WebCore::AccessibilityObject::accessibilityIgnoreAttachment const):
(WebCore::AccessibilityObject::accessibilityPlatformIncludesObject const):

  • accessibility/atspi/AccessibilityObjectAtspi.h: Added.
  • accessibility/isolatedtree/AXIsolatedObject.cpp:

(WebCore::AXIsolatedObject::children):

  • accessibility/isolatedtree/AXIsolatedTree.h:
  • accessibility/isolatedtree/atspi/AXIsolatedObjectAtspi.cpp: Added.

(WebCore::AXIsolatedObject::initializePlatformProperties):
(WebCore::AXIsolatedObject::attachPlatformWrapper):
(WebCore::AXIsolatedObject::detachPlatformWrapper):

  • editing/FrameSelection.h:
  • editing/atk/FrameSelectionAtk.cpp:
  • editing/atspi/FrameSelectionAtspi.cpp: Added.

(WebCore::FrameSelection::notifyAccessibilityForSelectionChange):

  • page/Settings.yaml:

Source/WebKit:

  • WebProcess/WebPage/gtk/WebPageGtk.cpp:

(WebKit::WebPage::platformInitialize): Add ATK ifdef.

  • WebProcess/gtk/WebProcessMainGtk.cpp:

(WebKit::WebProcessMain): Disable ATK/GTK accessibility support in the WebProcess when using ATSPI.

Source/WTF:

Enable isolated tree when building with ATSPI.

  • Scripts/Preferences/WebPreferences.yaml:

Tools:

Add stubs for WTR accessibility implementation.

  • WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:
  • WebKitTestRunner/InjectedBundle/AccessibilityController.h:
  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:

(WTR::AccessibilityUIElement::isIsolatedObject const):

  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:

(WTR::AccessibilityUIElement::platformUIElement):

  • WebKitTestRunner/InjectedBundle/atk/AccessibilityControllerAtk.cpp:
  • WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
  • WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.h:
  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
  • WebKitTestRunner/InjectedBundle/atspi/AccessibilityControllerAtspi.cpp: Added.

(WTR::AccessibilityController::resetToConsistentState):
(WTR::AccessibilityController::accessibleElementById):
(WTR::AccessibilityController::platformName):
(WTR::AccessibilityController::injectAccessibilityPreference):
(WTR::AccessibilityController::rootElement):
(WTR::AccessibilityController::focusedElement):
(WTR::AccessibilityController::addNotificationListener):
(WTR::AccessibilityController::removeNotificationListener):
(WTR::AccessibilityController::updateIsolatedTreeMode):

  • WebKitTestRunner/InjectedBundle/atspi/AccessibilityUIElementAtspi.cpp: Added.

(WTR::AccessibilityUIElement::AccessibilityUIElement):
(WTR::AccessibilityUIElement::~AccessibilityUIElement):
(WTR::AccessibilityUIElement::isEqual):
(WTR::AccessibilityUIElement::getChildren):
(WTR::AccessibilityUIElement::getChildrenWithRange):
(WTR::AccessibilityUIElement::childrenCount):
(WTR::AccessibilityUIElement::elementAtPoint):
(WTR::AccessibilityUIElement::indexOfChild):
(WTR::AccessibilityUIElement::childAtIndex):
(WTR::AccessibilityUIElement::linkedUIElementAtIndex):
(WTR::AccessibilityUIElement::ariaOwnsElementAtIndex):
(WTR::AccessibilityUIElement::ariaFlowToElementAtIndex):
(WTR::AccessibilityUIElement::ariaControlsElementAtIndex):
(WTR::AccessibilityUIElement::disclosedRowAtIndex):
(WTR::AccessibilityUIElement::rowAtIndex):
(WTR::AccessibilityUIElement::selectedChildAtIndex const):
(WTR::AccessibilityUIElement::selectedChildrenCount const):
(WTR::AccessibilityUIElement::selectedRowAtIndex):
(WTR::AccessibilityUIElement::titleUIElement):
(WTR::AccessibilityUIElement::parentElement):
(WTR::AccessibilityUIElement::disclosedByRow):
(WTR::AccessibilityUIElement::attributesOfLinkedUIElements):
(WTR::AccessibilityUIElement::attributesOfDocumentLinks):
(WTR::AccessibilityUIElement::attributesOfChildren):
(WTR::AccessibilityUIElement::allAttributes):
(WTR::AccessibilityUIElement::stringDescriptionOfAttributeValue):
(WTR::AccessibilityUIElement::stringAttributeValue):
(WTR::AccessibilityUIElement::numberAttributeValue):
(WTR::AccessibilityUIElement::uiElementArrayAttributeValue const):
(WTR::AccessibilityUIElement::rowHeaders const):
(WTR::AccessibilityUIElement::columnHeaders const):
(WTR::AccessibilityUIElement::uiElementAttributeValue const):
(WTR::AccessibilityUIElement::boolAttributeValue):
(WTR::AccessibilityUIElement::isAttributeSettable):
(WTR::AccessibilityUIElement::isAttributeSupported):
(WTR::AccessibilityUIElement::parameterizedAttributeNames):
(WTR::AccessibilityUIElement::role):
(WTR::AccessibilityUIElement::subrole):
(WTR::AccessibilityUIElement::roleDescription):
(WTR::AccessibilityUIElement::computedRoleString):
(WTR::AccessibilityUIElement::title):
(WTR::AccessibilityUIElement::description):
(WTR::AccessibilityUIElement::orientation const):
(WTR::AccessibilityUIElement::stringValue):
(WTR::AccessibilityUIElement::language):
(WTR::AccessibilityUIElement::helpText const):
(WTR::AccessibilityUIElement::x):
(WTR::AccessibilityUIElement::y):
(WTR::AccessibilityUIElement::width):
(WTR::AccessibilityUIElement::height):
(WTR::AccessibilityUIElement::clickPointX):
(WTR::AccessibilityUIElement::clickPointY):
(WTR::AccessibilityUIElement::intValue const):
(WTR::AccessibilityUIElement::minValue):
(WTR::AccessibilityUIElement::maxValue):
(WTR::AccessibilityUIElement::valueDescription):
(WTR::AccessibilityUIElement::insertionPointLineNumber):
(WTR::AccessibilityUIElement::isPressActionSupported):
(WTR::AccessibilityUIElement::isIncrementActionSupported):
(WTR::AccessibilityUIElement::isDecrementActionSupported):
(WTR::AccessibilityUIElement::isEnabled):
(WTR::AccessibilityUIElement::isRequired const):
(WTR::AccessibilityUIElement::isFocused const):
(WTR::AccessibilityUIElement::isSelected const):
(WTR::AccessibilityUIElement::isSelectedOptionActive const):
(WTR::AccessibilityUIElement::isExpanded const):
(WTR::AccessibilityUIElement::isChecked const):
(WTR::AccessibilityUIElement::isIndeterminate const):
(WTR::AccessibilityUIElement::hierarchicalLevel const):
(WTR::AccessibilityUIElement::speakAs):
(WTR::AccessibilityUIElement::ariaIsGrabbed const):
(WTR::AccessibilityUIElement::ariaDropEffects const):
(WTR::AccessibilityUIElement::lineForIndex):
(WTR::AccessibilityUIElement::rangeForLine):
(WTR::AccessibilityUIElement::rangeForPosition):
(WTR::AccessibilityUIElement::boundsForRange):
(WTR::AccessibilityUIElement::stringForRange):
(WTR::AccessibilityUIElement::attributedStringForRange):
(WTR::AccessibilityUIElement::attributedStringRangeIsMisspelled):
(WTR::AccessibilityUIElement::uiElementCountForSearchPredicate):
(WTR::AccessibilityUIElement::uiElementForSearchPredicate):
(WTR::AccessibilityUIElement::selectTextWithCriteria):
(WTR::AccessibilityUIElement::attributesOfColumnHeaders):
(WTR::AccessibilityUIElement::attributesOfRowHeaders):
(WTR::AccessibilityUIElement::attributesOfColumns):
(WTR::AccessibilityUIElement::attributesOfRows):
(WTR::AccessibilityUIElement::attributesOfVisibleCells):
(WTR::AccessibilityUIElement::attributesOfHeader):
(WTR::AccessibilityUIElement::rowCount):
(WTR::AccessibilityUIElement::columnCount):
(WTR::AccessibilityUIElement::indexInTable):
(WTR::AccessibilityUIElement::rowIndexRange):
(WTR::AccessibilityUIElement::columnIndexRange):
(WTR::AccessibilityUIElement::cellForColumnAndRow):
(WTR::AccessibilityUIElement::horizontalScrollbar const):
(WTR::AccessibilityUIElement::verticalScrollbar const):
(WTR::AccessibilityUIElement::selectedTextRange):
(WTR::AccessibilityUIElement::setSelectedTextRange):
(WTR::AccessibilityUIElement::increment):
(WTR::AccessibilityUIElement::decrement):
(WTR::AccessibilityUIElement::showMenu):
(WTR::AccessibilityUIElement::press):
(WTR::AccessibilityUIElement::setSelectedChild const):
(WTR::AccessibilityUIElement::setSelectedChildAtIndex const):
(WTR::AccessibilityUIElement::removeSelectionAtIndex const):
(WTR::AccessibilityUIElement::clearSelectedChildren const):
(WTR::AccessibilityUIElement::accessibilityValue const):
(WTR::AccessibilityUIElement::documentEncoding):
(WTR::AccessibilityUIElement::documentURI):
(WTR::AccessibilityUIElement::url):
(WTR::AccessibilityUIElement::addNotificationListener):
(WTR::AccessibilityUIElement::removeNotificationListener):
(WTR::AccessibilityUIElement::isFocusable const):
(WTR::AccessibilityUIElement::isSelectable const):
(WTR::AccessibilityUIElement::isMultiSelectable const):
(WTR::AccessibilityUIElement::isVisible const):
(WTR::AccessibilityUIElement::isOffScreen const):
(WTR::AccessibilityUIElement::isCollapsed const):
(WTR::AccessibilityUIElement::isIgnored const):
(WTR::AccessibilityUIElement::isSingleLine const):
(WTR::AccessibilityUIElement::isMultiLine const):
(WTR::AccessibilityUIElement::hasPopup const):
(WTR::AccessibilityUIElement::takeFocus):
(WTR::AccessibilityUIElement::takeSelection):
(WTR::AccessibilityUIElement::addSelection):
(WTR::AccessibilityUIElement::removeSelection):
(WTR::AccessibilityUIElement::lineTextMarkerRangeForTextMarker):
(WTR::AccessibilityUIElement::textMarkerRangeForElement):
(WTR::AccessibilityUIElement::textMarkerRangeLength):
(WTR::AccessibilityUIElement::previousTextMarker):
(WTR::AccessibilityUIElement::nextTextMarker):
(WTR::AccessibilityUIElement::stringForTextMarkerRange):
(WTR::AccessibilityUIElement::rectsForTextMarkerRange):
(WTR::AccessibilityUIElement::textMarkerRangeForMarkers):
(WTR::AccessibilityUIElement::startTextMarkerForTextMarkerRange):
(WTR::AccessibilityUIElement::endTextMarkerForTextMarkerRange):
(WTR::AccessibilityUIElement::endTextMarkerForBounds):
(WTR::AccessibilityUIElement::startTextMarkerForBounds):
(WTR::AccessibilityUIElement::textMarkerForPoint):
(WTR::AccessibilityUIElement::accessibilityElementForTextMarker):
(WTR::AccessibilityUIElement::attributedStringForTextMarkerRange):
(WTR::AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions):
(WTR::AccessibilityUIElement::attributedStringForTextMarkerRangeContainsAttribute):
(WTR::AccessibilityUIElement::indexForTextMarker):
(WTR::AccessibilityUIElement::isTextMarkerValid):
(WTR::AccessibilityUIElement::textMarkerForIndex):
(WTR::AccessibilityUIElement::startTextMarker):
(WTR::AccessibilityUIElement::endTextMarker):
(WTR::AccessibilityUIElement::setSelectedTextMarkerRange):
(WTR::AccessibilityUIElement::scrollToMakeVisible):
(WTR::AccessibilityUIElement::scrollToGlobalPoint):
(WTR::AccessibilityUIElement::scrollToMakeVisibleWithSubFocus):
(WTR::AccessibilityUIElement::supportedActions const):
(WTR::AccessibilityUIElement::pathDescription const):
(WTR::AccessibilityUIElement::mathPostscriptsDescription const):
(WTR::AccessibilityUIElement::mathPrescriptsDescription const):
(WTR::AccessibilityUIElement::classList const):
(WTR::AccessibilityUIElement::characterAtOffset):
(WTR::AccessibilityUIElement::wordAtOffset):
(WTR::AccessibilityUIElement::lineAtOffset):
(WTR::AccessibilityUIElement::sentenceAtOffset):
(WTR::AccessibilityUIElement::replaceTextInRange):
(WTR::AccessibilityUIElement::insertText):
(WTR::AccessibilityUIElement::popupValue const):

  • WebKitTestRunner/InjectedBundle/mac/AccessibilityControllerMac.mm:

(WTR::AccessibilityController::updateIsolatedTreeMode):

  • WebKitTestRunner/PlatformGTK.cmake:
  • WebKitTestRunner/TestOptions.cpp:

(WTR::TestOptions::defaults):

1:29 AM Changeset in webkit [282642] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.32/Source/WebCore

Merge r281813 - REGRESSION (r272900): wpt.fyi loading performance is very slow (regressed, and slower than other browsers)
https://bugs.webkit.org/show_bug.cgi?id=229680
<rdar://problem/82541045>

Reviewed by Darin Adler.

The page is inserting new children to shadow host and on each insertion we are traversing the composed
tree to tear down renderers, even though there are none.

  • rendering/updating/RenderTreeUpdater.cpp:

(WebCore::RenderTreeUpdater::tearDownRenderersAfterSlotChange):

If the host doesn't have a renderer or 'display:contents' there can't be any renderers left in the subtree.

1:29 AM Changeset in webkit [282641] by Carlos Garcia Campos
  • 5 edits
    2 adds in releases/WebKitGTK/webkit-2.32

Merge r281128 - REGRESSION (r275756): Accelerated animations freeze when invalidating layout with shadow dom
https://bugs.webkit.org/show_bug.cgi?id=228954
<rdar://problem/81750217>

Reviewed by Ryosuke Niwa.

Source/WebCore:

Test: animations/shadow-host-child-change.html

Tearing down the host renderer after slot assignments change cancels animations on it.

  • dom/SlotAssignment.cpp:

(WebCore::SlotAssignment::didChangeSlot):

  • rendering/updating/RenderTreeUpdater.cpp:

(WebCore::RenderTreeUpdater::tearDownRenderersAfterSlotChange):

Add a version that keeps the animations going on the teardown root.

(WebCore::RenderTreeUpdater::tearDownRenderers):

  • rendering/updating/RenderTreeUpdater.h:

LayoutTests:

Original test by Liam DeBeasi

  • animations/shadow-host-child-change-expected.html: Added.
  • animations/shadow-host-child-change.html: Added.
1:28 AM Changeset in webkit [282640] by Carlos Garcia Campos
  • 3 edits
    2 adds in releases/WebKitGTK/webkit-2.32

Merge r279721 - Shadow host stops rendering after removing a slot, updating style, then its assigned node
https://bugs.webkit.org/show_bug.cgi?id=227652

Reviewed by Alan Bujtas.

Source/WebCore:

Test: fast/shadow-dom/remove-slot-and-host-child.html

  • dom/SlotAssignment.cpp:

(WebCore::SlotAssignment::didChangeSlot):

When we tear down the render tree we also need to request its rebuild unconditionally.

LayoutTests:

  • fast/shadow-dom/remove-slot-and-host-child-expected.html: Added.
  • fast/shadow-dom/remove-slot-and-host-child.html: Added.
12:46 AM Changeset in webkit [282639] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebKit

Replaying WKCGCommandsContext results in a doubly-scaled backing store
https://bugs.webkit.org/show_bug.cgi?id=230386

Reviewed by Wenson Hsieh.

  • Shared/RemoteLayerTree/CGDisplayListImageBufferBackend.cpp:

(WebKit::CGDisplayListImageBufferBackend::create):

  • Shared/RemoteLayerTree/RemoteLayerBackingStore.mm:

(WebKit::RemoteLayerBackingStore::display):
WKCGCommandsContextCreate() expects the bounds in logical coordinates, so
we don't need to use calculateBackendSize().
This also means that the workaround no longer needs to work around the
missing scale; only the flip is missing.

12:07 AM Changeset in webkit [282638] by youenn@apple.com
  • 4 edits in trunk/Source/WebCore

Make sure to use event queue when settling RTCPeerConnection.addIceCandidate promise
https://bugs.webkit.org/show_bug.cgi?id=230346

Reviewed by Eric Carlson.

Before the patch, we were resolving the promise in a callOnMainThread lambda.
We now do like for other methods: hop to main thread, then queue a task in event loop to resolve the promise.
Covered by existing tests.

  • Modules/mediastream/PeerConnectionBackend.cpp:

(WebCore::PeerConnectionBackend::addIceCandidate):

  • Modules/mediastream/PeerConnectionBackend.h:
  • Modules/mediastream/RTCPeerConnection.cpp:

(WebCore::RTCPeerConnection::addIceCandidate):

12:02 AM Changeset in webkit [282637] by youenn@apple.com
  • 7 edits in trunk

Compute RTCPeerConnection.connectionState as per https://w3c.github.io/webrtc-pc/#rtcpeerconnectionstate-enum
https://bugs.webkit.org/show_bug.cgi?id=230341

Reviewed by Eric Carlson.

LayoutTests/imported/w3c:

  • web-platform-tests/webrtc/RTCPeerConnection-connectionState.https-expected.txt:

Source/WebCore:

We should compute connection states according ICE and DTLS transport state, as per spec.
Given we compute the state from ICE and DTLS states, we now make sure to update connection state whenever DTLS state changes.
Make also sure to not fire events in case peer connection is closed, as per spec.

Covered by existing and rebased tests.

  • Modules/mediastream/RTCDtlsTransport.cpp:

(WebCore::RTCDtlsTransport::onStateChanged):

  • Modules/mediastream/RTCIceTransport.h:

(WebCore::RTCIceTransport::connection const):

  • Modules/mediastream/RTCPeerConnection.cpp:

(WebCore::RTCPeerConnection::close):
(WebCore::RTCPeerConnection::computeConnectionState):
(WebCore::RTCPeerConnection::processIceTransportStateChange):

  • Modules/mediastream/RTCPeerConnection.h:
Note: See TracTimeline for information about the timeline view.