Timeline
Apr 7, 2022:
- 11:58 PM Changeset in webkit [292594] by
-
- 7 edits1 add in trunk
[JSC] Fire structure transition watchpoint in Structure::finishCreation instead of Structure constructor
https://bugs.webkit.org/show_bug.cgi?id=238980
Reviewed by Saam Barati.
JSTests:
- stress/heap-allocation-in-did-structure-transition-watchpoint.js: Added.
(isPropertyOfType):
(getProperties):
(getObjects):
(getRandomObject):
(getRandomProperty):
(callGC):
(get var):
Source/JavaScriptCore:
After https://github.com/WebKit/WebKit/commit/dc3a347474a183891f8e07966dc09e684d7a1d13 change,
we start using Structure::get in the main thread. However one of the difference between Structure::get and
Structure::getConcurrently is that it can allocate GC memory: PropertyTable can be materialized.
Structure constructor was firing structure transition watchpoint. And some of watchpoints were using
Structure::getConcurrently. That's fine before, but now, it becomes Structure::get. It is not OK since
we cannot allocate GC memory inside constructor of GC managed objects.
This patch split didTransitionFromThisStructure into didTransitionFromThisStructureWithoutFiringWatchpoint and
fireStructureTransitionWatchpoint. And firing watchpoints in Structure::finishCreation instead of Structure
constructor so that we can allocate GC memory while firing watchpoints.
- runtime/BrandedStructure.cpp:
(JSC::BrandedStructure::BrandedStructure):
(JSC::BrandedStructure::create):
- runtime/BrandedStructure.h:
- runtime/Structure.cpp:
(JSC::Structure::Structure):
(JSC::Structure::didTransitionFromThisStructureWithoutFiringWatchpoint const):
(JSC::Structure::fireStructureTransitionWatchpoint const):
(JSC::Structure::didTransitionFromThisStructure const):
- runtime/Structure.h:
(JSC::Structure::finishCreation):
- runtime/StructureInlines.h:
(JSC::Structure::create):
- 10:40 PM Changeset in webkit [292593] by
-
- 8 edits in trunk/Source/WebKit
[WebAuthn] Support all CTAP transports and remove gesture requirement for virtual authenticators
https://bugs.webkit.org/show_bug.cgi?id=238814
rdar://problem/91300515
Reviewed by Brent Fulgham.
This patch adds support for the other CTAP virtual authenticator transports and removes
the user gesture requirement when using virtual authenticators. These changes are needed
to run the webauthn web-platform-tests.
- UIProcess/WebAuthentication/AuthenticatorManager.cpp:
(WebKit::WebCore::collectTransports):
(WebKit::AuthenticatorManager::filterTransports const):
- UIProcess/WebAuthentication/Mock/MockAuthenticatorManager.cpp:
(WebKit::MockAuthenticatorManager::filterTransports const):
- UIProcess/WebAuthentication/Virtual/VirtualAuthenticatorManager.cpp:
(WebKit::VirtualAuthenticatorManager::createAuthenticator):
- UIProcess/WebAuthentication/Virtual/VirtualAuthenticatorManager.h:
- UIProcess/WebAuthentication/Virtual/VirtualLocalConnection.mm:
(WebKit::VirtualLocalConnection::verifyUser):
- UIProcess/WebAuthentication/Virtual/VirtualService.mm:
(WebKit::VirtualService::startDiscoveryInternal):
- UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.cpp:
(WebKit::WebAuthenticatorCoordinatorProxy::handleRequest):
- 9:59 PM Changeset in webkit [292592] by
-
- 6 edits in trunk
[CSS Container Queries] Evaluate against shadow-including ancestors
https://bugs.webkit.org/show_bug.cgi?id=238934
Reviewed by Tim Nguyen.
LayoutTests/imported/w3c:
- web-platform-tests/css/css-contain/container-queries/container-for-shadow-dom-expected.txt:
- web-platform-tests/css/css-contain/container-queries/container-for-shadow-dom.html:
Add declarative shadow DOM polyfill.
Source/WebCore:
"Style rules applying to its shadow-including descendants can then be conditioned by querying against it,
using the @container conditional group rule."
https://drafts.csswg.org/css-contain-3/#container-queries
- style/ContainerQueryEvaluator.cpp:
(WebCore::Style::ContainerQueryEvaluator::selectContainer):
Evaluate against shadow-including ancestors instead of flat tree ancestors if the cache is not available.
- style/StyleTreeResolver.cpp:
(WebCore::Style::TreeResolver::Scope::Scope):
Copy the container state when pushing scope. This also creates a stack of shadow-including ancestors.
- style/StyleTreeResolver.h:
- 9:09 PM Changeset in webkit [292591] by
-
- 35 edits in trunk
[XCBuild] Enable dependency validation by default
https://bugs.webkit.org/show_bug.cgi?id=238901
<rdar://problem/91379968>
Reviewed by Alexey Proskuryakov.
.:
Set VALIDATE_DEPENDENCIES=YES_ERROR everywhere, so that builds fail
when task outputs are missing.
The only interesting detail is that we need to set an extended
attribute on the user's build directory in order for XCBuild to
validate dependencies _within_ that directory. Since a users' build
directory may not be created by XCBuild, have build-webkit and
set-webkit-configuration set the attribute manually.
- Makefile.shared: Remove the VALIDATE_DEPENDENCIES opt-in logic.
Always call through to set-webkit-configuration, because that's where
we verify that CreatedByBuildSystem is set on the build directory.
Don't pass -EnableBuildDebugging=1; it's not actually needed to enable
dependency validation.
Source/bmalloc:
- Configurations/DebugRelease.xcconfig:
Source/JavaScriptCore:
- Configurations/DebugRelease.xcconfig:
Source/ThirdParty/ANGLE:
- Configurations/DebugRelease.xcconfig:
Source/ThirdParty/libwebrtc:
- Configurations/DebugRelease.xcconfig:
Source/WebCore:
- Configurations/DebugRelease.xcconfig:
Source/WebCore/PAL:
- Configurations/DebugRelease.xcconfig:
Source/WebGPU:
- Configurations/DebugRelease.xcconfig:
Source/WebInspectorUI:
- Configurations/DebugRelease.xcconfig:
Source/WebKit:
- Configurations/DebugRelease.xcconfig:
Source/WebKitLegacy/mac:
- Configurations/DebugRelease.xcconfig:
Source/WTF:
- Configurations/DebugRelease.xcconfig:
Tools:
- DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
- ImageDiff/cg/Configurations/DebugRelease.xcconfig:
- MiniBrowser/Configurations/DebugRelease.xcconfig:
- MobileMiniBrowser/Configurations/DebugRelease.xcconfig:
- Scripts/build-webkit:
- Scripts/set-webkit-configuration: When run with no arguments, checks
the base product directory, prints the configuration, and exits.
Recognizes -h and --help flags to show usage.
- Scripts/webkitdirs.pm:
(markBaseProductDirectoryAsCreatedByXcodeBuildSystem): New name of
setCreatedByXcodeBuildSystem.
(setCreatedByXcodeBuildSystem): Renamed.
- TestWebKitAPI/Configurations/DebugRelease.xcconfig:
- WebKitTestRunner/Configurations/DebugRelease.xcconfig:
- lldb/lldbWebKitTester/Configurations/DebugRelease.xcconfig:
- 9:06 PM Changeset in webkit [292590] by
-
- 2 edits in trunk/Source/WebKit
[WinCairo] Fix DrawingAreaWC after r292557
https://bugs.webkit.org/show_bug.cgi?id=238979
Unreviewed build fix
- WebProcess/WebPage/wc/DrawingAreaWC.cpp:
- 8:46 PM Changeset in webkit [292589] by
-
- 2 edits in trunk/Source/WebKit
Fix the CG_DISPLAY_LIST_BACKED_IMAGE_BUFFER build (again)
- Shared/RemoteLayerTree/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStore::ensureFrontBuffer):
- 7:30 PM Changeset in webkit [292588] by
-
- 24 edits in trunk/Source
Add PAL::TextEncoding() constructor that takes in a StringView
https://bugs.webkit.org/show_bug.cgi?id=238905
Reviewed by Darin Adler.
This allows some call sites to be a bit more efficient.
Source/WebCore:
- Modules/fetch/FetchResponse.cpp:
(WebCore::FetchResponse::create):
- fileapi/FileReaderLoader.cpp:
(WebCore::FileReaderLoader::setEncoding):
- fileapi/FileReaderLoader.h:
- html/parser/HTMLMetaCharsetParser.cpp:
(WebCore::HTMLMetaCharsetParser::encodingFromMetaAttributes):
- loader/FormSubmission.cpp:
(WebCore::encodingFromAcceptCharset):
- loader/soup/ResourceLoaderSoup.cpp:
(WebCore::ResourceLoader::loadGResource):
- platform/network/HTTPParsers.cpp:
(WebCore::extractCharsetFromMediaType):
- platform/network/HTTPParsers.h:
- platform/network/curl/CurlCacheEntry.cpp:
(WebCore::CurlCacheEntry::setResponseFromCachedHeaders):
- platform/network/curl/ResourceHandleCurl.cpp:
(WebCore::ResourceHandle::handleDataURL):
- platform/network/curl/ResourceResponseCurl.cpp:
(WebCore::ResourceResponse::ResourceResponse):
- platform/network/soup/ResourceResponseSoup.cpp:
(WebCore::ResourceResponse::ResourceResponse):
- xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::finalResponseCharset const):
(WebCore::XMLHttpRequest::didReceiveData):
Source/WebCore/PAL:
- pal/text/TextEncoding.cpp:
(PAL::TextEncoding::TextEncoding):
- pal/text/TextEncoding.h:
(PAL::TextEncoding::TextEncoding):
- pal/text/TextEncodingRegistry.cpp:
(PAL::atomCanonicalTextEncodingName):
- pal/text/TextEncodingRegistry.h:
Source/WebKit:
- NetworkProcess/soup/NetworkDataTaskSoup.cpp:
(WebKit::NetworkDataTaskSoup::didRequestNextPart):
(WebKit::NetworkDataTaskSoup::didGetFileInfo):
- UIProcess/API/glib/WebKitURISchemeRequest.cpp:
(webkitURISchemeRequestReadCallback):
- 7:21 PM Changeset in webkit [292587] by
-
- 32 edits in trunk
Replace deprecated String(const char*) with String::fromLatin1() in more places
https://bugs.webkit.org/show_bug.cgi?id=238925
Reviewed by Darin Adler.
Source/WebKit:
- NetworkProcess/DatabaseUtilities.cpp:
(WebKit::DatabaseUtilities::stripIndexQueryToMatchStoredValue):
- NetworkProcess/cache/NetworkCache.cpp:
(WebKit::NetworkCache::Cache::dumpContentsToFile):
- Scripts/PreferencesTemplates/WebPreferencesExperimentalFeatures.cpp.erb:
- Scripts/PreferencesTemplates/WebPreferencesInternalDebugFeatures.cpp.erb:
- Scripts/PreferencesTemplates/WebPreferencesStoreDefaultsMap.cpp.erb:
- Shared/API/Cocoa/WKRemoteObjectCoder.mm:
(encodeObject):
- Shared/API/Cocoa/_WKRemoteObjectRegistry.mm:
(-[_WKRemoteObjectRegistry _sendInvocation:interface:]):
- Shared/Cocoa/SandboxExtensionCocoa.mm:
(WebKit::SandboxExtension::createHandleForTemporaryFile):
- Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceEntryPoint.mm:
(WebKit::XPCServiceInitializerDelegate::getClientBundleIdentifier):
(WebKit::XPCServiceInitializerDelegate::getClientProcessName):
(WebKit::XPCServiceInitializerDelegate::getExtraInitializationData):
- Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceMain.mm:
(WebKit::XPCServiceMain):
- UIProcess/API/Cocoa/_WKWebAuthenticationPanel.mm:
(+[_WKWebAuthenticationPanel getAllLocalAuthenticatorCredentials]):
- UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::showSafeBrowsingWarning):
- UIProcess/Launcher/cocoa/ProcessLauncherCocoa.mm:
(WebKit::ProcessLauncher::launchProcess):
- UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.mm:
(WebKit::LocalAuthenticator::clearAllCredentials):
- UIProcess/WebAuthentication/Cocoa/LocalConnection.mm:
(WebKit::LocalConnection::createCredentialPrivateKey const):
- UIProcess/WebPageProxy.cpp:
(WebKit::pasteAccessCategoryForCommand):
- UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::didReceiveInvalidMessage):
- WebProcess/Plugins/PDF/PDFPlugin.mm:
(WebKit::PDFPlugin::pluginInfo):
- WebProcess/WebPage/Cocoa/WebPageCocoa.mm:
(WebKit::replaceSelectionPasteboardName):
- WebProcess/WebPage/IPCTestingAPI.cpp:
(WebKit::IPCTestingAPI::createJSArrayForArgumentDescriptions):
(WebKit::IPCTestingAPI::JSMessageListener::jsDescriptionFromDecoder):
- webpushd/WebPushDaemonMain.mm:
(WebKit::WebPushDaemonMain):
Source/WebKitLegacy/mac:
- History/HistoryPropertyList.mm:
(HistoryPropertyListWriter::HistoryPropertyListWriter):
- WebView/WebHTMLView.mm:
(-[WebHTMLView coreCommandByName:]):
Tools:
- DumpRenderTree/TestRunner.cpp:
(TestRunner::setAccummulateLogsForChannel):
- DumpRenderTree/mac/DumpRenderTree.mm:
(handleControlCommand):
(changeWindowScaleIfNeeded):
(resetWebViewToConsistentState):
- TestWebKitAPI/Tests/WebCore/CBORReaderTest.cpp:
(TestWebKitAPI::TEST):
- WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::waitForPostDumpWatchdogTimerFired):
- WebKitTestRunner/cocoa/CrashReporterInfo.mm:
(WTR::testPathFromURL):
- WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::cocoaPlatformInitialize):
(WTR::TestController::cocoaResetStateToConsistentValues):
- 6:35 PM Changeset in webkit [292586] by
-
- 3 edits in trunk/Source/WTF
Move long-enabled preferences away from experimental
https://bugs.webkit.org/show_bug.cgi?id=238929
Reviewed by Tim Horton.
This only moves things which have a simple
default: trueand
have since Safari 15's release; there are likely other things
which could be moved.
It does, however, leave GoogleAntiFlickerOptimizationQuirkEnabled
as an experimental feature, as this seems something it is more
likely a developer may wish to toggle.
- Scripts/Preferences/WebPreferences.yaml:
- Scripts/Preferences/WebPreferencesExperimental.yaml:
- 6:03 PM Changeset in webkit [292585] by
-
- 4 edits in trunk/Source/WebCore
When using a TrackDisplayUpdateScope queue updateActiveTextTrackCues as a task
https://bugs.webkit.org/show_bug.cgi?id=238963
Reviewed by Eric Carlson.
The HTMLMediaElement::didRemoveTextTrack call is done under ScriptDisallowedScope but this path
currently can call updateActiveTextTrackCues which could result in updating the layout downstream.
To resolve this we execute updateActiveTextTrackCues under a queueCancellableTaskKeepingObjectAlive call.
We also add a needed check in RenderVTTCue::initializeLayoutParameters exposed by queueing the task.
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::endIgnoringTrackDisplayUpdateRequests):
(WebCore::HTMLMediaElement::cancelPendingTasks):
- html/HTMLMediaElement.h:
- rendering/RenderVTTCue.cpp:
(WebCore::RenderVTTCue::initializeLayoutParameters):
- 5:51 PM Changeset in webkit [292584] by
-
- 2 edits in trunk/Tools
REGRESSION(r292109): [GTK][WPE] generate-bundle: Don't try to use the interpreter prefix when not bundling all.
https://bugs.webkit.org/show_bug.cgi?id=237107
For bundles of type --syslibs=generate-install-script we should
not try to prefix the executable with the interpreter.
Add a missing check to ensure that the interpreter has been copied
into the bundle before trying to use it.
Unreviewed follow-up fix.
- Scripts/webkitpy/binary_bundling/bundle.py:
(BinaryBundler.generate_wrapper_script):
- 5:49 PM Changeset in webkit [292583] by
-
- 2 edits in trunk/Source/WebKit
Build-fix for not ENABLE(SERVICE_WORKER) after r292539
https://bugs.webkit.org/show_bug.cgi?id=238957
Unreviewed build fix.
- UIProcess/WebPageProxy.cpp:
- 5:47 PM Changeset in webkit [292582] by
-
- 6 edits in trunk
[:has() pseudo-class] Support invalidation for :indeterminate pseudo class on <progress>
https://bugs.webkit.org/show_bug.cgi?id=238923
Reviewed by Antti Koivisto.
LayoutTests/imported/w3c:
- web-platform-tests/css/selectors/invalidation/input-pseudo-classes-in-has-expected.txt:
- web-platform-tests/css/selectors/invalidation/input-pseudo-classes-in-has.html:
Source/WebCore:
Test: imported/w3c/web-platform-tests/css/selectors/invalidation/input-pseudo-classes-in-has.html
- html/HTMLProgressElement.cpp:
(WebCore::HTMLProgressElement::HTMLProgressElement):
(WebCore::HTMLProgressElement::parseAttribute):
(WebCore::HTMLProgressElement::didAttachRenderers):
(WebCore::HTMLProgressElement::updateDeterminateState):
(WebCore::HTMLProgressElement::didElementStateChange):
(WebCore::HTMLProgressElement::isDeterminate const): Deleted.
- html/HTMLProgressElement.h:
- 5:08 PM Changeset in webkit [292581] by
-
- 3 edits in releases/WebKitGTK/webkit-2.34/Source/WebCore
Merge r287147 - Rename forEachFrameFromMainFrame to forEachFrame
https://bugs.webkit.org/show_bug.cgi?id=234396
<rdar://problem/86581926>
Reviewed by Geoffrey Garen.
Follow-up to r287110: Switch method naming to match 'forEachDocument'.
- page/Page.cpp:
(WebCore::Page::~Page):
(WebCore::Page::notifyToInjectUserScripts):
(WebCore::Page::forEachFrame):
(WebCore::Page::forEachFrameFromMainFrame): Deleted.
- page/Page.h:
- 5:08 PM Changeset in webkit [292580] by
-
- 3 edits in releases/WebKitGTK/webkit-2.34
Merge r291791 - REGRESSION (r287807): WEBGL_multi_draw validation rejecting valid arguments
https://bugs.webkit.org/show_bug.cgi?id=238239
Patch by Kimmo Kinnunen <kkinnunen@apple.com> on 2022-03-24
Reviewed by Darin Adler.
Source/WebCore:
Fix off-by-one error causing full buffer multidraws to be
marked as invalid.
Enable the newer WebGL conformance tests that test this.
- html/canvas/WebGLMultiDraw.cpp:
(WebCore::WebGLMultiDraw::validateOffset):
LayoutTests:
Enable the newer WebGL conformance tests that test this, marked
Slow as they take a while to run.
- 5:08 PM Changeset in webkit [292579] by
-
- 2 edits in releases/WebKitGTK/webkit-2.34/Source/WebCore
Merge r287807 - [Hardening] Improve multi draw offset validation
https://bugs.webkit.org/show_bug.cgi?id=234966
<rdar://problem/86814830>
Reviewed by Darin Adler.
Incorporate draw count into validation of the offset.
- html/canvas/WebGLMultiDraw.cpp:
(WebCore::WebGLMultiDraw::validateOffset):
- 5:08 PM Changeset in webkit [292578] by
-
- 5 edits in releases/WebKitGTK/webkit-2.34/Source/WebCore
Merge r288867 - Fix handling of access key events
https://bugs.webkit.org/show_bug.cgi?id=234147
<rdar://problem/86320218>
Reviewed by David Kilzer.
Improve focus handling for HTMLElement-based elements to ensure accessKey events
are properly dispatched.
- accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::press): Ensure correct object is used after 'accessKeyAction'
is invoked.
- dom/EventDispatcher.cpp:
(WebCore::callDefaultEventHandlersInBubblingOrder) Protect element during default
event bubbling.
- html/HTMLFormControlElement.cpp:
(WebCore::HTMLFormControlElement::reportValidity): Ensure correct element is
used after focus event.
- page/EventHandler.cpp:
(WebCore::EventHandler::handleAccessKey): Ensure correct object is used after
'accessKeyAction' is invoked.
- 5:07 PM Changeset in webkit [292577] by
-
- 7 edits in releases/WebKitGTK/webkit-2.34/Source/WebCore
Merge r287110 - Clean-up: Adopt Page::forEachDocument in some missed spots
https://bugs.webkit.org/show_bug.cgi?id=234324
<rdar://problem/85443831>
Reviewed by Darin Adler.
Switch manual loops to our 'forEachDocument' style in a few places that were missed
in earlier refactoring.
No change in behavior.
- history/BackForwardCache.cpp:
(WebCore::setBackForwardCacheState)
- page/EventHandler.cpp:
(WebCore::removeDraggedContentDocumentMarkersFromAllFramesInPage):
- page/Frame.cpp:
(WebCore::Frame::orientationChanged):
- page/Page.cpp:
(WebCore::Page::~Page):
(WebCore::Page::forEachDocumentFromMainFrame): Added.
(WebCore::Page::forEachDocument): Use new method.
(WebCore::Page::forEachFrameFromMainFrame): Added.
(WebCore::Page::windowScreenDidChange):
(WebCore::Page::userAgentChanged):
- page/ios/FrameIOS.mm:
(WebCore::Frame::dispatchPageHideEventBeforePause):
(WebCore::Frame::dispatchPageShowEventBeforeResume):
- 3:59 PM Changeset in webkit [292576] by
-
- 5 edits in trunk/Tools
[Merge-Queue] Add PushCommitToWebKitRepo
https://bugs.webkit.org/show_bug.cgi?id=238959
<rdar://problem/91443987>
Reviewed by Aakash Jain.
- Tools/CISupport/ews-build/factories.py:
(MergeQueueFactory.init): Add PushCommitToWebKitRepo, pre-commit validation.
- Tools/CISupport/ews-build/factories_unittest.py:
(TestExpectedBuildSteps): Ditto.
- Tools/CISupport/ews-build/steps.py:
(PushCommitToWebKitRepo.evaluateCommand): Add merge-queue steps.
(PushCommitToWebKitRepo.getResultSummary): Remove identifier computation.
(PushCommitToWebKitRepo.svn_revision_from_commit_text):
(DetermineLandedIdentifier): Move code to determine identifier into a seperate step because
merge-queue has already computed the identifier.
(DetermineLandedIdentifier.init):
(DetermineLandedIdentifier.start): Capture log output of command.
(DetermineLandedIdentifier.getResultSummary):
(DetermineLandedIdentifier.evaluateCommand): Attempt to pull identifier from commit message,
otherwise, fall back to commits.webkit.org.
(DetermineLandedIdentifier.url_for_revision_details): Moved from PushCommitToWebKitRepo.
(DetermineLandedIdentifier.url_for_identifier): Ditto.
(DetermineLandedIdentifier.identifier_for_revision): Ditto.
(DetermineLandedIdentifier.comment_text_for_bug): Ditto.
- Tools/CISupport/ews-build/steps_unittest.py:
Canonical link: https://commits.webkit.org/249414@main
- 3:56 PM Changeset in webkit [292575] by
-
- 17 edits in trunk/Source/WebCore
Unify reference box / CTM computation in RenderLayer
https://bugs.webkit.org/show_bug.cgi?id=237701
Reviewed by Rob Buis.
Extract the code in RenderLayer that computes the reference box, obtains the CTM,
applies pixel snapping, etc. into a shared updateTransformFromStyle() helper function.
Use that helper to de-duplicate code between updateTransform() / currentTransform()
(and RenderLayerBacking::updateTransform() in follow-up patches).
currentTransform() needs to compute the CTM, based on a non-default RenderStyle (!= renderer().style()),
namely the aninmatedStyle(), if an accelerated transform animation is running. Therefore extend
RenderLayerModelObject::applyTransform() to take an additional RenderStyle parameter,
that is used to access the CSS transform operations, instead of always querying renderer().style().
RenderLayer::updateTransform() continues to pass 'renderer().style()' to updateTransformFromStyle(),
whereas RenderLayer::currentTransform() passes the elements animatedStyle().
Covered by existing tests, no change in behaviour.
- rendering/RenderBox.cpp:
(WebCore::RenderBox::applyTransform const):
- rendering/RenderBox.h:
- rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::applyTransform const):
- rendering/RenderBoxModelObject.h:
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateTransformFromStyle const):
(WebCore::RenderLayer::updateTransform):
(WebCore::RenderLayer::currentTransform const):
- rendering/RenderLayer.h:
- rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateTransform):
- rendering/RenderLayerModelObject.h:
- rendering/svg/RenderSVGModelObject.cpp:
(WebCore::RenderSVGModelObject::applyTransform const): Deleted.
- rendering/svg/RenderSVGModelObject.h:
- rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::applyTransform const): Deleted.
- rendering/svg/RenderSVGRoot.h:
- rendering/svg/RenderSVGShape.cpp:
(WebCore::RenderSVGShape::applyTransform const):
- rendering/svg/RenderSVGShape.h:
- rendering/svg/RenderSVGTransformableContainer.cpp:
(WebCore::RenderSVGTransformableContainer::applyTransform const):
- rendering/svg/RenderSVGTransformableContainer.h:
- 3:50 PM Changeset in webkit [292574] by
-
- 2 edits in trunk/Source/WebGPU
[WebGPU] Add support for the "is valid to use with" operation to WebGPU objects
https://bugs.webkit.org/show_bug.cgi?id=238719
Addressing post-review comment.
Unreviewed.
- WebGPU/IsValidToUseWith.h:
(WebGPU::isValidToUseWith):
(WebGPU::isValidToUseWith const): Deleted.
- 3:44 PM Changeset in webkit [292573] by
-
- 3 edits in trunk/Tools
[Merge-Queue] Canonicalize parent commits
https://bugs.webkit.org/show_bug.cgi?id=238951
<rdar://problem/91436607>
Reviewed by Aakash Jain.
- Tools/CISupport/ews-build/steps.py:
(Canonicalize.run): Canonicalize first 2 parent commits if not rebasing.
(Canonicalize.getResultSummary): Pluralize summary.
- Tools/CISupport/ews-build/steps_unittest.py:
Canonical link: https://commits.webkit.org/249411@main
- 3:41 PM Changeset in webkit [292572] by
-
- 3 edits in trunk/Source/WebCore
Full screen video progress bar flickers after dragging it.
https://bugs.webkit.org/show_bug.cgi?id=238859
rdar://90412851
A WebAVPlayerController pretends to be an AVPlayerController by
implementing most methods of it, but not all.
When dragging the progress bar, AVKit calls the method isSeeking to
determine if we are seeking or not and if true will call seekToTime
to retrieve the last seek position and display the progress bar
accordingly.
Those two methods weren't implemented by WebAVPlayerController.
At present, we don't have information about the seeking operation having
completed or not, but we do know if we are scrubbing. So map isSeeking
to isScrubbing, this approximation is sufficient at present.
Reviewed by Jer Noble.
- platform/ios/WebAVPlayerController.h:
- platform/ios/WebAVPlayerController.mm:
(-[WebAVPlayerController seekToTime:]):
(-[WebAVPlayerController seekToTime:toleranceBefore:toleranceAfter:]):
(-[WebAVPlayerController isSeeking]):
(-[WebAVPlayerController seekToTime]):
- 3:38 PM Changeset in webkit [292571] by
-
- 2 edits in trunk/LayoutTests
[ iOS EWS ] css3/background/background-repeat-round-auto2.html is a image failure https://bugs.webkit.org/show_bug.cgi?id=238965 Unreviewed test gardening.
- 3:34 PM Changeset in webkit [292570] by
-
- 2 edits in trunk/LayoutTests/imported/w3c
REGRESSION(r291509): imported/w3c/web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-video.html is a constant text failure
https://bugs.webkit.org/show_bug.cgi?id=238920
Reviewed by Cameron McCormack.
Fixed typo.
- web-platform-tests/html/canvas/element/manual/wide-gamut-canvas/canvas-display-p3-drawImage-video.html:
- 2:55 PM Changeset in webkit [292569] by
-
- 7 edits in trunk/Source
Add a LayerBacking RenderingPurpose
https://bugs.webkit.org/show_bug.cgi?id=238896
Reviewed by Said Abou-Hallawa.
Add RenderingPurpose::LayerBacking so the GPU Process knows which buffers are
associated with layer backing.
Source/WebCore:
- platform/graphics/RenderingMode.h:
Source/WebKit:
- Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.mm:
(WebKit::RemoteLayerBackingStoreCollection::allocateBufferForBackingStore):
- Shared/RemoteLayerTree/RemoteLayerWithRemoteRenderingBackingStoreCollection.mm:
(WebKit::RemoteLayerWithRemoteRenderingBackingStoreCollection::allocateBufferForBackingStore):
- Shared/WebCoreArgumentCoders.h:
- WebProcess/WebProcess.cpp:
(WebKit::WebProcess::shouldUseRemoteRenderingFor):
- 2:46 PM Changeset in webkit [292568] by
-
- 2 edits in trunk/LayoutTests
[ iOS EWS ] fast/attachment/attachment-disabled-rendering.html is a text missing failure https://bugs.webkit.org/show_bug.cgi?id=238960 Unreviewed test gardening. * platform/ios-wk2/TestExpectations:
- 2:44 PM Changeset in webkit [292567] by
-
- 43 edits in trunk/Source/WebGPU
[WebGPU] Give objects a notion of invalidity
https://bugs.webkit.org/show_bug.cgi?id=238720
Reviewed by Kimmo Kinnunen.
This is the biggest blocker for running the WebGPU conformance test suite. WebGPU is designed
such that creation routines don't return undefined if the object couldn't be created; instead,
in "invalid" object is returned. This patch is a step on the path to making creation routines
never return nullptr.
Some objects have destroy() methods which makes the object invalid. Those will be implemented
in a forthcoming patch.
- WebGPU/Adapter.h:
(WebGPU::Adapter::createInvalid):
(WebGPU::Adapter::isValid const):
- WebGPU/Adapter.mm:
(WebGPU::Adapter::Adapter):
- WebGPU/BindGroup.h:
(WebGPU::BindGroup::createInvalid):
(WebGPU::BindGroup::isValid const):
- WebGPU/BindGroup.mm:
(WebGPU::BindGroup::BindGroup):
- WebGPU/BindGroupLayout.h:
(WebGPU::BindGroupLayout::createInvalid):
(WebGPU::BindGroupLayout::isValid const):
- WebGPU/BindGroupLayout.mm:
(WebGPU::BindGroupLayout::BindGroupLayout):
- WebGPU/Buffer.h:
(WebGPU::Buffer::createInvalid):
(WebGPU::Buffer::isValid const):
- WebGPU/Buffer.mm:
(WebGPU::Buffer::Buffer):
- WebGPU/CommandBuffer.h:
(WebGPU::CommandBuffer::createInvalid):
(WebGPU::CommandBuffer::isValid const):
- WebGPU/CommandBuffer.mm:
(WebGPU::CommandBuffer::CommandBuffer):
- WebGPU/CommandEncoder.h:
(WebGPU::CommandEncoder::createInvalid):
(WebGPU::CommandEncoder::isValid const):
- WebGPU/CommandEncoder.mm:
(WebGPU::CommandEncoder::CommandEncoder):
- WebGPU/ComputePassEncoder.h:
(WebGPU::ComputePassEncoder::createInvalid):
(WebGPU::ComputePassEncoder::isValid const):
- WebGPU/ComputePassEncoder.mm:
(WebGPU::ComputePassEncoder::ComputePassEncoder):
- WebGPU/ComputePipeline.h:
(WebGPU::ComputePipeline::createInvalid):
(WebGPU::ComputePipeline::isValid const):
- WebGPU/ComputePipeline.mm:
(WebGPU::ComputePipeline::ComputePipeline):
- WebGPU/Device.h:
(WebGPU::Device::createInvalid):
(WebGPU::Device::isValid const):
- WebGPU/Device.mm:
(WebGPU::Device::Device):
- WebGPU/Instance.h:
(WebGPU::Instance::createInvalid):
(WebGPU::Instance::isValid const):
- WebGPU/Instance.mm:
(WebGPU::Instance::Instance):
(WebGPU::m_isValid):
- WebGPU/PipelineLayout.h:
(WebGPU::PipelineLayout::createInvalid):
(WebGPU::PipelineLayout::isValid const):
- WebGPU/PipelineLayout.mm:
(WebGPU::PipelineLayout::PipelineLayout):
- WebGPU/QuerySet.h:
(WebGPU::QuerySet::createInvalid):
(WebGPU::QuerySet::isValid const):
- WebGPU/QuerySet.mm:
(WebGPU::QuerySet::QuerySet):
- WebGPU/Queue.h:
(WebGPU::Queue::createInvalid):
(WebGPU::Queue::isValid const):
- WebGPU/Queue.mm:
(WebGPU::Queue::Queue):
- WebGPU/RenderBundle.h:
(WebGPU::RenderBundle::createInvalid):
(WebGPU::RenderBundle::isValid const):
- WebGPU/RenderBundle.mm:
(WebGPU::RenderBundle::RenderBundle):
- WebGPU/RenderBundleEncoder.h:
(WebGPU::RenderBundleEncoder::createInvalid):
(WebGPU::RenderBundleEncoder::isValid const):
- WebGPU/RenderBundleEncoder.mm:
(WebGPU::RenderBundleEncoder::RenderBundleEncoder):
- WebGPU/RenderPassEncoder.h:
(WebGPU::RenderPassEncoder::createInvalid):
(WebGPU::RenderPassEncoder::isValid const):
- WebGPU/RenderPassEncoder.mm:
(WebGPU::RenderPassEncoder::RenderPassEncoder):
- WebGPU/RenderPipeline.h:
(WebGPU::RenderPipeline::createInvalid):
(WebGPU::RenderPipeline::isValid const):
- WebGPU/RenderPipeline.mm:
(WebGPU::RenderPipeline::RenderPipeline):
- WebGPU/Sampler.h:
(WebGPU::Sampler::createInvalid):
(WebGPU::Sampler::isValid const):
- WebGPU/Sampler.mm:
(WebGPU::Sampler::Sampler):
- WebGPU/ShaderModule.h:
(WebGPU::ShaderModule::createInvalid):
(WebGPU::ShaderModule::isValid const):
- WebGPU/ShaderModule.mm:
(WebGPU::ShaderModule::convertCheckResult):
(WebGPU::ShaderModule::ShaderModule):
(WebGPU::ShaderModule::getCompilationInfo):
(WebGPU::ShaderModule::ast const):
- WebGPU/Texture.h:
(WebGPU::Texture::createInvalid):
(WebGPU::Texture::isValid const):
- WebGPU/Texture.mm:
(WebGPU::Texture::Texture):
- WebGPU/TextureView.h:
(WebGPU::TextureView::createInvalid):
(WebGPU::TextureView::isValid const):
- WebGPU/TextureView.mm:
(WebGPU::TextureView::TextureView):
- 2:15 PM Changeset in webkit [292566] by
-
- 7 edits in trunk/LayoutTests
[GPU Process] Test failures in forms
https://bugs.webkit.org/show_bug.cgi?id=236927
<rdar://problem/89196867>
Unreviewed, fix test failures and adjust related expectations.
- fast/forms/autofocus-readonly-attribute.html:
This test appeared to be failing because it ended before the
"focus"event had a chance
to fire. Make the test async by delaying its completion until after arequestAnimationFrame
which should be enough time for the"focus"event to be dispatched (and handled).
- fast/forms/input-text-autofocus.html:
- fast/forms/input-text-autofocus-expected.txt:
Slightly rework this test to manually tell the
testRunnertowaitUntilDone, as for some
reason thejs-test-{pre,post}test harness seems to somehow not output thePASSmessages
while still finishing the test (i.e. not a timeout).
- platform/ios-simulator-wk2/TestExpectations:
- platform/ios-wk2/TestExpectations:
- platform/ipad/TestExpectations:
Remove non-skipped expectations for:
- fast/forms/ios/choose-select-option.html
- fast/forms/autofocus-readonly-attribute.html
- fast/forms/input-text-autofocus.html
Note that
fast/forms/ios/choose-select-option.htmlis still skipped on iPad, because there
is already aplatform/ipad/fast/forms/choose-select-option.htmlspecifically to test iPad.
- 2:05 PM Changeset in webkit [292565] by
-
- 2 edits in trunk/Source/WebKit
[iOS][WP] Block kernel routines
https://bugs.webkit.org/show_bug.cgi?id=238898
Reviewed by Geoffrey Garen.
Block kernel routines only used during launch of the WebContent process on iOS. This is based on collected telemetry.
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in:
- 2:03 PM Changeset in webkit [292564] by
-
- 10 edits2 adds in trunk
AX ITM: ARIATreeItemContent, ARIATreeRows, and DisclosedRows properties need to be updated after dynamic page changes
https://bugs.webkit.org/show_bug.cgi?id=238844
Reviewed by Chris Fleizach.
Source/WebCore:
Before this patch, we never updated these properties after
initializing isolated objects, so they become inaccurate
when content / rows were added or removed.
Test: accessibility/mac/tree-properties-update-after-dynamic-change.html
- accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::ariaTreeItemContent):
Make this function return a value instead of by out-parameter.
- accessibility/AccessibilityObject.h:
- accessibility/AccessibilityObjectInterface.h:
- accessibility/isolatedtree/AXIsolatedObject.cpp:
(WebCore::AXIsolatedObject::initializeAttributeData):
- accessibility/isolatedtree/AXIsolatedObject.h:
- accessibility/isolatedtree/AXIsolatedTree.cpp:
(WebCore::AXIsolatedTree::updateNodeProperty):
Handle updates to AXPropertyName::ARIATreeItemContent, AXPropertyName::ARIATreeRows, and
AXPropertyName::DisclosedRows. Also, updateNodeProperty now
takes anAXCoreObject&instead ofconst AXCoreObject&
since calling ariaTreeItemContent(), ariaTreeRows(), and disclosedRows() is inherently not const.
(WebCore::AXIsolatedTree::updateChildren):
If the object being updated is a treeitem, also update AXPropertyName::ARIATreeItemContent
and AXPropertyName::DisclosedRows. And if the object has a tree role ancestor, update
AXPropertyName::ARIATreeRows for that ancestor.
- accessibility/isolatedtree/AXIsolatedTree.h:
- accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
LayoutTests:
- accessibility/mac/tree-properties-update-after-dynamic-change-expected.txt: Added.
- accessibility/mac/tree-properties-update-after-dynamic-change.html: Added.
- 1:58 PM Changeset in webkit [292563] by
-
- 4 edits in trunk/Source/WebCore
(Safari 15 - iOS15): Increased audio latency on streaming via webrtc
https://bugs.webkit.org/show_bug.cgi?id=236363
<rdar://problem/88969850>
Reviewed by Eric Carlson.
On macOS 12.3, the default preferred buffer size is roughly 100 ms.
This is ok for regular audio playback but is not desirable when playing realtime audio.
To reduce the perceived latency, we now reduce the preferred buffer size to 20ms
whenever playing an audio MediaStreamTrack, similarly to when capturing audio.
Manually tested.
- platform/audio/PlatformMediaSession.cpp:
- platform/audio/PlatformMediaSession.h:
- platform/audio/cocoa/MediaSessionManagerCocoa.mm:
- 1:36 PM Changeset in webkit [292562] by
-
- 5 edits in trunk/LayoutTests
Unreviewed test gardening.
- imported/blink/fast/multicol/vertical-lr/float-content-break-expected.html:
.html is rendered using the legacy codepath while -expected.html is renderer using the modern codepath.
In case of fractional pixel values, they sometimes produce different final baselines due to (unintentional) implicit flooring in legacy line layout.
While most of these intentional/unintentional floors/ceils are matched (with FIXMEs) in the modern line layout, some would make the line layout
codebase a lot more complicated. These type of bugs are mostly not visible to the user anyway ever since we have stopped swapping between modern
and legacy line layout dynamically (e.g. on selection).
- imported/blink/fast/multicol/vertical-lr/float-content-break.html:
- platform/ios-wk2/TestExpectations:
- platform/ios/TestExpectations:
- 1:32 PM Changeset in webkit [292561] by
-
- 2 edits in trunk/Source/WebCore
[web-animations] REGRESSION (r287881): loading performance for diply.com regressed
https://bugs.webkit.org/show_bug.cgi?id=238931
rdar://91190007
Reviewed by Simon Fraser.
We only need to resolve effects in the stack if they are targeting the property we are
considering for the creation, update or removal of a CSS Transition.
- style/Styleable.cpp:
(WebCore::updateCSSTransitionsForStyleableAndProperty):
- 1:28 PM Changeset in webkit [292560] by
-
- 2 edits in trunk/Source/WebCore
Iterate over copy of animated properties in WebCore::WebAnimation::commitStyles
https://bugs.webkit.org/show_bug.cgi?id=238940
Reviewed by Antoine Quint.
WebAnimation::resolve can end up clearing the animated properties during iteration.
The proposal here will make a copy of the properties before applying the steps
outlined in the spec.
- animation/WebAnimation.cpp:
(WebCore::WebAnimation::commitStyles):
- 1:26 PM Changeset in webkit [292559] by
-
- 9 edits12 adds in trunk
[CSS resize property] Correct minimum size computation to allow resizing below initial size
https://bugs.webkit.org/show_bug.cgi?id=135335
Reviewed by Simon Fraser.
Source/WebCore:
Tests:
- LayoutTests/fast/css/resize-above-min-size-and-below-initial-size.html
- LayoutTests/fast/css/resize-below-min-intrinsic-size.html
- LayoutTests/fast/css/resize-below-min-intrinsic-size-large-scrollbars.html
- LayoutTests/fast/css/resize-below-min-size-zoomed.html
- LayoutTests/fast/css/resize-below-min-size.html
- LayoutTests/fast/css/resize-orthogonal-containing-block.html
Ports the relevant Chromium changeset with a few tweaks: https://chromium-review.googlesource.com/c/chromium/src/+/545395/
The previous minimum size used to be whatever size was there before the first resize, which is wrong, and does not allow
resizing below the initial size. It is now based on the min-width/height properties and the scroll corner size.
It is no longer stored in ElementRareData since it is no longer fixed to the initial element size, but depends on the container
on the element style.
- dom/Element.cpp:
(WebCore::Element::minimumSizeForResizing const): Deleted.
(WebCore::Element::setMinimumSizeForResizing): Deleted.
- dom/Element.h:
- dom/ElementRareData.cpp:
- dom/ElementRareData.h:
(WebCore::ElementRareData::useTypes const):
(WebCore::ElementRareData::ElementRareData):
(WebCore::defaultMinimumSizeForResizing): Deleted.
(WebCore::ElementRareData::minimumSizeForResizing const): Deleted.
(WebCore::ElementRareData::setMinimumSizeForResizing): Deleted.
- dom/NodeRareData.h:
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::minimumSizeForResizing const):
(WebCore::RenderLayer::resize):
- rendering/RenderLayer.h:
LayoutTests:
Tests ported from the Chromium changeset: https://chromium-review.googlesource.com/c/chromium/src/+/545395/
They've been tweaked to:
- not rely on <textarea>
- use WPT harness instead of Chrome specific methods
- use async functions instead of callbacks
- fast/css/resize-above-min-size-and-below-initial-size-expected.txt: Added.
- fast/css/resize-above-min-size-and-below-initial-size.html: Added.
- fast/css/resize-below-min-intrinsic-size-large-scrollbars-expected.txt: Added.
- fast/css/resize-below-min-intrinsic-size-large-scrollbars.html: Added.
- fast/css/resize-below-min-intrinsic-size-expected.txt: Added.
- fast/css/resize-below-min-intrinsic-size.html: Added.
- fast/css/resize-below-min-size-expected.txt: Added.
- fast/css/resize-below-min-size-zoomed-expected.txt: Added.
- fast/css/resize-below-min-size-zoomed.html: Added.
- fast/css/resize-below-min-size.html: Added.
- fast/css/resize-orthogonal-containing-block-expected.txt: Added.
- fast/css/resize-orthogonal-containing-block.html: Added.
- 1:22 PM Changeset in webkit [292558] by
-
- 39 edits1 copy in trunk/Source/WebGPU
[WebGPU] Add support for the "is valid to use with" operation to WebGPU objects
https://bugs.webkit.org/show_bug.cgi?id=238719
Reviewed by Kimmo Kinnunen.
The spec also has the representation of this base class, named GPUObjectBase, which supports
the setting of labels. However, in our WebGPU implementation, all objects implement labels
differently, so that handling isn't present.
- WebGPU.xcodeproj/project.pbxproj:
- WebGPU/Adapter.h:
- WebGPU/BindGroup.h:
(WebGPU::BindGroup::create):
- WebGPU/BindGroup.mm:
(WebGPU::Device::createBindGroup):
(WebGPU::BindGroup::BindGroup):
- WebGPU/BindGroupLayout.h:
(WebGPU::BindGroupLayout::create):
- WebGPU/BindGroupLayout.mm:
(WebGPU::Device::createBindGroupLayout):
(WebGPU::BindGroupLayout::BindGroupLayout):
- WebGPU/Buffer.h:
- WebGPU/Buffer.mm:
(WebGPU::Buffer::Buffer):
- WebGPU/CommandBuffer.h:
(WebGPU::CommandBuffer::create):
- WebGPU/CommandBuffer.mm:
(WebGPU::CommandBuffer::CommandBuffer):
- WebGPU/CommandEncoder.h:
- WebGPU/CommandEncoder.mm:
(WebGPU::CommandEncoder::CommandEncoder):
(WebGPU::CommandEncoder::beginComputePass):
(WebGPU::CommandEncoder::beginRenderPass):
(WebGPU::CommandEncoder::finish):
- WebGPU/CommandsMixin.h:
- WebGPU/ComputePassEncoder.h:
(WebGPU::ComputePassEncoder::create):
- WebGPU/ComputePassEncoder.mm:
(WebGPU::ComputePassEncoder::ComputePassEncoder):
- WebGPU/ComputePipeline.h:
(WebGPU::ComputePipeline::create):
- WebGPU/ComputePipeline.mm:
(WebGPU::Device::createComputePipeline):
(WebGPU::ComputePipeline::ComputePipeline):
- WebGPU/Device.h:
- WebGPU/Instance.h:
- WebGPU/IsValidToUseWith.h: Copied from Source/WebGPU/WebGPU/CommandsMixin.h.
(WebGPU::ObjectBase::ObjectBase):
- WebGPU/PipelineLayout.h:
(WebGPU::PipelineLayout::create):
- WebGPU/PipelineLayout.mm:
(WebGPU::Device::createPipelineLayout):
(WebGPU::PipelineLayout::PipelineLayout):
- WebGPU/QuerySet.h:
(WebGPU::QuerySet::create):
- WebGPU/QuerySet.mm:
(WebGPU::Device::createQuerySet):
(WebGPU::QuerySet::QuerySet):
- WebGPU/Queue.h:
- WebGPU/RenderBundle.h:
(WebGPU::RenderBundle::create):
- WebGPU/RenderBundle.mm:
(WebGPU::RenderBundle::RenderBundle):
- WebGPU/RenderBundleEncoder.h:
(WebGPU::RenderBundleEncoder::create):
- WebGPU/RenderBundleEncoder.mm:
(WebGPU::Device::createRenderBundleEncoder):
(WebGPU::RenderBundleEncoder::RenderBundleEncoder):
(WebGPU::RenderBundleEncoder::finish):
- WebGPU/RenderPassEncoder.h:
(WebGPU::RenderPassEncoder::create):
- WebGPU/RenderPassEncoder.mm:
(WebGPU::RenderPassEncoder::RenderPassEncoder):
- WebGPU/RenderPipeline.h:
(WebGPU::RenderPipeline::create):
- WebGPU/RenderPipeline.mm:
(WebGPU::Device::createRenderPipeline):
(WebGPU::RenderPipeline::RenderPipeline):
- WebGPU/Sampler.h:
- WebGPU/Sampler.mm:
(WebGPU::Sampler::Sampler):
- WebGPU/ShaderModule.h:
(WebGPU::ShaderModule::create):
- WebGPU/ShaderModule.mm:
(WebGPU::earlyCompileShaderModule):
(WebGPU::Device::createShaderModule):
(WebGPU::ShaderModule::ShaderModule):
- WebGPU/Texture.h:
- WebGPU/Texture.mm:
(WebGPU::Texture::Texture):
(WebGPU::Texture::createView):
- WebGPU/TextureView.h:
(WebGPU::TextureView::create):
- WebGPU/TextureView.mm:
(WebGPU::TextureView::TextureView):
- 1:13 PM Changeset in webkit [292557] by
-
- 23 edits in trunk/Source
Have ImageBuffer store the RenderingPurpose, and send it to the GPU process
https://bugs.webkit.org/show_bug.cgi?id=238887
Reviewed by Said Abou-Hallawa.
Source/WebCore:
Add RenderingPurpose to ImageBufferBackend::Parameters so it's stored on ImageBufferBackend/ImageBuffer,
and propagate that to the GPU process.
- platform/graphics/ConcreteImageBuffer.h:
(WebCore::ConcreteImageBuffer::create):
- platform/graphics/ImageBuffer.cpp:
(WebCore::ImageBuffer::create):
- platform/graphics/ImageBuffer.h:
- platform/graphics/ImageBufferBackend.h:
(WebCore::ImageBufferBackend::renderingPurpose const):
- platform/graphics/PlatformImageBuffer.h:
- platform/graphics/coreimage/FilterImageCoreImage.mm:
(WebCore::FilterImage::imageBufferFromCIImage):
- platform/graphics/displaylists/DisplayListImageBuffer.h:
Source/WebKit:
Add RenderingPurpose to ImageBufferBackend::Parameters so it's stored on ImageBufferBackend/ImageBuffer,
and propagate that to the GPU process.
- GPUProcess/graphics/RemoteImageBuffer.h:
(WebKit::RemoteImageBuffer::create):
- GPUProcess/graphics/RemoteRenderingBackend.cpp:
(WebKit::RemoteRenderingBackend::createImageBuffer):
(WebKit::RemoteRenderingBackend::createImageBufferWithQualifiedIdentifier):
- GPUProcess/graphics/RemoteRenderingBackend.h:
- GPUProcess/graphics/RemoteRenderingBackend.messages.in:
- Scripts/webkit/messages.py:
(types_that_cannot_be_forward_declared):
(headers_for_type):
- Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.mm:
(WebKit::RemoteLayerBackingStoreCollection::allocateBufferForBackingStore):
- Shared/RemoteLayerTree/RemoteLayerWithRemoteRenderingBackingStoreCollection.mm:
(WebKit::RemoteLayerWithRemoteRenderingBackingStoreCollection::allocateBufferForBackingStore):
- Shared/WebCoreArgumentCoders.h:
- WebProcess/GPU/graphics/RemoteDisplayListRecorderProxy.cpp:
(WebKit::RemoteDisplayListRecorderProxy::createImageBuffer const):
- WebProcess/GPU/graphics/RemoteImageBufferProxy.h:
(WebKit::RemoteImageBufferProxy::create):
- WebProcess/GPU/graphics/RemoteRenderingBackendProxy.cpp:
(WebKit::RemoteRenderingBackendProxy::createRemoteImageBuffer):
(WebKit::RemoteRenderingBackendProxy::createImageBuffer):
- WebProcess/GPU/graphics/RemoteRenderingBackendProxy.h:
- WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::createImageBuffer const):
- 12:59 PM Changeset in webkit [292556] by
-
- 3 edits in trunk/Tools
[Merge-Queue] Change label names
https://bugs.webkit.org/show_bug.cgi?id=238950
<rdar://problem/91435211>
Reviewed by Ryan Haddad.
- CISupport/ews-build/events.py:
(GitHubEventHandlerNoEdits): Use "unsafe-merge-queue" instead of "fast-merge-queue".
- CISupport/ews-build/steps.py:
(GitHubMixin): Ditto.
(GitHubMixin._is_pr_in_merge_queue): Ditto.
(BlockPullRequest.start): Ditto.
(RemoveLabelsFromPullRequest): Ditto.
Canonical link: https://commits.webkit.org/249394@main
- 12:55 PM Changeset in webkit [292555] by
-
- 3 edits in trunk/Tools
[Merge-Queue] Add step to close pull request
https://bugs.webkit.org/show_bug.cgi?id=238949
<rdar://problem/91434587>
Reviewed by Aakash Jain.
- Tools/CISupport/ews-build/steps.py:
(GitHubMixin.close_pr): Make POST request to close PR.
(ClosePullRequest):
(ClosePullRequest.start): Ensure PR we're operating on is closed.
(ClosePullRequest.getResultSummary):
(ClosePullRequest.doStepIf): Only do step if operating on a PR.
(ClosePullRequest.hideStepIf): Hide step if skipping.
- Tools/CISupport/ews-build/steps_unittest.py:
Canonical link: https://commits.webkit.org/249393@main
- 12:42 PM Changeset in webkit [292554] by
-
- 14 edits in trunk/Source/WebGPU
[WebGPU] Delete redundant spec quotes
https://bugs.webkit.org/show_bug.cgi?id=238711
Reviewed by Kimmo Kinnunen.
I actually prefer to have lots and lots of spec quotes throughout the implementation,
but enough people have commented about it that it's become clear that we probably
shouldn't have them. This deletes almost all of them (and leaves just the ones that
are particularly insightful).
- WebGPU/Buffer.h:
- WebGPU/Buffer.mm:
(WebGPU::validateDescriptor):
(WebGPU::validateCreateBuffer):
(WebGPU::Device::createBuffer):
(WebGPU::Buffer::destroy):
(WebGPU::Buffer::validateGetMappedRange const):
(WebGPU::Buffer::getMappedRange):
(WebGPU::Buffer::validateMapAsync const):
(WebGPU::Buffer::mapAsync):
(WebGPU::Buffer::validateUnmap const):
(WebGPU::Buffer::unmap):
- WebGPU/CommandEncoder.mm:
(WebGPU::validateCopyBufferToBuffer):
(WebGPU::CommandEncoder::copyBufferToBuffer):
(WebGPU::validateImageCopyBuffer):
(WebGPU::validateCopyBufferToTexture):
(WebGPU::CommandEncoder::copyBufferToTexture):
(WebGPU::validateCopyTextureToBuffer):
(WebGPU::CommandEncoder::copyTextureToBuffer):
(WebGPU::areCopyCompatible):
(WebGPU::validateCopyTextureToTexture):
(WebGPU::CommandEncoder::copyTextureToTexture):
(WebGPU::validateClearBuffer):
(WebGPU::CommandEncoder::clearBuffer):
(WebGPU::CommandEncoder::validateFinish const):
(WebGPU::CommandEncoder::finish):
(WebGPU::CommandEncoder::insertDebugMarker):
(WebGPU::CommandEncoder::validatePopDebugGroup const):
(WebGPU::CommandEncoder::popDebugGroup):
(WebGPU::CommandEncoder::pushDebugGroup):
- WebGPU/ComputePassEncoder.mm:
(WebGPU::ComputePassEncoder::insertDebugMarker):
(WebGPU::ComputePassEncoder::validatePopDebugGroup const):
(WebGPU::ComputePassEncoder::popDebugGroup):
(WebGPU::ComputePassEncoder::pushDebugGroup):
- WebGPU/Device.h:
- WebGPU/Device.mm:
(WebGPU::Device::currentErrorScope):
(WebGPU::Device::generateAValidationError):
(WebGPU::Device::validatePopErrorScope const):
(WebGPU::Device::popErrorScope):
(WebGPU::Device::pushErrorScope):
- WebGPU/Queue.mm:
(WebGPU::Queue::submit):
(WebGPU::validateWriteBufferInitial):
(WebGPU::Queue::validateWriteBuffer const):
(WebGPU::Queue::writeBuffer):
(WebGPU::validateWriteTexture):
(WebGPU::Queue::writeTexture):
- WebGPU/RenderBundleEncoder.mm:
(WebGPU::RenderBundleEncoder::insertDebugMarker):
(WebGPU::RenderBundleEncoder::validatePopDebugGroup const):
(WebGPU::RenderBundleEncoder::popDebugGroup):
(WebGPU::RenderBundleEncoder::pushDebugGroup):
- WebGPU/RenderPassEncoder.mm:
(WebGPU::RenderPassEncoder::insertDebugMarker):
(WebGPU::RenderPassEncoder::validatePopDebugGroup const):
(WebGPU::RenderPassEncoder::popDebugGroup):
(WebGPU::RenderPassEncoder::pushDebugGroup):
- WebGPU/Sampler.h:
(WebGPU::Sampler::descriptor const):
(WebGPU::Sampler::isComparison const):
- WebGPU/Sampler.mm:
(WebGPU::validateCreateSampler):
(WebGPU::Device::createSampler):
- WebGPU/Texture.h:
- WebGPU/Texture.mm:
(WebGPU::isCompressedFormat):
(WebGPU::Texture::isDepthOrStencilFormat):
(WebGPU::Texture::texelBlockWidth):
(WebGPU::Texture::texelBlockHeight):
(WebGPU::isRenderableFormat):
(WebGPU::supportsMultisampling):
(WebGPU::maximumMiplevelCount):
(WebGPU::Device::validateCreateTexture):
(WebGPU::Device::createTexture):
(WebGPU::Texture::resolveTextureViewDescriptorDefaults const):
(WebGPU::Texture::arrayLayerCount const):
(WebGPU::Texture::validateCreateView const):
(WebGPU::computeRenderExtent):
(WebGPU::Texture::createView):
(WebGPU::Texture::logicalMiplevelSpecificTextureExtent):
(WebGPU::Texture::physicalMiplevelSpecificTextureExtent):
(WebGPU::imageCopyTextureSubresourceSize):
(WebGPU::Texture::validateImageCopyTexture):
(WebGPU::Texture::validateTextureCopyRange):
(WebGPU::Texture::validateLinearTextureData):
- 12:40 PM Changeset in webkit [292553] by
-
- 2 edits in trunk/LayoutTests
REGRESSION(r292419): [ iOS EWS ] imported/w3c/web-platform-tests/css/selectors/invalidation/user-action-pseudo-classes-in-has.html is a flaky text failure https://bugs.webkit.org/show_bug.cgi?id=238954 Unreviewed test gardening. * platform/ios-wk2/TestExpectations:
- 12:19 PM Changeset in webkit [292552] by
-
- 5 edits in trunk/Source/WebGPU
[WebGPU] Implement Texture view format compatibility
https://bugs.webkit.org/show_bug.cgi?id=238710
Reviewed by Kimmo Kinnunen.
Right now, the definition of texture view format compatibility is narrow enough that we'll
never need to add MTLTextureUsagePixelFormatView to the usage of any textures. So, all we
have to do is validate.
Test: http/tests/webgpu/webgpu/api/validation/createTexture.html
- WebGPU/CommandEncoder.mm:
(WebGPU::areCopyCompatible):
(WebGPU::isSRGBCompatible): Deleted.
- WebGPU/Device.h:
- WebGPU/Texture.h:
(WebGPU::Texture::create):
- WebGPU/Texture.mm:
(WebGPU::Texture::removeSRGBSuffix):
(WebGPU::textureViewFormatCompatible):
(WebGPU::Device::validateCreateTexture):
(WebGPU::usage):
(WebGPU::Device::createTexture):
(WebGPU::Texture::Texture):
(WebGPU::Texture::validateCreateView const):
- 12:18 PM Changeset in webkit [292551] by
-
- 2 edits in trunk/LayoutTests
REGRESSION(r290770): [ Mac wk2 ] imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-050.html is a flaky text failure https://bugs.webkit.org/show_bug.cgi?id=238033 Unreviewed test gardening * platform/mac-wk2/TestExpectations:
- 11:59 AM Changeset in webkit [292550] by
-
- 2 edits in trunk/LayoutTests
REBASLINE: [ Monterey ] fast/text/khmer-lao-font.html is a constant text failure
Unreviewed test gardening
- platform/mac/TestExpectations:
- 11:24 AM Changeset in webkit [292549] by
-
- 3 edits in trunk/Tools
[Merge-Queue] Update head and base references in PR
https://bugs.webkit.org/show_bug.cgi?id=238942
<rdar://problem/91423818>
Reviewed by Aakash Jain.
- Tools/CISupport/ews-build/steps.py:
(GitHubMixin.update_pr): Pass head and base to POST request.
(UpdatePullRequest.evaluateCommand): Set head and base refs.
- Tools/CISupport/ews-build/steps_unittest.py:
Canonical link: https://commits.webkit.org/249387@main
- 11:19 AM Changeset in webkit [292548] by
-
- 2 edits in trunk/LayoutTests
[ BigSur wk1 ] printing/css2.1/page-break-after-000.html is a flaky failure (231102)
https://bugs.webkit.org/show_bug.cgi?id=231102
<rdar://problem/83781666>
Unreviewed. Fixing expectations for a no-longer-flaky test.
- platform/mac-wk1/TestExpectations:
- 11:08 AM Changeset in webkit [292547] by
-
- 4 edits in trunk
[WebKitLegacy] Remove NPAPIPlugInsEnabledForTestingInWebKitLegacy
https://bugs.webkit.org/show_bug.cgi?id=238882
Reviewed by Tim Horton.
We have completely removed the NPAPI code and no longer run the tests. We no longer need this setting
and should remove it to reduce complexity and build time.
The specific skipped tests will be removed in a follow-up patch.
Source/WTF:
- Scripts/Preferences/WebPreferencesInternal.yaml:
Tools:
- DumpRenderTree/TestOptions.cpp:
(WTR::TestOptions::defaults):
- 10:37 AM Changeset in webkit [292546] by
-
- 2 edits in trunk/Tools
[Merge-Queue] Remove labels from pull request
https://bugs.webkit.org/show_bug.cgi?id=238909
<rdar://problem/91383048>
Reviewed by Aakash Jain.
- Tools/CISupport/ews-build/steps.py:
(RemoveLabelsFromPullRequest):
(RemoveLabelsFromPullRequest._addToLog):
(RemoveLabelsFromPullRequest.start): Remove active labels.
(RemoveLabelsFromPullRequest.getResultSummary):
(RemoveLabelsFromPullRequest.doStepIf): Only do step if pull request
number is defined.
(RemoveLabelsFromPullRequest.hideStepIf): Hide stip if step not executed.
Canonical link: https://commits.webkit.org/249384@main
- 10:28 AM Changeset in webkit [292545] by
-
- 2 edits in trunk/Tools
[Merge-Queue] Extract bug_id when updating pull-request (Follow-up fix)
https://bugs.webkit.org/show_bug.cgi?id=238772
<rdar://problem/91263398>
Unreviewed follow-up fix.
- Tools/CISupport/ews-build/steps.py:
(LeaveComment.start): Pass repository to GitHubMixin.comment_on_pr.
Canonical link: https://commits.webkit.org/249383@main
- 10:22 AM Changeset in webkit [292544] by
-
- 3 edits in trunk/Tools
[Merge-Queue] Update pull-request with landed content (Follow-up fix)
https://bugs.webkit.org/show_bug.cgi?id=238554
<rdar://problem/91047260>
Reviewed by Aakash Jain.
- Tools/CISupport/ews-build/steps.py:
(PushPullRequestBranch.start): Push canonicalized HEAD to remote branch.
- Tools/CISupport/ews-build/steps_unittest.py:
Canonical link: https://commits.webkit.org/249381@main
- 10:22 AM Changeset in webkit [292543] by
-
- 4 edits2 adds in trunk
Adjust and refactor some UA styles and logic for injecting Live Text
https://bugs.webkit.org/show_bug.cgi?id=238912
rdar://91383570
Reviewed by Aditya Keerthi.
Source/WebCore:
Adjust various Live-Text-related UA styles for "text recognition blocks", along with other miscellaneous
adjustments:
- Compute and set the border radius, based on the font size and overall height of the block.
- Add horizontal/vertical padding to text recognition, computed relative to the border radius.
- Allow hyphenation in blocks.
- Only center-align text in blocks if there are fewer than 3 text runs in the block.
- Adjust box shadows, backdrop filter blur radius and line height.
- Specify a
line-height, such thatline-heightfrom the host element doesn't erroneously apply to blocks. - Handle text recognition blocks with newline characters (\n) by injecting line break elements between text.
Test: fast/images/text-recognition/image-overlay-block-with-newlines.html
- dom/ImageOverlay.cpp:
(WebCore::ImageOverlay::updateSubtree):
(WebCore::ImageOverlay::fitElementToQuad):
(WebCore::ImageOverlay::updateWithTextRecognitionResult):
- html/shadow/imageOverlay.css:
(:host(:not(img)) div#image-overlay:-webkit-full-screen-document):
(div.image-overlay-block):
(div.image-overlay-line, .image-overlay-text, div.image-overlay-block):
(div.image-overlay-line, .image-overlay-text):
(.image-overlay-block):
LayoutTests:
Add a layout test to exercise "block"-style Live Text injection, in the case where the injected text contains
newlines. The resulting selected text should preserve the newline.
- fast/images/text-recognition/image-overlay-block-with-newlines-expected.txt: Added.
- fast/images/text-recognition/image-overlay-block-with-newlines.html: Added.
- 10:13 AM Changeset in webkit [292542] by
-
- 3 edits in trunk/Source/WebCore
Unreviewed, non-unified build fixes
https://bugs.webkit.org/show_bug.cgi?id=238933
- css/CSSToStyleMap.h: Forward declare Quad
- platform/graphics/filters/FilterEffectVector.h: Replace forward with
actual include for Ref.
- 10:06 AM Changeset in webkit [292541] by
-
- 2 edits in trunk/Source/WebCore
Remove redundant invalidateStyleForSubtree() calls
https://bugs.webkit.org/show_bug.cgi?id=238922
Reviewed by Antti Koivisto.
These calls were for :invalid/:valid validation, which now are invalidated using Style::PseudoClassChangeInvalidation.
- html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::maxLengthAttributeChanged):
(WebCore::HTMLInputElement::minLengthAttributeChanged):
- 10:03 AM Changeset in webkit [292540] by
-
- 23 edits in trunk
[JSC][ARMv7] Support proper near calls and JUMP_ISLANDS
https://bugs.webkit.org/show_bug.cgi?id=238143
Patch by Geza Lore <Geza Lore> on 2022-04-07
Reviewed by Yusuke Suzuki.
JSTests:
- microbenchmarks/let-const-tdz-environment-parsing-and-hash-consing-speed.js:
Source/JavaScriptCore:
Implement nearCall and nearTailCall as single instruction direct
branches on ARMv7/Thumb-2. (Will need to support these for Wasm JITs,
to implement threadSafePatchableNearcall.) To make this possible while
also having an executable pool size larger than the branch range, I
also ported JUMP_ISLANDS.
To port JUMP_ISLANDS, a reformulation of the region allocations was
necessary, which is now done in terms of the range of the
nearCall/nearTailCall macroassembler macros. For ARM64, the behaviour
should be identical.
The jump islad reservation on ARMv7 is set to 5% of executable memory
size, which is approximately the same as the baseline JIT code size
saving provided by using short branches for near calls, so the change
should be neutral overall with respect to executable memory
consumption.
Also made it possible for the --jitMemoryReservationSize option to
request JIT memory that is larger than the default hardcoded size
while using JUMP_ISLANDS (we need this for testing on ARMv7, which has
a smaller default executable pool size). To do this the region
allocators are no longer statically allocated but are held in a
FixedVector.
Also removed the unused repatchCompact methods from assemblers.
- assembler/ARM64Assembler.h:
- assembler/ARMv7Assembler.h:
(JSC::ARMv7Assembler::isEven):
(JSC::ARMv7Assembler::makeEven):
(JSC::ARMv7Assembler::bl):
(JSC::ARMv7Assembler::link):
(JSC::ARMv7Assembler::linkTailCall):
(JSC::ARMv7Assembler::linkCall):
(JSC::ARMv7Assembler::relinkCall):
(JSC::ARMv7Assembler::relinkTailCall):
(JSC::ARMv7Assembler::prepareForAtomicRelinkJumpConcurrently):
(JSC::ARMv7Assembler::prepareForAtomicRelinkCallConcurrently):
(JSC::ARMv7Assembler::replaceWithJump):
(JSC::ARMv7Assembler::canEmitJump):
(JSC::ARMv7Assembler::isBL):
(JSC::ARMv7Assembler::linkJumpT4):
(JSC::ARMv7Assembler::linkConditionalJumpT4):
(JSC::ARMv7Assembler::linkJumpAbsolute):
(JSC::ARMv7Assembler::linkBranch):
- assembler/AbstractMacroAssembler.h:
(JSC::AbstractMacroAssembler::repatchNearCall):
- assembler/AssemblerCommon.h:
(JSC::isInt):
- assembler/MIPSAssembler.h:
- assembler/MacroAssemblerARM64.h:
- assembler/MacroAssemblerARMv7.h:
(JSC::MacroAssemblerARMv7::nearCall):
(JSC::MacroAssemblerARMv7::nearTailCall):
(JSC::MacroAssemblerARMv7::linkCall):
- assembler/MacroAssemblerMIPS.h:
- assembler/MacroAssemblerRISCV64.h:
- assembler/MacroAssemblerX86Common.h:
- assembler/X86Assembler.h:
- bytecode/Repatch.cpp:
(JSC::linkPolymorphicCall):
- jit/ExecutableAllocator.cpp:
(JSC::initializeJITPageReservation):
Source/WTF:
Support constructor arguments for FixedVector element initialization.
- wtf/EmbeddedFixedVector.h:
- wtf/FixedVector.h:
(WTF::FixedVector::FixedVector):
- wtf/PlatformEnable.h:
- wtf/TrailingArray.h:
(WTF::TrailingArray::TrailingArray):
- wtf/Vector.h:
(WTF::VectorTypeOperations::initializeWithArgs):
- 9:10 AM Changeset in webkit [292539] by
-
- 8 edits in trunk
Use the same callback mechanism for ServiceWorker openWindow and navigate in UIProcess
https://bugs.webkit.org/show_bug.cgi?id=238924
Reviewed by Chris Dumez.
Source/WebKit:
Reuse WebFrameProxy navigation delegate for openWindow once the main frame is created.
This ensures we get the same behavior for both code paths and makes sure openWindow does not hang if a delegate cancels the load.
Covered by API test.
- UIProcess/WebFrameProxy.cpp:
(WebKit::WebFrameProxy::transferNavigationCallbackToFrame):
(WebKit::WebFrameProxy::setNavigationCallback):
- UIProcess/WebFrameProxy.h:
(WebKit::WebFrameProxy::transferNavigationCallbackToFrame): Deleted.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didCreateMainFrame):
(WebKit::WebPageProxy::callLoadCompletionHandlersIfNecessary):
- UIProcess/WebPageProxy.h:
- UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::openWindowFromServiceWorker):
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
(-[ServiceWorkerPSONNavigationDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
(-[ServiceWorkerPSONNavigationDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
(-[ServiceWorkerOpenWindowWebsiteDataStoreDelegate initWithConfiguration:]):
(-[ServiceWorkerOpenWindowWebsiteDataStoreDelegate websiteDataStore:openWindow:fromServiceWorkerOrigin:completionHandler:]):
- 9:09 AM Changeset in webkit [292538] by
-
- 10 edits in trunk/Tools
[git-webkit] Clear merging-blocked label on PR update
https://bugs.webkit.org/show_bug.cgi?id=238907
<rdar://problem/91380962>
Reviewed by Aakash Jain.
- Tools/Scripts/libraries/webkitbugspy/setup.py: Bump version.
- Tools/Scripts/libraries/webkitbugspy/webkitbugspy/init.py: Ditto.
- Tools/Scripts/libraries/webkitbugspy/webkitbugspy/github.py:
(Tracker.set): Empty list should trigger request.
- Tools/Scripts/libraries/webkitbugspy/webkitbugspy/issue.py:
(Issue.set_labels): Pass self to tracker.set.
- Tools/Scripts/libraries/webkitbugspy/webkitbugspy/mocks/github.py:
(GitHub.init): Set self.labels from passed argument.
(GitHub._issue): Handle empty list.
- Tools/Scripts/libraries/webkitscmpy/setup.py: Bump version.
- Tools/Scripts/libraries/webkitscmpy/webkitscmpy/init.py: Ditto.
- Tools/Scripts/libraries/webkitscmpy/webkitscmpy/program/pull_request.py:
(PullRequest): Add BLOCKED_LABEL constant.
(PullRequest.main): Remove 'merging-blocked' label from existing pull-request
before updating pull-request.
- Tools/Scripts/libraries/webkitscmpy/webkitscmpy/test/pull_request_unittest.py:
Canonical link: https://commits.webkit.org/249376@main
- 8:29 AM Changeset in webkit [292537] by
-
- 2 edits in trunk/LayoutTests
Fix the expected failure type.
Unreviewed.
- platform/mac-wk1/TestExpectations:
- 8:26 AM Changeset in webkit [292536] by
-
- 2 edits in trunk/Tools
[Merge-Queue] Share code for _addToLog
https://bugs.webkit.org/show_bug.cgi?id=238913
<rdar://problem/91383969>
Reviewed by Aakash Jain.
- Tools/CISupport/ews-build/steps.py:
(AddToLogMixin): Base class for all classes using _addToLog
(ConfigureBuild): Use from AddToLogMixin.
(AnalyzeChange): Ditto.
(BugzillaMixin): Ditto.
(ValidateCommitterAndReviewer): Ditto.
(BlockPullRequest): Ditto.
(RunBindingsTests): Ditto.
(WebKitPyTest): Ditto.
(CompileWebKit): Ditto.
(RunJavaScriptCoreTests): Ditto.
(AnalyzeJSCTestsResults): Ditto.
(RunWebKitTests): Ditto.
(AnalyzeAPITestsResults): Ditto.
(UpdatePullRequest): Ditto.
(ConfigureBuild._addToLog): Deleted.
(AnalyzeChange._addToLog): Deleted.
(BugzillaMixin._addToLog): Deleted.
(ValidateCommitterAndReviewer._addToLog): Deleted.
(BlockPullRequest._addToLog): Deleted.
(RunBindingsTests._addToLog): Deleted.
(WebKitPyTest._addToLog): Deleted.
(CompileWebKit._addToLog): Deleted.
(RunJavaScriptCoreTests._addToLog): Deleted.
(AnalyzeJSCTestsResults._addToLog): Deleted.
(RunWebKitTests._addToLog): Deleted.
(AnalyzeAPITestsResults._addToLog): Deleted.
(CheckPatchStatusOnEWSQueues._addToLog): Deleted.
(UpdatePullRequest._addToLog): Deleted.
Canonical link: https://commits.webkit.org/249374@main
- 7:43 AM Changeset in webkit [292535] by
-
- 3 edits in trunk/Source/JavaScriptCore
[JSC][32bit] Use constexpr tags instead of enums
https://bugs.webkit.org/show_bug.cgi?id=238926
Patch by Geza Lore <Geza Lore> on 2022-04-07
Reviewed by Yusuke Suzuki.
The *Tag values are just 32-bit constants, so define them as
constexpr. This reduces compiler nuisance warnings about enum
comparisons.
- dfg/DFGSpeculativeJIT.cpp:
- runtime/JSCJSValue.h:
- 7:40 AM Changeset in webkit [292534] by
-
- 14 edits in trunk/Source
Drop unused EditorClient::getAutoCorrectSuggestionForMisspelledWord()
https://bugs.webkit.org/show_bug.cgi?id=238897
Reviewed by Wenson Hsieh.
Source/WebCore:
- editing/Editor.cpp:
(WebCore::Editor::markMisspellingsAfterTypingToWord):
- editing/TextCheckingHelper.cpp:
(WebCore::findMisspellings):
- loader/EmptyClients.cpp:
- platform/text/TextCheckerClient.h:
Source/WebKit:
- WebProcess/WebCoreSupport/WebEditorClient.cpp:
(WebKit::WebEditorClient::getAutoCorrectSuggestionForMisspelledWord): Deleted.
- WebProcess/WebCoreSupport/WebEditorClient.h:
Source/WebKitLegacy/mac:
- WebCoreSupport/WebEditorClient.h:
(WebEditorClient::getAutoCorrectSuggestionForMisspelledWord): Deleted.
- WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::getAutoCorrectSuggestionForMisspelledWord): Deleted.
Source/WebKitLegacy/win:
- WebCoreSupport/WebEditorClient.cpp:
(WebEditorClient::getAutoCorrectSuggestionForMisspelledWord): Deleted.
- WebCoreSupport/WebEditorClient.h:
- 6:34 AM Changeset in webkit [292533] by
-
- 8 edits1 copy in trunk/Source/WebKit
IPC::Connection should support diverting all messages to a message queue in other thread
https://bugs.webkit.org/show_bug.cgi?id=238608
Patch by Kimmo Kinnunen <kkinnunen@apple.com> on 2022-04-07
Reviewed by Simon Fraser.
Previously, it was possible to divert all messages to certain ReceiverName to
a message queue. This is used in IPC streams functionality.
Add a possibility to divert all messages to a message queue. Instead of
passing ReceiverName, id pair to Connection, pass new struct ReceiverMatcher.
Use ReceiverMatcher instead of pair optional<ReceiverName>, optional<id>, since
nullopt, id is not a valid case.
This will be used in future patch for the case where IPC::Connection is created for
the sole purpose of using it together with IPC stream connection.
This also clarifies the overloaded use of destinationID 0 as a wildcard as well as
a valid message destination.
Also implement the possibility to divert all messages to particular ReceiverName,
id 0. Previously this was signifying the destination ID wildcard.
No new tests, refactor.
- Platform/IPC/Connection.cpp:
(IPC::Connection::SyncMessageState::enqueueMatchingMessages):
(IPC::Connection::enqueueMatchingMessagesToMessageReceiveQueue):
(IPC::Connection::addMessageReceiveQueue):
(IPC::Connection::removeMessageReceiveQueue):
(IPC::Connection::addWorkQueueMessageReceiver):
(IPC::Connection::removeWorkQueueMessageReceiver):
(IPC::Connection::addThreadMessageReceiver):
(IPC::Connection::removeThreadMessageReceiver):
- Platform/IPC/Connection.h:
- Platform/IPC/Decoder.h:
(IPC::Decoder::matches const):
- Platform/IPC/MessageReceiveQueueMap.cpp:
(IPC::MessageReceiveQueueMap::addImpl):
(IPC::MessageReceiveQueueMap::remove):
(IPC::MessageReceiveQueueMap::get const):
- Platform/IPC/MessageReceiveQueueMap.h:
(IPC::MessageReceiveQueueMap::add):
- Platform/IPC/ReceiverMatcher.h: Copied from Source/WebKit/Platform/IPC/MessageReceiveQueueMap.h.
(IPC::ReceiverMatcher::ReceiverMatcher):
(IPC::ReceiverMatcher::createForLegacyAPI):
(IPC::ReceiverMatcher::matches const):
- Platform/IPC/StreamServerConnection.cpp:
(IPC::StreamServerConnectionBase::startReceivingMessagesImpl):
(IPC::StreamServerConnectionBase::stopReceivingMessagesImpl):
- WebKit.xcodeproj/project.pbxproj:
- 6:28 AM Changeset in webkit [292532] by
-
- 4 edits4 adds in trunk
A float avoider should never take a vertical position where a float is present even when its used width is zero
https://bugs.webkit.org/show_bug.cgi?id=238895
Reviewed by Antti Koivisto.
Source/WebCore:
A zero width available space is never a valid vertical position for a float avoider even when its width is zero too.
Test: fast/block/float/float-avoider-with-zero-width.html
- rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::getClearDelta): skip and check the next candidate poisition when no space is available.
LayoutTests:
- TestExpectations: inline-size-bfc-floats.html: never produced correct rendering, the red box just happened to be hidden (which made this test pass).
- fast/block/float/float-avoider-with-zero-width-expected.html: Added.
- fast/block/float/float-avoider-with-zero-width.html: Added.
- 5:57 AM Changeset in webkit [292531] by
-
- 5 edits in trunk
[:has() pseudo-class] Support invalidation for :autofill pseudo class
https://bugs.webkit.org/show_bug.cgi?id=238899
Reviewed by Antti Koivisto.
Source/WebCore:
Tests: LayoutTests/fast/forms/input-autofilled-*.html
I've only added tests for the :autofill case, since the other pseudo-classes are supposed to be internal-only.
- html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::setAutoFilled):
(WebCore::HTMLInputElement::setAutoFilledAndViewable):
(WebCore::HTMLInputElement::setAutoFilledAndObscured):
LayoutTests:
- fast/forms/input-autofilled-expected.txt:
- fast/forms/input-autofilled.html:
- 4:41 AM Changeset in webkit [292530] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed. [GStreamer] Fix compile warning
- Modules/mediastream/gstreamer/GStreamerPeerConnectionBackend.cpp:
(WebCore::gstreamerRtpCapatiblities): Initialize RTCRtpCodecCapability::channels.
- 3:57 AM Changeset in webkit [292529] by
-
- 3 edits in trunk/Source/WebKit
Unreviewed. Fix GTK build after r292506
- WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMediaList.cpp:
(webkit_dom_media_list_set_media_text):
- WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNodeGtk.cpp:
(webkit_dom_node_set_node_value):
(webkit_dom_node_set_text_content):
- 3:57 AM Changeset in webkit [292528] by
-
- 2 edits in trunk
[GTK] Turning on the address sanitizer should disable GIR and documentation
https://bugs.webkit.org/show_bug.cgi?id=238868
Reviewed by Adrian Perez de Castro.
- Source/cmake/OptionsGTK.cmake: Disable documentation when the address
sanitizer is on. Documentation depends on GIR. Also fix the adjustment
of the documentation setting when building on Mac. This also has to
happen before the call to find_package(GI).
- 3:15 AM Changeset in webkit [292527] by
-
- 10 edits in trunk/Source
[GTK][WPE] RemoteInspector add support for IPv6
https://bugs.webkit.org/show_bug.cgi?id=238797
Reviewed by Adrian Perez de Castro.
Source/JavaScriptCore:
- inspector/remote/glib/RemoteInspectorServer.cpp:
(Inspector::RemoteInspectorServer::start): Receive a GSocketAddress instead of address and port parameters.
- inspector/remote/glib/RemoteInspectorServer.h:
Source/WebKit:
Make it possible to connect to remote inspector server using IPv6 address.
- UIProcess/API/glib/WebKitInitialize.cpp:
(WebKit::initializeRemoteInspectorServer): Parse IPv6 address and build GSocketAddress to pass to inspector ot
HTTP server.
- UIProcess/API/gtk/WebKitRemoteInspectorProtocolHandler.cpp:
(WebKit::RemoteInspectorProtocolHandler::handleRequest): RemoteInspectorClient now expects host and port in a
single String.
- UIProcess/Inspector/glib/RemoteInspectorClient.cpp:
(WebKit::RemoteInspectorClient::RemoteInspectorClient): Receive the host and port in a String.
- UIProcess/Inspector/glib/RemoteInspectorClient.h:
- UIProcess/Inspector/glib/RemoteInspectorHTTPServer.cpp:
- UIProcess/Inspector/glib/RemoteInspectorHTTPServer.h:
- 3:11 AM Changeset in webkit [292526] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed build fix after r292525.
Silence an unused parameter warning in vanilla builds (w/o --layer-based-svg-engine).
- rendering/RenderLayerModelObject.cpp:
(WebCore::rendererNeedsPixelSnapping):
- 3:06 AM Changeset in webkit [292525] by
-
- 13 edits in trunk/Source/WebCore
Unify 'transform-box' reference box computation
https://bugs.webkit.org/show_bug.cgi?id=237554
Reviewed by Simon Fraser.
Currently the code to compute the reference box, according to the CSS 'transform-box'
property is sprinkled over various places: CSSComputedStyleDeclaration, SVGRenderSupport,
RenderBox, parts in RenderLayer.
Cleanup and unify the code in a new 'FloatRect referenceBoxRect(CSSBoxType) const' method.
RenderElement::referenceBoxRect(CSSBoxType) contains the SVG specific implementation, and
RenderBox::referenceBoxRect() the HTML/CSS one (previously named referenceBox()).
- 12:11 AM Changeset in webkit [292524] by
-
- 11 edits2 adds4 deletes in trunk
Grid items that establish an independent formatting context should not be subgrids.
https://bugs.webkit.org/show_bug.cgi?id=237692
Reviewed by Alan Bujtas.
LayoutTests/imported/w3c:
- web-platform-tests/css/css-grid/subgrid/abs-pos-003-expected.html: Removed.
- web-platform-tests/css/css-grid/subgrid/abs-pos-003.html: Removed.
- web-platform-tests/css/css-grid/subgrid/abs-pos-004-expected.html: Removed.
- web-platform-tests/css/css-grid/subgrid/abs-pos-004.html: Removed.
- web-platform-tests/css/css-grid/subgrid/independent-formatting-context-expected.html: Added.
- web-platform-tests/css/css-grid/subgrid/independent-formatting-context.html: Added.
Removes tests that expect position:absolute combined with grid-template-X: subgrid to work.
Adds new test to confirm that elements that establish an independent formatting context can't
also be a subgrid.
Source/WebCore:
New WPT css/css-grid/subgrid/independent-formatting-context.html added to check this case.
- rendering/RenderBox.cpp:
(WebCore::RenderBox::createsNewFormattingContext const):
- rendering/RenderBox.h:
(WebCore::RenderBox::markForPaginationRelayoutIfNeeded):
(WebCore::RenderBox::isWritingModeRoot const): Deleted.
(WebCore::RenderBox::isDeprecatedFlexItem const): Deleted.
(WebCore::RenderBox::isFlexItemIncludingDeprecated const): Deleted.
- rendering/RenderElement.cpp:
(WebCore::RenderElement::createsNewFormattingContext const):
- rendering/RenderElement.h:
(WebCore::RenderElement::isWritingModeRoot const):
(WebCore::RenderElement::isDeprecatedFlexItem const):
(WebCore::RenderElement::isFlexItemIncludingDeprecated const):
- rendering/RenderObject.cpp:
(WebCore::RenderObject::isBlockContainer const):
- rendering/RenderObject.h:
Grid items establish a new formatting context, unless they're a subgrid [1], but subgrid
is disabled if any other property causes the element to establish a formatting context [2].
Adds a new helper to check everything except grid, so that we can resolve this without
infinite recursion.
Stops writing-mode changes from establishing an independent formatting context if
the box is a grid container, since this should only happen is the box is a block
container [3].
Adds new helper for isBlockContainer, since writing-mode changes use it.
[1] https://drafts.csswg.org/css-grid-2/#grid-item-display
[2] https://drafts.csswg.org/css-grid-2/#subgrid-listing
[3] https://drafts.csswg.org/css-writing-modes/#block-flow
- rendering/RenderGrid.cpp:
(WebCore::RenderGrid::isSubgrid const):
(WebCore::RenderGrid::createsNewFormattingContext const):
(WebCore::RenderGrid::mayBeSubgridExcludingAbsPos const): Deleted.
(WebCore::RenderGrid::gridSpanCoversRealTracks const): Deleted.
- rendering/RenderGrid.h:
- rendering/style/GridPositionsResolver.cpp:
(WebCore::adjustGridPositionsFromStyle):
Makes isSubgrid return false if the element establishes an independent formatting context
(excluding contexts established by being a grid item), and removes no longer needed code
for handling position:absolute subgrids.
Apr 6, 2022:
- 9:29 PM Changeset in webkit [292523] by
-
- 4 edits in trunk
[:has() pseudo-class] Support invalidation for :placeholder-shown
https://bugs.webkit.org/show_bug.cgi?id=238894
Reviewed by Simon Fraser.
LayoutTests/imported/w3c:
- web-platform-tests/css/selectors/invalidation/input-pseudo-classes-in-has-expected.txt:
Source/WebCore:
Test: imported/w3c/web-platform-tests/css/selectors/invalidation/input-pseudo-classes-in-has.html
Use same pattern as other input pseudo classes.
- html/HTMLTextFormControlElement.cpp:
(WebCore::HTMLTextFormControlElement::updatePlaceholderVisibility):
- 7:44 PM Changeset in webkit [292522] by
-
- 4 edits4 adds in trunk
NBSP characters drawn in fonts that don't support the space character turn into boxes
https://bugs.webkit.org/show_bug.cgi?id=238836
<rdar://problem/91130503>
Reviewed by Alan Bujtas.
Source/WebCore:
We have some historical code in WebKit where we swap out the non-breaking space glyph
for the space glyphs when rendering. This is not what the other browsers do; they will
faithfully render the non-breaking space glyph. This patch aligns with the other
browsers.
This patch also fixes a similar problem with tab characters. Other browsers never
render any visible tab glyphs, even if the font has a visible glyph for the tab
character. This patch implements this.
This patch also only clobbers the glyphs used for carriageReturn and newlineCharacter
if the replacement glyph exists.
Test: fast/text/nbsp-no-space.html
- platform/graphics/WidthIterator.cpp:
(WebCore::WidthIterator::applyCSSVisibilityRules):
LayoutTests:
- fast/text/nbsp-no-space-expected.html: Added.
- fast/text/nbsp-no-space.html: Added.
- fast/text/resources/Ahem-nbsp-no-space.ttf: Added. Supports NBSP but not space.
- fast/text/resources/Ahem-visible-tab-and-space.ttf: Added. Has visible glyphs for tab and space.
- 7:18 PM Changeset in webkit [292521] by
-
- 2 edits in trunk/LayoutTests
REBASLINE: [ Monterey ] fast/text/khmer-lao-font.html is a constant text failure
Unreviewed test rebasline.
- platform/mac/fast/text/khmer-lao-font-expected.txt:
- 6:21 PM Changeset in webkit [292520] by
-
- 7 edits in trunk
[ Mac ] accessibility/mac/expanded-notification.html is a flaky text failure
https://bugs.webkit.org/show_bug.cgi?id=238830
rdar://91313419
Reviewed by Chris Fleizach.
Source/WebCore:
Test: accessibility/mac/expanded-notification.html
This patch fixes the flackiness of this test and also fixes this test
in isolated tree mode that was timing out.
Instead of AXIsolatedTree::updateChildren on the AXExpandedChanged
notification, we now update the ISExpanded property in the target object.
If new children are added or removed from the tree as the result of an
element's expanded state change, those tree mutations should generate
separate AXChildrenChanged notifications.
- accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::updateIsolatedTree):
- accessibility/isolatedtree/AXIsolatedTree.cpp:
(WebCore::AXIsolatedTree::updateNodeProperty):
LayoutTests:
Fixes the flakiness by checking the number of notifications received in
the same async block where the changes are occuring. This now passes
with no flakiness in both isolated tree mode on and off.
- accessibility/mac/expanded-notification-expected.txt:
- accessibility/mac/expanded-notification.html:
- platform/mac/TestExpectations:
- 6:08 PM Changeset in webkit [292519] by
-
- 2 edits in trunk/Tools
Use 'open' command on macOS to launch URL should pass Safari app bundle instead of binary
https://bugs.webkit.org/show_bug.cgi?id=238915
<rdar://91384008>
Reviewed by Stephanie Lewis.
Pass 'Safari.app' instead of 'Safari.app/Contents/MacOS/Safari' when launching URL via 'open' command.
- Scripts/webkitpy/benchmark_runner/browser_driver/osx_safari_driver.py:
(OSXSafariDriver.launch_url):
Canonical link: https://commits.webkit.org/249357@main
- 6:06 PM Changeset in webkit [292518] by
-
- 1 copy in tags/Safari-613.2.4.1.3
Tag Safari-613.2.4.1.3.
- 5:54 PM Changeset in webkit [292517] by
-
- 9 edits in branches/safari-613.2.4.1-branch/Source
Versioning.
WebKit-7613.2.4.1.3
- 5:49 PM Changeset in webkit [292516] by
-
- 1 copy in tags/Safari-614.1.7.7
Tag Safari-614.1.7.7.
- 5:47 PM Changeset in webkit [292515] by
-
- 9 edits in branches/safari-614.1.7-branch/Source
Versioning.
WebKit-7614.1.7.7
- 4:35 PM Changeset in webkit [292514] by
-
- 15 edits1 move769 adds in trunk/PerformanceTests
Add versions of Speedometer2.0 and 2.1 in PerformanceTests
https://bugs.webkit.org/show_bug.cgi?id=238906
Rubber stamped by Yusuke Suzuki.
After this change, we'll end up with PerformanceTests/Speedometer2.0 and
PerformanceTests/Speedometer2.1.
- 3:47 PM Changeset in webkit [292513] by
-
- 5 edits in trunk/Source/bmalloc
[libpas] Run TLC decommit rarely
https://bugs.webkit.org/show_bug.cgi?id=238855
Reviewed by Saam Barati.
We were running libpas TLC decommit every time. But it is too frequent. We should capture IsoHeap allocation pattern
with much more longer period, and perform TLC decommit in such a low-frequency rate.
This patch changes it so that we run it only once a 128 scavenger run. It is roughly once a 13 seconds.
- libpas/src/libpas/pas_scavenger.c:
(scavenger_thread_main):
(pas_scavenger_clear_all_caches):
- libpas/src/libpas/pas_thread_local_cache.c:
(pas_thread_local_cache_for_all):
- libpas/src/libpas/pas_thread_local_cache.h:
- libpas/src/test/TLCDecommitTests.cpp:
(std::testTLCDecommit):
(std::testTLCDecommitThenDestroyImpl):
(std::testTLCDecommitThenDeallocate):
- 3:41 PM Changeset in webkit [292512] by
-
- 58 edits in trunk/Source/WebCore
[GPU Process] Make SVGFEImageElement::filterEffect() create an ImageBuffer compatible with the destination GraphicsContext
https://bugs.webkit.org/show_bug.cgi?id=236573
rdar://89209695
Reviewed by Simon Fraser.
Pass a GraphicsContext to CSSFilter::create() and SVGFilter::create().
If there is no GraphicsContext available, like the call we make in
CSSFilterImageValue::image(), pass a NullGraphicsContext(). This will
create a local ImageBuffer. And this is exactly what we want.
The GraphicsContext will be passed from SVGFilter::buildFilterExpression()
to all the overridden filterEffect(). SVGFEImageElement::filterEffect()
is the only one that is going to use it. It calls GraphicsContext::
createImageBuffer() to create an ImageBuffer for drawing the SVGElement.
In preparation to remove SVGFilterBuilder:
-- Pass an SVGFilter instead of SVGFilterBuilder to all the overridden
filterEffect() and all the overridden lightSource().
-- Make SVGFilterBuilder::calculateFilterOutsets() a static method.
-- Remove the members: SVGFilterBuilder::m_tragetBoundingBox and
SVGFilterBuilder::m_primitiveUnits since they exist in SVGFilter.
- css/CSSFilterImageValue.cpp:
(WebCore::CSSFilterImageValue::image):
- page/FrameView.cpp:
(WebCore::FrameView::adjustPageHeightDeprecated):
- platform/graphics/NullGraphicsContext.h:
- rendering/CSSFilter.cpp:
(WebCore::CSSFilter::create):
(WebCore::calculateReferenceFilterOutsets):
(WebCore::createReferenceFilter):
(WebCore::CSSFilter::buildFilterFunctions):
- rendering/CSSFilter.h:
- rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateEventRegion):
- rendering/RenderLayerFilters.cpp:
(WebCore::RenderLayerFilters::beginFilterEffect):
- rendering/svg/RenderSVGResourceFilter.cpp:
(WebCore::RenderSVGResourceFilter::applyResource):
- rendering/svg/SVGRenderTreeAsText.cpp:
(WebCore::writeSVGResourceContainer):
- svg/SVGFEBlendElement.cpp:
(WebCore::SVGFEBlendElement::filterEffect const):
- svg/SVGFEBlendElement.h:
- svg/SVGFEColorMatrixElement.cpp:
(WebCore::SVGFEColorMatrixElement::filterEffect const):
- svg/SVGFEColorMatrixElement.h:
- svg/SVGFEComponentTransferElement.cpp:
(WebCore::SVGFEComponentTransferElement::filterEffect const):
- svg/SVGFEComponentTransferElement.h:
- svg/SVGFECompositeElement.cpp:
(WebCore::SVGFECompositeElement::filterEffect const):
- svg/SVGFECompositeElement.h:
- svg/SVGFEConvolveMatrixElement.cpp:
(WebCore::SVGFEConvolveMatrixElement::filterEffect const):
- svg/SVGFEConvolveMatrixElement.h:
- svg/SVGFEDiffuseLightingElement.cpp:
(WebCore::SVGFEDiffuseLightingElement::filterEffect const):
- svg/SVGFEDiffuseLightingElement.h:
- svg/SVGFEDisplacementMapElement.cpp:
(WebCore::SVGFEDisplacementMapElement::filterEffect const):
- svg/SVGFEDisplacementMapElement.h:
- svg/SVGFEDistantLightElement.cpp:
(WebCore::SVGFEDistantLightElement::lightSource const):
- svg/SVGFEDistantLightElement.h:
- svg/SVGFEDropShadowElement.cpp:
(WebCore::SVGFEDropShadowElement::filterEffect const):
- svg/SVGFEDropShadowElement.h:
- svg/SVGFEFloodElement.cpp:
(WebCore::SVGFEFloodElement::filterEffect const):
- svg/SVGFEFloodElement.h:
- svg/SVGFEGaussianBlurElement.cpp:
(WebCore::SVGFEGaussianBlurElement::filterEffect const):
- svg/SVGFEGaussianBlurElement.h:
- svg/SVGFEImageElement.cpp:
(WebCore::SVGFEImageElement::imageBufferForEffect const):
(WebCore::SVGFEImageElement::filterEffect const):
(WebCore::scaledImageBufferRect): Deleted.
(WebCore::clampingScaleForImageBufferSize): Deleted.
(WebCore::createImageBuffer): Deleted.
- svg/SVGFEImageElement.h:
- svg/SVGFELightElement.h:
- svg/SVGFEMergeElement.cpp:
(WebCore::SVGFEMergeElement::filterEffect const):
- svg/SVGFEMergeElement.h:
- svg/SVGFEMorphologyElement.cpp:
(WebCore::SVGFEMorphologyElement::filterEffect const):
- svg/SVGFEMorphologyElement.h:
- svg/SVGFEOffsetElement.cpp:
(WebCore::SVGFEOffsetElement::filterEffect const):
- svg/SVGFEOffsetElement.h:
- svg/SVGFEPointLightElement.cpp:
(WebCore::SVGFEPointLightElement::lightSource const):
- svg/SVGFEPointLightElement.h:
- svg/SVGFESpecularLightingElement.cpp:
(WebCore::SVGFESpecularLightingElement::filterEffect const):
- svg/SVGFESpecularLightingElement.h:
- svg/SVGFESpotLightElement.cpp:
(WebCore::SVGFESpotLightElement::lightSource const):
- svg/SVGFESpotLightElement.h:
- svg/SVGFETileElement.cpp:
(WebCore::SVGFETileElement::filterEffect const):
- svg/SVGFETileElement.h:
- svg/SVGFETurbulenceElement.cpp:
(WebCore::SVGFETurbulenceElement::filterEffect const):
- svg/SVGFETurbulenceElement.h:
- svg/SVGFilterElement.cpp:
- svg/SVGFilterPrimitiveStandardAttributes.cpp:
- svg/SVGFilterPrimitiveStandardAttributes.h:
- svg/graphics/filters/SVGFilter.cpp:
(WebCore::SVGFilter::create):
- svg/graphics/filters/SVGFilter.h:
- svg/graphics/filters/SVGFilterBuilder.cpp:
(WebCore::SVGFilterBuilder::buildFilterExpression):
(WebCore::SVGFilterBuilder::calculateFilterOutsets):
(WebCore::SVGFilterBuilder::SVGFilterBuilder): Deleted.
- svg/graphics/filters/SVGFilterBuilder.h:
(WebCore::SVGFilterBuilder::targetBoundingBox const): Deleted.
(WebCore::SVGFilterBuilder::primitiveUnits const): Deleted.
(): Deleted.
- 3:21 PM Changeset in webkit [292511] by
-
- 2 edits in trunk/Source/WebCore
FilterImage::imageBufferFromPixelBuffer() can trigger accelerated buffers in the web process
https://bugs.webkit.org/show_bug.cgi?id=238848
Unreviewed.
Remove an icorrect FIXME comment now that I've verified that the issue does not occur.
- platform/graphics/filters/FilterImage.cpp:
(WebCore::FilterImage::imageBufferFromPixelBuffer):
- 3:15 PM Changeset in webkit [292510] by
-
- 9 edits in branches/safari-614.1.9-branch/Source
Versioning.
WebKit-7614.1.9.1
- 3:10 PM Changeset in webkit [292509] by
-
- 5 edits in trunk/Tools
[Merge-Queue] Run
git svn fetch
https://bugs.webkit.org/show_bug.cgi?id=238759
<rdar://problem/91258277>
Reviewed by Aakash Jain.
- Tools/CISupport/ews-build/factories.py:
(MergeQueueFactory.init): Add GitSvnFetch step.
- Tools/CISupport/ews-build/factories_unittest.py:
(TestExpectedBuildSteps): Ditto.
- Tools/CISupport/ews-build/steps.py:
(UpdatePullRequest.hideStepIf):
(GitSvnFetch):
(GitSvnFetch.init):git svn fetchwill have a non-zero exit code if the Subversion
record of changes does not match the git one, which will happen imiediately after committing.
(GitSvnFetch.getResultSummary):
(GitSvnFetch.evaluateCommand): Support expected failure.
- Tools/CISupport/ews-build/steps_unittest.py:
Canonical link: https://commits.webkit.org/249352@main
- 2:57 PM Changeset in webkit [292508] by
-
- 5 edits in trunk
Fix expected, actual links for variant-based imported wpt tests
https://bugs.webkit.org/show_bug.cgi?id=238832
rdar://problem/91313891
Reviewed by Brent Fulgham.
Tools:
Ensure that the workaround involving "len(fs.splitext(output_basename)[1]) - 1 > 5"
does not affect imported templated wpt tests that may match that condition, such as
".../pbkdf2.https.any.worker.html."
- Scripts/webkitpy/layout_tests/controllers/test_result_writer.py:
(TestResultWriter.output_filename):
- Scripts/webkitpy/layout_tests/controllers/test_result_writer_unittest.py:
(TestResultWriterTest.test_output_filename):
(TestResultWriterTest):
(TestResultWriterTest.test_output_filename_variant):
LayoutTests:
The changes to LayoutTests/fast/harness/results.html were wiped when
preparing https://bugs.webkit.org/show_bug.cgi?id=231544, causing the
links not to match. This patch fixes it.
- fast/harness/results.html:
- 2:49 PM Changeset in webkit [292507] by
-
- 3 edits in trunk/LayoutTests
[ Mac , iOS Debug ] imported/w3c/web-platform-tests/html/cross-origin-opener-policy/resource-popup.https.html is a flaky failure.
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:Fixed typo
- platform/mac-wk2/TestExpectations:Fixed typo
- 2:29 PM Changeset in webkit [292506] by
-
- 18 edits in trunk/Source
Drop unnecessary ExceptionOr<> return types
https://bugs.webkit.org/show_bug.cgi?id=238876
Reviewed by Alex Christensen.
Drop unnecessary ExceptionOr<> return types as they may cause unnecessary branching at runtime.
Source/WebCore:
- animation/KeyframeEffect.cpp:
(WebCore::KeyframeEffect::create):
- animation/KeyframeEffect.h:
- css/MediaList.cpp:
(WebCore::MediaList::setMediaText):
- css/MediaList.h:
- html/CustomPaintCanvas.cpp:
(WebCore::CustomPaintCanvas::getContext):
- html/CustomPaintCanvas.h:
- html/CustomPaintImage.cpp:
(WebCore::CustomPaintImage::doCustomPaint):
Source/WebKitLegacy/mac:
- DOM/DOMMediaList.mm:
(-[DOMMediaList setMediaText:]):
- 2:26 PM Changeset in webkit [292505] by
-
- 4 edits in trunk/LayoutTests
Remove Mojave references in TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=238890
<rdar://problem/91375011>
Unreviewed test gardening.
- LayoutTests/platform/mac-wk1/TestExpectations: Remove Mojave references.
- LayoutTests/platform/mac-wk2/TestExpectations: Ditto.
- LayoutTests/platform/mac/TestExpectations: Ditto.
Canonical link: https://commits.webkit.org/249348@main
- 2:01 PM Changeset in webkit [292504] by
-
- 2 edits in trunk/Source/WebCore
Stop using the shared IOSurfacePool for WebGL
https://bugs.webkit.org/show_bug.cgi?id=238835
Reviewed by Kimmo Kinnunen.
Opt WebGL out of using the IOSurfacePool for its buffers; this would have almost never
used a surface from the pool, because only RemoteLayerBackingStore put surfaces in the
pool so it would be rare for the size to match. In addition, the pool has insufficient
guarantees about surface state.
- platform/graphics/cocoa/GraphicsContextGLCocoa.mm:
(WebCore::GraphicsContextGLCocoa::allocateAndBindDisplayBufferBacking):
- 1:50 PM Changeset in webkit [292503] by
-
- 1 copy in tags/Safari-614.1.9
Tag Safari-614.1.9.
- 1:50 PM Changeset in webkit [292502] by
-
- 4 edits in trunk/LayoutTests
Remove Catalina references in TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=238886
<rdar://problem/91373532>
Unreviewed test gardening.
- LayoutTests/platform/mac-wk1/TestExpectations: Remove Catalina references.
- LayoutTests/platform/mac-wk2/TestExpectations: Ditto.
- LayoutTests/platform/mac/TestExpectations: Ditto.
Canonical link: https://commits.webkit.org/249346@main
- 1:50 PM Changeset in webkit [292501] by
-
- 1 delete in tags/Safari-614.1.9
Remove tag.
- 1:47 PM Changeset in webkit [292500] by
-
- 1 edit in branches/safari-614.1.9-branch/Source/WebKit/ChangeLog
Fix the CG_DISPLAY_LIST_BACKED_IMAGE_BUFFER build
- Shared/RemoteLayerTree/CGDisplayListImageBufferBackend.h:
- 1:47 PM Changeset in webkit [292499] by
-
- 2 edits in branches/safari-614.1.9-branch/Source/WebKit
Fix the CG_DISPLAY_LIST_BACKED_IMAGE_BUFFER build
- Shared/RemoteLayerTree/CGDisplayListImageBufferBackend.h:
- 1:47 PM Changeset in webkit [292498] by
-
- 2 edits in branches/safari-614.1.9-branch/Source/WebKit
Fix the CG_DISPLAY_LIST_BACKED_IMAGE_BUFFER build
https://bugs.webkit.org/show_bug.cgi?id=238783
Unreviewed build fix.
ConcreteImageBuffer<>::create() needs a default CreationContext argument.
- Shared/RemoteLayerTree/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStore::ensureFrontBuffer):
- 1:23 PM Changeset in webkit [292497] by
-
- 2 edits in trunk/Source/WebCore
Fix assertion in CSSPropertyAnimationWrapperMap constructor
https://bugs.webkit.org/show_bug.cgi?id=238884
Patch by Ada Chan <adachan@apple.com> on 2022-04-06
Reviewed by Antoine Quint.
Add more non-animatable properties to the switch statement.
- animation/CSSPropertyAnimation.cpp:
(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):
- 1:10 PM Changeset in webkit [292496] by
-
- 3 edits in trunk/Tools
[Merge-Queue] Use rebase over merge when canonicalizing commit
https://bugs.webkit.org/show_bug.cgi?id=238877
<rdar://problem/91363334>
Reviewed by Ryan Haddad and Aakash Jain.
- Tools/CISupport/ews-build/steps.py:
(Canonicalize.run): Specify rebase workflow instead of merge workflow.
- Tools/CISupport/ews-build/steps_unittest.py:
Canonical link: https://commits.webkit.org/249344@main
- 12:44 PM Changeset in webkit [292495] by
-
- 3 edits in trunk/LayoutTests
pbkdf2.https.any.worker.html fails on WPE, GTK2 ports
https://bugs.webkit.org/show_bug.cgi?id=238885
Unreviewed test gardening.
- platform/gtk/TestExpectations:
- platform/wpe/TestExpectations:
- 12:40 PM Changeset in webkit [292494] by
-
- 3 edits in trunk/Tools
[Flatpak SDK] Avoid termination if gdbus is not installed after 249303@main
https://bugs.webkit.org/show_bug.cgi?id=238878
Reviewed by Philippe Normand.
Instead of bailing out, just disable a11y bus forwarding. Also hide
some debug messages.
- flatpak/flatpakutils.py:
(WebkitFlatpak.setup_a11y_proxy):
- glib/dependencies/apt: Add libglib2.0-bin
- 12:35 PM Changeset in webkit [292493] by
-
- 21 edits in trunk/Source/JavaScriptCore
Call Structure::get instead of Structure::getConcurrently on the mutator thread
https://bugs.webkit.org/show_bug.cgi?id=238823
Reviewed by Yusuke Suzuki.
We try to call Structure::get instead of Structure::getConcurrently when
we know for sure we're on the main thread. This is because getConcurrently
is slower than get.
- bytecode/AccessCase.cpp:
(JSC::AccessCase::couldStillSucceed const):
(JSC::AccessCase::generateImpl):
- bytecode/AdaptiveInferredPropertyValueWatchpointBase.cpp:
(JSC::AdaptiveInferredPropertyValueWatchpointBase::install):
- bytecode/LLIntPrototypeLoadAdaptiveStructureWatchpoint.cpp:
(JSC::LLIntPrototypeLoadAdaptiveStructureWatchpoint::install):
- bytecode/ObjectPropertyCondition.cpp:
(JSC::ObjectPropertyCondition::structureEnsuresValidityAssumingImpurePropertyWatchpoint const):
(JSC::ObjectPropertyCondition::isStillValidAssumingImpurePropertyWatchpoint const):
(JSC::ObjectPropertyCondition::isStillValid const):
(JSC::ObjectPropertyCondition::structureEnsuresValidity const):
- bytecode/ObjectPropertyCondition.h:
- bytecode/ObjectPropertyConditionSet.cpp:
(JSC::ObjectPropertyConditionSet::structuresEnsureValidity const):
(JSC::generateConditionsForPropertyMiss):
(JSC::generateConditionsForPropertySetterMiss):
(JSC::generateConditionsForPrototypePropertyHit):
(JSC::generateConditionsForPrototypePropertyHitCustom):
(JSC::generateConditionsForPrototypeEquivalenceConcurrently):
(JSC::generateConditionsForPropertyMissConcurrently):
(JSC::generateConditionsForPropertySetterMissConcurrently):
(JSC::generateConditionForSelfEquivalence):
(JSC::ObjectPropertyConditionSet::structuresEnsureValidityAssumingImpurePropertyWatchpoint const): Deleted.
(JSC::ObjectPropertyConditionSet::isValidAndWatchable const): Deleted.
- bytecode/ObjectPropertyConditionSet.h:
- bytecode/PropertyCondition.cpp:
(JSC::PropertyCondition::isStillValidAssumingImpurePropertyWatchpoint const):
(JSC::watchabilityToConcurrency):
(JSC::PropertyCondition::isStillValid const):
(JSC::PropertyCondition::isWatchableWhenValid const):
(JSC::PropertyCondition::isWatchableAssumingImpurePropertyWatchpoint const):
(JSC::PropertyCondition::isWatchable const):
- bytecode/PropertyCondition.h:
- dfg/DFGAdaptiveStructureWatchpoint.cpp:
(JSC::DFG::AdaptiveStructureWatchpoint::install):
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::check):
(JSC::DFG::ByteCodeParser::planLoad):
- dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::tryFoldAsPutByOffset):
- dfg/DFGDesiredWatchpoints.h:
(JSC::DFG::AdaptiveStructureWatchpointAdaptor::hasBeenInvalidated):
- dfg/DFGGraph.cpp:
(JSC::DFG::Graph::watchCondition):
- llint/LLIntSlowPaths.cpp:
(JSC::LLInt::setupGetByIdPrototypeCache):
- runtime/CachedSpecialPropertyAdaptiveStructureWatchpoint.cpp:
(JSC::CachedSpecialPropertyAdaptiveStructureWatchpoint::install):
- runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::tryInstallSpeciesWatchpoint):
- runtime/JSObject.h:
(JSC::JSObject::getDirect const):
- runtime/Structure.h:
(JSC::Structure::get):
- runtime/StructureRareData.cpp:
(JSC::StructureRareData::cacheSpecialPropertySlow):
- 12:33 PM Changeset in webkit [292492] by
-
- 1 copy in tags/Safari-614.1.9
Tag Safari-614.1.9.
- 12:32 PM Changeset in webkit [292491] by
-
- 2 edits in branches/safari-614.1.9-branch/Source/WebGPU
Cherry-pick r292479. rdar://problem/91351306
[WebGPU] Fix the tvOS build
https://bugs.webkit.org/show_bug.cgi?id=238881
<rdar://problem/91351306>
Unreviewed.
MTLTextureType2DMultisampleArray is not available on tvOS.
- WebGPU/Texture.mm: (WebGPU::Device::createTexture): (WebGPU::Texture::createView):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@292479 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 12:13 PM Changeset in webkit [292490] by
-
- 7 edits1 add in trunk/Tools
[git-webkit] Provide https credentialing program
https://bugs.webkit.org/show_bug.cgi?id=238679
<rdar://problem/91177114>
Reviewed by Stephanie Lewis and Dewei Zhu.
- Tools/Scripts/libraries/webkitscmpy/setup.py: Bump version.
- Tools/Scripts/libraries/webkitscmpy/webkitscmpy/init.py: Ditto.
- Tools/Scripts/libraries/webkitscmpy/webkitscmpy/program/init.py: Add Credentials program.
- Tools/Scripts/libraries/webkitscmpy/webkitscmpy/program/credentials.py: Added.
(Credentials.main): Return credentials for remote.
- Tools/Scripts/libraries/webkitscmpy/webkitscmpy/program/setup.py:
(Setup.git): Set credential helper if remote is an http remote.
- Tools/Scripts/libraries/webkitscmpy/webkitscmpy/remote/bitbucket.py:
(BitBucket.credentials): Stub function to be replace by child classes.
- Tools/Scripts/libraries/webkitscmpy/webkitscmpy/test/setup_unittest.py:
Canonical link: https://commits.webkit.org/249340@main
- 12:09 PM Changeset in webkit [292489] by
-
- 5 edits in trunk/Source/bmalloc
Unreviewed, reverting r292450.
https://bugs.webkit.org/show_bug.cgi?id=238883
Membuster regression
Reverted changeset:
"[libpas] Run TLC decommit rarely"
https://bugs.webkit.org/show_bug.cgi?id=238855
https://commits.webkit.org/r292450
- 12:06 PM Changeset in webkit [292488] by
-
- 2 edits in trunk/Source/WebCore
Avoid calling IOSurfaceAlignProperty in the WebContent process
https://bugs.webkit.org/show_bug.cgi?id=238870
<rdar://91252359>
Reviewed by Geoffrey Garen.
Use cached values for bytes per row alignment.
- platform/graphics/cg/ImageBufferIOSurfaceBackend.cpp:
(WebCore::ImageBufferIOSurfaceBackend::calculateBytesPerRow):
- 12:05 PM Changeset in webkit [292487] by
-
- 92 edits in trunk/Source
Start replacing String(const char*) constructor with a String::fromLatin1(const char*) function
https://bugs.webkit.org/show_bug.cgi?id=238701
Reviewed by Geoffrey Garen.
Source/JavaScriptCore:
- API/JSValue.mm:
(createStructHandlerMap):
(handerForStructTag):
- API/JSWrapperMap.mm:
(allocateConstructorForCustomClass):
- API/ObjCCallbackFunction.mm:
(JSC::ObjCCallbackFunctionImpl::name):
- API/glib/JSCContext.cpp:
(jsc_context_check_syntax):
- b3/air/testair.cpp:
- bindings/ScriptFunctionCall.cpp:
(Deprecated::ScriptCallArgumentHandler::appendArgument):
- debugger/DebuggerCallFrame.cpp:
(JSC::DebuggerCallFrame::functionName const):
- heap/HeapSnapshotBuilder.cpp:
(JSC::HeapSnapshotBuilder::json):
- inspector/JSGlobalObjectInspectorController.cpp:
(Inspector::JSGlobalObjectInspectorController::appendAPIBacktrace):
- inspector/remote/socket/RemoteInspectorSocket.cpp:
(Inspector::RemoteInspector::sendMessageToBackend):
- jit/ExecutableAllocator.cpp:
(JSC::dumpJITMemory):
- jsc.cpp:
(JSC_DEFINE_HOST_FUNCTION):
(runWithOptions):
(CommandLine::parseArguments):
- parser/Parser.cpp:
(JSC::Parser<LexerType>::parsePrimaryExpression):
- parser/Parser.h:
(JSC::Parser::updateErrorMessage):
- parser/SourceProvider.h:
- runtime/BytecodeCacheError.cpp:
(JSC::BytecodeCacheError::StandardError::message const):
- runtime/IntlLocale.cpp:
(JSC::IntlLocale::keywordValue const):
(JSC::IntlLocale::numberingSystems):
- runtime/IntlObject.cpp:
(JSC::numberingSystemsForLocale):
- runtime/NumberPrototype.cpp:
(JSC::toStringWithRadix):
(JSC::JSC_DEFINE_HOST_FUNCTION):
(JSC::numberToStringInternal):
(JSC::int52ToString):
- runtime/Options.cpp:
(JSC::Options::overrideAliasedOptionWithHeuristic):
(JSC::Options::setAliasedOption):
- runtime/RegExpPrototype.cpp:
(JSC::JSC_DEFINE_HOST_FUNCTION):
- runtime/SamplingProfiler.cpp:
(JSC::SamplingProfiler::StackFrame::displayName):
- runtime/StringPrototype.cpp:
(JSC::toLocaleCase):
- testRegExp.cpp:
(parseArguments):
- tools/CompilerTimingScope.cpp:
- tools/FunctionAllowlist.cpp:
(JSC::FunctionAllowlist::FunctionAllowlist):
- wasm/js/WebAssemblyModuleConstructor.cpp:
(JSC::JSC_DEFINE_HOST_FUNCTION):
Source/WebCore:
- Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:
(WebCore::LibWebRTCMediaEndpoint::createSessionDescriptionFailed):
(WebCore::LibWebRTCMediaEndpoint::setLocalSessionDescriptionFailed):
(WebCore::LibWebRTCMediaEndpoint::setRemoteSessionDescriptionFailed):
(WebCore::RTCStatsLogger::toJSONString const):
- Modules/mediastream/libwebrtc/LibWebRTCUtils.cpp:
(WebCore::toException):
(WebCore::toRTCError):
- Modules/webauthn/WebAuthenticationUtils.cpp:
(WebCore::buildAttestationMap):
- Modules/webauthn/cbor/CBORValue.cpp:
(cbor::CBORValue::CBORValue):
- Modules/webdatabase/Database.cpp:
(WebCore::Database::Database):
(WebCore::Database::getVersionFromDatabase):
(WebCore::Database::setVersionInDatabase):
- animation/KeyframeEffect.cpp:
(WebCore::processPropertyIndexedKeyframes):
- animation/KeyframeEffect.h:
- bindings/js/SerializedScriptValue.cpp:
(WebCore::CloneSerializer::dumpIfTerminal):
- contentextensions/ContentExtensionParser.cpp:
(WebCore::ContentExtensions::getDomainList):
- crypto/algorithms/CryptoAlgorithmAES_CBC.cpp:
- crypto/algorithms/CryptoAlgorithmAES_CFB.cpp:
- crypto/algorithms/CryptoAlgorithmAES_CTR.cpp:
- crypto/algorithms/CryptoAlgorithmAES_GCM.cpp:
- crypto/algorithms/CryptoAlgorithmAES_KW.cpp:
- crypto/algorithms/CryptoAlgorithmECDSA.cpp:
- crypto/algorithms/CryptoAlgorithmHMAC.cpp:
- crypto/algorithms/CryptoAlgorithmRSAES_PKCS1_v1_5.cpp:
- crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.cpp:
- crypto/algorithms/CryptoAlgorithmRSA_OAEP.cpp:
- crypto/algorithms/CryptoAlgorithmRSA_PSS.cpp:
- css/DOMCSSCustomPropertyDescriptor.h:
- css/makeprop.pl:
- dom/DataTransfer.cpp:
(WebCore::DataTransfer::types const):
- dom/TextDecoder.cpp:
(WebCore::TextDecoder::encoding const):
- editing/ApplyStyleCommand.cpp:
(WebCore::styleSpanClassString):
- editing/ReplaceSelectionCommand.cpp:
(WebCore::isInterchangeNewlineNode):
(WebCore::isInterchangeConvertedSpaceSpan):
- editing/TextInsertionBaseCommand.cpp:
(WebCore::canAppendNewLineFeedToSelection):
- html/HiddenInputType.cpp:
(WebCore::HiddenInputType::appendFormData const):
- html/MediaFragmentURIParser.cpp:
(WebCore::MediaFragmentURIParser::parseFragments):
- html/canvas/WebGLRenderingContext.cpp:
(WebCore::WebGLRenderingContext::getSupportedExtensions):
- html/parser/HTMLPreloadScanner.cpp:
(WebCore::testPreloadScannerViewportSupport):
- loader/FormSubmission.cpp:
(WebCore::FormSubmission::create):
- loader/MediaResourceLoader.cpp:
(WebCore::MediaResource::responseReceived):
- loader/cache/CachedApplicationManifest.cpp:
(WebCore::CachedApplicationManifest::encoding const):
- loader/cache/CachedCSSStyleSheet.cpp:
(WebCore::CachedCSSStyleSheet::didAddClient):
(WebCore::CachedCSSStyleSheet::encoding const):
(WebCore::CachedCSSStyleSheet::checkNotify):
- loader/cache/CachedSVGDocument.cpp:
(WebCore::CachedSVGDocument::encoding const):
- loader/cache/CachedScript.cpp:
(WebCore::CachedScript::encoding const):
- loader/cache/CachedXSLStyleSheet.cpp:
(WebCore::CachedXSLStyleSheet::encoding const):
- page/cocoa/ResourceUsageThreadCocoa.mm:
(WebCore::threadInfos):
- platform/cocoa/PasteboardCocoa.mm:
(WebCore::Pasteboard::read):
- platform/gamepad/GamepadConstants.cpp:
(WebCore::standardGamepadMappingString):
(WebCore::xrStandardGamepadMappingString):
- platform/graphics/FourCC.h:
(WTF::LogArgument<WebCore::FourCC>::toString):
- platform/graphics/angle/GraphicsContextGLANGLE.cpp:
(WebCore::GraphicsContextGLANGLE::initialize):
(WebCore::GraphicsContextGLANGLE::getString):
- platform/mac/ThreadCheck.mm:
(WebCoreReportThreadViolation):
- platform/mediastream/RealtimeMediaSourceCenter.cpp:
(WebCore::RealtimeMediaSourceCenter::hashStringWithSalt):
- platform/mock/PlatformSpeechSynthesizerMock.cpp:
(WebCore::PlatformSpeechSynthesizerMock::initializeVoiceList):
- platform/sql/SQLiteDatabase.cpp:
(WebCore::SQLiteDatabase::authorizerFunction):
- platform/text/cocoa/LocaleCocoa.mm:
(WebCore::LocaleCocoa::monthLabels):
(WebCore::LocaleCocoa::shortMonthLabels):
- testing/Internals.cpp:
(WebCore::Internals::testDictionaryLogging):
- xml/XPathValue.h:
(WebCore::XPath::Value::Value):
- xml/XSLTProcessorLibxslt.cpp:
(WebCore::XSLTProcessor::parseErrorFunc):
(WebCore::docLoaderFunc):
(WebCore::XSLTProcessor::transformToString):
- xml/parser/XMLDocumentParserLibxml2.cpp:
(WebCore::openFunc):
Source/WebCore/PAL:
- pal/graphics/WebGPU/Impl/WebGPUAdapterImpl.cpp:
(PAL::WebGPU::adapterName):
- pal/graphics/WebGPU/Impl/WebGPUDeviceImpl.cpp:
(PAL::WebGPU::DeviceImpl::popErrorScope):
Source/WebGPU:
- WebGPU/APIConversions.h:
(WebGPU::fromAPI):
- WebGPU/Adapter.mm:
(WebGPU::Adapter::requestDevice):
- WebGPU/ComputePipeline.mm:
(WebGPU::createConstantValues):
(WebGPU::Device::createComputePipeline):
- WebGPU/ShaderModule.mm:
(WebGPU::earlyCompileShaderModule):
(WebGPU::Device::createShaderModule):
Source/WTF:
- wtf/Logger.h:
(WTF::LogArgument::toString):
- wtf/text/WTFString.cpp:
(string):
- wtf/text/WTFString.h:
- 12:04 PM Changeset in webkit [292486] by
-
- 5 edits in branches/safari-613-branch/Source/WebCore
Cherry-pick r292417. rdar://problem/91311691
Implement faster lookup of HTML tags in the HTML parser
https://bugs.webkit.org/show_bug.cgi?id=238804
Reviewed by Geoffrey Garen.
Implement faster lookup of HTML tags in the HTML parser by having make_names.pl generate
a findHTMLTag function that returns very efficient well-known HTML tag names.
It is a little more efficient that our current HTMLNameCache (0.4% progression on
Speedometer on MacBookAir 10,1, neutral on iMac20,1). Unlike the HTMLNameCache, It doesn't
require any hashing or additional storage since the set of well-known HTML tags is known
at compile time.
- dom/make_names.pl: (printNamesHeaderFile): (findMaxTagLength): (tagsWithLength): (generateFindTagForLength): (printNamesCppFile):
- html/parser/AtomHTMLToken.h: (WebCore::AtomHTMLToken::AtomHTMLToken):
- html/parser/HTMLNameCache.cpp: (WebCore::HTMLNameCache::atomStringCache):
- html/parser/HTMLNameCache.h: (WebCore::HTMLNameCache::makeAttributeValue): (WebCore::HTMLNameCache::clear): (WebCore::HTMLNameCache::makeAtomString): (WebCore::HTMLNameCache::atomStringCacheSlot): (WebCore::HTMLNameCache::makeTagName): Deleted.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@292417 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 11:51 AM Changeset in webkit [292485] by
-
- 6 edits1 add in trunk/Tools
[git-webkit] Add automation to assist in branch cleanup
https://bugs.webkit.org/show_bug.cgi?id=238637
<rdar://problem/91127828>
Reviewed by Stephanie Lewis and Dewei Zhu.
- Tools/Scripts/libraries/webkitscmpy/setup.py: Bump version.
- Tools/Scripts/libraries/webkitscmpy/webkitscmpy/init.py: Ditto.
- Tools/Scripts/libraries/webkitscmpy/webkitscmpy/mocks/local/git.py: Add branch deletion and reset mocks.
- Tools/Scripts/libraries/webkitscmpy/webkitscmpy/mocks/local/svn.py:
(Svn.init): Add
svn revertmock.
- Tools/Scripts/libraries/webkitscmpy/webkitscmpy/program/clean.py:
(Clean):
(Clean.parser): Allow caller to specify branch or pull request.
(Clean.cleanup): Delete a branch or branches associated with a pull request.
(Clean.main): Differentiate calls with branches and pull requests specified from those without.
- Tools/Scripts/libraries/webkitscmpy/webkitscmpy/test/clean_unittest.py: Added.
(TestClean):
(TestClean.setUp):
(TestClean.test_checkout_none):
(TestClean.test_clean_git):
(TestClean.test_clean_svn):
(TestClean.test_clean_branch):
(TestClean.test_clean_pr):
Canonical link: https://commits.webkit.org/249336@main
- 11:48 AM Changeset in webkit [292484] by
-
- 4 edits1 add in trunk
[JSC] Substring resolving should check 8bit / 16bit again
https://bugs.webkit.org/show_bug.cgi?id=236775
<rdar://problem/89253391>
Reviewed by Saam Barati.
JSTests:
- stress/8bit-16bit-atomize-conversion.js: Added.
(main.v64):
(main):
Source/JavaScriptCore:
Substring JSString is wrapping JSString. Thus it is possible that underlying JSString's 8Bit / 16Bit status
becomes different from substring JSString wrapper's bit. We should not assume they are the same.
- runtime/JSString.cpp:
(JSC::JSRopeString::resolveRopeInternal const):
(JSC::JSRopeString::resolveRopeToAtomString const):
(JSC::JSRopeString::resolveRopeToExistingAtomString const):
(JSC::JSRopeString::resolveRopeInternal8 const): Deleted.
(JSC::JSRopeString::resolveRopeInternal16 const): Deleted.
- runtime/JSString.h:
- 11:29 AM Changeset in webkit [292483] by
-
- 2 edits in trunk/Source/WebKit
Improve API::SerializedScriptValue::deserialize to not allocate a new JSContext every second
https://bugs.webkit.org/show_bug.cgi?id=210920
Reviewed by Geoffrey Garen.
Instead of forcing the lifetime of the shared JSContext to 1 second, we now use a hysteresis
logic so that it can stay alive as long as it is used at least every 10 seconds.
- UIProcess/API/Cocoa/APISerializedScriptValueCocoa.mm:
(API::SharedJSContext::SharedJSContext):
(API::SharedJSContext::ensureContext):
(API::SharedJSContext::releaseContextIfNecessary):
(API::SharedJSContext::releaseContext): Deleted.
- 11:22 AM Changeset in webkit [292482] by
-
- 2 edits in trunk/Source/WebCore
Check for document page in WorkerMessagingProxy::createCacheStorageConnection
https://bugs.webkit.org/show_bug.cgi?id=238872
Reviewed by Chris Dumez.
Add a check to the document page, similarily to how it is currently done in
WorkerMessagingProxy::createRTCDataChannelRemoteHandlerConnection.
- workers/WorkerMessagingProxy.cpp:
(WebCore::WorkerMessagingProxy::createCacheStorageConnection):
- 11:21 AM Changeset in webkit [292481] by
-
- 3 edits in trunk/JSTests
ICU was recently updated to use type="long" format if there is {month: "long"}
https://bugs.webkit.org/show_bug.cgi?id=238852
<rdar://90462186>
Reviewed by Saam Barati.
Since this update [1] is not yet released, we can't set expectations based on major / minor
ICU version, this patch loosens the tests to accept either of the format types.
[1]: https://github.com/unicode-org/icu/commit/23081486ffec0973b01e66e2cbad93a1a7dec267
- stress/date-toLocaleString.js:
- stress/intl-datetimeformat.js:
- 11:20 AM Changeset in webkit [292480] by
-
- 2 edits in trunk/LayoutTests
[ Monterey wk2 Release ] imported/w3c/web-platform-tests/css/css-text/white-space/pre-wrap-012.html is a flaky image failure
https://bugs.webkit.org/show_bug.cgi?id=238880
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations: Marked expectations as [ Pass ImageOnlyFailure ] while test is reviewed.
- 11:08 AM Changeset in webkit [292479] by
-
- 2 edits in trunk/Source/WebGPU
[WebGPU] Fix the tvOS build
https://bugs.webkit.org/show_bug.cgi?id=238881
<rdar://problem/91351306>
Unreviewed.
MTLTextureType2DMultisampleArray is not available on tvOS.
- WebGPU/Texture.mm:
(WebGPU::Device::createTexture):
(WebGPU::Texture::createView):
- 10:57 AM Changeset in webkit [292478] by
-
- 5 edits in trunk
[GPU Process] Text filled with pattern sometimes draw with incorrect color
https://bugs.webkit.org/show_bug.cgi?id=236924
rdar://89196811
Reviewed by Myles C. Maxfield.
Source/WebCore:
applyFillPattern() and applyStrokePattern() have to explicitly called
for the GraphicsContext or the DisplayList::Recorder before drawing
with the pattern. But this is not happening for the DrawGlyphsRecorder
internalContext. When CoreText calls DrawGlyphsRecorder::recordDrawGlyphs()
back, it applies the CGGState fill color to the DisplayList::Recorder so
it overrides what applyFillPattern() did before recording the glyphs.
- platform/graphics/DrawGlyphsRecorder.h:
- platform/graphics/coretext/DrawGlyphsRecorderCoreText.cpp:
(WebCore::DrawGlyphsRecorder::populateInternalContext):
(WebCore::DrawGlyphsRecorder::updateFillColor):
(WebCore::DrawGlyphsRecorder::updateStrokeColor):
(WebCore::DrawGlyphsRecorder::recordDrawGlyphs):
LayoutTests:
- platform/ios-wk2/TestExpectations:
- 10:48 AM Changeset in webkit [292477] by
-
- 58 edits in trunk/Source
Reduce number of conversions from StringView to String
https://bugs.webkit.org/show_bug.cgi?id=238841
Reviewed by Geoffrey Garen.
Source/JavaScriptCore:
- runtime/RegExp.h:
- runtime/StringPrototype.cpp:
(JSC::substituteBackreferencesSlow):
Source/WebCore:
- Modules/cache/DOMCacheEngine.cpp:
(WebCore::DOMCacheEngine::queryCacheMatch):
- dom/ViewportArguments.cpp:
(WebCore::viewportErrorMessage):
- inspector/agents/page/PageDebuggerAgent.cpp:
(WebCore::PageDebuggerAgent::sourceMapURLForScript):
- loader/CrossOriginAccessControl.cpp:
(WebCore::validateCrossOriginRedirectionURL):
- loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::disallowWebArchive const):
(WebCore::DocumentLoader::maybeLoadEmpty):
- loader/DocumentThreadableLoader.cpp:
(WebCore::DocumentThreadableLoader::DocumentThreadableLoader):
(WebCore::DocumentThreadableLoader::checkURLSchemeAsCORSEnabled):
- loader/EmptyClients.cpp:
(WebCore::EmptyFrameLoaderClient::representationExistsForURLScheme const):
(WebCore::EmptyFrameLoaderClient::generatedMIMETypeForURLScheme const):
- loader/EmptyFrameLoaderClient.h:
- loader/FrameLoaderClient.h:
- loader/archive/mhtml/MHTMLArchive.cpp:
(WebCore::MHTMLArchive::create):
- loader/cache/CachedResource.cpp:
(WebCore::CachedResource::freshnessLifetime const):
- loader/soup/ResourceLoaderSoup.cpp:
(WebCore::ResourceLoader::loadGResource):
- page/Page.cpp:
(WebCore::Page::userStyleSheetLocationChanged):
(WebCore::Page::allowsLoadFromURL const):
- page/SecurityOrigin.cpp:
(WebCore::shouldTreatAsUniqueOrigin):
(WebCore::shouldTreatAsPotentiallyTrustworthy):
(WebCore::SecurityOrigin::isSecure):
(WebCore::SecurityOrigin::canDisplay const):
- page/csp/ContentSecurityPolicy.cpp:
(WebCore::ContentSecurityPolicy::allowObjectFromSource const):
(WebCore::ContentSecurityPolicy::allowChildFrameFromSource const):
(WebCore::ContentSecurityPolicy::allowResourceFromSource const):
(WebCore::ContentSecurityPolicy::allowWorkerFromSource const):
(WebCore::ContentSecurityPolicy::allowScriptFromSource const):
(WebCore::ContentSecurityPolicy::allowStyleFromSource const):
(WebCore::ContentSecurityPolicy::allowConnectToSource const):
(WebCore::ContentSecurityPolicy::allowBaseURI const):
- page/csp/ContentSecurityPolicySourceList.cpp:
(WebCore::schemeIsInHttpFamily):
(WebCore::ContentSecurityPolicySourceList::isValidSourceForExtensionMode):
- platform/LegacySchemeRegistry.cpp:
(WebCore::LegacySchemeRegistry::schemeIsHandledBySchemeHandler):
(WebCore::LegacySchemeRegistry::shouldTreatURLSchemeAsLocal):
(WebCore::LegacySchemeRegistry::shouldTreatURLSchemeAsNoAccess):
(WebCore::LegacySchemeRegistry::shouldTreatURLSchemeAsDisplayIsolated):
(WebCore::LegacySchemeRegistry::shouldTreatURLSchemeAsSecure):
(WebCore::LegacySchemeRegistry::shouldLoadURLSchemeAsEmptyDocument):
(WebCore::LegacySchemeRegistry::canDisplayOnlyIfCanRequest):
(WebCore::LegacySchemeRegistry::shouldTreatURLSchemeAsCORSEnabled):
(WebCore::LegacySchemeRegistry::schemeShouldBypassContentSecurityPolicy):
(WebCore::LegacySchemeRegistry::shouldAlwaysRevalidateURLScheme):
(WebCore::LegacySchemeRegistry::isUserExtensionScheme):
- platform/LegacySchemeRegistry.h:
- platform/PublicSuffix.h:
- platform/mac/PublicSuffixMac.mm:
(WebCore::isPublicSuffix):
(WebCore::topPrivatelyControlledDomain):
- platform/network/BlobRegistryImpl.cpp:
(WebCore::BlobRegistryImpl::getBlobDataFromURL const):
- platform/network/CacheValidation.cpp:
(WebCore::headerValueForVary):
(WebCore::collectVaryingRequestHeadersInternal):
(WebCore::collectVaryingRequestHeaders):
- platform/network/HTTPHeaderMap.cpp:
(WebCore::HTTPHeaderMap::get const):
(WebCore::HTTPHeaderMap::getUncommonHeader const):
- platform/network/HTTPHeaderMap.h:
- platform/network/HTTPParsers.cpp:
(WebCore::isCrossOriginSafeHeader):
- platform/network/ResourceRequestBase.cpp:
(WebCore::ResourceRequestBase::httpHeaderField const):
- platform/network/ResourceRequestBase.h:
- platform/network/ResourceResponseBase.cpp:
(WebCore::ResourceResponseBase::sanitizeHTTPHeaderFieldsAccordingToTainting):
(WebCore::ResourceResponseBase::httpHeaderField const):
- platform/network/ResourceResponseBase.h:
- platform/network/curl/PublicSuffixCurl.cpp:
(WebCore::isPublicSuffix):
- platform/network/soup/SoupNetworkSession.cpp:
(WebCore::SoupNetworkSession::checkTLSErrors):
- platform/soup/PublicSuffixSoup.cpp:
(WebCore::isPublicSuffix):
Source/WebKit:
- NetworkProcess/NetworkSchemeRegistry.cpp:
(WebKit::NetworkSchemeRegistry::shouldTreatURLSchemeAsCORSEnabled):
- NetworkProcess/cache/CacheStorageEngineCache.cpp:
(WebKit::CacheStorage::updateVaryInformation):
- NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(WebKit::proxyDictionary):
- NetworkProcess/soup/NetworkDataTaskSoup.cpp:
(WebKit::NetworkDataTaskSoup::shouldAllowHSTSPolicySetting const):
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::decidePolicyForNavigationAction):
- WebProcess/Network/WebLoaderStrategy.cpp:
(WebKit::WebLoaderStrategy::tryLoadingUsingURLSchemeHandler):
(WebKit::WebLoaderStrategy::tryLoadingSynchronouslyUsingURLSchemeHandler):
- WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::representationExistsForURLScheme const):
(WebKit::WebFrameLoaderClient::generatedMIMETypeForURLScheme const):
- WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
- WebProcess/WebPage/WebCookieCache.cpp:
(WebKit::WebCookieCache::cookiesForDOM):
(WebKit::WebCookieCache::setCookiesFromDOM):
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::canHandleRequest):
(WebKit::WebPage::urlSchemeHandlerForScheme):
- WebProcess/WebPage/WebPage.h:
Source/WebKitLegacy/mac:
- WebCoreSupport/WebFrameLoaderClient.h:
- WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::representationExistsForURLScheme const):
(WebFrameLoaderClient::generatedMIMETypeForURLScheme const):
Source/WebKitLegacy/win:
- WebCoreSupport/WebFrameLoaderClient.cpp:
(WebFrameLoaderClient::representationExistsForURLScheme const):
(WebFrameLoaderClient::generatedMIMETypeForURLScheme const):
- WebCoreSupport/WebFrameLoaderClient.h:
Source/WTF:
- wtf/URL.cpp:
(WTF::defaultPortForProtocol):
- wtf/text/StringHash.h:
(WTF::StringViewHashTranslator::hash):
(WTF::StringViewHashTranslator::equal):
- 10:46 AM Changeset in webkit [292476] by
-
- 2 edits in trunk/Source/WebCore
Further clean-ups for features.json
https://bugs.webkit.org/show_bug.cgi?id=238769
Reviewed by Tim Nguyen.
While editing the Features file, I noticed two things:
- A number of APIs that we do not support were missing.
- A number of APIs were included in the "Features" section, rather than the "Standards" section.
This patch corrects both issues.
- features.json:
- 10:05 AM Changeset in webkit [292475] by
-
- 9 edits in trunk/Source/JavaScriptCore
CSE should be more careful with values that have WritesPinned, ExitsSideways, or are of different sizes
https://bugs.webkit.org/show_bug.cgi?id=238302
Reviewed by Saam Barati.
1) CSE for WasmAddressValue searches for any nodes marked with WritesPinned between all paths from the redundant
WasmAddressValue to the replacement that dominates it. For a switch construct, we might miss some paths while
performing this DFS of predecessor blocks because the termination condition was a break instead of a continue.
2) The CSE phase looks for a pattern it calls a store after clobber. That is, two stores to the same location where
the first store is not observable. It searches for reads and writes that overlap with the store and its clobber, and
bails if it finds them. When we add in CSE for WasmAddressValue, we expose the fact that WasmBoundsCheck has ExitSideways
but does not claim to read top, even though the code it exits to totally can. This can cause us to eliminate an observable store.
3) The store after clobber phase does not check that the size of the clobber is the same as the size of the store. Again,
this is usually hidden by JavaScript because the sizes are usually the same. Also, when WASM fast memory is enabled, this
bug is hidden because the loads/stores say that they may trap. That is why the unity test case only failed on iOS (although
it does fail on mac with XPC_JSC_useWebAssemblyFastMemory=0).
- b3/B3EliminateCommonSubexpressions.cpp:
- b3/testb3.h:
- b3/testb3_8.cpp:
(testWasmAddressDoesNotCSE):
(addCopyTests):
- 9:36 AM Changeset in webkit [292474] by
-
- 9 edits in trunk/Tools
[git-webkit] Apply labels based on tracker
https://bugs.webkit.org/show_bug.cgi?id=238640
<rdar://problem/91135356>
Reviewed by Stephanie Lewis.
- Tools/Scripts/libraries/webkitbugspy/setup.py: Bump version.
- Tools/Scripts/libraries/webkitbugspy/webkitbugspy/init.py: Ditto.
- Tools/Scripts/libraries/webkitbugspy/webkitbugspy/mocks/github.py:
(GitHub._issue): Handle case where empty assignee can be resolved.
- Tools/Scripts/libraries/webkitscmpy/setup.py: Bump version.
- Tools/Scripts/libraries/webkitscmpy/webkitscmpy/init.py: Ditto.
- Tools/Scripts/libraries/webkitscmpy/webkitscmpy/mocks/remote/git_hub.py:
(GitHub.init): Pass issues, projects and labels to base class.
- Tools/Scripts/libraries/webkitscmpy/webkitscmpy/program/pull_request.py:
(PullRequest.main): If we have an associated issue and can apply labels to our pull request,
apply the issue's component and version labels to our pull request.
- Tools/Scripts/libraries/webkitscmpy/webkitscmpy/test/pull_request_unittest.py:
Canonical link: https://commits.webkit.org/249325@main
- 9:16 AM Changeset in webkit [292473] by
-
- 9 edits in trunk/Source
[Cocoa] Use GCD webrtc task queue
https://bugs.webkit.org/show_bug.cgi?id=238861
Reviewed by Eric Carlson.
Source/ThirdParty/libwebrtc:
- Configurations/libwebrtc.iOS.exp:
- Configurations/libwebrtc.iOSsim.exp:
- Configurations/libwebrtc.mac.exp:
- Source/webrtc/api/create_peerconnection_factory.cc:
- Source/webrtc/api/create_peerconnection_factory.h:
- libwebrtc.xcodeproj/project.pbxproj:
Source/WebCore:
Covered by existing tests.
- platform/mediastream/libwebrtc/LibWebRTCProvider.cpp:
(WebCore::LibWebRTCProvider::createPeerConnectionFactory):
- 9:02 AM Changeset in webkit [292472] by
-
- 2 edits in trunk/Tools
Remove test ResourceLoadStatistics.RemoveSessionID
https://bugs.webkit.org/show_bug.cgi?id=238815
Reviewed by Youenn Fablet.
This test should be removed because:
- The use case it wanted to examine no longer exists: this test was added in r246449 to verify that
WebResourceLoadStatisticsStore does not access storage session after a NetworkSession is removed in network
process. This could happen because NetworkSession was refcounted and it could stay alive after it's removed from
the map of NetworkProcess. NetworkSession is no longer refcounted after r247831.
- Session removal, which the test wants to check, is not happening during this test: simply put, a download can
hold WebsiteDataStore alive, and the test does not wait for the download to finish. (This can be easily verified
by checking if ~WebsiteDataStore() is invoked.)
- TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:
- 9:00 AM Changeset in webkit [292471] by
-
- 4 edits in trunk/Source/WebKit
ServiceWorkerDownloadTask starts listening for IPC in constructor
https://bugs.webkit.org/show_bug.cgi?id=238860
Patch by Kimmo Kinnunen <kkinnunen@apple.com> on 2022-04-06
Reviewed by Youenn Fablet.
IPC messages will start to be delivered after connection->addThreadMessageReceiver(..., this, ..) from
the message receive queue. This function cannot be called in the constructor, since the
virtual function table of thethisobject has not been constructed fully yet. This means
that if a message arrives during the constructor, it is dispatched via incorrect virtual function pointer.
Initiate the listening from a separate function that is called from ServiceWorkerDownloadTask::create().
No new tests, not testable.
- NetworkProcess/ServiceWorker/ServiceWorkerDownloadTask.cpp:
(WebKit::ServiceWorkerDownloadTask::startListeningForIPC):
(WebKit::ServiceWorkerDownloadTask::close):
- NetworkProcess/ServiceWorker/ServiceWorkerDownloadTask.h:
(WebKit::ServiceWorkerDownloadTask::create):
- NetworkProcess/ServiceWorker/WebSWServerToContextConnection.cpp:
(WebKit::WebSWServerToContextConnection::registerDownload):
(WebKit::WebSWServerToContextConnection::unregisterDownload):
- 8:40 AM Changeset in webkit [292470] by
-
- 2 edits in trunk/Source/WebCore/PAL
Support PKShippingMethods on iOS
https://bugs.webkit.org/show_bug.cgi?id=238845
<rdar://problem/91320467>
Reviewed by Devin Rousso.
- Source/WebCore/PAL/pal/spi/cocoa/PassKitSPI.h: Move PKShippingMethods SPI declarations out of MacOS specific #ifdefs.
Canonical link: https://commits.webkit.org/249321@main
- 8:22 AM Changeset in webkit [292469] by
-
- 35 edits in trunk
Unify the two ImageBuffer::create() functions, passing RenderingPurpose everywhere
https://bugs.webkit.org/show_bug.cgi?id=238851
Reviewed by Said Abou-Hallawa.
I need to extend RenderingPurpose flags to distinguish layer backing store buffers from
other kinds of buffers. Before doing so, collapse the two ImageBuffer::create() functions
together by combining RenderingMode and ShouldUseDisplayList into OptionSet<ImageBufferOptions>,
and passing RenderingPurpose everywhere.
Always passing RenderingPurpose is revealing, because it finds call sites in the
web process that can trigger accelerated buffers (e.g. webkit.org/b/238846).
Source/WebCore:
- Modules/async-clipboard/ClipboardItemBindingsDataSource.cpp:
(WebCore::ClipboardItemBindingsDataSource::ClipboardItemTypeLoader::sanitizeDataIfNeeded):
- Modules/mediasession/MediaMetadata.cpp:
(WebCore::ArtworkImageLoader::notifyFinished):
- css/CSSFilterImageValue.cpp:
(WebCore::CSSFilterImageValue::image):
- html/CustomPaintCanvas.cpp:
(WebCore::CustomPaintCanvas::copiedImage const):
- html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::createImageBuffer const):
- html/HTMLVideoElement.cpp:
(WebCore::HTMLVideoElement::createBufferForPainting const):
- html/ImageBitmap.cpp:
(WebCore::ImageBitmap::createImageBuffer):
- html/canvas/ImageBitmapRenderingContext.cpp:
(WebCore::ImageBitmapRenderingContext::setOutputBitmap):
- html/canvas/WebGLRenderingContextBase.cpp:
(WebCore::WebGLRenderingContextBase::LRUImageBufferCache::imageBuffer):
- html/shadow/MediaControlTextTrackContainerElement.cpp:
(WebCore::MediaControlTextTrackContainerElement::createTextTrackRepresentationImage):
- inspector/InspectorCanvas.cpp:
(WebCore::InspectorCanvas::indexForData):
- page/FrameSnapshotting.cpp:
(WebCore::snapshotFrameRectWithClip):
- page/PageConsoleClient.cpp:
(WebCore::PageConsoleClient::screenshot):
- platform/graphics/BitmapImage.cpp:
(WebCore::BitmapImage::preTransformedNativeImageForCurrentFrame):
- platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContext::createImageBuffer const):
- platform/graphics/ImageBuffer.cpp:
(WebCore::ImageBuffer::create):
- platform/graphics/ImageBuffer.h:
(WebCore::ImageBuffer::create):
- platform/graphics/RenderingMode.h:
- platform/graphics/ShadowBlur.cpp:
(WebCore::ScratchBuffer::WTF_REQUIRES_LOCK):
(WebCore::ShadowBlur::drawRectShadowWithoutTiling):
(WebCore::ShadowBlur::drawInsetShadowWithoutTiling):
(WebCore::ShadowBlur::drawRectShadowWithTiling):
(WebCore::ShadowBlur::drawInsetShadowWithTiling):
(WebCore::ShadowBlur::drawShadowLayer):
- platform/graphics/SourceImage.cpp:
(WebCore::SourceImage::imageBuffer const):
- platform/graphics/filters/FilterImage.cpp:
(WebCore::FilterImage::imageBufferFromPixelBuffer):
(WebCore::getConvertedPixelBuffer):
- platform/graphics/filters/software/FETileSoftwareApplier.cpp:
(WebCore::FETileSoftwareApplier::apply const):
- platform/graphics/nicosia/texmap/NicosiaGCGLANGLELayer.cpp:
(Nicosia::GCGLANGLELayer::swapBuffersIfNeeded):
- platform/graphics/texmap/BitmapTexture.cpp:
(WebCore::BitmapTexture::updateContents):
- platform/mock/MockRealtimeVideoSource.cpp:
(WebCore::MockRealtimeVideoSource::imageBuffer const):
- rendering/shapes/Shape.cpp:
(WebCore::Shape::createRasterShape):
- rendering/svg/RenderSVGResourceClipper.cpp:
(WebCore::RenderSVGResourceClipper::applyClippingToContext):
- svg/SVGFEImageElement.cpp:
(WebCore::createImageBuffer):
- svg/graphics/SVGImage.cpp:
(WebCore::SVGImage::nativeImage):
Source/WebKitLegacy/mac:
- WebCoreSupport/WebContextMenuClient.mm:
(WebContextMenuClient::imageForCurrentSharingServicePickerItem):
Tools:
- TestWebKitAPI/Tests/WebCore/ImageBufferTests.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/cg/DisplayListTestsCG.cpp:
(TestWebKitAPI::TEST):
- 8:20 AM Changeset in webkit [292468] by
-
- 10 edits in trunk
In case of COOP-based process swap, we need to make sure the document gets controlled by its matching service worker registration
https://bugs.webkit.org/show_bug.cgi?id=238800
<rdar://problem/91288849>
Reviewed by Chris Dumez.
Source/WebKit:
Make sure in case loader is transferred to call controlClient in the new WebProcess.
To do so, we also update page and frame IDs.
Covered by API test.
- NetworkProcess/NetworkConnectionToWebProcess.cpp:
- NetworkProcess/NetworkLoadParameters.h:
- NetworkProcess/NetworkResourceLoadParameters.h:
- NetworkProcess/NetworkResourceLoader.cpp:
- NetworkProcess/NetworkResourceLoader.h:
- NetworkProcess/ServiceWorker/WebSWServerConnection.cpp:
- NetworkProcess/ServiceWorker/WebSWServerConnection.h:
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
- 8:11 AM Changeset in webkit [292467] by
-
- 42 edits4 adds in trunk
[css] Turn -webkit-border-image into a shorthand
https://bugs.webkit.org/show_bug.cgi?id=237487
Reviewed by Antti Koivisto.
LayoutTests/imported/w3c:
Update tests to take into account that '-webkit-border-image' is a shorthand.
- web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt:
- web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt:
Source/WebCore:
The '-webkit-border-image' property was considered to be a longhand,
sharing computed values with the various 'border-image-*'.
This patch turns it into a shorthand of 'border-image-*'.
Tests: fast/borders/border-image-legacy.html
fast/css/border-image-style-length.html
fast/css/getComputedStyle/computed-style.html
fast/css/getComputedStyle/computed-style-without-renderer.html
fast/css/image-set-parsing.html
fast/css/uri-token-parsing.html
imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml.html
imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree.html
svg/css/getComputedStyle-basic.xhtml
- Sources.txt:
Add the new file CSSBorderImageWidthValue.cpp.
- WebCore.xcodeproj/project.pbxproj:
Add the new files CSSBorderImageWidthValue.h and
CSSBorderImageWidthValue.cpp.
- animation/CSSPropertyAnimation.cpp:
(WebCore::blendFunc):
(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):
When animating border-image-width, take into account that it can come
from -webkit-border-image, and thus override border widths.
Do not interpolate a value a does override border widths with another
value that does not.
Even if border-image-width accepts <length-percentage>, when overriding
border widths do not interpolate between a <length-percentage> and a
plain <length>, since only the latter are valid border widths.
- css/CSSBorderImageWidthValue.cpp: Added.
(WebCore::CSSBorderImageWidthValue::CSSBorderImageWidthValue):
(WebCore::CSSBorderImageWidthValue::customCSSText const):
(WebCore::CSSBorderImageWidthValue::equals const):
- css/CSSBorderImageWidthValue.h: Added.
Add CSSBorderImageWidthValue class, based on CSSBorderImageSliceValue.
It's a wrapper for a CSS_QUAD CSSPrimitiveValue, but with a bool that
indicates if the value will override border widths.
- css/CSSComputedStyleDeclaration.cpp:
(WebCore::valueForNinePieceImage):
(WebCore::valueForReflection):
(WebCore::ComputedStyleExtractor::valueForPropertyInStyle):
Serialize border-image-width as empty string if it overrides border
widths, since its grammar doesn't allow this.
Serialize border-image as empty string if border-image-width overrides
border widths, since its grammar doesn't allow this.
Handle serialization of -webkit-border-image.
- css/CSSProperties.json:
Turn -webkit-border-image into a shorthand of border-image-source,
border-image-slice, border-image-width, border-image-outset and
border-image-repeat.
- css/CSSToStyleMap.cpp:
(WebCore::CSSToStyleMap::mapNinePieceImage):
(WebCore::CSSToStyleMap::mapNinePieceImageWidth):
(WebCore::CSSToStyleMap::mapNinePieceImageQuad):
- css/CSSToStyleMap.h:
Handle CSSBorderImageWidthValue values.
Remove old way of handling -webkit-border-image.
- css/CSSValue.cpp:
(WebCore::CSSValue::equals const):
(WebCore::CSSValue::cssText const):
(WebCore::CSSValue::destroy):
- css/CSSValue.h:
(WebCore::CSSValue::isBorderImageWidthValue const):
Handle new CSSBorderImageWidthValue value.
- css/StyleProperties.cpp:
(WebCore::StyleProperties::getPropertyValue const):
(WebCore::StyleProperties::borderImagePropertyValue const):
(WebCore::StyleProperties::asText const):
- css/StyleProperties.h:
Serialize border-image as empty string if border-image-width overrides
border widths, since its grammar doesn't allow this.
Handle serialization of -webkit-border-image.
Make cssText choose the right shorthand between border-image and
-webkit-border-image. Prefer the former if both are suitable.
- css/parser/CSSPropertyParser.cpp:
(WebCore::consumeBorderImageWidth):
(WebCore::consumeBorderImageComponents):
(WebCore::CSSPropertyParser::parseSingleValue):
(WebCore::CSSPropertyParser::consumeBorderImage):
(WebCore::CSSPropertyParser::parseShorthand):
Parse border-image-width as a CSSBorderImageWidthValue.
Parse -webkit-border-image as a shorthand.
- rendering/RenderTreeAsText.cpp:
(WebCore::RenderTreeAsText::writeRenderObject):
Take into account that border widths may be overridden.
- rendering/style/BorderData.h:
(WebCore::BorderData::borderLeftWidth const):
(WebCore::BorderData::borderRightWidth const):
(WebCore::BorderData::borderTopWidth const):
(WebCore::BorderData::borderBottomWidth const):
Add logic for overriding border widths. Same approach as 'border-style'
set to 'none' making the border widths compute to '0px'.
- rendering/style/NinePieceImage.cpp:
(WebCore::NinePieceImage::NinePieceImage):
(WebCore::NinePieceImage::Data::Data):
(WebCore::NinePieceImage::Data::create):
(WebCore::NinePieceImage::Data::operator== const):
- rendering/style/NinePieceImage.h:
(WebCore::NinePieceImage::overridesBorderWidths const):
(WebCore::NinePieceImage::setOverridesBorderWidths):
(WebCore::NinePieceImage::copyBorderSlicesFrom):
Add flag for overriding border widths.
- rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::setBorderImageWidthOverridesBorderWidths):
- rendering/style/RenderStyle.h:
Add method for setting flag to override border widths.
- style/PropertyCascade.cpp:
(WebCore::Style::shouldApplyPropertyInParseOrder):
Stop deferring border image properties. That was previously needed since
-webkit-border-image was a longhand sharing a computed value with the
border-image longhands. No longer needed since -webkit-border-image is
now a horthand.
- style/StyleBuilderConverter.h:
(WebCore::Style::BuilderConverter::convertBorderMask):
(WebCore::Style::BuilderConverter::convertReflection):
(WebCore::Style::BuilderConverter::convertBorderImage): Deleted.
Remove code no longer needed.
- style/StyleBuilderCustom.h:
(WebCore::Style::ApplyPropertyBorderImageModifier::applyInitialValue):
(WebCore::Style::ApplyPropertyBorderImageModifier::applyValue):
Handle border-image-width as a CSSBorderImageWidthValue.
LayoutTests:
Update tests to take into account that '-webkit-border-image' is a shorthand.
- fast/borders/border-image-legacy-expected.txt: Added.
- fast/borders/border-image-legacy.html: Added.
- fast/css/border-image-style-length-expected.txt:
- fast/css/border-image-style-length.html:
- fast/css/getComputedStyle/computed-style-expected.txt:
- fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
- fast/css/getComputedStyle/resources/property-names.js:
- fast/css/image-set-parsing-expected.txt:
- fast/css/image-set-parsing.html:
- fast/css/uri-token-parsing-expected.txt:
- fast/css/uri-token-parsing.html:
- platform/gtk/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt:
- platform/ios/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt:
- platform/ios/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/css/css-cascade/all-prop-initial-xml-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/css/cssom/getComputedStyle-detached-subtree-expected.txt:
- svg/css/getComputedStyle-basic-expected.txt:
- 8:07 AM Changeset in webkit [292466] by
-
- 6 edits in trunk
[:has() pseudo-class] Support invalidation for more input pseudo classes
https://bugs.webkit.org/show_bug.cgi?id=238451
Reviewed by Antti Koivisto.
- :indeterminate
- :read-only
- :read-write
- :required
- :optional
LayoutTests/imported/w3c:
Split the test in multiple subtests.
- web-platform-tests/css/selectors/invalidation/input-pseudo-classes-in-has-expected.txt:
- web-platform-tests/css/selectors/invalidation/input-pseudo-classes-in-has.html:
Source/WebCore:
- html/HTMLFormControlElement.cpp:
(WebCore::HTMLFormControlElement::parseAttribute):
(WebCore::HTMLFormControlElement::readOnlyStateChanged):
(WebCore::HTMLFormControlElement::requiredStateChanged):
- html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::setIndeterminate):
- 8:02 AM Changeset in webkit [292465] by
-
- 6 edits in trunk
[CSS-Contain] Grid layout should take "contain: inline-size" into account when computing the grid item's logical width
https://bugs.webkit.org/show_bug.cgi?id=238850
Reviewed by Antti Koivisto.
Source/WebCore:
Ignore grid item's logical width when "contain: inline-size" is present (i.e. ignore descendant content in inline direction when sizing).
- rendering/GridTrackSizingAlgorithm.cpp:
(WebCore::GridTrackSizingAlgorithm::computeGridContainerIntrinsicSizes):
(WebCore::GridTrackSizingAlgorithmStrategy::minContentForChild const):
(WebCore::GridTrackSizingAlgorithmStrategy::maxContentForChild const):
(WebCore::GridTrackSizingAlgorithmStrategy::minSizeForChild const):
(WebCore::GridTrackSizingAlgorithmStrategy::minLogicalSizeForChild const):
(WebCore::GridTrackSizingAlgorithm::advanceNextState):
- rendering/GridTrackSizingAlgorithm.h:
- rendering/RenderGrid.cpp:
(WebCore::RenderGrid::layoutBlock):
(WebCore::RenderGrid::computeEmptyTracksForAutoRepeat const):
LayoutTests:
- 7:33 AM Changeset in webkit [292464] by
-
- 3 edits in trunk/Tools
REGRESSION(r292308): links to results is wrong for some tests
https://bugs.webkit.org/show_bug.cgi?id=238862
Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2022-04-06
Reviewed by Youenn Fablet.
Since r292308 we generate the wrong links in the results for the tests that end with .https.html. This is because
the output_filename is expected to have the extension, that is removed before renturing the value. Since
r292308, the extension is removed first, so .https is considered the extension and removed too.
- Scripts/webkitpy/layout_tests/controllers/test_result_writer.py:
(TestResultWriter.output_filename):
- Scripts/webkitpy/layout_tests/controllers/test_result_writer_unittest.py:
(TestResultWriterTest.test_reftest_diff_image):
(TestResultWriterTest):
(TestResultWriterTest.test_output_filename):
- 7:19 AM Changeset in webkit [292463] by
-
- 14 edits in trunk
[css] Turn -webkit-text-orientation into a legacy shorthand
https://bugs.webkit.org/show_bug.cgi?id=238356
Reviewed by Antti Koivisto.
Source/WebCore:
-webkit-text-orientationandtext-orientationwere both implemented
as longhands, just with arelated-propertyflag so that declaration
blocks with both of them would use the one appearing last.
However, the logic for
related-propertywasn't always working well.
In bug 238350 I plan to merge it with shouldApplyPropertyInParseOrder(),
which has the same purpose and works better. But it's not suitable for
high priority properties liketext-orientation.
So this patch turns
-webkit-text-orientationinto a shorthand that
expands intotext-orientation.
-webkit-text-orientationcontinues accepting the legacy value
sideways-right, which is now mapped intosidewaysat parse time.
Previously this happened at computed-value time, but it implied that
serializingtext-decorationcould yield an invalid value.
Tests: fast/text/text-orientation-parse-competition.html
fast/text/text-orientation-parse-stylesheet.html
- css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::operator TextOrientation const):
Remove mapping ofsideways-rightintosideways, this is now
done at parse time. Also remove mapping ofvertical-rightintomixed
sincevertical-rightis a remnant of the past which has not been
considered valid syntax for years.
- css/CSSProperties.json:
Turn
-webkit-text-orientationinto a shorthand oftext-orientation.
Remove theirrelated-propertyflags and a remnant ofvertical-right.
- css/StyleProperties.cpp:
(WebCore::StyleProperties::getPropertyValue const):
Add code for serializing the-webkit-text-orientationshorthand.
- css/makeprop.pl:
Avoid a compile warning in getRelatedPropertyId() when no property has
therelated-propertyflag.
- css/parser/CSSParserFastPaths.cpp:
(WebCore::CSSParserFastPaths::isValidKeywordPropertyAndValue):
(WebCore::CSSParserFastPaths::isKeywordPropertyID):
Remove-webkit-text-orientationfrom code which is only relevant for
longhands.
- css/parser/CSSPropertyParser.cpp:
(WebCore::CSSPropertyParser::consumeLegacyTextOrientation):
(WebCore::CSSPropertyParser::parseShorthand):
Add parsing logic for-webkit-text-orientationas a shorthand.
- css/parser/CSSPropertyParser.h:
Add parsing logic for
-webkit-text-orientationas a shorthand.
- style/StyleBuilderCustom.h:
(WebCore::Style::BuilderCustom::applyValueWebkitTextOrientation): Deleted.
Remove-webkit-text-orientationfrom code which is only relevant for
longhands.
LayoutTests:
- fast/text/text-orientation-parse-competition-expected.txt:
- fast/text/text-orientation-parse-competition.html:
Check that if a stylesheet specifies both -webkit-text-orientation and
text-orientation for the same element, the last specified one wins.
- fast/text/text-orientation-parse-stylesheet-expected.txt:
- fast/text/text-orientation-parse-stylesheet.html:
Check that only -webkit-text-orientation accepts
sideways-right, and
that it's mapped tosidewaysat parse time.
- 6:33 AM Changeset in webkit [292462] by
-
- 2 edits in trunk/Source/WebCore
[TextureMapper] Clean up the GraphicsContextGLTextureMapperANGLE header
https://bugs.webkit.org/show_bug.cgi?id=238864
Reviewed by Carlos Garcia Campos.
- platform/graphics/texmap/GraphicsContextGLTextureMapperANGLE.h:
Remove two unused libgbm declarations and mark the class destructor as
virtual, which it is due to its inheritance.
- 6:29 AM Changeset in webkit [292461] by
-
- 9 edits in trunk/Source/WebKit
Media and WebRTC code uses ThreadMessageReceiverRefCounted with WorkQueues
https://bugs.webkit.org/show_bug.cgi?id=238858
Patch by Kimmo Kinnunen <kkinnunen@apple.com> on 2022-04-06
Reviewed by Youenn Fablet.
Media and WebRTC code uses IPC::Connection::ThreadMessageReceiverRefCounted
to submit work to a WorkQueue. For this use-case, IPC::Connection has
IPC::Connection::WorkQueueMessageReceiver, which does the same.
This is work towards simplifying IPC::Connection by removing
ThreadMessageReceiverRefCounted.
No new tests, refactor.
- GPUProcess/webrtc/LibWebRTCCodecsProxy.h:
- GPUProcess/webrtc/LibWebRTCCodecsProxy.mm:
(WebKit::LibWebRTCCodecsProxy::stopListeningForIPC):
(WebKit::LibWebRTCCodecsProxy::initialize):
- GPUProcess/webrtc/RemoteSampleBufferDisplayLayerManager.cpp:
(WebKit::RemoteSampleBufferDisplayLayerManager::startListeningForIPC):
(WebKit::RemoteSampleBufferDisplayLayerManager::close):
(WebKit::RemoteSampleBufferDisplayLayerManager::createLayer):
(WebKit::RemoteSampleBufferDisplayLayerManager::releaseLayer):
- GPUProcess/webrtc/RemoteSampleBufferDisplayLayerManager.h:
- WebProcess/GPU/webrtc/LibWebRTCCodecs.cpp:
(WebKit::LibWebRTCCodecs::ensureGPUProcessConnectionOnMainThreadWithLock):
(WebKit::LibWebRTCCodecs::ensureGPUProcessConnectionAndDispatchToThread):
(WebKit::LibWebRTCCodecs::gpuProcessConnectionDidClose):
- WebProcess/GPU/webrtc/LibWebRTCCodecs.h:
- WebProcess/cocoa/RemoteCaptureSampleManager.cpp:
(WebKit::RemoteCaptureSampleManager::stopListeningForIPC):
(WebKit::RemoteCaptureSampleManager::setConnection):
- WebProcess/cocoa/RemoteCaptureSampleManager.h:
- 5:36 AM Changeset in webkit [292460] by
-
- 2 edits in trunk/Source/WebKit
Unreviewed. Fix GTK build after r292458
- UIProcess/API/gtk/PageClientImpl.cpp:
(WebKit::PageClientImpl::hostFileDescriptor):
- 4:17 AM Changeset in webkit [292459] by
-
- 35 edits3 adds1 delete in trunk
Implement ServiceWorkerWindowClient.navigate
https://bugs.webkit.org/show_bug.cgi?id=238738
Reviewed by Chris Dumez.
LayoutTests/imported/w3c:
- web-platform-tests/service-workers/service-worker/windowclient-navigate.https-expected.txt:
Source/WebCore:
Introduce a routine to navigate a Document.
Send FrameIdentifier as part of ServiceWorkerClientData.
Implement ServiceWorkerWindowClient::navigate by sending IPC to network process.
Test: http/wpt/service-workers/navigate-iframes-window-client.https.html
- dom/Document.cpp:
- dom/Document.h:
- loader/FrameLoader.cpp:
- workers/service/ServiceWorkerClientData.cpp:
- workers/service/ServiceWorkerClientData.h:
- workers/service/ServiceWorkerWindowClient.cpp:
- workers/service/context/SWContextManager.h:
- workers/service/server/SWServer.cpp:
- workers/service/server/SWServer.h:
- workers/service/server/SWServerWorker.cpp:
- workers/service/server/SWServerWorker.h:
Source/WebKit:
When receiving a request to navigate a client, send message to UIProcess.
UIProcess locates the WebFrameProxy which will send an IPC message to the WebProcess to do navigation.
We keep track of the navigation within WebFrameProxy.
In case of process swapping, we make sure to transfer the WebFrameProxy callback.
In case of policy decision to stop loads, we resolve the promise with an empty client.
A follow-up patch may reject the promise once the expected behavior will be clarified.
- NetworkProcess/ServiceWorker/WebSWServerConnection.cpp:
- NetworkProcess/ServiceWorker/WebSWServerConnection.h:
- NetworkProcess/ServiceWorker/WebSWServerToContextConnection.cpp:
- NetworkProcess/ServiceWorker/WebSWServerToContextConnection.h:
- NetworkProcess/ServiceWorker/WebSWServerToContextConnection.messages.in:
- UIProcess/Network/NetworkProcessProxy.cpp:
- UIProcess/Network/NetworkProcessProxy.h:
- UIProcess/Network/NetworkProcessProxy.messages.in:
- UIProcess/ProvisionalPageProxy.cpp:
- UIProcess/WebFrameProxy.cpp:
- UIProcess/WebFrameProxy.h:
- UIProcess/WebPageProxy.cpp:
- WebProcess/Storage/WebSWContextManagerConnection.cpp:
- WebProcess/Storage/WebSWContextManagerConnection.h:
- WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
- WebProcess/WebPage/WebPage.cpp:
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
LayoutTests:
- http/wpt/service-workers/navigate-iframes-window-client.https-expected.txt: Added.
- http/wpt/service-workers/navigate-iframes-window-client.https.html: Added.
- http/wpt/service-workers/navigate-window-client-worker.js: Added.
- platform/glib/TestExpectations:
- platform/glib/imported/w3c/web-platform-tests/service-workers/service-worker/windowclient-navigate.https-expected.txt: Removed.
- platform/mac-wk2/TestExpectations:
- 4:16 AM Changeset in webkit [292458] by
-
- 14 edits in trunk/Source/WebKit
[Unix] Adopt UnixFileDescriptor in IPC::Attachment
https://bugs.webkit.org/show_bug.cgi?id=238801
Reviewed by Carlos Garcia Campos.
Adopt WTF::UnixFileDescriptor for usage in IPC::Attachment, in place of
a raw integer value. This simplifies move operations and destruction of
this value.
The two relevant constructors are changed to expect a UnixFileDescriptor
rvalue, and they're also made explicit. The file descriptor object is
accessible through both a const and a non-const getter, which allows the
user to read or release the file descriptor contained there. There's
also a release method that returns the contained UnixFileDescriptor.
The releaseFileDescriptor() and fileDescriptor() methods, previously
releasing or returning the contained integer value of the descriptor.
Call sites for these methods as well as the old-form constructors are
adjusted to the new variants.
- Platform/IPC/Attachment.h:
(IPC::Attachment::isNull const):
(IPC::Attachment::fd const):
(IPC::Attachment::release):
(IPC::Attachment::releaseFileDescriptor): Deleted.
(IPC::Attachment::fileDescriptor const): Deleted.
- Platform/IPC/unix/AttachmentUnix.cpp:
(IPC::Attachment::Attachment):
(IPC::Attachment::operator=):
(IPC::Attachment::~Attachment): Deleted.
- Platform/IPC/unix/ConnectionUnix.cpp:
(IPC::Connection::processMessage):
(IPC::Connection::sendOutputMessage):
(IPC::Connection::createConnectionIdentifierPair):
- Platform/unix/SharedMemoryUnix.cpp:
(WebKit::SharedMemory::Handle::isNull const):
(WebKit::SharedMemory::map):
(WebKit::SharedMemory::createHandle):
- Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder<UnixFileDescriptor>::encode):
(IPC::ArgumentCoder<UnixFileDescriptor>::decode):
- Shared/glib/UserMessage.cpp:
(WebKit::UserMessage::encode const):
(WebKit::UserMessage::decode):
- UIProcess/API/wpe/PageClientImpl.cpp:
(WebKit::PageClientImpl::hostFileDescriptor):
- UIProcess/glib/WebProcessPoolGLib.cpp:
(WebKit::WebProcessPool::platformInitializeWebProcess):
- WebProcess/GPU/GPUProcessConnectionInfo.h:
(WebKit::GPUProcessConnectionInfo::identifier const):
(WebKit::GPUProcessConnectionInfo::releaseIdentifier):
- WebProcess/Inspector/WebInspector.cpp:
(WebKit::WebInspector::setFrontendConnection):
- WebProcess/Network/NetworkProcessConnectionInfo.h:
(WebKit::NetworkProcessConnectionInfo::identifier const):
(WebKit::NetworkProcessConnectionInfo::releaseIdentifier):
- WebProcess/WebPage/WebPage.h:
(WebKit::WebPage::hostFileDescriptor const):
- WebProcess/glib/WebProcessGLib.cpp:
(WebKit::WebProcess::platformInitializeWebProcess):
- 3:13 AM Changeset in webkit [292457] by
-
- 3 edits in trunk/Source/JavaScriptCore
[JSC] Add DoNotHaveTagRegisters mode to unboxDouble
https://bugs.webkit.org/show_bug.cgi?id=238018
Patch by Xan Lopez <Xan Lopez> on 2022-04-06
Reviewed by Yusuke Suzuki.
Wasm cannot use unboxDouble as-is because
GPRInfo::numberTagRegister is not available. Add a
DoNotHaveTagRegister mode so we can get rid of some duplicated
code.
- jit/AssemblyHelpers.h:
(JSC::AssemblyHelpers::unboxDoubleWithoutAssertions):
(JSC::AssemblyHelpers::unboxDouble):
- wasm/js/WasmToJS.cpp:
(JSC::Wasm::wasmToJS):
- 3:05 AM Changeset in webkit [292456] by
-
- 15 edits in trunk
ServiceWorkerClients.openWindow should not need to get all clients asynchronously to resolve its promise
https://bugs.webkit.org/show_bug.cgi?id=238503
Reviewed by Chris Dumez.
Source/WebCore:
Move matching client in openWindow in network process as an optimization.
This also prevents some race conditions where the opened page could quickly navigate to another page.
Also have a code path that rejects the openWindow promise, and trigger that code path in case of internal error.
Covered by existing and API test.
- workers/WorkerGlobalScope.h:
- workers/service/ServiceWorkerClients.cpp:
- workers/service/context/SWContextManager.h:
- workers/service/server/SWServer.cpp:
- workers/service/server/SWServer.h:
- workers/service/server/SWServerToContextConnection.h:
Source/WebKit:
Add logic to get the client from its page ID.
In case of internal error case, trigger promise rejection instead of promise resolution with null.
- NetworkProcess/ServiceWorker/WebSWServerToContextConnection.cpp:
- NetworkProcess/ServiceWorker/WebSWServerToContextConnection.h:
- NetworkProcess/ServiceWorker/WebSWServerToContextConnection.messages.in:
- WebProcess/Storage/WebSWContextManagerConnection.cpp:
- WebProcess/Storage/WebSWContextManagerConnection.h:
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
- 2:16 AM Changeset in webkit [292455] by
-
- 5 edits in trunk/Source/WebCore
Remove some @apply leftover code
https://bugs.webkit.org/show_bug.cgi?id=238857
Reviewed by Tim Nguyen.
@apply is not a thing.
- css/CSSVariableData.h:
- css/parser/CSSParserImpl.cpp:
(WebCore::CSSParserImpl::consumeAtRule):
(WebCore::CSSParserImpl::consumeDeclarationList):
- css/parser/CSSParserImpl.h:
- css/parser/CSSVariableParser.cpp:
(WebCore::classifyBlock):
(WebCore::isValidVariableReference):
(WebCore::isValidConstantReference):
(WebCore::classifyVariableRange):
(WebCore::CSSVariableParser::containsValidVariableReferences):
(WebCore::CSSVariableParser::parseDeclarationValue):
- 2:04 AM Changeset in webkit [292454] by
-
- 2 edits in trunk/Source/JavaScriptCore
[JSC] Nested includes do not change offlineasm hash output
https://bugs.webkit.org/show_bug.cgi?id=237779
Reviewed by Mark Lam.
The Ruby tooling around offlineasm can produce on their output a line containing a
checksum which depends on the input files processed. This is used to avoid redoing
in case the source files have not been changed since the last run. While there is
code to scan the "include" directives in the main input file and take the included
files into account for checksum calculation, included files themselves were not being
further processed for the second or additional levels of "include:. This adds the
missing recursive processing of "include" directives in order to take nested includes
into account.
- offlineasm/parser.rb: Process nested includes recursively for checksum calculation.
- 1:52 AM Changeset in webkit [292453] by
-
- 2 edits in trunk/Source/JavaScriptCore
[JSC]Squash alignment warning
https://bugs.webkit.org/show_bug.cgi?id=238670
Unreviewed gardening.
Squash a "cast increases required alignment of target type" due to
poiner arithmetic via char*
Patch by Geza Lore <Geza Lore> on 2022-04-06
- wasm/WasmSignature.h:
(JSC::Wasm::Signature::storage):
- 12:48 AM Changeset in webkit [292452] by
-
- 4 edits in trunk/Tools
[Flatpak SDK][AT-SPI] Use xdg-dbus-proxy to expose the a11y bus
https://bugs.webkit.org/show_bug.cgi?id=238856
Reviewed by Carlos Garcia Campos.
Expose the host at-spi socket with xdg-dbus-proxy to avoid at-spi
bailing out by not being able to connect to the a11y bus.
Also add the exported address to the environement of the tests.
Based on the original patch by Patrick Griffis with minor updates.
- Scripts/webkitpy/port/gtk.py:
(GtkPort.setup_environ_for_server):
- Scripts/webkitpy/port/wpe.py:
(WPEPort.setup_environ_for_server):
- flatpak/flatpakutils.py:
(WebkitFlatpak.setup_a11y_proxy):
(WebkitFlatpak.run_in_sandbox):
(WebkitFlatpak.get_user_runtime_dir): Deleted.
- 12:05 AM Changeset in webkit [292451] by
-
- 6 edits in trunk/Source
Remove Notification::m_relatedNotificationIdentifier
https://bugs.webkit.org/show_bug.cgi?id=238603
Reviewed by Brady Eidson.
Source/WebCore:
m_relatedNotificationIdentifier was added as a temporary workaround for persistent notifications that are recreated in other contexts.
To directly support this case, Notification is no longer a Identified<UUID> and instead has a m_identifier.
When created from JS, Notification::m_identifier is generated.
When created from NotificationData, Notification::m_identifier is copied from NotificationData.
Covered by existing tests.
- Modules/notifications/Notification.cpp:
- Modules/notifications/Notification.h:
Source/WebKit:
Directly use identifier now that we correctly reuse them when needed.
We no longer store persistent notifications in the map since we do not use the map for click/close events.
- WebProcess/Notifications/WebNotificationManager.cpp:
- WebProcess/Notifications/WebNotificationManager.h: