Timeline
Apr 5, 2022:
- 11:06 PM Changeset in webkit [292450] 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):
- 10:30 PM Changeset in webkit [292449] by
-
- 17 edits2 adds in trunk
[WebXR] Add a new enum type to represent session features
https://bugs.webkit.org/show_bug.cgi?id=238837
Patch by Ada Chan <adachan@apple.com> on 2022-04-05
Reviewed by Dean Jackson.
Source/WebCore:
Test: http/wpt/webxr/xrDevice_requestSession_hand_tracking_feature.https.html
Add a new enum type, PlatformXR::SessionFeature, to represent session features.
It includes the ReferenceSpaceTypes and the hand-tracking feature for now.
Fix the algorithm to resolve the requested features to recognize hand-tracking
as a feature that requires explicit consent.
- Modules/webxr/WebXRSession.cpp:
(WebCore::WebXRSession::referenceSpaceIsSupported const):
Convert the XRReferenceSpaceType to PlatformXR::SessionFeature first before
checking against the feature list.
- Modules/webxr/WebXRSystem.cpp:
(WebCore::WebXRSystem::inlineSessionRequestIsAllowedForGlobalObject const):
Use PlatformXR::parseSessionFeatureDescriptor() to parse the feature string.
(WebCore::featureRequiresExplicitConsent):
Returns true for the hand tracking feature.
(WebCore::WebXRSystem::isFeatureSupported const):
Check whether the device supports the feature. For hand-tracking, make sure
the hand input module setting is enabled.
(WebCore::WebXRSystem::resolveRequestedFeatures const):
Update the string conversion between JS and WTF::String now that features cannot
be parsed as XRReferenceSpaceType enum. If the feature requires explicit consent
and it's not already in the granted list, add it to consentRequired or consentOptional
depending on whether it's specified as required.
(WebCore::WebXRSystem::resolveFeaturePermissions const):
If a feature is required but not given a clear signal of user intent, the session
should not be created.
(WebCore::WebXRSystem::DummyInlineDevice::DummyInlineDevice):
Updated to use PlatformXR::SessionFeature.
- Modules/webxr/WebXRSystem.h:
- platform/xr/PlatformXR.h:
(PlatformXR::sessionFeatureFromReferenceSpaceType):
(PlatformXR::parseSessionFeatureDescriptor):
Parse feature string to return PlatformXR::SessionFeature.
(PlatformXR::sessionFeatureDescriptor):
Return feature string from PlatformXR::SessionFeature.
(PlatformXR::Device::supports const):
Read from the m_supportedFeaturesMap.
(PlatformXR::Device::setSupportedFeatures):
Write to the m_supportedFeaturesMap.
(PlatformXR::Device::supportedFeatures const):
Read from the m_supportedFeaturesMap.
- platform/xr/openxr/PlatformXROpenXR.cpp:
(PlatformXR::OpenXRDevice::collectSupportedFeatures const):
Updated to use PlatformXR::SessionFeature.
- testing/WebXRTest.cpp:
(WebCore::WebXRTest::simulateDeviceConnection):
Updated to parse feature string to PlatformXR::SessionFeature.
Source/WebKit:
Add a new _WKXRSessionFeatureFlags entry for hand-tracking.
- Scripts/webkit/messages.py:
(types_that_cannot_be_forward_declared):
(headers_for_type):
- Shared/XR/XRDeviceProxy.cpp:
(WebKit::XRDeviceProxy::XRDeviceProxy):
- UIProcess/API/Cocoa/WKUIDelegatePrivate.h:
- UIProcess/Cocoa/UIDelegate.mm:
(WebKit::toWKXRSessionFeatureFlags):
(WebKit::toPlatformXRFeatures):
- UIProcess/XR/PlatformXRSystem.cpp:
(WebKit::PlatformXRSystem::requestPermissionOnSessionFeatures):
- UIProcess/XR/PlatformXRSystem.h:
- UIProcess/XR/PlatformXRSystem.messages.in:
LayoutTests:
Test listing "hand-tracking" as an optional feature while the device does not
support it allows the session to be created.
Test listing "hand-tracking" as a required feature while the device does not
support it would not create the session.
- http/wpt/webxr/resources/webxr_test_constants_single_view.js:
- http/wpt/webxr/xrDevice_requestSession_hand_tracking_feature.https-expected.txt: Added.
- http/wpt/webxr/xrDevice_requestSession_hand_tracking_feature.https.html: Added.
- 9:07 PM Changeset in webkit [292448] by
-
- 3 edits in trunk/Source/WebKit
[iOS] Update the context menu item glyph for visual look up
https://bugs.webkit.org/show_bug.cgi?id=238853
Reviewed by Devin Rousso.
Switch from
info.circle
to the (private) symbolinfo.circle.and.sparkles
, for the icon next to the Look Up
item when long pressing images that have visual look up results.
- Platform/spi/ios/UIKitSPI.h:
- UIProcess/API/Cocoa/_WKElementAction.mm:
(+[_WKElementAction imageForElementActionType:]):
- 8:41 PM Changeset in webkit [292447] by
-
- 10 edits in trunk/Source/JavaScriptCore
[JSC] Use inlined assertion for CodeBlock type
https://bugs.webkit.org/show_bug.cgi?id=238849
Reviewed by Michael Saboff.
We introduced probeDebug-based CodeBlock assertion, but it is too slow and causing timeout on Debug JSC tests.
Instead, we use inlined assertion which is much faster to prevent these Debug build timeout.
- assembler/AbortReason.h:
- dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::compileEntry):
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileCurrentBlock):
- dfg/DFGThunks.cpp:
(JSC::DFG::osrEntryThunkGenerator):
- ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::lower):
- jit/AssemblyHelpers.cpp:
(JSC::AssemblyHelpers::jitAssertCodeBlockOnCallFrameWithType):
(JSC::AssemblyHelpers::jitAssertCodeBlockOnCallFrameIsOptimizingJIT):
- jit/AssemblyHelpers.h:
(JSC::AssemblyHelpers::jitAssertCodeBlockOnCallFrameWithType):
(JSC::AssemblyHelpers::jitAssertCodeBlockOnCallFrameIsOptimizingJIT):
- jit/JIT.cpp:
(JSC::JIT::compileAndLinkWithoutFinalizing):
- jit/JITCode.h:
(JSC::JITCode::offsetOfJITType):
- 8:27 PM Changeset in webkit [292446] by
-
- 2 edits in trunk/Source/WebCore
Eliminate delays for processing live regions and modal notifications.
https://bugs.webkit.org/show_bug.cgi?id=238833
<rdar://problem/91314023>
Reviewed by Chris Fleizach.
We had arbitrary delays to process notifications for live regions and
modal elements. This is no longer necessary and may cause problems
updating the isolated tree that depends on these notifications being
processed in a timely manner.
- accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::handleChildrenChanged):
(WebCore::AXObjectCache::postLiveRegionChangeNotification):
(WebCore::AXObjectCache::focusModalNode):
- 5:54 PM Changeset in webkit [292445] by
-
- 20 edits in trunk/Source/JavaScriptCore
[JSC] Strictly annotate pointers with TrustedImmPtr in CCallHelpers
https://bugs.webkit.org/show_bug.cgi?id=238827
Reviewed by Mark Lam.
This allows us to detect pointer use in DFG easy. This is important in unlinked DFG development.
We also consistently use m_graph instead of m_jit.graph() in DFG::SpeculativeJIT.
We also purge CodeBlock* embedding in DFG code completely. Now we load it from the cfr
instead (compileLogShadowChickenTail and callOperationWithCallFrameRollbackOnException).
- dfg/DFGArrayifySlowPathGenerator.h:
- dfg/DFGCallArrayAllocatorSlowPathGenerator.h:
- dfg/DFGCallCreateDirectArgumentsSlowPathGenerator.h:
- dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::compile):
(JSC::DFG::JITCompiler::compileFunction):
- dfg/DFGOSRExit.cpp:
(JSC::DFG::OSRExit::OSRExit):
(JSC::DFG::OSRExit::compileExit):
- dfg/DFGOSRExitCompilerCommon.cpp:
(JSC::DFG::osrWriteBarrier):
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::SpeculativeJIT):
(JSC::DFG::SpeculativeJIT::emitGetCallee):
(JSC::DFG::SpeculativeJIT::emitOSRExitFuzzCheck):
(JSC::DFG::SpeculativeJIT::speculationCheck):
(JSC::DFG::SpeculativeJIT::silentSavePlanForGPR):
(JSC::DFG::SpeculativeJIT::checkArray):
(JSC::DFG::SpeculativeJIT::useChildren):
(JSC::DFG::SpeculativeJIT::compileGetById):
(JSC::DFG::SpeculativeJIT::compileGetByIdFlush):
(JSC::DFG::SpeculativeJIT::compileDeleteById):
(JSC::DFG::SpeculativeJIT::compileDeleteByVal):
(JSC::DFG::SpeculativeJIT::compileInById):
(JSC::DFG::SpeculativeJIT::compileInByVal):
(JSC::DFG::SpeculativeJIT::compileHasPrivate):
(JSC::DFG::SpeculativeJIT::compileStringSlice):
(JSC::DFG::SpeculativeJIT::compileLoopHint):
(JSC::DFG::SpeculativeJIT::compileCurrentBlock):
(JSC::DFG::SpeculativeJIT::checkArgumentTypes):
(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::createOSREntries):
(JSC::DFG::SpeculativeJIT::linkOSREntries):
(JSC::DFG::SpeculativeJIT::compileCheckTraps):
(JSC::DFG::SpeculativeJIT::compileContiguousPutByVal):
(JSC::DFG::SpeculativeJIT::compileDoublePutByVal):
(JSC::DFG::SpeculativeJIT::compilePutByVal):
(JSC::DFG::SpeculativeJIT::compileGetByValOnString):
(JSC::DFG::compileClampDoubleToByte):
(JSC::DFG::SpeculativeJIT::jumpForTypedArrayOutOfBounds):
(JSC::DFG::SpeculativeJIT::compilePutByValForIntTypedArray):
- dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::nextBlock):
(JSC::DFG::SpeculativeJIT::masqueradesAsUndefinedWatchpointIsStillValid):
(JSC::DFG::SpeculativeJIT::identifierUID):
(JSC::DFG::SpeculativeJIT::callOperationWithCallFrameRollbackOnException):
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::cachedGetById):
(JSC::DFG::SpeculativeJIT::cachedGetByIdWithThis):
(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompareNullOrUndefined):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranchNullOrUndefined):
(JSC::DFG::SpeculativeJIT::emitCall):
(JSC::DFG::SpeculativeJIT::compileToBooleanObjectOrOther):
(JSC::DFG::SpeculativeJIT::compileToBoolean):
(JSC::DFG::SpeculativeJIT::emitObjectOrOtherBranch):
(JSC::DFG::SpeculativeJIT::emitBranch):
(JSC::DFG::SpeculativeJIT::compileGetByVal):
(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::compileArithRandom):
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::fillJSValue):
(JSC::DFG::SpeculativeJIT::cachedGetById):
(JSC::DFG::SpeculativeJIT::cachedGetByIdWithThis):
(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompareNullOrUndefined):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranchNullOrUndefined):
(JSC::DFG::SpeculativeJIT::emitCall):
(JSC::DFG::SpeculativeJIT::fillSpeculateInt32Internal):
(JSC::DFG::SpeculativeJIT::fillSpeculateInt32Strict):
(JSC::DFG::SpeculativeJIT::fillSpeculateInt52):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):
(JSC::DFG::SpeculativeJIT::fillSpeculateBigInt32):
(JSC::DFG::SpeculativeJIT::compileCompareEqPtr):
(JSC::DFG::SpeculativeJIT::compileToBooleanObjectOrOther):
(JSC::DFG::SpeculativeJIT::compileToBoolean):
(JSC::DFG::SpeculativeJIT::emitObjectOrOtherBranch):
(JSC::DFG::SpeculativeJIT::emitUntypedBranch):
(JSC::DFG::SpeculativeJIT::emitBranch):
(JSC::DFG::SpeculativeJIT::compileGetByVal):
(JSC::DFG::SpeculativeJIT::compileNewTypedArrayWithInt52Size):
(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::compileArithRandom):
(JSC::DFG::SpeculativeJIT::compileDateGet):
- ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileUnaryMathIC):
(JSC::FTL::DFG::LowerDFGToB3::compileBinaryMathIC):
(JSC::FTL::DFG::LowerDFGToB3::getPrivateName):
(JSC::FTL::DFG::LowerDFGToB3::compilePrivateBrandAccess):
(JSC::FTL::DFG::LowerDFGToB3::compilePutPrivateName):
(JSC::FTL::DFG::LowerDFGToB3::cachedPutById):
(JSC::FTL::DFG::LowerDFGToB3::compileGetByValImpl):
(JSC::FTL::DFG::LowerDFGToB3::compilePutByVal):
(JSC::FTL::DFG::LowerDFGToB3::compileDelBy):
(JSC::FTL::DFG::LowerDFGToB3::compileCreateActivation):
(JSC::FTL::DFG::LowerDFGToB3::compileNewFunction):
(JSC::FTL::DFG::LowerDFGToB3::compileCreateDirectArguments):
(JSC::FTL::DFG::LowerDFGToB3::compileObjectKeysOrObjectGetOwnPropertyNames):
(JSC::FTL::DFG::LowerDFGToB3::compileNewStringObject):
(JSC::FTL::DFG::LowerDFGToB3::emitNewTypedArrayWithSize):
(JSC::FTL::DFG::LowerDFGToB3::compileMakeRope):
(JSC::FTL::DFG::LowerDFGToB3::compileNotifyWrite):
(JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq):
- ftl/FTLOSRExitCompiler.cpp:
(JSC::FTL::compileStub):
- jit/CCallHelpers.cpp:
- jit/CCallHelpers.h:
(JSC::CCallHelpers::std::is_pointer<CURRENT_ARGUMENT_TYPE>::value): Deleted.
- jit/JIT.cpp:
(JSC::JIT::emitEnterOptimizationCheck):
- jit/JITArithmetic.cpp:
(JSC::JIT::emitMathICFast):
(JSC::JIT::emitMathICSlow):
- jit/JITOpcodes.cpp:
(JSC::JIT::emitSlow_op_new_object):
(JSC::JIT::emit_op_catch):
(JSC::JIT::emit_op_switch_imm):
(JSC::JIT::op_enter_handlerGenerator):
(JSC::JIT::emit_op_debug):
(JSC::JIT::emitSlow_op_loop_hint):
(JSC::JIT::emit_op_new_regexp):
(JSC::JIT::emitNewFuncCommon):
(JSC::JIT::emitNewFuncExprCommon):
(JSC::JIT::emit_op_profile_type):
- jit/JITPropertyAccess.cpp:
(JSC::JIT::emit_op_put_getter_by_id):
(JSC::JIT::emit_op_put_setter_by_id):
(JSC::JIT::emit_op_put_getter_setter_by_id):
(JSC::JIT::emitWriteBarrier):
- wasm/js/WasmToJS.cpp:
(JSC::Wasm::wasmToJS):
- 5:24 PM Changeset in webkit [292444] by
-
- 3 edits in trunk/Source/WebCore/PAL
[XCBuild] PAL: Add headers-only dependency on WebGPU
https://bugs.webkit.org/show_bug.cgi?id=238646
Reviewed by Alexey Proskuryakov.
Lots of includes of WebGPU in pal/graphics/WebGPU/Impl, so the build system needs to know to
copy its headers before building PAL.
Clean up a file reference to a header that was removed in
https://commits.webkit.org/247364@main
- PAL.xcodeproj/project.pbxproj:
- 5:08 PM Changeset in webkit [292443] by
-
- 2 edits in branches/safari-614.1.9-branch/Source/WebCore
Cherry-pick r292430. rdar://problem/91293025
[Cocoa] Video is sometimes not visible after r292049
https://bugs.webkit.org/show_bug.cgi?id=238826
Reviewed by Jer Noble.
RenderVideo::willBeDestroyed calls MediaPlayer::setPageIsVisible, which causes
MediaPlayerPrivateAVFoundationObjC::platformSetVisible to hide the AVPlayerLayer.
HTMLMediaElement::visibilityStateChanged is the only other thing that calls
MediaPlayer::setPageIsVisible, and it only calls it when the page visibility changes,
so if that doesn't happen the AVPlayerLayer is not shown when the renderer is
recreated.
- rendering/RenderVideo.cpp: (WebCore::RenderVideo::willBeDestroyed): Don't call MediaPlayer::setPageIsVisible(false), the page visibility has not changed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@292430 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 5:08 PM Changeset in webkit [292442] by
-
- 3 edits in branches/safari-614.1.9-branch/Source/WebKit
Cherry-pick r292426. rdar://problem/90808910
Verify generalStorageDirectory is not in use when creating WebsiteDataStore
https://bugs.webkit.org/show_bug.cgi?id=238686
rdar://90808910
Reviewed by Chris Dumez.
In r290739, we added assertion to verify that no two sessions share the same general storage directory. The
assertion is hit on macOS as shown in rdar://90808910. However, because we checked the directories when
launching new network process, not when creating WebsiteDataStore, the backtraces do not give much information
about when the problematic WebsiteDataStore (using the generalStorageDirectory that's already used by another
WebsiteDataStore) is created. To help debug the issue, let's move the assertion to the constructor of
WebsiteDataStore.
- UIProcess/Network/NetworkProcessProxy.cpp: (WebKit::NetworkProcessProxy::sendCreationParametersToNewProcess):
- UIProcess/WebsiteData/WebsiteDataStore.cpp: (WebKit::activeGeneralStorageDirectories): (WebKit::WebsiteDataStore::WebsiteDataStore): (WebKit::WebsiteDataStore::~WebsiteDataStore):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@292426 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 4:52 PM Changeset in webkit [292441] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: Regression(r291729) The result of logging $0 to the console shows overlapping
$0
and$[n]
after the node
https://bugs.webkit.org/show_bug.cgi?id=238843
Reviewed by Devin Rousso.
r291729 was missing a check that the
DOMTreeOutline
is actually supposed to show an indicator for the
inspected node, which means other uses ofDOMTreeOutline
(the console, the sources tab, etc.) were showing the
$0 indicator as well.
- UserInterface/Views/DOMTreeOutline.js:
(WI.DOMTreeOutline.prototype.update):
- 4:28 PM Changeset in webkit [292440] by
-
- 6 edits in trunk/Source
[PlayStation[ Fix build break after r292408
https://bugs.webkit.org/show_bug.cgi?id=238840
Unreviewed build fix.
Source/WebCore:
- platform/LocalizedStrings.cpp:
- platform/network/playstation/CurlSSLHandlePlayStation.cpp:
- platform/playstation/UserAgentPlayStation.cpp:
Source/WebKit:
- UIProcess/API/C/playstation/WKPagePrivatePlayStation.cpp:
- 4:19 PM Changeset in webkit [292439] by
-
- 1 copy in tags/Safari-613.2.5.0.1
Tag Safari-613.2.5.0.1.
- 4:18 PM Changeset in webkit [292438] by
-
- 3 edits in branches/safari-613.2.5.0-branch/Source/WebKit
Cherry-pick r292431. rdar://problem/90677955
Revert r291598
https://bugs.webkit.org/show_bug.cgi?id=238842
<rdar://90677955>
Reviewed by Geoff Garen.
It caused some problems and needs further analysis.
- NetworkProcess/cocoa/NetworkSessionCocoa.mm: (WebKit::NetworkSessionCocoa::createWebSocketTask):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@292431 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 4:16 PM Changeset in webkit [292437] by
-
- 9 edits in branches/safari-613.2.5.0-branch/Source
Versioning.
WebKit-7613.2.5.0.1
- 4:05 PM Changeset in webkit [292436] by
-
- 1 copy in tags/Safari-614.1.8.4
Tag Safari-614.1.8.4.
- 4:02 PM Changeset in webkit [292435] by
-
- 3 edits in branches/safari-614.1.8-branch/Source/WebKit
Cherry-pick r292431. rdar://problem/91320393
Revert r291598
https://bugs.webkit.org/show_bug.cgi?id=238842
<rdar://90677955>
Reviewed by Geoff Garen.
It caused some problems and needs further analysis.
- NetworkProcess/cocoa/NetworkSessionCocoa.mm: (WebKit::NetworkSessionCocoa::createWebSocketTask):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@292431 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 4:00 PM Changeset in webkit [292434] by
-
- 1 copy in branches/safari-613.2.5.0-branch
New branch.
- 3:33 PM Changeset in webkit [292433] by
-
- 2 edits in trunk/Source/WebKitLegacy
Fix STP build error "no such file or directory: 'Technology'"
https://bugs.webkit.org/show_bug.cgi?id=238834
<rdar://91271288>
Reviewed by Alexey Proskuryakov.
- scripts/migrate-header-rule: Don't generate an export list when
building for Mac. We won't use it, and this script does not support
paths in FRAMEWORK_SEARCH_PATHS containing spaces.
- 3:31 PM Changeset in webkit [292432] by
-
- 9 edits in trunk
Support transitions/animations on grid-template-columns|rows
https://bugs.webkit.org/show_bug.cgi?id=204580
LayoutTests/imported/w3c:
Reviewed by Antoine Quint.
Update expectation files for newly passing tests.
- web-platform-tests/css/css-grid/animation/grid-template-columns-interpolation-expected.txt:
- web-platform-tests/css/css-grid/animation/grid-template-rows-interpolation-expected.txt:
Source/WebCore:
Reviewed by Antoine Quint.
- animation/CSSPropertyAnimation.cpp:
(WebCore::canInterpolate):
(WebCore::blendFunc):
GridTrackLists can be interpolated if they are the same length, and if any repeat() functions
have the same length and count/type.
Adds function for determining if two GridTrackLists can be interpolated, and function for interpolating
per-entry if so.
Adds blending helpers for GridTrackSize and GridLength.
- css/CSSComputedStyleDeclaration.cpp:
(WebCore::valueForGridTrackList):
Remove empty line name sets from the serialized computed style in order to satisfy the shortest equivalent
serialization principle.
- style/StyleBuilderConverter.h:
(WebCore::Style::BuilderConverter::createGridTrackList):
Ensures computed track lists are stored in the canonical format (alternating between line name sets
and track sizes, starting and ending with a line name set), in order to make the interpolation
code simpler.
LayoutTests:
Reviewed by Antoine Quint.
- 3:16 PM Changeset in webkit [292431] by
-
- 3 edits in trunk/Source/WebKit
Revert r291598
https://bugs.webkit.org/show_bug.cgi?id=238842
<rdar://90677955>
Reviewed by Geoff Garen.
It caused some problems and needs further analysis.
- NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(WebKit::NetworkSessionCocoa::createWebSocketTask):
- 2:56 PM Changeset in webkit [292430] by
-
- 2 edits in trunk/Source/WebCore
[Cocoa] Video is sometimes not visible after r292049
https://bugs.webkit.org/show_bug.cgi?id=238826
Reviewed by Jer Noble.
RenderVideo::willBeDestroyed calls MediaPlayer::setPageIsVisible, which causes
MediaPlayerPrivateAVFoundationObjC::platformSetVisible to hide the AVPlayerLayer.
HTMLMediaElement::visibilityStateChanged is the only other thing that calls
MediaPlayer::setPageIsVisible, and it only calls it when the page visibility changes,
so if that doesn't happen the AVPlayerLayer is not shown when the renderer is
recreated.
- rendering/RenderVideo.cpp:
(WebCore::RenderVideo::willBeDestroyed): Don't call MediaPlayer::setPageIsVisible(false),
the page visibility has not changed.
- 2:52 PM Changeset in webkit [292429] by
-
- 6 edits in trunk/Source/WebKit
Unreviewed, reverting r291821.
https://bugs.webkit.org/show_bug.cgi?id=238839
Invalid fix.
Reverted changeset:
"REGRESSION(r286590): Links with URL schemes are not clickable
in Mail"
https://bugs.webkit.org/show_bug.cgi?id=238262
https://commits.webkit.org/r291821
- 2:48 PM Changeset in webkit [292428] by
-
- 2 edits in trunk/Source/JavaScriptCore
Avoid unnecessary String constructions in IdentifiersFactory.cpp
https://bugs.webkit.org/show_bug.cgi?id=238819
Reviewed by Geoffrey Garen.
- inspector/IdentifiersFactory.cpp:
(Inspector::addPrefixToIdentifier):
(Inspector::IdentifiersFactory::createIdentifier):
(Inspector::IdentifiersFactory::requestId):
- 2:38 PM Changeset in webkit [292427] by
-
- 1 copy in tags/Safari-614.1.7.6
Tag Safari-614.1.7.6.
- 2:38 PM Changeset in webkit [292426] by
-
- 3 edits in trunk/Source/WebKit
Verify generalStorageDirectory is not in use when creating WebsiteDataStore
https://bugs.webkit.org/show_bug.cgi?id=238686
rdar://90808910
Reviewed by Chris Dumez.
In r290739, we added assertion to verify that no two sessions share the same general storage directory. The
assertion is hit on macOS as shown in rdar://90808910. However, because we checked the directories when
launching new network process, not when creating WebsiteDataStore, the backtraces do not give much information
about when the problematic WebsiteDataStore (using the generalStorageDirectory that's already used by another
WebsiteDataStore) is created. To help debug the issue, let's move the assertion to the constructor of
WebsiteDataStore.
- UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::sendCreationParametersToNewProcess):
- UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::activeGeneralStorageDirectories):
(WebKit::WebsiteDataStore::WebsiteDataStore):
(WebKit::WebsiteDataStore::~WebsiteDataStore):
- 2:37 PM Changeset in webkit [292425] by
-
- 9 edits in branches/safari-614.1.8-branch/Source
Versioning.
WebKit-7614.1.8.4
- 2:32 PM Changeset in webkit [292424] by
-
- 2 edits in branches/safari-614.1.7-branch/Source/WebKit
Cherry-pick r291823. rdar://problem/91315158
REGRESSION(STP142): "A JavaScript exception occured: Can't find variable: utils" from SafariDriver
https://bugs.webkit.org/show_bug.cgi?id=238335
Reviewed by Devin Rousso.
Following r289467, we can't just copy the WebDriver atom scripts to the build products, since they now need to
haveutils.js
in any script that uses theutils
namespace. TheWebKit.framework
copy of these scripts are
later used while building safaridriver, so they need to include the scripts as well.
- WebKit.xcodeproj/project.pbxproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@291823 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 2:30 PM Changeset in webkit [292423] by
-
- 2 edits in trunk/Source/WebKit
Unreviewed GTK build fix after r292408.
- Platform/unix/LoggingUnix.cpp:
(WebKit::logLevelString):
- 2:27 PM Changeset in webkit [292422] by
-
- 2 edits in trunk/Source/WebCore
Make subtrees collapsible in the output of the AXLogger streamSubtree.
https://bugs.webkit.org/show_bug.cgi?id=238829
<rdar://problem/91310566>
Reviewed by Chris Fleizach.
Moved the TextStream::GroupScope from the method logging an individual
object to the method logging the hierarchy. This allows to collapse the
entire subtree rooted at a given object.
- accessibility/AXLogger.cpp:
(WebCore::streamAXCoreObject):
(WebCore::streamSubtree):
- 2:21 PM Changeset in webkit [292421] by
-
- 9 edits in branches/safari-614.1.7-branch/Source
Versioning.
WebKit-7614.1.7.6
- 2:10 PM Changeset in webkit [292420] by
-
- 2 edits in trunk/LayoutTests
[ Mac ] accessibility/mac/expanded-notification.html is a flaky text failure
Unreviewed test gardening.
- platform/mac/TestExpectations:
- 1:45 PM Changeset in webkit [292419] by
-
- 153 edits4 copies24 moves74 adds in trunk/LayoutTests
Re-import css/selectors WPT
https://bugs.webkit.org/show_bug.cgi?id=238820
Reviewed by Simon Fraser.
Upstream commit: https://github.com/web-platform-tests/wpt/commit/ef2b67e4a79e8f8d37556533e6dc715d2c692a78
LayoutTests/imported/w3c:
- resources/resource-files.json:
- web-platform-tests/css/selectors/any-link-dynamic-001-ref.html: Added.
- web-platform-tests/css/selectors/child-indexed-no-parent-expected.html: Added.
- web-platform-tests/css/selectors/child-indexed-no-parent-ref.html: Added.
- web-platform-tests/css/selectors/child-indexed-no-parent.html: Added.
- web-platform-tests/css/selectors/dir-selector-auto-direction-change-001-expected.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-auto-direction-change-001-expected.xht.
- web-platform-tests/css/selectors/dir-selector-auto-direction-change-001.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-auto-direction-change-001.html.
- web-platform-tests/css/selectors/dir-selector-auto-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-auto-expected.txt.
- web-platform-tests/css/selectors/dir-selector-auto.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-auto.html.
- web-platform-tests/css/selectors/dir-selector-change-001-expected.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-change-001-expected.html.
- web-platform-tests/css/selectors/dir-selector-change-001-ref.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-change-003-expected.html.
- web-platform-tests/css/selectors/dir-selector-change-001.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-change-001.html.
- web-platform-tests/css/selectors/dir-selector-change-002-expected.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-change-002-expected.xht.
- web-platform-tests/css/selectors/dir-selector-change-002.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-change-002.html.
- web-platform-tests/css/selectors/dir-selector-change-003-expected.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-change-001-expected.html.
- web-platform-tests/css/selectors/dir-selector-change-003-ref.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-change-001-expected.html.
- web-platform-tests/css/selectors/dir-selector-change-003.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-change-003.html.
- web-platform-tests/css/selectors/dir-selector-change-004-expected.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-change-004-expected.html.
- web-platform-tests/css/selectors/dir-selector-change-004-ref.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-change-004-expected.html.
- web-platform-tests/css/selectors/dir-selector-change-004.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-change-004.html.
- web-platform-tests/css/selectors/dir-selector-ltr-001-expected.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-ltr-001-expected.xht.
- web-platform-tests/css/selectors/dir-selector-ltr-001.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-ltr-001.html.
- web-platform-tests/css/selectors/dir-selector-ltr-002-expected.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-ltr-002-expected.xht.
- web-platform-tests/css/selectors/dir-selector-ltr-002.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-ltr-002.html.
- web-platform-tests/css/selectors/dir-selector-ltr-003-expected.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-ltr-003-expected.xht.
- web-platform-tests/css/selectors/dir-selector-ltr-003.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-ltr-003.html.
- web-platform-tests/css/selectors/dir-selector-querySelector-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-querySelector-expected.txt.
- web-platform-tests/css/selectors/dir-selector-querySelector.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-querySelector.html.
- web-platform-tests/css/selectors/dir-selector-rtl-001-expected.xht: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-rtl-001-expected.xht.
- web-platform-tests/css/selectors/dir-selector-rtl-001.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-rtl-001.html.
- web-platform-tests/css/selectors/dir-selector-white-space-001-expected.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-white-space-001-expected.html.
- web-platform-tests/css/selectors/dir-selector-white-space-001-ref.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-white-space-001-expected.html.
- web-platform-tests/css/selectors/dir-selector-white-space-001.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/selectors/selectors-dir-selector-white-space-001.html.
- web-platform-tests/css/selectors/dir-style-01-ref.html: Added.
- web-platform-tests/css/selectors/dir-style-01a-expected.html: Added.
- web-platform-tests/css/selectors/dir-style-01a.html: Added.
- web-platform-tests/css/selectors/dir-style-01b-expected.html: Added.
- web-platform-tests/css/selectors/dir-style-01b.html: Added.
- web-platform-tests/css/selectors/dir-style-02-ref.html: Added.
- web-platform-tests/css/selectors/dir-style-02a-expected.html: Added.
- web-platform-tests/css/selectors/dir-style-02a.html: Added.
- web-platform-tests/css/selectors/dir-style-02b-expected.html: Added.
- web-platform-tests/css/selectors/dir-style-02b.html: Added.
- web-platform-tests/css/selectors/dir-style-03-ref.html: Added.
- web-platform-tests/css/selectors/dir-style-03a-expected.html: Added.
- web-platform-tests/css/selectors/dir-style-03a.html: Added.
- web-platform-tests/css/selectors/dir-style-03b-expected.html: Added.
- web-platform-tests/css/selectors/dir-style-03b.html: Added.
- web-platform-tests/css/selectors/dir-style-04-expected.html: Added.
- web-platform-tests/css/selectors/dir-style-04-ref.html: Added.
- web-platform-tests/css/selectors/dir-style-04.html: Added.
- web-platform-tests/css/selectors/first-letter-flag-001-ref.html: Added.
- web-platform-tests/css/selectors/first-line-bidi-001-ref.html: Added.
- web-platform-tests/css/selectors/first-line-bidi-002-ref.html: Added.
- web-platform-tests/css/selectors/floating-first-letter-ref.html: Added.
- web-platform-tests/css/selectors/focus-display-none-001.html:
- web-platform-tests/css/selectors/focus-within-001-ref.html: Added.
- web-platform-tests/css/selectors/focus-within-006-ref.html: Added.
- web-platform-tests/css/selectors/focus-within-007-ref.html: Added.
- web-platform-tests/css/selectors/focus-within-011-expected.html: Added.
- web-platform-tests/css/selectors/focus-within-011-ref.html: Added.
- web-platform-tests/css/selectors/focus-within-011.html: Added.
- web-platform-tests/css/selectors/focus-within-012-expected.html: Added.
- web-platform-tests/css/selectors/focus-within-012-ref.html: Added.
- web-platform-tests/css/selectors/focus-within-012.html: Added.
- web-platform-tests/css/selectors/focus-within-013-expected.html: Added.
- web-platform-tests/css/selectors/focus-within-013-ref.html: Added.
- web-platform-tests/css/selectors/focus-within-013.html: Added.
- web-platform-tests/css/selectors/focus-within-display-none-001.html:
- web-platform-tests/css/selectors/focus-within-shadow-001-ref.html: Added.
- web-platform-tests/css/selectors/invalidation/class-id-attr-expected.html: Added.
- web-platform-tests/css/selectors/invalidation/class-id-attr-ref.html: Added.
- web-platform-tests/css/selectors/invalidation/class-id-attr.html: Added.
- web-platform-tests/css/selectors/invalidation/input-pseudo-classes-in-has-expected.txt: Added.
- web-platform-tests/css/selectors/invalidation/input-pseudo-classes-in-has.html: Added.
- web-platform-tests/css/selectors/invalidation/location-pseudo-classes-in-has-expected.txt: Added.
- web-platform-tests/css/selectors/invalidation/location-pseudo-classes-in-has.html: Added.
- web-platform-tests/css/selectors/invalidation/sheet-going-away-002-ref.html: Added.
- web-platform-tests/css/selectors/invalidation/user-action-pseudo-classes-in-has-expected.txt: Added.
- web-platform-tests/css/selectors/invalidation/user-action-pseudo-classes-in-has.html: Added.
- web-platform-tests/css/selectors/invalidation/w3c-import.log:
- web-platform-tests/css/selectors/is-where-pseudo-elements-ref.html: Added.
- web-platform-tests/css/selectors/is-where-visited-ref.html: Added.
- web-platform-tests/css/selectors/nesting-ref.html: Added.
- web-platform-tests/css/selectors/not-links-ref.html: Added.
- web-platform-tests/css/selectors/of-type-selectors-ref.xhtml: Added.
- web-platform-tests/css/selectors/old-tests/css3-modsel-1.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-10.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-11.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-13.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-14.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-144.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-148.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-149.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-149b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-14b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-14c.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-14d.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-14e.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-15.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-150.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-151.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-152.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-154.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-155.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-155a.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-155b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-155c.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-155d.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-156.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-156b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-156c.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-157.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-158.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-15b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-160.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-166.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-166a.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-167.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-167a.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-168.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-168a.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-169.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-169a.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-170.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-170a.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-170b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-170c.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-170d.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-175a.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-175b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-175c.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-176.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-177b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-178.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-179.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-179a.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-180a.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-181.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-183.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-184-ref.xht: Added.
- web-platform-tests/css/selectors/old-tests/css3-modsel-184a.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-184b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-184c.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-184d.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-184e.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-184f.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-2.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-21b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-21c.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-22.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-25.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-27.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-27a.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-27b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-28.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-28b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-29.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-29b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-30.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-31.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-32.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-33.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-34.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-35.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-36.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-37.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-38.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-39.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-39a.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-39b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-39c.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-3a.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-4.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-41.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-41a.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-42.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-42a.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-43.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-43b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-44.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-44b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-44c.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-44d.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-45.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-45b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-45c.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-46.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-46b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-5.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-54.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-55.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-56.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-59.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-6.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-60.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-66b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-67.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-7.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-70.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-72.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-72b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-73.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-73b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-74.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-74b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-75.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-75b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-76.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-76b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-77.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-77b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-78.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-78b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-79.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-7b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-8.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-80.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-81.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-81b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-82.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-82b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-83-ref.xml: Added.
- web-platform-tests/css/selectors/old-tests/css3-modsel-86.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-87.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-87b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-88.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-88b.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-89.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-9.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-90.xml:
- web-platform-tests/css/selectors/old-tests/css3-modsel-90b.xml:
- web-platform-tests/css/selectors/old-tests/w3c-import.log:
- web-platform-tests/css/selectors/remove-hovered-element-ref.html: Added.
- web-platform-tests/css/selectors/selector-placeholder-shown-type-change-001-ref.html: Added.
- web-platform-tests/css/selectors/selector-placeholder-shown-type-change-002-ref.html: Added.
- web-platform-tests/css/selectors/selector-placeholder-shown-type-change-003-ref.html: Added.
- web-platform-tests/css/selectors/selector-read-write-type-change-001-ref.html: Added.
- web-platform-tests/css/selectors/selector-read-write-type-change-002-ref.html: Added.
- web-platform-tests/css/selectors/selector-required-ref.html: Added.
- web-platform-tests/css/selectors/selector-required-type-change-001-ref.html: Added.
- web-platform-tests/css/selectors/selector-required-type-change-002-ref.html: Added.
- web-platform-tests/css/selectors/selector-structural-pseudo-root-ref.html: Added.
- web-platform-tests/css/selectors/selectors-attr-white-space-001-ref.html: Added.
- web-platform-tests/css/selectors/selectors-empty-001-ref.xml: Added.
- web-platform-tests/css/selectors/selectors-namespace-001-ref.xml: Added.
- web-platform-tests/css/selectors/sharing-in-svg-use-ref.html: Added.
- web-platform-tests/css/selectors/visited-inheritance-expected.html: Added.
- web-platform-tests/css/selectors/visited-inheritance-ref.html: Added.
- web-platform-tests/css/selectors/visited-inheritance.html: Added.
- web-platform-tests/css/selectors/w3c-import.log:
- web-platform-tests/css/selectors/xml-class-selector-ref.xml: Added.
LayoutTests:
- 1:24 PM Changeset in webkit [292418] by
-
- 2 edits in trunk/Source/WebCore
Avoid unnecessary traversal when updating list markers
https://bugs.webkit.org/show_bug.cgi?id=238795
Reviewed by Anders Carlsson.
This code could use a full rewrite but there are also some simple optimizations that can be done.
- rendering/RenderListItem.cpp:
(WebCore::nextListItemHelper):
Don't advance into non-rendered subtrees. We won't find any renderers there.
- 1:16 PM Changeset in webkit [292417] by
-
- 5 edits in trunk/Source/WebCore
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.
- 1:11 PM Changeset in webkit [292416] by
-
- 4 edits in trunk
[CSS-Contain] Flex layout should take "contain: inline-size" into account when computing the flex item's logical width
https://bugs.webkit.org/show_bug.cgi?id=238805
Reviewed by Antti Koivisto.
Source/WebCore:
- rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::computeIntrinsicLogicalWidths const):
LayoutTests:
- 1:02 PM Changeset in webkit [292415] by
-
- 2 edits in trunk/Source/WebKitLegacy/win
Unreviewed WinCairo build fix after r292408.
- WebCoreSupport/AcceleratedCompositingContext.cpp:
(AcceleratedCompositingContext::initialize):
- 1:01 PM Changeset in webkit [292414] by
-
- 2 edits in trunk/Source/WebGPU
[WebGPU] Set svn:ignore on WebGPU.xcodeproj
https://bugs.webkit.org/show_bug.cgi?id=238828
Reviewed by Alexey Proskuryakov.
For people who use pure SVN, building causes some spurious files to be created.
Other WebKit projects solve this by setting svn:ignore on .xcodeproj directories.
This does the same.
% svn propget svn:ignore WebGPU.xcodeproj
*.mode*
*.pbxuser
*.perspective*
project.xcworkspace
xcuserdata
%
- WebGPU.xcodeproj: Set svn:ignore.
- 12:54 PM Changeset in webkit [292413] by
-
- 5 edits in trunk/Source
Unreviewed WinCairo build fix after r292408.
Source/WebCore:
- platform/win/GDIObjectCounter.cpp:
(WebCore::GDIObjectCounter::GDIObjectCounter):
- platform/win/GDIObjectCounter.h:
Source/WebKitLegacy/win:
- WebView.cpp:
(imeNotificationName):
(imeRequestName):
- 12:47 PM Changeset in webkit [292412] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed Windows debug build fix after r292279.
- animation/CSSPropertyAnimation.cpp:
(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):
- 12:46 PM Changeset in webkit [292411] by
-
- 4 edits1 add in trunk/Source/ThirdParty/libwebrtc
Reland "[XCBuild] libwebrtc's headers are copied via rsync and do not emit task outputs"
https://bugs.webkit.org/show_bug.cgi?id=237112
Reviewed by Alexey Proskuryakov.
r291239 did not add all the headers needed for absl. In particular, some "internal" headers
which are included by public absl headers needed to be added. This omission was masked on
EWS by incremental build data, and on engineering builds by SDK content.
Add the missing headers. Additionally, commit a sorted version of the project (via
sort-Xcode-project-file
) to reduce the scope of the diff and clean up the project for
future changes.
- Configurations/Base.xcconfig: Same as before.
- Configurations/libabsl.xcconfig: Same as before.
- Configurations/libwebrtc.xcconfig: Same as before.
- libwebrtc.xcodeproj/project.pbxproj: Headers added, project sorted.
- 12:42 PM Changeset in webkit [292410] by
-
- 2 edits in trunk/Source/WebKit
Unreviewed build fix after r292408.
- NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(WebKit::NetworkSessionCocoa::removeNetworkWebsiteData):
- 11:54 AM Changeset in webkit [292409] by
-
- 3 edits in trunk/LayoutTests
[ iOS Mac ] http/tests/workers/service/openwindow-from-notification-click.html is a flaky text failure
Unreviewed test gardening.
- platform/ios/TestExpectations:
- platform/mac/TestExpectations:
- 11:54 AM Changeset in webkit [292408] by
-
- 247 edits in trunk
Mark String(const char*) constructor as explicit
https://bugs.webkit.org/show_bug.cgi?id=238693
Reviewed by Geoffrey Garen.
Source/JavaScriptCore:
- API/glib/JSCContext.cpp:
(jsc_context_check_syntax):
- inspector/remote/socket/RemoteInspectorSocket.cpp:
(Inspector::RemoteInspector::startAutomationSession):
- tools/JSDollarVM.cpp:
(JSC::JSC_DEFINE_HOST_FUNCTION_WITH_ATTRIBUTES):
Source/WebCore:
- Modules/mediastream/gstreamer/GStreamerMediaEndpoint.cpp:
(WebCore::fetchDescription):
(WebCore::GStreamerMediaEndpoint::storeRemoteMLineInfo):
(WebCore::GStreamerMediaEndpoint::addIceCandidate):
(WebCore::GStreamerMediaEndpoint::createSessionDescriptionSucceeded):
(WebCore::GStreamerMediaEndpoint::createSessionDescriptionFailed):
(WebCore::GStreamerMediaEndpoint::collectTransceivers):
- Modules/mediastream/gstreamer/GStreamerPeerConnectionBackend.cpp:
(WebCore::gstreamerRtpCapatiblities):
(WebCore::GStreamerPeerConnectionBackend::doCreateAnswer):
- Modules/mediastream/gstreamer/GStreamerRtpTransceiverBackend.cpp:
(WebCore::GStreamerRtpTransceiverBackend::mid):
- Modules/mediastream/gstreamer/GStreamerStatsCollector.cpp:
(WebCore::fillRTCStats):
(WebCore::fillRTCRTPStreamStats):
(WebCore::fillOutboundRTPStreamStats):
- Modules/mediastream/gstreamer/GStreamerWebRTCUtils.cpp:
(WebCore::toRTCError):
(WebCore::toRTCEncodingParameters):
- Modules/webxr/WebXROpaqueFramebuffer.cpp:
(WebCore::WebXROpaqueFramebuffer::setupFramebuffer):
- accessibility/AXObjectCache.h:
- accessibility/atspi/AccessibilityObjectAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::attributes const):
(WebCore::AccessibilityObjectAtspi::effectiveRoleName const):
(WebCore::AccessibilityObjectAtspi::roleName const):
- accessibility/atspi/AccessibilityObjectTextAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::textAttributes const):
- accessibility/atspi/AccessibilityRootAtspi.cpp:
(WebCore::AccessibilityRootAtspi::embedded):
- accessibility/ios/AXObjectCacheIOS.mm:
(WebCore::AXObjectCache::notificationPlatformName):
(WebCore::AXObjectCache::postPlatformNotification):
- accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper accessibilityScroll:]):
- bindings/js/ScriptController.cpp:
(WebCore::ScriptController::executeScriptInWorld):
- editing/gtk/WebContentReaderGtk.cpp:
(WebCore::WebContentReader::readFilePath):
- editing/ios/EditorIOS.mm:
(WebCore::Editor::setTextAlignmentForChangedBaseWritingDirection):
(WebCore::Editor::removeUnchangeableStyles):
- editing/libwpe/EditorLibWPE.cpp:
(WebCore::createFragmentFromPasteboardData):
- html/HTMLMediaElement.cpp:
(WTF::LogArgument<URL>::toString):
- html/OffscreenCanvas.h:
- inspector/InspectorCanvas.cpp:
(WebCore::InspectorCanvas::indexForData):
- loader/soup/ResourceLoaderSoup.cpp:
(WebCore::ResourceLoader::loadGResource):
- page/ContextMenuController.cpp:
(WebCore::ContextMenuController::contextMenuItemSelected):
- page/DebugPageOverlays.cpp:
(WebCore::InteractionRegionOverlay::valueForSetting):
(WebCore::InteractionRegionOverlay::drawRect):
(WebCore::InteractionRegionOverlay::mouseEvent):
- page/cocoa/SettingsBaseCocoa.mm:
(WebCore::SettingsBase::initializeDefaultFontFamilies):
- platform/PasteboardCustomData.h:
(WebCore::PasteboardCustomData::gtkType):
- platform/UserAgent.h:
- platform/audio/gstreamer/AudioDestinationGStreamer.cpp:
(WebCore::AudioDestinationGStreamer::AudioDestinationGStreamer):
- platform/glib/UserAgentGLib.cpp:
(WebCore::platformVersionForUAString):
(WebCore::standardUserAgent):
- platform/graphics/ANGLEWebKitBridge.cpp:
(WebCore::ANGLEWebKitBridge::compileShaderSource):
- platform/graphics/angle/GraphicsContextGLANGLE.cpp:
(WebCore::GraphicsContextGLANGLE::validateDepthStencil):
- platform/graphics/angle/GraphicsContextGLANGLE.h:
- platform/graphics/ca/win/PlatformCALayerWin.cpp:
(printColor):
(printLayer):
- platform/graphics/cairo/ImageBufferCairoBackend.cpp:
(WebCore::ImageBufferCairoBackend::toDataURL const):
- platform/graphics/freetype/FontCacheFreeType.cpp:
(WebCore::getFamilyNameStringFromFamily):
- platform/graphics/gstreamer/AudioTrackPrivateGStreamer.cpp:
(WebCore::AudioTrackPrivateGStreamer::updateConfigurationFromCaps):
- platform/graphics/gstreamer/GStreamerCommon.cpp:
(WebCore::parseGstStructureValue):
- platform/graphics/gstreamer/GStreamerRegistryScanner.cpp:
(WebCore::GStreamerRegistryScanner::ElementFactories::hasElementForMediaType const):
(WebCore::GStreamerRegistryScanner::initializeDecoders):
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::createAudioSink):
(WebCore::MediaPlayerPrivateGStreamer::handleMessage):
(WebCore::MediaPlayerPrivateGStreamer::processTableOfContentsEntry):
(WebCore::MediaPlayerPrivateGStreamer::configureDownloadBuffer):
(WebCore::MediaPlayerPrivateGStreamer::downloadBufferFileCreatedCallback):
(WebCore::MediaPlayerPrivateGStreamer::loadNextLocation):
(WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
(WebCore::MediaPlayerPrivateGStreamer::parseInitDataFromProtectionMessage):
(WebCore::MediaPlayerPrivateGStreamer::handleProtectionEvent):
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
- platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:
(WebCore::TrackPrivateBaseGStreamer::getLanguageCode):
(WebCore::TrackPrivateBaseGStreamer::getTag):
- platform/graphics/gstreamer/VideoFrameMetadataGStreamer.cpp:
(webkitGstTraceProcessingTimeForElement):
- platform/graphics/gstreamer/VideoTrackPrivateGStreamer.cpp:
(WebCore::VideoTrackPrivateGStreamer::updateConfigurationFromCaps):
- platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
(webKitWebSrcSetExtraHeader):
(webKitWebSrcMakeRequest):
(convertPlaybinURI):
- platform/graphics/gstreamer/mse/AppendPipeline.cpp:
(WebCore::AppendPipeline::parseDemuxerSrcPadCaps):
- platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp:
(WebCore::MediaPlayerPrivateGStreamerMSE::load):
- platform/graphics/opengl/ExtensionsGLOpenGL.cpp:
(WebCore::ExtensionsGLOpenGL::platformSupportsExtension):
(WebCore::ExtensionsGLOpenGL::isVertexArrayObjectSupported):
- platform/graphics/opengl/ExtensionsGLOpenGLCommon.cpp:
(WebCore::ExtensionsGLOpenGLCommon::getTranslatedShaderSourceANGLE):
- platform/graphics/opengl/ExtensionsGLOpenGLES.cpp:
(WebCore::ExtensionsGLOpenGLES::platformSupportsExtension):
- platform/graphics/opengl/GraphicsContextGLOpenGL.cpp:
(WebCore::GraphicsContextGLOpenGL::validateDepthStencil):
- platform/graphics/opengl/GraphicsContextGLOpenGL.h:
- platform/graphics/opengl/GraphicsContextGLOpenGLBase.cpp:
(WebCore::GraphicsContextGLOpenGL::validateAttributes):
(WebCore::GraphicsContextGLOpenGL::reshapeFBOs):
- platform/graphics/opengl/GraphicsContextGLOpenGLES.cpp:
(WebCore::GraphicsContextGLOpenGL::reshapeFBOs):
(WebCore::GraphicsContextGLOpenGL::validateAttributes):
- platform/graphics/texmap/GraphicsContextGLTextureMapperANGLE.cpp:
(WebCore::GraphicsContextGLTextureMapperANGLE::platformInitialize):
- platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
(WebCore::GraphicsLayerTextureMapper::commitLayerChanges):
- platform/graphics/texmap/TextureMapperFPSCounter.cpp:
(WebCore::TextureMapperFPSCounter::TextureMapperFPSCounter):
- platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::animationStartedTimerFired):
(WebCore::CoordinatedGraphicsLayer::dumpAdditionalProperties const):
- platform/gtk/PasteboardGtk.cpp:
(WebCore::Pasteboard::createForCopyAndPaste):
(WebCore::Pasteboard::createForGlobalSelection):
- platform/gtk/PlatformKeyboardEventGtk.cpp:
(WebCore::PlatformKeyboardEvent::keyIdentifierForGdkKeyCode):
- platform/ios/PasteboardIOS.mm:
(WebCore::Pasteboard::nameOfDragPasteboard):
- platform/ios/UserAgentIOS.mm:
(WebCore::osNameForUserAgent):
- platform/ios/VideoFullscreenInterfaceAVKit.mm:
(VideoFullscreenInterfaceAVKit::~VideoFullscreenInterfaceAVKit):
- platform/libwpe/PasteboardLibWPE.cpp:
(WebCore::Pasteboard::read):
(WebCore::Pasteboard::write):
(WebCore::Pasteboard::writePlainText):
- platform/libwpe/PlatformKeyboardEventLibWPE.cpp:
(WebCore::PlatformKeyboardEvent::keyIdentifierForWPEKeyCode):
- platform/mediarecorder/MediaRecorderPrivateGStreamer.cpp:
(WebCore::MediaRecorderPrivateGStreamer::containerProfile):
- platform/network/MIMEHeader.cpp:
(WebCore::MIMEHeader::parseHeader):
- platform/network/cf/ResourceErrorCF.cpp:
(WebCore::ResourceError::platformLazyInit):
(WebCore::ResourceError::ResourceError):
- platform/network/cocoa/ResourceRequestCocoa.mm:
(WebCore::ResourceRequest::doUpdatePlatformRequest):
- platform/network/curl/CertificateInfoCurl.cpp:
(WebCore::CertificateInfo::verificationErrorDescription const):
- platform/network/curl/CookieJarDB.cpp:
(WebCore::CookieJarDB::searchCookies):
- platform/network/curl/CookieUtil.cpp:
(WebCore::CookieUtil::defaultPathForURL):
- platform/network/curl/CurlCacheEntry.cpp:
(WebCore::CurlCacheEntry::CurlCacheEntry):
(WebCore::CurlCacheEntry::saveResponseHeaders):
- platform/network/curl/CurlCacheManager.cpp:
(WebCore::CurlCacheManager::setCacheDirectory):
(WebCore::CurlCacheManager::saveIndex):
- platform/network/curl/CurlContext.cpp:
(WebCore::CurlHandle::appendRequestHeader):
(WebCore::CurlHandle::removeRequestHeader):
- platform/network/curl/CurlDownload.cpp:
(WebCore::CurlDownload::willSendRequest):
- platform/network/curl/CurlRequest.cpp:
(WebCore::CurlRequest::setupPUT):
(WebCore::CurlRequest::setupSendData):
- platform/network/curl/CurlResourceHandleDelegate.cpp:
(WebCore::CurlResourceHandleDelegate::curlDidReceiveResponse):
- platform/network/curl/NetworkStorageSessionCurl.cpp:
(WebCore::defaultCookieJarPath):
- platform/network/curl/OpenSSLHelper.cpp:
(OpenSSL::tlsVersion):
(OpenSSL::tlsCipherName):
- platform/network/curl/PublicSuffixCurl.cpp:
(WebCore::topPrivatelyControlledDomainInternal):
- platform/network/curl/ResourceError.h:
- platform/network/curl/ResourceErrorCurl.cpp:
- platform/network/curl/ResourceHandleCurl.cpp:
(WebCore::ResourceHandle::willSendRequest):
- platform/network/curl/ResourceResponseCurl.cpp:
(WebCore::ResourceResponse::ResourceResponse):
- platform/network/ios/LegacyPreviewLoaderClient.h:
(WebCore::LegacyPreviewLoaderClient::didRequestPassword):
- platform/network/soup/NetworkStorageSessionSoup.cpp:
(WebCore::NetworkStorageSession::hasCookies const):
- platform/network/soup/ResourceErrorSoup.cpp:
(WebCore::ResourceError::transportError):
(WebCore::ResourceError::authenticationError):
(WebCore::ResourceError::genericGError):
(WebCore::ResourceError::tlsError):
(WebCore::ResourceError::timeoutError):
- platform/network/soup/ResourceResponseSoup.cpp:
(WebCore::ResourceResponse::ResourceResponse):
- platform/text/hyphen/HyphenationLibHyphen.cpp:
(WebCore::scanDirectoryForDictionaries):
- platform/text/win/LocaleWin.cpp:
(WebCore::LocaleWin::initializeLocaleData):
- platform/win/KeyEventWin.cpp:
(WebCore::keyIdentifierForWindowsKeyCode):
- platform/win/LocalizedStringsWin.cpp:
(WebCore::uploadFileText):
(WebCore::allFilesText):
- platform/win/MIMETypeRegistryWin.cpp:
(WebCore::MIMETypeRegistry::mimeTypeForExtension):
- platform/win/PasteboardWin.cpp:
(WebCore::addMimeTypesForFormat):
(WebCore::Pasteboard::typesSafeForBindings):
(WebCore::Pasteboard::readString):
(WebCore::writeURL):
(WebCore::Pasteboard::writeURLToDataObject):
(WebCore::Pasteboard::write):
(WebCore::Pasteboard::read):
(WebCore::createGlobalImageFileDescriptor):
(WebCore::Pasteboard::writeMarkup):
- platform/win/SystemInfo.cpp:
(WebCore::osVersionForUAString):
(WebCore::architectureTokenForUAString):
- platform/xr/openxr/OpenXRInputMappings.h:
(PlatformXR::buttonTypeToString):
(PlatformXR::axisTypetoString):
- platform/xr/openxr/OpenXRUtils.h:
(PlatformXR::handenessToString):
- testing/Internals.cpp:
(WebCore::Internals::resetToConsistentState):
Source/WebCore/PAL:
- pal/graphics/WebGPU/Impl/WebGPUAdapterImpl.cpp:
(PAL::WebGPU::adapterName):
- pal/graphics/WebGPU/Impl/WebGPUDeviceImpl.cpp:
(PAL::WebGPU::DeviceImpl::popErrorScope):
Source/WebDriver:
- CommandResult.cpp:
(WebDriver::CommandResult::CommandResult):
- Session.cpp:
(WebDriver::Session::handleUserPrompts):
(WebDriver::Session::getCurrentURL):
(WebDriver::Session::setWindowRect):
(WebDriver::Session::elementIsFileUpload):
(WebDriver::Session::elementIsEditable):
(WebDriver::Session::elementSendKeys):
(WebDriver::builtAutomationCookie):
(WebDriver::automationSourceType):
(WebDriver::automationOriginType):
- WebDriverService.cpp:
(WebDriver::WebDriverService::run):
(WebDriver::deserializeProxy):
(WebDriver::WebDriverService::createSession):
- socket/CapabilitiesSocket.cpp:
(WebDriver::CapabilitiesSocket::parseCapabilities):
- socket/HTTPServerSocket.cpp:
(WebDriver::HTTPRequestHandler::didReceive):
Source/WebGPU:
- WebGPU/CommandEncoder.mm:
(WebGPU::CommandEncoder::copyBufferToTexture):
(WebGPU::CommandEncoder::copyTextureToBuffer):
(WebGPU::CommandEncoder::copyTextureToTexture):
Source/WebKit:
- NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(stringForSSLProtocol):
- NetworkProcess/curl/NetworkDataTaskCurl.cpp:
(WebKit::NetworkDataTaskCurl::willPerformHTTPRedirection):
- NetworkProcess/soup/NetworkDataTaskSoup.cpp:
(WebKit::NetworkDataTaskSoup::continueHTTPRedirection):
(WebKit::NetworkDataTaskSoup::readCallback):
(WebKit::NetworkDataTaskSoup::didRequestNextPart):
(WebKit::NetworkDataTaskSoup::download):
(WebKit::NetworkDataTaskSoup::writeDownloadCallback):
(WebKit::NetworkDataTaskSoup::didFinishDownload):
(WebKit::NetworkDataTaskSoup::didGetFileInfo):
(WebKit::NetworkDataTaskSoup::readFileCallback):
(WebKit::NetworkDataTaskSoup::enumerateFileChildrenCallback):
- NetworkProcess/soup/WebSocketTaskSoup.cpp:
(WebKit::WebSocketTask::didConnect):
- Shared/API/Cocoa/WKRemoteObjectCoder.h:
- Shared/API/Cocoa/WKRemoteObjectCoder.mm:
(WebKit::methodSignaturesAreCompatible):
(decodeInvocation):
- Shared/API/Cocoa/_WKRemoteObjectRegistry.mm:
(replyBlockSignature):
(-[_WKRemoteObjectRegistry _invokeMethod:]):
- Shared/API/glib/WebKitURIRequest.cpp:
(webkit_uri_request_set_uri):
- Shared/gtk/WebErrorsGtk.cpp:
(WebKit::printerNotFoundError):
(WebKit::invalidPageRangeToPrint):
- UIProcess/API/glib/WebKitAutomationSession.cpp:
(webkitAutomationSessionGetBrowserName):
- UIProcess/API/glib/WebKitCredential.cpp:
(webkit_credential_new_for_certificate_pin):
- UIProcess/API/glib/WebKitInjectedBundleClient.cpp:
- UIProcess/API/glib/WebKitProtocolHandler.cpp:
(WebKit::WebKitProtocolHandler::handleRequest):
- UIProcess/API/glib/WebKitSettings.cpp:
(_WebKitSettingsPrivate::_WebKitSettingsPrivate):
(webkit_settings_set_user_agent):
- UIProcess/API/glib/WebKitURISchemeRequest.cpp:
(webkitURISchemeRequestReadCallback):
(webkit_uri_scheme_request_finish_error):
- UIProcess/API/gtk/DragSourceGtk4.cpp:
(WebKit::DragSource::begin):
- UIProcess/API/gtk/DropTargetGtk3.cpp:
(WebKit::DropTarget::DropTarget):
- UIProcess/API/gtk/DropTargetGtk4.cpp:
(WebKit::DropTarget::DropTarget):
- UIProcess/API/gtk/WebKitRemoteInspectorProtocolHandler.cpp:
(WebKit::RemoteInspectorProtocolHandler::~RemoteInspectorProtocolHandler):
(WebKit::RemoteInspectorProtocolHandler::handleRequest):
(WebKit::RemoteInspectorProtocolHandler::targetListChanged):
- UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseEnterFullScreen):
- UIProcess/API/wpe/WebKitColor.cpp:
(webkit_color_parse):
- UIProcess/Cocoa/SafeBrowsingWarningCocoa.mm:
(WebKit::malwareDetailsBase):
(WebKit::reportAnErrorBase):
- UIProcess/Cocoa/SystemPreviewControllerCocoa.mm:
- UIProcess/Inspector/gtk/RemoteWebInspectorUIProxyGtk.cpp:
(WebKit::RemoteWebInspectorUIProxy::platformCreateFrontendPageAndWindow):
(WebKit::remoteFileReplaceContentsCallback):
- UIProcess/Inspector/gtk/WebInspectorUIProxyGtk.cpp:
(WebKit::WebInspectorUIProxy::platformCreateFrontendPage):
(WebKit::fileReplaceContentsCallback):
- UIProcess/Inspector/socket/RemoteInspectorProtocolHandler.cpp:
(WebKit::RemoteInspectorProtocolHandler::platformStartTask):
- UIProcess/Inspector/win/RemoteWebInspectorUIProxyWin.cpp:
(WebKit::RemoteWebInspectorUIProxy::platformCreateFrontendPageAndWindow):
- UIProcess/Inspector/win/WebInspectorUIProxyWin.cpp:
(WebKit::WebInspectorUIProxy::platformCreateFrontendPage):
- UIProcess/Launcher/glib/BubblewrapLauncher.cpp:
(WebKit::bindSymlinksRealPath):
(WebKit::bubblewrapSpawn):
- UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp:
(WebKit::WebsiteDataStoreConfiguration::WebsiteDataStoreConfiguration):
- UIProcess/glib/WebProcessPoolGLib.cpp:
(WebKit::WebProcessPool::platformInitializeWebProcess):
- UIProcess/glib/WebProcessProxyGLib.cpp:
(WebKit::WebProcessProxy::platformGetLaunchOptions):
- UIProcess/glib/WebsiteDataStoreGLib.cpp:
- UIProcess/gtk/ClipboardGtk3.cpp:
(WebKit::Clipboard::write):
- UIProcess/gtk/ClipboardGtk4.cpp:
(WebKit::Clipboard::write):
- UIProcess/gtk/KeyBindingTranslator.cpp:
- UIProcess/win/WebProcessPoolWin.cpp:
(WebKit::backendCommandsPath):
- UIProcess/win/WebView.cpp:
(WebKit::WebView::WebView):
- WebProcess/InjectedBundle/API/glib/WebKitWebPage.cpp:
(webkitWebPageDidReceiveMessage):
- WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentGtk.cpp:
(webkit_dom_document_get_visibility_state):
- WebProcess/WebCoreSupport/wpe/WebEditorClientWPE.cpp:
(WebKit::handleKeyPress):
(WebKit::handleKeyDown):
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::runJavaScript):
- WebProcess/WebPage/glib/WebPageGLib.cpp:
(WebKit::WebPage::getPlatformEditorState const):
- WebProcess/WebPage/gtk/WebPrintOperationGtk.cpp:
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::generateSyntheticEditingCommand):
(WebKit::WebPage::platformUserAgent const):
- WebProcess/WebPage/win/WebPageWin.cpp:
(WebKit::WebPage::handleEditingKeyboardEvent):
- webpushd/PushClientConnection.mm:
(WebPushD::ClientConnection::hostAppCodeSigningIdentifier):
Source/WebKitLegacy/mac:
- DOM/DOM.mm:
(-[DOMHTMLLinkElement _mediaQueryMatches]):
- WebCoreSupport/WebEditorClient.h:
(WebEditorClient::getAutoCorrectSuggestionForMisspelledWord):
- WebView/WebDataSource.mm:
(-[WebDataSource _setOverrideTextEncodingName:]):
- WebView/WebView.mm:
(-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
Source/WebKitLegacy/win:
- AccessibleBase.cpp:
(AccessibleBase::AccessibleBase):
(AccessibleBase::~AccessibleBase):
- CFDictionaryPropertyBag.cpp:
(CFDictionaryPropertyBag::CFDictionaryPropertyBag):
(CFDictionaryPropertyBag::~CFDictionaryPropertyBag):
- DefaultDownloadDelegate.cpp:
(DefaultDownloadDelegate::DefaultDownloadDelegate):
(DefaultDownloadDelegate::~DefaultDownloadDelegate):
- DefaultPolicyDelegate.cpp:
(DefaultPolicyDelegate::DefaultPolicyDelegate):
(DefaultPolicyDelegate::~DefaultPolicyDelegate):
- MemoryStream.cpp:
(MemoryStream::MemoryStream):
(MemoryStream::~MemoryStream):
- WebActionPropertyBag.cpp:
(WebActionPropertyBag::WebActionPropertyBag):
(WebActionPropertyBag::~WebActionPropertyBag):
- WebApplicationCache.cpp:
(WebApplicationCache::WebApplicationCache):
(WebApplicationCache::~WebApplicationCache):
(WebApplicationCache::storage):
- WebArchive.cpp:
(WebArchive::WebArchive):
(WebArchive::~WebArchive):
- WebBackForwardList.cpp:
(WebBackForwardList::WebBackForwardList):
(WebBackForwardList::~WebBackForwardList):
- WebCache.cpp:
(WebCache::WebCache):
(WebCache::~WebCache):
- WebCoreStatistics.cpp:
(WebCoreStatistics::WebCoreStatistics):
(WebCoreStatistics::~WebCoreStatistics):
(WebCoreStatistics::javaScriptProtectedObjectTypeCounts):
(WebCoreStatistics::javaScriptObjectTypeCounts):
(WebCoreStatistics::memoryStatistics):
- WebCoreSupport/WebEditorClient.cpp:
(WebEditorClient::doTextFieldCommandFromEvent):
- WebDataSource.cpp:
(WebDataSource::~WebDataSource):
- WebDatabaseManager.cpp:
(WebDatabaseManager::WebDatabaseManager):
(WebDatabaseManager::~WebDatabaseManager):
- WebDocumentLoader.cpp:
(WebDocumentLoader::WebDocumentLoader):
(WebDocumentLoader::~WebDocumentLoader):
- WebDownload.cpp:
(WebDownload::WebDownload):
(WebDownload::~WebDownload):
- WebDownloadCFNet.cpp:
(WebDownload::cancelAuthenticationChallenge):
- WebDropSource.cpp:
(WebDropSource::WebDropSource):
(WebDropSource::~WebDropSource):
- WebElementPropertyBag.cpp:
(WebElementPropertyBag::WebElementPropertyBag):
(WebElementPropertyBag::~WebElementPropertyBag):
- WebError.cpp:
(WebError::WebError):
(WebError::~WebError):
- WebFrame.cpp:
(WebFrame::WebFrame):
(WebFrame::~WebFrame):
(WebFrame::loadData):
(WebFrame::selectAll):
- WebFramePolicyListener.cpp:
(WebFramePolicyListener::WebFramePolicyListener):
(WebFramePolicyListener::~WebFramePolicyListener):
- WebGeolocationPolicyListener.cpp:
(WebGeolocationPolicyListener::WebGeolocationPolicyListener):
(WebGeolocationPolicyListener::~WebGeolocationPolicyListener):
- WebGeolocationPosition.cpp:
(WebGeolocationPosition::WebGeolocationPosition):
(WebGeolocationPosition::~WebGeolocationPosition):
- WebHTMLRepresentation.cpp:
(WebHTMLRepresentation::WebHTMLRepresentation):
(WebHTMLRepresentation::~WebHTMLRepresentation):
- WebHistory.cpp:
(WebHistory::WebHistory):
(WebHistory::~WebHistory):
- WebHistoryItem.cpp:
(WebHistoryItem::WebHistoryItem):
(WebHistoryItem::~WebHistoryItem):
- WebInspector.cpp:
(WebInspector::WebInspector):
(WebInspector::~WebInspector):
- WebJavaScriptCollector.cpp:
(WebJavaScriptCollector::WebJavaScriptCollector):
(WebJavaScriptCollector::~WebJavaScriptCollector):
- WebKitClassFactory.cpp:
(WebKitClassFactory::WebKitClassFactory):
(WebKitClassFactory::~WebKitClassFactory):
- WebKitMessageLoop.cpp:
(WebKitMessageLoop::WebKitMessageLoop):
(WebKitMessageLoop::~WebKitMessageLoop):
- WebKitStatistics.cpp:
(WebKitStatistics::WebKitStatistics):
(WebKitStatistics::~WebKitStatistics):
- WebMutableURLRequest.cpp:
(WebMutableURLRequest::WebMutableURLRequest):
(WebMutableURLRequest::~WebMutableURLRequest):
- WebNavigationData.cpp:
(WebNavigationData::WebNavigationData):
(WebNavigationData::~WebNavigationData):
- WebNotification.cpp:
(WebNotification::WebNotification):
(WebNotification::~WebNotification):
- WebNotificationCenter.cpp:
(WebNotificationCenter::WebNotificationCenter):
(WebNotificationCenter::~WebNotificationCenter):
- WebPreferences.cpp:
(WebPreferences::WebPreferences):
(WebPreferences::~WebPreferences):
- WebResource.cpp:
(WebResource::WebResource):
(WebResource::~WebResource):
- WebScriptObject.cpp:
(WebScriptObject::WebScriptObject):
(WebScriptObject::~WebScriptObject):
- WebScriptWorld.cpp:
(WebScriptWorld::WebScriptWorld):
(WebScriptWorld::~WebScriptWorld):
- WebSecurityOrigin.cpp:
(WebSecurityOrigin::WebSecurityOrigin):
(WebSecurityOrigin::~WebSecurityOrigin):
- WebSerializedJSValue.cpp:
(WebSerializedJSValue::WebSerializedJSValue):
(WebSerializedJSValue::~WebSerializedJSValue):
- WebTextRenderer.cpp:
(WebTextRenderer::WebTextRenderer):
(WebTextRenderer::~WebTextRenderer):
- WebURLAuthenticationChallenge.cpp:
(WebURLAuthenticationChallenge::WebURLAuthenticationChallenge):
(WebURLAuthenticationChallenge::~WebURLAuthenticationChallenge):
- WebURLAuthenticationChallengeSender.cpp:
(WebURLAuthenticationChallengeSender::WebURLAuthenticationChallengeSender):
(WebURLAuthenticationChallengeSender::~WebURLAuthenticationChallengeSender):
- WebURLCredential.cpp:
(WebURLCredential::WebURLCredential):
(WebURLCredential::~WebURLCredential):
- WebURLProtectionSpace.cpp:
(WebURLProtectionSpace::WebURLProtectionSpace):
(WebURLProtectionSpace::~WebURLProtectionSpace):
- WebURLResponse.cpp:
(WebURLResponse::WebURLResponse):
(WebURLResponse::~WebURLResponse):
(WebURLResponse::createInstance):
- WebUserContentURLPattern.cpp:
(WebUserContentURLPattern::WebUserContentURLPattern):
(WebUserContentURLPattern::~WebUserContentURLPattern):
- WebView.cpp:
(WebView::WebView):
(WebView::~WebView):
(WebView::execCommand):
(WebView::handleEditingKeyboardEvent):
(WebView::copy):
(WebView::cut):
(WebView::paste):
(WebView::copyURL):
(WebView::delete_):
- WebWorkersPrivate.cpp:
(WebWorkersPrivate::WebWorkersPrivate):
(WebWorkersPrivate::~WebWorkersPrivate):
Source/WTF:
- wtf/FileSystem.cpp:
(WTF::FileSystemImpl::filesHaveSameVolume):
- wtf/FileSystem.h:
- wtf/glib/FileSystemGlib.cpp:
(WTF::FileSystemImpl::getFileDeviceId):
- wtf/posix/FileSystemPOSIX.cpp:
(WTF::FileSystemImpl::getFileDeviceId):
- wtf/text/WTFString.h:
- wtf/unix/LoggingUnix.cpp:
(WTF::logLevelString):
- wtf/win/FileSystemWin.cpp:
(WTF::FileSystemImpl::getFileDeviceId):
- wtf/win/LanguageWin.cpp:
(WTF::platformLanguage):
Tools:
- DumpRenderTree/win/DumpRenderTree.cpp:
(findFontFallback):
- TestWebKitAPI/Tests/WTF/CrossThreadTask.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/HTTPParsers.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp:
(TestWebKitAPI::readAllChunks):
(TestWebKitAPI::TEST_F):
- TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
(TestWebKitAPI::assertUserAgentForURLHasChromeBrowserQuirk):
(TestWebKitAPI::assertUserAgentForURLHasFirefoxBrowserQuirk):
(TestWebKitAPI::assertUserAgentForURLHasMacPlatformQuirk):
(TestWebKitAPI::assertUserAgentForURLHasEmptyQuirk):
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/curl/Cookies.cpp:
(TestWebKitAPI::Curl::TEST_F):
- TestWebKitAPI/Tests/WebKitCocoa/AppPrivacyReport.mm:
- TestWebKitAPI/Tests/WebKitCocoa/DeviceOrientation.mm:
- TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm:
(cleanUpInAppBrowserPrivacyTestSettings):
(initializeInAppBrowserPrivacyTestSettings):
- TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
- TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp:
- TestWebKitAPI/Tests/WebKitGLib/TestSSL.cpp:
- TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
(testWebViewWindowProperties):
- TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
(testWebExtensionPageID):
- TestWebKitAPI/glib/WebKitGLib/WebKitTestServer.cpp:
(WebKitTestServer::addWebSocketHandler):
(WebKitTestServer::getWebSocketURIForPath const):
(WebKitTestServer::getURIForPath const):
- TestWebKitAPI/ios/PreferredContentMode.mm:
(TestWebKitAPI::setUpWebViewForPreferredContentModeTestingWithoutNavigationDelegate):
(TestWebKitAPI::setUpWebViewForPreferredContentModeTesting):
(TestWebKitAPI::TEST):
- WebKitTestRunner/InjectedBundle/atspi/AccessibilityUIElementAtspi.cpp:
(WTR::AccessibilityUIElement::stringAttributeValue):
(WTR::AccessibilityUIElement::numberAttributeValue):
(WTR::AccessibilityUIElement::currentStateValue const):
(WTR::AccessibilityUIElement::boolAttributeValue):
(WTR::AccessibilityUIElement::isAttributeSettable):
(WTR::AccessibilityUIElement::isAttributeSupported):
(WTR::xmlRoleValueString):
(WTR::roleValueToString):
(WTR::AccessibilityUIElement::role):
(WTR::AccessibilityUIElement::roleDescription):
(WTR::AccessibilityUIElement::computedRoleString):
(WTR::AccessibilityUIElement::intValue const):
(WTR::AccessibilityUIElement::valueDescription):
(WTR::AccessibilityUIElement::hierarchicalLevel const):
(WTR::AccessibilityUIElement::ariaIsGrabbed const):
(WTR::AccessibilityUIElement::ariaDropEffects const):
(WTR::AccessibilityUIElement::documentEncoding):
(WTR::AccessibilityUIElement::documentURI):
- WebKitTestRunner/gtk/UIScriptControllerGtk.cpp:
(WTR::toJSONObject):
- lldb/lldbWebKitTester/main.cpp:
(testSummaryProviders):
- 11:45 AM Changeset in webkit [292407] by
-
- 11 edits in trunk/Source/bmalloc
[PlayStation] Enable libpas.
https://bugs.webkit.org/show_bug.cgi?id=238753
Reviewed by Yusuke Suzuki.
PlayStation platform is ready to enable it finally.
- PlatformPlayStation.cmake:
- bmalloc/BPlatform.h:
- libpas/src/libpas/pas_config.h:
- libpas/src/libpas/pas_page_malloc.c:
(pas_page_malloc_try_allocate_without_deallocating_padding):
(commit_impl):
- libpas/src/libpas/pas_platform.h:
- libpas/src/libpas/pas_thread_local_cache.c:
- 11:25 AM Changeset in webkit [292406] by
-
- 2 edits in trunk/Source/WTF
[PlayStation] Build fix after r292389
https://bugs.webkit.org/show_bug.cgi?id=238816
Unreviewed build fix
Add UnixFileDescriptor.h to PlatformPlayStation.cmake
as per the changes to PlatformGTK and PlatformWPE.
- wtf/PlatformPlayStation.cmake:
- 11:05 AM Changeset in webkit [292405] by
-
- 3 edits in trunk/Tools
[Merge-Queue] Extract bug_id when updating pull-request
https://bugs.webkit.org/show_bug.cgi?id=238772
<rdar://problem/91263398>
Reviewed by Aakash Jain.
- Tools/CISupport/ews-build/steps.py:
(LeaveComment.start): Leave comment on both bugzilla and pull request.
(LeaveComment.getResultSummary): Ditto.
(UpdatePullRequest):
(UpdatePullRequest.bug_id_from_log): Extract bug_id from commit message.
(UpdatePullRequest.evaluateCommand): Set bug_id property
- Tools/CISupport/ews-build/steps_unittest.py:
Canonical link: https://commits.webkit.org/249267@main
- 11:04 AM Changeset in webkit [292404] by
-
- 2 edits in trunk/Source/WebKit
Fix the CG_DISPLAY_LIST_BACKED_IMAGE_BUFFER build
- Shared/RemoteLayerTree/CGDisplayListImageBufferBackend.h:
- 10:58 AM Changeset in webkit [292403] by
-
- 4 edits in trunk
Do not create network process in ~WebsiteDataStore destructor
https://bugs.webkit.org/show_bug.cgi?id=238570
Reviewed by Chris Dumez.
Source/WebKit:
Check if m_networkProcess is initialized before removing session
from it instead, otherwise WebsiteDataStore::networkProcess() lazily
creates the process and it will keep running after WebsiteDataStore
is destroyed.
- UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::~WebsiteDataStore):
Tools:
The test is written by Chris Dumez.
- TestWebKitAPI/Tests/WebKitCocoa/NetworkProcess.mm:
(TEST): Test that creating and destroying ephemer WebsiteDataStore doesn't initialize
default network process.
- 10:57 AM Changeset in webkit [292402] by
-
- 6 edits in trunk/Tools
[Merge-Queue] Add author to commit message
https://bugs.webkit.org/show_bug.cgi?id=238752
<rdar://problem/91254339>
Reviewed by Aakash Jain.
svn.webkit.org will attribute a change to a specific author
if "Patch by" is in the commit message.
- Tools/CISupport/ews-build/factories.py:
(MergeQueueFactory.init): Add AddAuthorToCommitMessage step.
- Tools/CISupport/ews-build/factories_unittest.py:
(TestExpectedBuildSteps): Ditto.
- Tools/CISupport/ews-build/master.cfg: Determine commit author from github.head.user.login.
- Tools/CISupport/ews-build/steps.py:
(AddAuthorToCommitMessage):
(AddAuthorToCommitMessage.init):
(AddAuthorToCommitMessage.author): Return commit author's name and email, falling back
to the committers name and email if those cannot be determined.
(AddAuthorToCommitMessage.start): Insert "Patch by" into commit message.
(AddAuthorToCommitMessage.getResultSummary):
(AddAuthorToCommitMessage.doStepIf): Only do step if the author can be determined.
(AddAuthorToCommitMessage.hideStepIf): Hide step if skipped.
- Tools/CISupport/ews-build/steps_unittest.py:
Canonical link: https://commits.webkit.org/249265@main
- 10:38 AM Changeset in webkit [292401] by
-
- 5 edits in trunk
5 Media API tests are flakily timing out on iOS14
https://bugs.webkit.org/show_bug.cgi?id=230321
<rdar://problem/83168970>
Reviewed by Jer Noble.
Source/WebKit:
Un-skipped API test WKWebViewPausePlayingAudioTests.OutOfWindow
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::applicationWillEnterForegroundForMedia): Log the correct name.
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::applicationDidEnterBackgroundForMedia): Call PlatformMediaSessionManager.
(WebKit::WebPage::applicationWillEnterForegroundForMedia): Ditto.
Tools:
- TestWebKitAPI/Tests/ios/WKWebViewPausePlayingAudioTests.mm:
(TestWebKitAPI::TEST):
- 10:04 AM Changeset in webkit [292400] by
-
- 4 edits2 adds in trunk
[macOS][selectors] :focus-visible matching on button focused via script (after clicking on a different button)
https://bugs.webkit.org/show_bug.cgi?id=236782
<rdar://problem/89382543>
Reviewed by Antti Koivisto.
LayoutTests/imported/w3c:
Add specific test for <button> element.
- web-platform-tests/css/selectors/focus-visible-script-focus-008-b-expected.txt: Added.
- web-platform-tests/css/selectors/focus-visible-script-focus-008-b.html: Added.
Source/WebCore:
Document::m_latestFocusTrigger was not being updated after clicking on a button (or other form controls)
on platforms different than GTK and WPE.
This is because HTMLFormControlElement::isMouseFocusable() returns false on such platforms.
This issue is causing problems with :focus-visible, as the button is not actually focused via mouse click,
if you move the focus via script afterwards, the new focused element always match :focus-visible.
This patch is a workaround to solve that issue, by updating m_latestFocusTrigger on Document
even if the element is not actually focused.
That way :focus-visible doesn't match if there's a script focus afterwards.
Fix :focus-visible after clicking on a button on Mac
Test: imported/w3c/web-platform-tests/css/selectors/focus-visible-script-focus-008-b.html
- dom/Document.h:
(WebCore::Document::setLatestFocusTrigger):
- page/EventHandler.cpp:
(WebCore::EventHandler::dispatchMouseEvent):
- 9:57 AM Changeset in webkit [292399] by
-
- 1 edit in trunk/Source/WebCore/features.json
Correct additional malformed entries in 'specifications' section.
- 9:44 AM Changeset in webkit [292398] by
-
- 8 edits in trunk/Source
Pass an IOSurfacePool to ImageBuffer::releaseBufferToPool()
https://bugs.webkit.org/show_bug.cgi?id=238768
Reviewed by Said Abou-Hallawa.
In order to move away from a singleton IOSurfacePool, we need to pass the pool
which the IOSurface will be added to.
Source/WebCore:
- platform/graphics/ConcreteImageBuffer.h:
- platform/graphics/ImageBuffer.h:
(WebCore::ImageBuffer::CreationContext::CreationContext):
- platform/graphics/ImageBufferBackend.h:
(WebCore::ImageBufferBackend::releaseBufferToPool):
- platform/graphics/cg/ImageBufferIOSurfaceBackend.cpp:
(WebCore::ImageBufferIOSurfaceBackend::releaseBufferToPool):
- platform/graphics/cg/ImageBufferIOSurfaceBackend.h:
Source/WebKit:
For RemoteLayerBackingStore, pass the singleton WebProcess pool
(this is the non-GPU Process code path).
- Shared/RemoteLayerTree/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStore::Buffer::discard):
- 9:32 AM Changeset in webkit [292397] by
-
- 1 copy in tags/Safari-614.1.8.3
Tag Safari-614.1.8.3.
- 9:30 AM Changeset in webkit [292396] by
-
- 9 edits in branches/safari-614.1.8-branch/Source
Versioning.
WebKit-7614.1.8.3
- 9:15 AM Changeset in webkit [292395] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, fix the internal iOS build after r292370
Remove an extraneous opening parenthesis.
- page/DOMWindow.cpp:
(WebCore::DOMWindow::addEventListener):
- 8:44 AM Changeset in webkit [292394] by
-
- 11 edits in trunk
[CSS-Contain] Add support for contain: inline-size
https://bugs.webkit.org/show_bug.cgi?id=238787
Reviewed by Antti Koivisto.
LayoutTests/imported/w3c:
- web-platform-tests/css/css-contain/parsing/contain-computed-expected.txt:
- web-platform-tests/css/css-contain/parsing/contain-valid-expected.txt:
Source/WebCore:
- css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::valueForPropertyInStyle):
- css/parser/CSSPropertyParser.cpp:
(WebCore::consumeContain):
- rendering/RenderBlock.cpp:
(WebCore::RenderBlock::computeIntrinsicLogicalWidths const):
(WebCore::RenderBlock::computeBlockPreferredLogicalWidths const):
- rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::computeIntrinsicLogicalWidths const):
(WebCore::RenderBlockFlow::computeInlinePreferredLogicalWidths const):
- rendering/RenderBox.cpp:
(WebCore::RenderBox::createsNewFormattingContext const):
(WebCore::RenderBox::establishesIndependentFormattingContext const):
- rendering/RenderBox.h:
- style/StyleBuilderCustom.h:
(WebCore::Style::BuilderCustom::applyValueContain):
LayoutTests:
- 6:50 AM Changeset in webkit [292393] by
-
- 2 edits in trunk/Source/WebCore
[GStreamer] GstCapsForeachFunc returns a gboolean
https://bugs.webkit.org/show_bug.cgi?id=238799
Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2022-04-05
Reviewed by Adrian Perez de Castro.
- platform/mediastream/gstreamer/RealtimeOutgoingVideoSourceGStreamer.cpp:
(WebCore::RealtimeOutgoingVideoSourceGStreamer::RealtimeOutgoingVideoSourceGStreamer):
- 6:37 AM Changeset in webkit [292392] by
-
- 6 edits1 delete in trunk
ANGLE changes.diff contains differences that are from stale files or unneeded
https://bugs.webkit.org/show_bug.cgi?id=238798
Unreviewed, verifiable by running the script.
Source/ThirdParty/ANGLE:
Unneeded changes in changes.diff should be excluded:
- ChangeLog files
- WebKit specific build scripts
- Diff to removed .jar files
Stale changes should be updated from the upstream, should be synced from upstream:
- .gitignore entry from some old path
- Wrong file names in DEQP test expectations, renamed in upstream
- Unused EnvironmentVariable.h that is not present in upstream anymore
Patch by Kimmo Kinnunen <kkinnunen@apple.com> on 2022-04-05
- .gitignore:
- ANGLE.xcodeproj/project.pbxproj:
- changes.diff:
- src/compiler/translator/TranslatorMetalDirect/EnvironmentVariable.h: Removed.
- src/tests/deqp_support/deqp_egl_TestExpectations: Renamed from Source/ThirdParty/ANGLE/src/tests/deqp_support/deqp_egl_TestExpectations.
- src/tests/deqp_support/deqp_gles2_TestExpectations: Renamed from Source/ThirdParty/ANGLE/src/tests/deqp_support/deqp_gles2_TestExpectations.
- src/tests/deqp_support/deqp_gles31_rotate_TestExpectations: Renamed from Source/ThirdParty/ANGLE/src/tests/deqp_support/deqp_gles31_rotate_TestExpectations.
- src/tests/deqp_support/deqp_gles31_TestExpectations: Renamed from Source/ThirdParty/ANGLE/src/tests/deqp_support/deqp_gles31_TestExpectations.
- src/tests/deqp_support/deqp_gles3_rotate_TestExpectations: Renamed from Source/ThirdParty/ANGLE/src/tests/deqp_support/deqp_gles3_rotate_TestExpectations.
- src/tests/deqp_support/deqp_gles3_TestExpectations: Renamed from Source/ThirdParty/ANGLE/src/tests/deqp_support/deqp_gles3_TestExpectations.
- src/tests/deqp_support/deqp_khr_gles2_TestExpectations: Renamed from Source/ThirdParty/ANGLE/src/tests/deqp_support/deqp_khr_gles2_TestExpectations.
- src/tests/deqp_support/deqp_khr_gles31_TestExpectations: Renamed from Source/ThirdParty/ANGLE/src/tests/deqp_support/deqp_khr_gles31_TestExpectations.
- src/tests/deqp_support/deqp_khr_gles32_TestExpectations: Renamed from Source/ThirdParty/ANGLE/src/tests/deqp_support/deqp_khr_gles32_TestExpectations.
- src/tests/deqp_support/deqp_khr_gles3_TestExpectations: Renamed from Source/ThirdParty/ANGLE/src/tests/deqp_support/deqp_khr_gles3_TestExpectations.
Tools:
Exclude WebKit ChangeLog entries from changes.diff
Exclude WebKit build script copy-frameworks-to-secondary-path.sh
Exclude a file that is not needed downstream custom_d8.jar
Patch by Kimmo Kinnunen <kkinnunen@apple.com> on 2022-04-05
- Scripts/update-angle:
- 4:30 AM Changeset in webkit [292391] by
-
- 7 edits in trunk/Source/WebCore
[GTK][WPE] Use UnixFileDescriptor in DMABufObject, DMABufReleaseFlag
https://bugs.webkit.org/show_bug.cgi?id=238733
Reviewed by Adrian Perez de Castro.
Replace integer values for file descriptors in the DMABufObject and
DMABufReleaseFlag structs with UnixFileDescriptors. This enables
simply defaulting the destructors and the move constructors and
assignment operatos for the two types since the fd wrapper takes care
of these operations.
Additionally, when constructing the UnixFileDescriptor objects from
file descriptors coming from different sources, we can more easily
adapt to the need for either adoption or duplication of the passed-in
file descriptor right there in the constructor invocation.
- platform/graphics/gbm/DMABufObject.h:
(WebCore::DMABufObject::~DMABufObject): Deleted.
(WebCore::DMABufObject::operator=): Deleted.
- platform/graphics/gbm/DMABufReleaseFlag.h:
(WebCore::DMABufReleaseFlag::DMABufReleaseFlag):
(WebCore::DMABufReleaseFlag::dup const):
(WebCore::DMABufReleaseFlag::released const):
(WebCore::DMABufReleaseFlag::release):
(WebCore::DMABufReleaseFlag::~DMABufReleaseFlag): Deleted.
(WebCore::DMABufReleaseFlag::operator=): Deleted.
- platform/graphics/gbm/GBMBufferSwapchain.cpp:
(WebCore::GBMBufferSwapchain::Buffer::createDMABufObject const):
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::pushDMABufToCompositor):
- platform/graphics/texmap/GraphicsContextGLTextureMapperANGLE.cpp:
(WebCore::GraphicsContextGLANGLE::makeContextCurrent):
- platform/graphics/texmap/TextureMapperPlatformLayerProxyDMABuf.cpp:
(WebCore::TextureMapperPlatformLayerProxyDMABuf::DMABufLayer::createEGLImageData):
- 4:17 AM WebKitFlatpakSDK edited by
- (diff)
- 4:15 AM WebKitFlatpakSDK/GstBuild edited by
- (diff)
- 4:10 AM WebKitFlatpakSDK/LocalProjects edited by
- (diff)
- 4:07 AM WebKitFlatpakSDK/LocalProjects edited by
- (diff)
- 4:05 AM WebKitFlatpakSDK/LocalProjects edited by
- (diff)
- 4:05 AM WebKitFlatpakSDK/LocalProjects created by
- 3:59 AM WebKitFlatpakSDK/GstBuild edited by
- (diff)
- 3:58 AM WebKitFlatpakSDK edited by
- (diff)
- 3:55 AM Changeset in webkit [292390] by
-
- 2 edits6 adds in trunk/Tools
[Flatpak SDK] Local dependencies override support
https://bugs.webkit.org/show_bug.cgi?id=238452
Patch by Philippe Normand <pnormand@igalia.com> on 2022-04-05
Reviewed by Adrian Perez de Castro.
When the environment variable WEBKIT_SDK_LOCAL_DEPS is set at compile-time and runtime, some
dependencies (currently only libsoup and GStreamer) will be picked up from local git
checkouts located in Tools/flatpak/. If no checkout is present, one will be made based on
the corresponding .wrap file.
Example: WEBKIT_SDK_LOCAL_DEPS=libsoup,gstreamer-full build-webkit --wpe ...
Additional Meson options can be supplied with WEBKIT_SDK_LOCAL_DEPS_OPTIONS. Nested
subprojects configuration is supported as well, for example:
export WEBKIT_SDK_LOCAL_DEPS_OPTIONS="-Dgstreamer-full:introspection=disabled -Dgst-plugins-good:soup=disabled"
This setup replaces the previous one that was specific to GStreamer.
- flatpak/flatpakutils.py:
(WebkitFlatpak.load_from_args):
(WebkitFlatpak.init):
(WebkitFlatpak.setup_local_deps):
(WebkitFlatpak._merge_env_variables):
(WebkitFlatpak.run_in_sandbox):
(WebkitFlatpak.setup_dev_env):
(WebkitFlatpak.setup_gstbuild): Deleted.
- flatpak/local-projects/meson.build: Added.
- flatpak/local-projects/subprojects/gstreamer-full.wrap: Added.
- flatpak/local-projects/subprojects/libsoup.wrap: Added.
- 3:48 AM Changeset in webkit [292389] by
-
- 8 edits1 add in trunk/Source
[Unix] Add UnixFileDescriptor, use it in IPC::Semaphore
https://bugs.webkit.org/show_bug.cgi?id=238726
Reviewed by Carlos Garcia Campos.
Source/WebKit:
Use WTF::UnixFileDescriptor in IPC::Semaphore in place of a raw integer
value. This also simplifies other things, e.g. the move constructor and
assignment operator can now both be defaulted.
The IPC encoding and decoding of the semaphore object is also simpler,
leaning into the custom ArgumentCoder specialization for objects of the
WTF::UnixFileDescriptor type. The encoding and decoding is done by
chaperoning the file descriptor through IPC::Attachment.
- Platform/IPC/IPCSemaphore.h:
(IPC::Semaphore::operator bool const):
- Platform/IPC/unix/IPCSemaphoreUnix.cpp:
(IPC::Semaphore::Semaphore):
(IPC::Semaphore::signal):
(IPC::Semaphore::wait):
(IPC::Semaphore::waitFor):
(IPC::Semaphore::encode const):
(IPC::Semaphore::decode):
(IPC::Semaphore::destroy):
(IPC::Semaphore::operator=): Deleted.
- Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder<WTF::UnixFileDescriptor>::encode):
(IPC::ArgumentCoder<WTF::UnixFileDescriptor>::decode):
- Shared/WebCoreArgumentCoders.h:
Source/WTF:
Add the UnixFileDescriptor class, intended as a wrapper for a file
descriptor integer. Construction is a matter of adopting or duplicating
the passed-in file descriptor value. UnixFileDescriptor objects can be
moved around and explicitly duplicated, and the contained fd value can
be released.
The wrapper class makes it easier to handle file descriptor values when
embedded into other types as member variables. It also allows to specify
custom encoding and decoding in the WebKit IPC infrastructure.
- wtf/PlatformGTK.cmake:
- wtf/PlatformWPE.cmake:
- wtf/unix/UnixFileDescriptor.h: Added.
(WTF::UnixFileDescriptor::UnixFileDescriptor):
(WTF::UnixFileDescriptor::operator=):
(WTF::UnixFileDescriptor::~UnixFileDescriptor):
(WTF::UnixFileDescriptor::operator bool const):
(WTF::UnixFileDescriptor::value const):
(WTF::UnixFileDescriptor::duplicate const):
- 2:40 AM Changeset in webkit [292388] by
-
- 4 edits in trunk
update-angle output varies unpredictably due to blob hash abbreviation
https://bugs.webkit.org/show_bug.cgi?id=238793
Patch by Kimmo Kinnunen <kkinnunen@apple.com> on 2022-04-05
Reviewed by Antti Koivisto.
Source/ThirdParty/ANGLE:
Update the diff to contain unabbreviated blob hash values. These are more
predictable for all developers.
- changes.diff:
Tools:
Add --full-index to diff to get the unabbreviated blob hash.
- Scripts/update-angle:
- 2:11 AM Changeset in webkit [292387] by
-
- 3 edits in trunk/Source/WebCore
[GStreamer] gst_video_format_info_component not defined in GStreamer <1.18
https://bugs.webkit.org/show_bug.cgi?id=238685
Reviewed by Philippe Normand.
- platform/graphics/gstreamer/GStreamerCommon.cpp:
(WebCore::webkitGstVideoFormatInfoComponent):
- platform/graphics/gstreamer/GStreamerCommon.h:
- 1:50 AM Changeset in webkit [292386] by
-
- 3 edits in trunk/LayoutTests
Skip editing-word-with-marker-1.html
https://bugs.webkit.org/show_bug.cgi?id=238767
Unreviewed test gardening.
- 1:36 AM Changeset in webkit [292385] by
-
- 2 edits in trunk/Source/WebKit
Expand autocorrect context for more accurate results.
https://bugs.webkit.org/show_bug.cgi?id=237990
Reviewed by Wenson Hsieh.
Covered by existing tests.
Expand autocorrect context to at least 10 words instead of 3, and with a min/max length of 40/100
instead of 12/30 and start context at the beginning of sentences to help with having more accurate
autocorrect suggestions.
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::autocorrectionContext):
- 1:21 AM Changeset in webkit [292384] by
-
- 2 edits in trunk/Source/ThirdParty/ANGLE
Update ANGLE changes.diff after "Roll ANGLE to 2022-03-31 (fe28a4295af087ee82b8f629b67176b95019af6d)"
https://bugs.webkit.org/show_bug.cgi?id=238794
Unreviewed, verifiable by running the script.
Update the diff, turns out it was not up-to-date.
Patch by Kimmo Kinnunen <kkinnunen@apple.com> on 2022-04-05
- changes.diff:
- 1:19 AM Changeset in webkit [292383] by
-
- 8 edits1 delete in trunk/Source
Remove system feature flags implementation
https://bugs.webkit.org/show_bug.cgi?id=238791
Reviewed by Megan Gardner.
Source/WebKit:
- Shared/Cocoa/WebPreferencesDefaultValuesCocoa.mm:
(WebKit::isFeatureFlagEnabled): Deleted.
- Shared/WebPreferencesDefaultValues.cpp:
(WebKit::isFeatureFlagEnabled): Deleted.
- Shared/WebPreferencesDefaultValues.h:
- Shared/win/WebPreferencesDefaultValuesWin.cpp: Removed.
Source/WebKitLegacy/mac:
- WebView/WebPreferencesDefaultValues.h:
- WebView/WebPreferencesDefaultValues.mm:
(WebKit::isFeatureFlagEnabled): Deleted.
- 1:03 AM Changeset in webkit [292382] by
-
- 7 edits7 adds in trunk
Support rendering url(), CSS basic shapes other than path(), and coord-box for offset-path
https://bugs.webkit.org/show_bug.cgi?id=233382
Reviewed by Simon Fraser.
LayoutTests/imported/w3c:
- web-platform-tests/css/motion/offset-path-shape-expected.html: Added.
- web-platform-tests/css/motion/offset-path-shape.html: Added.
- web-platform-tests/css/motion/offset-path-url-expected.html: Added.
- web-platform-tests/css/motion/offset-path-url.html: Added.
Source/WebCore:
Introduce support for url(), CSS basic shapes, and coord-box. Url() allows references to SVG
shapes, so we check for either an SVGPathElement or SVGGeometryElement (which includes
circles, polygons, etc.). We can then get a Path object for that particular SVGElement
using pathFromGraphicsElement(). For coord-box, we check the value for the BoxPathOperation
(if it exists) in updateTransform(), and choose the corresponding reference box to the
referenceBox() value of the BoxPathOperation.
Tests: imported/w3c/web-platform-tests/css/motion/offset-path-shape.html
imported/w3c/web-platform-tests/css/motion/offset-path-url.html
- Sources.txt:
- rendering/PathOperation.cpp: Added.
(WebCore::ReferencePathOperation::create):
(WebCore::ReferencePathOperation::ReferencePathOperation):
(WebCore::ReferencePathOperation::element const):
- rendering/PathOperation.h:
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateTransform):
- rendering/style/RenderStyle.cpp:
(WebCore::getPathFromPathOperation):
- style/StyleBuilderConverter.h:
(WebCore::Style::BuilderConverter::convertPathOperation):
- 1:01 AM Changeset in webkit [292381] by
-
- 4 edits4 adds in trunk
Moving forwards and backwards by sentences across a table results in different breaks in each direction.
https://bugs.webkit.org/show_bug.cgi?id=238621
Reviewed by Darin Adler.
Tests: editing/selection/move-selection-backwards-at-end-of-table-by-sentence-granularity.html
editing/selection/move-selection-forwards-at-beginning-of-table-by-sentence-granularity.html
We need to emit tabs even in a simplified backwards text iterator because otherwise traversing a table by
sentence granularity results in not having the same behavior backwards and forwards.
- editing/TextIterator.cpp:
(WebCore::SimplifiedBackwardsTextIterator::handleNonTextNode):
(WebCore::SimplifiedBackwardsTextIterator::exitNode):
- 12:32 AM Changeset in webkit [292380] by
-
- 7 edits in trunk/Source/WebCore
Unreviewed, reverting r292377.
The depended-on patch hasn't landed yet
Reverted changeset:
"[GTK][WPE] Use UnixFileDescriptor in DMABufObject,
DMABufReleaseFlag"
https://bugs.webkit.org/show_bug.cgi?id=238733
https://commits.webkit.org/r292377
- 12:28 AM Changeset in webkit [292379] by
-
- 2 edits in trunk/Source/WebKit
[WPE] Mark "backend" parameters of web view constructors not nullable
https://bugs.webkit.org/show_bug.cgi?id=238734
Reviewed by Martin Robinson.
No new tests needed.
- UIProcess/API/wpe/WebKitWebViewWPE.cpp: Annotate web view constructors with (not nullable)
and while at it, fix documentation links, and improve the wording to better follow gi-docgen
copywriting style. Remove the mentions to the single process model, which is deprecated anyway.
- 12:09 AM Changeset in webkit [292378] by
-
- 1 edit1 add in trunk/LayoutTests
[iOS] Add timeout expectations for focus-after-close.html WPT
Unreviewed test gardening.
- platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/focus-after-close-expected.txt: Added.
Apr 4, 2022:
- 11:54 PM Changeset in webkit [292377] by
-
- 7 edits in trunk/Source/WebCore
[GTK][WPE] Use UnixFileDescriptor in DMABufObject, DMABufReleaseFlag
https://bugs.webkit.org/show_bug.cgi?id=238733
Reviewed by Adrian Perez de Castro.
Replace integer values for file descriptors in the DMABufObject and
DMABufReleaseFlag structs with UnixFileDescriptors. This enables
simply defaulting the destructors and the move constructors and
assignment operatos for the two types since the fd wrapper takes care
of these operations.
Additionally, when constructing the UnixFileDescriptor objects from
file descriptors coming from different sources, we can more easily
adapt to the need for either adoption or duplication of the passed-in
file descriptor right there in the constructor invocation.
- platform/graphics/gbm/DMABufObject.h:
(WebCore::DMABufObject::~DMABufObject): Deleted.
(WebCore::DMABufObject::operator=): Deleted.
- platform/graphics/gbm/DMABufReleaseFlag.h:
(WebCore::DMABufReleaseFlag::DMABufReleaseFlag):
(WebCore::DMABufReleaseFlag::dup const):
(WebCore::DMABufReleaseFlag::released const):
(WebCore::DMABufReleaseFlag::release):
(WebCore::DMABufReleaseFlag::~DMABufReleaseFlag): Deleted.
(WebCore::DMABufReleaseFlag::operator=): Deleted.
- platform/graphics/gbm/GBMBufferSwapchain.cpp:
(WebCore::GBMBufferSwapchain::Buffer::createDMABufObject const):
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::pushDMABufToCompositor):
- platform/graphics/texmap/GraphicsContextGLTextureMapperANGLE.cpp:
(WebCore::GraphicsContextGLANGLE::makeContextCurrent):
- platform/graphics/texmap/TextureMapperPlatformLayerProxyDMABuf.cpp:
(WebCore::TextureMapperPlatformLayerProxyDMABuf::DMABufLayer::createEGLImageData):
- 10:38 PM Changeset in webkit [292376] by
-
- 7 edits2 deletes in trunk
[Forms] change the default appearance of button, checkbox etc. to 'auto'
https://bugs.webkit.org/show_bug.cgi?id=236012
Reviewed by Tim Nguyen.
LayoutTests/imported/w3c:
- web-platform-tests/html/rendering/widgets/appearance/default-styles-expected.txt:
Source/WebCore:
Change the default appearance of a few element to 'auto'.
This shouldn't change rendering behavior, but changes
LayoutTests:
- platform/ios-wk2/imported/w3c/web-platform-tests/html/rendering/widgets/appearance/default-styles-expected.txt: Removed.
- platform/mac-wk1/imported/w3c/web-platform-tests/html/rendering/widgets/appearance/default-styles-expected.txt: Removed.
- 10:36 PM Changeset in webkit [292375] by
-
- 7 edits in trunk/Source/WebCore
[CSS Container Queries] Simplify grammar
https://bugs.webkit.org/show_bug.cgi?id=238732
Reviewed by Sam Weinig.
Because size() function syntax is no longer supported, separate SizeQuery and SizeCondition productions
are no longer needed.
Some slightly unnecessary templatization is retained to help with future work.
- css/ContainerQuery.cpp:
- css/ContainerQuery.h:
- css/ContainerQueryParser.cpp:
(WebCore::ContainerQueryParser::consumeContainerQuery):
(WebCore::ContainerQueryParser::consumeCondition):
(WebCore::ContainerQueryParser::consumeSizeFeature):
(WebCore::ContainerQueryParser::consumePlainSizeFeature):
(WebCore::ContainerQueryParser::consumeSizeQuery): Deleted.
- css/ContainerQueryParser.h:
- style/ContainerQueryEvaluator.cpp:
(WebCore::Style::ContainerQueryEvaluator::evaluateQuery const):
- style/ContainerQueryEvaluator.h:
- 10:20 PM Changeset in webkit [292374] by
-
- 4 edits in trunk/Source/bmalloc
[libpas] Do not need to call pthread_set_qos_class_self_np repeatedly
https://bugs.webkit.org/show_bug.cgi?id=238785
Reviewed by Mark Lam.
Let's remember previously set QOS class and avoid resetting it if the value is not changed.
- bmalloc/bmalloc.cpp:
(bmalloc::api::setScavengerThreadQOSClass):
- libpas/src/libpas/pas_scavenger.c:
(pas_scavenger_set_requested_qos_class):
(scavenger_thread_main):
- libpas/src/libpas/pas_scavenger.h:
- 9:18 PM Changeset in webkit [292373] by
-
- 5 edits in trunk/Source/JavaScriptCore
[JSC] Reduce sizeof(BaselineCallLinkInfo) to make bug 238535 good
https://bugs.webkit.org/show_bug.cgi?id=238777
Reviewed by Mark Lam.
https://bugs.webkit.org/show_bug.cgi?id=238535 adds one pointer to CallLinkInfo.
To make BaselineCallLinkInfo small, this patch removes std::unique_ptr<CallFrameShuffleData>
in BaselineCallLinkInfo since it can be computed in repatching code.
- bytecode/CallLinkInfo.cpp:
(JSC::BaselineCallLinkInfo::initialize):
(JSC::OptimizingCallLinkInfo::setFrameShuffleData):
(JSC::CallLinkInfo::setFrameShuffleData): Deleted.
- bytecode/CallLinkInfo.h:
(JSC::CallLinkInfo::frameShuffleData): Deleted.
- bytecode/CodeBlock.cpp:
(JSC::CodeBlock::finishCreation):
- bytecode/Repatch.cpp:
(JSC::linkPolymorphicCall):
- 9:10 PM Changeset in webkit [292372] by
-
- 29 edits in trunk/Source/JavaScriptCore
[JSC] Store CodeBlock in caller side
https://bugs.webkit.org/show_bug.cgi?id=238535
Reviewed by Saam Barati.
This patch changes the calling convention of JS functions. Now, we need to store CodeBlock to the stack in the caller side instead.
This helps LLInt, unlinked Baseline, and DFG since we no longer need to load CodeBlock from callee via costly dependent loads: unlinked
ones cannot embed CodeBlock raw pointer into the machine code itself. So we needed to load it from callee. But now, caller puts the
right CodeBlock pointer into the stack so we do not need that code. And in most cases, caller already knows CodeBlock since it is tied
to actually used machine code pointer.
OSR entry also materializes CodeBlock in the stack in the OSR entry side instead of doing it in the callee side.
This contributes to 0.3% progression in Speedometer2.
- assembler/CPU.h:
(JSC::prologueStackPointerDelta):
- bytecode/CallLinkInfo.cpp:
(JSC::CallLinkInfo::setMonomorphicCallee):
(JSC::CallLinkInfo::clearCallee):
(JSC::CallLinkInfo::revertCallToStub):
(JSC::CallLinkInfo::emitFastPathImpl):
(JSC::CallLinkInfo::setStub):
(JSC::OptimizingCallLinkInfo::emitDirectFastPath):
(JSC::OptimizingCallLinkInfo::emitDirectTailCallFastPath):
(JSC::OptimizingCallLinkInfo::initializeDirectCall):
(JSC::OptimizingCallLinkInfo::setDirectCallTarget):
- bytecode/CallLinkInfo.h:
(JSC::CallLinkInfo::offsetOfCodeBlock):
- bytecode/Repatch.cpp:
(JSC::linkMonomorphicCall):
(JSC::linkDirectCall):
(JSC::linkPolymorphicCall):
- bytecode/RepatchInlines.h:
(JSC::virtualForWithFunction):
- dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::compileEntry):
- dfg/DFGOSREntry.cpp:
(JSC::DFG::prepareOSREntry):
(JSC::DFG::prepareCatchOSREntry):
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileCurrentBlock):
- dfg/DFGThunks.cpp:
(JSC::DFG::osrEntryThunkGenerator):
- ftl/FTLAbstractHeapRepository.h:
- ftl/FTLLink.cpp:
(JSC::FTL::link):
- ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::lower):
- interpreter/CallFrame.h:
- jit/AssemblyHelpers.h:
(JSC::AssemblyHelpers::calleeFrameCodeBlockBeforeCall):
(JSC::AssemblyHelpers::calleeFrameCodeBlockBeforeTailCall):
(JSC::AssemblyHelpers::prologueStackPointerDelta): Deleted.
- jit/CCallHelpers.h:
(JSC::CCallHelpers::prepareForTailCallSlow):
- jit/JIT.cpp:
(JSC::JIT::compileAndLinkWithoutFinalizing):
(JSC::JIT::emitPutCodeBlockToFrameInPrologue): Deleted.
- jit/JIT.h:
- jit/JITOperations.cpp:
(JSC::JSC_DEFINE_JIT_OPERATION):
- jit/JITOperations.h:
- jit/ThunkGenerators.cpp:
(JSC::virtualThunkFor):
(JSC::boundFunctionCallGenerator):
(JSC::remoteFunctionCallGenerator):
- llint/LowLevelInterpreter.asm:
- llint/LowLevelInterpreter32_64.asm:
- llint/LowLevelInterpreter64.asm:
- llint/WebAssembly.asm:
- runtime/FunctionExecutable.h:
- runtime/JSCast.h:
- runtime/VM.cpp:
(JSC::VM::getRemoteFunction):
- wasm/WasmOperations.cpp:
(JSC::Wasm::doOSREntry):
- 8:59 PM Changeset in webkit [292371] by
-
- 2 edits3 deletes in trunk/Source/WebKit
Stop generating WebKit system feature flags plists
https://bugs.webkit.org/show_bug.cgi?id=238784
Reviewed by Wenson Hsieh.
- FeatureFlags/WebKit-appletvos.plist: Removed.
- FeatureFlags/WebKit-ios.plist: Removed.
- FeatureFlags/WebKit-macos.plist: Removed.
- FeatureFlags/WebKit-watchos.plist: Removed.
- Scripts/combine-feature-flags-plist.py: Removed.
- Scripts/generate-feature-flags-plist.sh: Removed.
- WebKit.xcodeproj/project.pbxproj:
- 8:46 PM Changeset in webkit [292370] by
-
- 17 edits in trunk/Source/WebCore
Avoid repeated calls to WebCore::eventNames()
https://bugs.webkit.org/show_bug.cgi?id=238773
Reviewed by Geoffrey Garen.
Avoid repeated calls to WebCore::eventNames() by caching it where appropriate.
WebCore::eventNames() calls pthread_get_specific.
- dom/Element.cpp:
(WebCore::isCompatibilityMouseEvent):
- dom/EventContext.cpp:
(WebCore::EventContext::handleLocalEvents const):
- dom/EventTarget.cpp:
(WebCore::legacyType):
(WebCore::EventTarget::removeAllEventListeners):
- dom/MouseEvent.cpp:
(WebCore::MouseEvent::toElement const):
(WebCore::MouseEvent::fromElement const):
- dom/Node.cpp:
(WebCore::Node::moveNodeToNewDocument):
(WebCore::tryAddEventListener):
(WebCore::tryRemoveEventListener):
(WebCore::Node::defaultEventHandler):
(WebCore::Node::willRespondToMouseMoveEvents):
(WebCore::Node::willRespondToTouchEvents):
(WebCore::Node::willRespondToMouseClickEvents):
- dom/PointerEvent.h:
(WebCore::PointerEvent::typeIsEnterOrLeave):
- html/HTMLAnchorElement.cpp:
(WebCore::HTMLAnchorElement::defaultEventHandler):
- html/HTMLButtonElement.cpp:
(WebCore::HTMLButtonElement::defaultEventHandler):
- html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::willDispatchEvent):
- html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::menuListDefaultEventHandler):
(WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
- html/HTMLSummaryElement.cpp:
(WebCore::HTMLSummaryElement::defaultEventHandler):
- html/HTMLTextFormControlElement.cpp:
(WebCore::HTMLTextFormControlElement::forwardEvent):
- html/TextFieldInputType.cpp:
(WebCore::TextFieldInputType::forwardEvent):
- html/shadow/SliderThumbElement.cpp:
(WebCore::SliderThumbElement::handleTouchEvent):
- page/DOMWindow.cpp:
(WebCore::DOMWindow::dispatchAllPendingUnloadEvents):
(WebCore::DOMWindow::addEventListener):
(WebCore::DOMWindow::deviceOrientationController const): Deleted.
(WebCore::DOMWindow::deviceMotionController const): Deleted.
(WebCore::DOMWindow::isAllowedToUseDeviceMotionOrOrientation const): Deleted.
(WebCore::DOMWindow::isAllowedToUseDeviceMotion const): Deleted.
(WebCore::DOMWindow::isAllowedToUseDeviceOrientation const): Deleted.
(WebCore::DOMWindow::hasPermissionToReceiveDeviceMotionOrOrientationEvents const): Deleted.
(WebCore::DOMWindow::startListeningForDeviceOrientationIfNecessary): Deleted.
(WebCore::DOMWindow::stopListeningForDeviceOrientationIfNecessary): Deleted.
(WebCore::DOMWindow::startListeningForDeviceMotionIfNecessary): Deleted.
(WebCore::DOMWindow::stopListeningForDeviceMotionIfNecessary): Deleted.
(WebCore::DOMWindow::failedToRegisterDeviceMotionEventListener): Deleted.
(WebCore::DOMWindow::incrementScrollEventListenersCount): Deleted.
(WebCore::DOMWindow::decrementScrollEventListenersCount): Deleted.
(WebCore::DOMWindow::resetAllGeolocationPermission): Deleted.
(WebCore::DOMWindow::removeEventListener): Deleted.
(WebCore::DOMWindow::languagesChanged): Deleted.
(WebCore::DOMWindow::dispatchLoadEvent): Deleted.
(WebCore::DOMWindow::dispatchEvent): Deleted.
(WebCore::DOMWindow::removeAllEventListeners): Deleted.
(WebCore::DOMWindow::captureEvents): Deleted.
(WebCore::DOMWindow::releaseEvents): Deleted.
(WebCore::DOMWindow::finishedLoading): Deleted.
(WebCore::DOMWindow::setLocation): Deleted.
(WebCore::DOMWindow::printErrorMessage const): Deleted.
(WebCore::DOMWindow::crossDomainAccessErrorMessage): Deleted.
(WebCore::DOMWindow::isInsecureScriptAccess): Deleted.
(WebCore::DOMWindow::createWindow): Deleted.
(WebCore::DOMWindow::open): Deleted.
(WebCore::DOMWindow::showModalDialog): Deleted.
(WebCore::DOMWindow::enableSuddenTermination): Deleted.
(WebCore::DOMWindow::disableSuddenTermination): Deleted.
(WebCore::DOMWindow::frame const): Deleted.
(WebCore::DOMWindow::eventListenersDidChange): Deleted.
- page/EventHandler.cpp:
(WebCore::EventHandler::updateMouseEventTargetNode):
(WebCore::EventHandler::isKeyboardOptionTab):
- 8:32 PM Changeset in webkit [292369] by
-
- 10 edits in trunk
Turn off LLInt ICs in captive portal mode
https://bugs.webkit.org/show_bug.cgi?id=238778
<rdar://84830873>
Reviewed by Yusuke Suzuki.
Source/JavaScriptCore:
- bytecode/CallLinkInfo.cpp:
(JSC::BaselineCallLinkInfo::initialize):
- bytecode/Repatch.cpp:
(JSC::unlinkCall):
- llint/LLIntCommon.h:
- llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
(JSC::LLInt::performLLIntGetByID):
- runtime/OptionsList.h:
Source/WebKit:
- Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceEntryPoint.h:
(WebKit::XPCServiceInitializer):
Tools:
- Scripts/run-jsc-stress-tests:
- 8:29 PM Changeset in webkit [292368] by
-
- 2 edits in trunk/Source/WebGPU
[WebGPU] Fix Apple's internal build
https://bugs.webkit.org/show_bug.cgi?id=238786
<rdar://problem/91271543>
Unreviewed build fix.
Copy FRAMEWORK_SEARCH_PATHS and SYSTEM_FRAMEWORK_SEARCH_PATHS from WebCore.xcconfig.
- Configurations/WebGPU.xcconfig:
- 8:01 PM Changeset in webkit [292367] by
-
- 9 edits in trunk/Source/WebKit
[WPE][GTK] Fix code examples in reference documentation
https://bugs.webkit.org/show_bug.cgi?id=238770
Reviewed by Michael Catanzaro.
Replace DocBook SGML tags containing code examples with Markdown fenced code blocks
as consumed by gi-docgen.
- UIProcess/API/glib/WebKitSettings.cpp:
- UIProcess/API/glib/WebKitUserContentManager.cpp:
- UIProcess/API/glib/WebKitWebContext.cpp:
- UIProcess/API/glib/WebKitWebView.cpp:
(webkit_web_view_class_init):
- UIProcess/API/glib/WebKitWebsitePolicies.cpp:
- UIProcess/API/gtk/WebKitWebInspector.cpp:
- UIProcess/API/gtk/WebKitWebViewGtk.cpp:
- WebProcess/InjectedBundle/API/glib/WebKitWebExtension.cpp:
- 7:42 PM Changeset in webkit [292366] by
-
- 2 edits in trunk/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):
- 7:09 PM Changeset in webkit [292365] by
-
- 10 edits in trunk/Source
Remove GPU process system feature flags
https://bugs.webkit.org/show_bug.cgi?id=238766
Reviewed by Simon Fraser.
Source/WebKit:
- FeatureFlags/WebKit-appletvos.plist:
- FeatureFlags/WebKit-ios.plist:
- FeatureFlags/WebKit-macos.plist:
- FeatureFlags/WebKit-watchos.plist:
- Shared/WebPreferencesDefaultValues.cpp:
(WebKit::defaultCaptureAudioInGPUProcessEnabled):
(WebKit::defaultUseGPUProcessForCanvasRenderingEnabled): Deleted.
(WebKit::defaultUseGPUProcessForDOMRenderingEnabled): Deleted.
(WebKit::defaultUseGPUProcessForMediaEnabled): Deleted.
(WebKit::defaultUseGPUProcessForWebGLEnabled): Deleted.
(WebKit::defaultCaptureVideoInGPUProcessEnabled): Deleted.
(WebKit::defaultWebRTCCodecsInGPUProcess): Deleted.
- Shared/WebPreferencesDefaultValues.h:
Source/WTF:
- Scripts/Preferences/WebPreferencesExperimental.yaml:
- Scripts/Preferences/WebPreferencesInternal.yaml:
- 7:06 PM Changeset in webkit [292364] by
-
- 29 edits1 add in trunk/Source/WebCore
[GPU Process] CSSFilter should be created only at the painting time
https://bugs.webkit.org/show_bug.cgi?id=236574
rdar://89210004
Reviewed by Simon Fraser.
Instead of building the whole filter chain to get the filter outsets at
the layout time, we can use the SVGFilterPrimitiveStandardAttributes and
the FilterOperation super classes to get their outsets without having to
build the FilterEffects.
CSSFilter::calculateOutsets() is a static method which will loop through
the FilterOperations and will add up the outsets of the blur, the drop-
shadow and the reference FilterOperation.
SVGFilterBuilder::calculateFilterOutsets() will loop through the primitives
of the filter element and will call the new virtual method outsets() which
will call a static method in the corresponding FilterEffect.
FEDropShadow, FEGaussianBlur and FEOffset will be provide static methods
for calculating the effect outsets. These static methods will be called
from CSSFilter::calculateOutsets() and from the SVGFExxxElements.
To remove the duplication of the code from SVGFilterBuilder::
buildFilterEffects() and calculateFilterOutsets(), a new template class
named SVGFilterGraph will be introduced. It represents the graph of the
SVGFilter. The nodes of this graph will be of type FilterEffecct when
it is used to build the SVGFilterExpression. The nodes will be of type
SVGFilterPrimitiveStandardAttributes when it is used to calculate the
filter outsets.
- WebCore.xcodeproj/project.pbxproj:
- platform/graphics/filters/FEDropShadow.cpp:
(WebCore::FEDropShadow::calculateOutsets):
(WebCore::FEDropShadow::outsets const): Deleted.
- platform/graphics/filters/FEDropShadow.h:
- platform/graphics/filters/FEGaussianBlur.cpp:
(WebCore::FEGaussianBlur::calculateOutsets):
(WebCore::FEGaussianBlur::outsets const): Deleted.
- platform/graphics/filters/FEGaussianBlur.h:
- platform/graphics/filters/FEOffset.cpp:
(WebCore::FEOffset::calculateOutsets):
(WebCore::FEOffset::outsets const): Deleted.
- platform/graphics/filters/FEOffset.h:
- platform/graphics/filters/Filter.h:
- platform/graphics/filters/FilterFunction.h:
(WebCore::FilterFunction::apply):
(WebCore::FilterFunction::outsets const): Deleted.
- rendering/CSSFilter.cpp:
(WebCore::calculateBlurEffectOutsets):
(WebCore::calculateDropShadowEffectOutsets):
(WebCore::referenceFilterElement):
(WebCore::calculateReferenceFilterOutsets):
(WebCore::createReferenceFilter):
(WebCore::CSSFilter::buildFilterFunctions):
(WebCore::CSSFilter::calculateOutsets):
(WebCore::createSVGFilter): Deleted.
(WebCore::CSSFilter::outsets const): Deleted.
- rendering/CSSFilter.h:
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::filtersForPainting const):
(WebCore::RenderLayer::calculateClipRects const):
- rendering/RenderLayerFilters.cpp:
(WebCore::RenderLayerFilters::calculateOutsets):
(WebCore::RenderLayerFilters::beginFilterEffect):
(WebCore::RenderLayerFilters::setFilter): Deleted.
(WebCore::RenderLayerFilters::buildFilter): Deleted.
- rendering/RenderLayerFilters.h:
- rendering/svg/RenderSVGResourceFilter.cpp:
(WebCore::RenderSVGResourceFilter::applyResource):
- rendering/svg/SVGRenderTreeAsText.cpp:
(WebCore::writeSVGResourceContainer):
- svg/SVGFEDropShadowElement.cpp:
(WebCore::SVGFEDropShadowElement::outsets const):
- svg/SVGFEDropShadowElement.h:
- svg/SVGFEGaussianBlurElement.cpp:
(WebCore::SVGFEGaussianBlurElement::outsets const):
- svg/SVGFEGaussianBlurElement.h:
- svg/SVGFEOffsetElement.cpp:
(WebCore::SVGFEOffsetElement::outsets const):
- svg/SVGFEOffsetElement.h:
- svg/SVGFilterPrimitiveStandardAttributes.h:
(WebCore::SVGFilterPrimitiveStandardAttributes::outsets const):
- svg/graphics/filters/SVGFilter.cpp:
(WebCore::SVGFilter::create):
(WebCore::SVGFilter::calculateResolvedSize):
(WebCore::SVGFilter::resolvedSize const):
(WebCore::SVGFilter::outsets const): Deleted.
- svg/graphics/filters/SVGFilter.h:
- svg/graphics/filters/SVGFilterBuilder.cpp:
(WebCore::SVGFilterBuilder::SVGFilterBuilder):
(WebCore::appendEffectToExpression):
(WebCore::appendGraphToExpression):
(WebCore::SVGFilterBuilder::buildFilterExpression):
(WebCore::calculatePrimitiveOutsets):
(WebCore::calculateGraphOutsets):
(WebCore::SVGFilterBuilder::calculateFilterOutsets):
(WebCore::SVGFilterBuilder::setupBuiltinEffects): Deleted.
(WebCore::SVGFilterBuilder::buildFilterEffects): Deleted.
(WebCore::SVGFilterBuilder::sourceGraphic const): Deleted.
(WebCore::SVGFilterBuilder::sourceAlpha const): Deleted.
(WebCore::SVGFilterBuilder::addNamedEffect): Deleted.
(WebCore::SVGFilterBuilder::namedEffect const): Deleted.
(WebCore::SVGFilterBuilder::namedEffects const): Deleted.
(WebCore::SVGFilterBuilder::setEffectInputs): Deleted.
(WebCore::SVGFilterBuilder::appendEffectToEffectRenderer): Deleted.
(WebCore::SVGFilterBuilder::effectGeometry const): Deleted.
(WebCore::SVGFilterBuilder::buildEffectExpression const): Deleted.
(WebCore::SVGFilterBuilder::buildExpression const): Deleted.
- svg/graphics/filters/SVGFilterBuilder.h:
(WebCore::SVGFilterBuilder::targetBoundingBox const):
(WebCore::SVGFilterBuilder::primitiveUnits const):
(WebCore::SVGFilterBuilder::effectByRenderer):
(WebCore::SVGFilterBuilder::setTargetBoundingBox): Deleted.
(WebCore::SVGFilterBuilder::setPrimitiveUnits): Deleted.
- svg/graphics/filters/SVGFilterExpression.h:
- svg/graphics/filters/SVGFilterGraph.h: Added.
(WebCore::SVGFilterGraph::SVGFilterGraph):
(WebCore::SVGFilterGraph::sourceGraphic const):
(WebCore::SVGFilterGraph::sourceAlpha const):
(WebCore::SVGFilterGraph::addNamedNode):
(WebCore::SVGFilterGraph::getNamedNode const):
(WebCore::SVGFilterGraph::getNamedNodes const):
(WebCore::SVGFilterGraph::setNodeInputs):
(WebCore::SVGFilterGraph::getNodeInputs const):
(WebCore::SVGFilterGraph::lastNode const):
- 7:03 PM Changeset in webkit [292363] by
-
- 2 edits in trunk/Source/WebKit
Remove lots of WebCore:: in RemoteLayerBackingStore
https://bugs.webkit.org/show_bug.cgi?id=238765
Reviewed by Wenson Hsieh.
Add a
using namespace WebCore
to RemoteLayerBackingStore. WebCore::IOSurface still needs qualification.
- Shared/RemoteLayerTree/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStore::ensureBackingStore):
(WebKit::RemoteLayerBackingStore::encode const):
(WebKit::RemoteLayerBackingStore::setNeedsDisplay):
(WebKit::RemoteLayerBackingStore::pixelFormat const):
(WebKit::RemoteLayerBackingStore::bytesPerPixel const):
(WebKit::RemoteLayerBackingStore::swapToValidFrontBuffer):
(WebKit::RemoteLayerBackingStore::applySwappedBuffers):
(WebKit::RemoteLayerBackingStore::prepareToDisplay):
(WebKit::RemoteLayerBackingStore::dirtyRepaintCounterIfNecessary):
(WebKit::RemoteLayerBackingStore::ensureFrontBuffer):
(WebKit::RemoteLayerBackingStore::prepareBuffers):
(WebKit::RemoteLayerBackingStore::paintContents):
(WebKit::RemoteLayerBackingStore::drawInContext):
(WebKit::RemoteLayerBackingStore::enumerateRectsBeingDrawn):
(WebKit::RemoteLayerBackingStore::applyBackingStoreToLayer):
(WebKit::RemoteLayerBackingStore::takePendingFlushers):
(WebKit::RemoteLayerBackingStore::setBufferVolatile):
(WebKit::RemoteLayerBackingStore::setBufferNonVolatile):
(WebKit::RemoteLayerBackingStore::setFrontBufferNonVolatile):
(WebKit::RemoteLayerBackingStore::bufferForType const):
- 6:48 PM Changeset in webkit [292362] by
-
- 2 edits in trunk/LayoutTests
REGRESSION(r291770-r291762): [ iOS ] css3/background/background-repeat-round-auto1.html is a flaky image failure
Unreviewed test gardening.
- platform/ios/TestExpectations:
- 6:46 PM Changeset in webkit [292361] by
-
- 9 edits in trunk/Source
Use Ref and RefPtr pattern when handling document close calls
https://bugs.webkit.org/show_bug.cgi?id=238747
Reviewed by Sam Weinig.
Ensure document object remains for the scope of the call.
Source/WebCore:
- inspector/DOMPatchSupport.cpp:
(WebCore::DOMPatchSupport::patchDocument):
- loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::stopLoading):
- loader/FrameLoader.cpp:
(WebCore::FrameLoader::init):
(WebCore::FrameLoader::clear):
- loader/cache/CachedSVGDocument.cpp:
(WebCore::CachedSVGDocument::finishLoading):
- loader/cache/CachedSVGFont.cpp:
(WebCore::CachedSVGFont::ensureCustomFontData):
- xml/XMLHttpRequest.cpp:
Source/WebKitLegacy/win:
- DOMHTMLClasses.cpp:
(DOMHTMLDocument::close):
- 6:41 PM Changeset in webkit [292360] by
-
- 3 edits in trunk/Source/WebKit
Remove lots of WebCore:: in RemoteRenderingBackend
https://bugs.webkit.org/show_bug.cgi?id=238763
Reviewed by Wenson Hsieh.
RemoteRenderingBackend already has a
using namespace WebCore
so remove the explicit namespacing.
Also clean up some includes in the header.
- GPUProcess/graphics/RemoteRenderingBackend.cpp:
(WebKit::RemoteRenderingBackend::getPixelBufferForImageBuffer):
(WebKit::RemoteRenderingBackend::getPixelBufferForImageBufferWithNewMemory):
(WebKit::RemoteRenderingBackend::putPixelBufferForImageBuffer):
(WebKit::RemoteRenderingBackend::getDataURLForImageBuffer):
(WebKit::RemoteRenderingBackend::getDataURLForImageBufferWithQualifiedIdentifier):
(WebKit::RemoteRenderingBackend::getDataForImageBuffer):
(WebKit::RemoteRenderingBackend::getShareableBitmapForImageBuffer):
(WebKit::RemoteRenderingBackend::getShareableBitmapForImageBufferWithQualifiedIdentifier):
(WebKit::RemoteRenderingBackend::cacheFont):
(WebKit::handleFromBuffer):
(WebKit::RemoteRenderingBackend::markSurfacesVolatile):
- GPUProcess/graphics/RemoteRenderingBackend.h:
- 6:33 PM Changeset in webkit [292359] by
-
- 2 edits in trunk/LayoutTests
REGRESSION(r290676?): [ iOS ] media/video-played-ranges-1.html is a flaky text failure
Unreviewed test gardening.
- platform/ios/TestExpectations:
- 5:34 PM Changeset in webkit [292358] by
-
- 13 edits in trunk/Source
Remove VP8/9 and WebM-related system feature flags
https://bugs.webkit.org/show_bug.cgi?id=238757
Reviewed by Eric Carlson.
Source/WebKit:
- FeatureFlags/WebKit-appletvos.plist:
- FeatureFlags/WebKit-ios.plist:
- FeatureFlags/WebKit-macos.plist:
- FeatureFlags/WebKit-watchos.plist:
- Shared/WebPreferencesDefaultValues.cpp:
(WebKit::defaultWebMFormatReaderEnabled): Deleted.
(WebKit::defaultVP8DecoderEnabled): Deleted.
(WebKit::defaultVP9DecoderEnabled): Deleted.
(WebKit::defaultWebMParserEnabled): Deleted.
- Shared/WebPreferencesDefaultValues.h:
Source/WebKitLegacy/mac:
- WebView/WebPreferencesDefaultValues.h:
Source/WTF:
- Scripts/Preferences/WebPreferences.yaml:
- Scripts/Preferences/WebPreferencesExperimental.yaml:
Demote these to standard preferences, and stop using system feature flags to control their defaults.
- 4:42 PM Changeset in webkit [292357] by
-
- 2 edits in trunk/LayoutTests
[ iOS ] http/wpt/mediarecorder/mute-tracks.html is a flaky crash
Unreviewed test gardening.
- platform/ios/TestExpectations:
- 4:21 PM Changeset in webkit [292356] by
-
- 5 edits in trunk/Source/WebKit
[macOS] [WK2] Add plumbing to extract video frames in element fullscreen
https://bugs.webkit.org/show_bug.cgi?id=238715
rdar://91216152
Reviewed by Tim Horton.
Implement (begin|cancel)ElementFullscreenVideoExtraction on macOS, leaving empty stubs for non-internal builds.
- UIProcess/Cocoa/WebViewImpl.h:
- UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::beginElementFullscreenVideoExtraction):
(WebKit::WebViewImpl::cancelElementFullscreenVideoExtraction):
- UIProcess/mac/PageClientImplMac.h:
- UIProcess/mac/PageClientImplMac.mm:
(WebKit::PageClientImpl::beginElementFullscreenVideoExtraction):
(WebKit::PageClientImpl::cancelElementFullscreenVideoExtraction):
- 4:06 PM Changeset in webkit [292355] by
-
- 6 edits in trunk/Source/WebKit
Remove the 'general_directory_for_storage' system feature flag
https://bugs.webkit.org/show_bug.cgi?id=238762
Reviewed by Sihui Liu.
- FeatureFlags/WebKit-appletvos.plist:
- FeatureFlags/WebKit-ios.plist:
- FeatureFlags/WebKit-macos.plist:
- FeatureFlags/WebKit-watchos.plist:
- UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:
(WebKit::WebsiteDataStore::defaultShouldUseCustomStoragePaths):
- 3:28 PM Changeset in webkit [292354] by
-
- 9 edits in trunk/Source
Remove the 'sw_vp9_decoder_on_battery' system feature flag
https://bugs.webkit.org/show_bug.cgi?id=238761
Reviewed by Eric Carlson.
Source/WebKit:
- FeatureFlags/WebKit-appletvos.plist:
- FeatureFlags/WebKit-ios.plist:
- FeatureFlags/WebKit-macos.plist:
- FeatureFlags/WebKit-watchos.plist:
- Shared/WebPreferencesDefaultValues.cpp:
(WebKit::defaultVP9SWDecoderEnabledOnBattery): Deleted.
Source/WTF:
- Scripts/Preferences/WebPreferencesExperimental.yaml:
Switch this to a standard experimental feature.
Also, remove the WebKitLegacy case, as it is not used there.
- 3:24 PM Changeset in webkit [292353] by
-
- 9 edits in trunk/Source
Remove the 'async frame and overflow scrolling' system feature flag
https://bugs.webkit.org/show_bug.cgi?id=238758
Reviewed by Simon Fraser.
Source/WebKit:
- FeatureFlags/WebKit-appletvos.plist:
- FeatureFlags/WebKit-ios.plist:
- FeatureFlags/WebKit-macos.plist:
- FeatureFlags/WebKit-watchos.plist:
- Shared/WebPreferencesDefaultValues.cpp:
(WebKit::defaultAsyncFrameAndOverflowScrollingEnabled): Deleted.
(WebKit::defaultAsyncFrameScrollingEnabled): Deleted.
(WebKit::defaultAsyncOverflowScrollingEnabled): Deleted.
- Shared/WebPreferencesDefaultValues.h:
Source/WTF:
- Scripts/Preferences/WebPreferencesInternal.yaml:
- 3:22 PM Changeset in webkit [292352] by
-
- 13 edits in trunk/Source
Remove the incremental_pdf system feature flag
https://bugs.webkit.org/show_bug.cgi?id=238754
Reviewed by Wenson Hsieh.
Source/WebKit:
- FeatureFlags/WebKit-appletvos.plist:
- FeatureFlags/WebKit-ios.plist:
- FeatureFlags/WebKit-macos.plist:
- FeatureFlags/WebKit-watchos.plist:
- Shared/WebPreferencesDefaultValues.cpp:
- Shared/WebPreferencesDefaultValues.h:
(WebKit::defaultIncrementalPDFEnabled): Deleted.
Remove the incremental_pdf system feature flag in favor of a traditional WebKit preference.
Source/WebKitLegacy/mac:
- WebView/WebPreferencesDefaultValues.mm:
- WebView/WebPreferencesDefaultValues.h:
(WebKit::defaultIncrementalPDFEnabled): Deleted.
Source/WTF:
- Scripts/Preferences/WebPreferences.yaml:
- Scripts/Preferences/WebPreferencesExperimental.yaml:
Demote incremental PDF rendering from a developer-exposed experimental feature
to a standard web preference now that it's been on and shipping for a while.
- 3:08 PM Changeset in webkit [292351] by
-
- 8 edits in trunk/Source
Remove the 'RB_full_manage_WK_jetsam' system feature flag and simplify adjacent logic
https://bugs.webkit.org/show_bug.cgi?id=238760
Reviewed by Chris Dumez.
Source/WebKit:
- FeatureFlags/WebKit-appletvos.plist:
- FeatureFlags/WebKit-ios.plist:
- FeatureFlags/WebKit-macos.plist:
- FeatureFlags/WebKit-watchos.plist:
- UIProcess/Launcher/cocoa/ProcessLauncherCocoa.mm:
(WebKit::shouldLeakBoost):
Source/WTF:
- wtf/PlatformHave.h:
- 3:04 PM Changeset in webkit [292350] by
-
- 3 edits2 adds in trunk
intersectsWithAncestor should take fragmented boxes into account.
https://bugs.webkit.org/show_bug.cgi?id=238648
Reviewed by Dean Jackson.
Source/WebCore:
Test: compositing/backing/backing-store-columns-inside-position-fixed.html
- rendering/RenderLayerBacking.cpp:
(WebCore::intersectsWithAncestor):
Use boundingBox() for intersectsWithAncestor, so that we can explicitly request the box that contains
all fragment boxes.
LayoutTests:
- compositing/backing/backing-store-columns-inside-position-fixed-expected.txt: Added.
- compositing/backing/backing-store-columns-inside-position-fixed.html: Added.
Adds new test that scrolls content split into columns until the first column is offscreen, to confirm
that we still have a backing store.
- 3:01 PM Changeset in webkit [292349] by
-
- 5 edits in trunk/Source/WebKit
Remove some unused system feature flags
https://bugs.webkit.org/show_bug.cgi?id=238755
Reviewed by Wenson Hsieh.
- FeatureFlags/WebKit-appletvos.plist:
- FeatureFlags/WebKit-ios.plist:
- FeatureFlags/WebKit-macos.plist:
- FeatureFlags/WebKit-watchos.plist:
Neither of these flags is read anywhere, so they don't need to be in the plist.
- 2:56 PM Changeset in webkit [292348] by
-
- 4 edits in branches/safari-613-branch
Cherry-pick r292242. rdar://91259284
Change one-shot maxTimerNestingLevel from 5 to 10
https://bugs.webkit.org/show_bug.cgi?id=237168
Reviewed by Sam Weinig, Saam Barati, and Cameron McCormack .
Source/WebCore:
Recently, we found from Chromium change[1] that changing this from 5 to 10 offers 10% Speedometer2 improvement
because Speedometer2's setTimeout nesting level is typically 7-8. We discussed with folks including Chris, Maciej,
Saam, and Cameron and for now, we increase this from 5 to 10 to align to Blink's change to keep these kind of web
content fast. This is not aligned to the spec, and currently, we only apply it to one-shot timer.
[1]: https://chromium-review.googlesource.com/c/chromium/src/+/3473463
page/DOMTimer.cpp:
(WebCore::DOMTimer::intervalClampedToMinimum const):
(WebCore::DOMTimer::alignedFireTime const):
LayoutTests:
fast/dom/timer-increase-min-interval.html:
fast/dom/timer-throttling-hidden-page-expected.txt:
fast/dom/timer-throttling-hidden-page.html:
- 2:56 PM Changeset in webkit [292347] by
-
- 11 edits5 adds in branches/safari-613-branch
Cherry-pick r291998. rdar://91259284
Remove the 1ms minimum for setTimeout
https://bugs.webkit.org/show_bug.cgi?id=221124
<rdar://problem/73852354>
Reviewed by Sam Weinig.
LayoutTests/imported/w3c:
web-platform-tests/html/webappapis/timers/zero-settimeout.any-expected.txt:
web-platform-tests/html/webappapis/timers/zero-settimeout.any.html:
web-platform-tests/html/webappapis/timers/zero-settimeout.any.js:
(async_test):
web-platform-tests/html/webappapis/timers/zero-settimeout.any.worker-expected.txt:
web-platform-tests/html/webappapis/timers/zero-settimeout.any.worker.html:
New test checking that 0ms and 1ms timeouts are called in the right
order.
web-platform-tests/FileAPI/file/File-constructor.any.worker-expected.txt:
web-platform-tests/html/webappapis/microtask-queuing/queue-microtask-exceptions.any.worker-expected.txt:
web-platform-tests/workers/interfaces/WorkerUtils/importScripts/report-error-cross-origin.sub.any.worker-expected.txt:
web-platform-tests/workers/interfaces/WorkerUtils/importScripts/report-error-redirect-to-cross-origin.sub.any.worker-expected.txt:
web-platform-tests/workers/interfaces/WorkerUtils/importScripts/report-error-same-origin.sub.any.worker-expected.txt:
web-platform-tests/workers/interfaces/WorkerUtils/importScripts/report-error-setTimeout-cross-origin.sub.any.worker-expected.txt:
web-platform-tests/workers/interfaces/WorkerUtils/importScripts/report-error-setTimeout-redirect-to-cross-origin.sub.any.worker-expected.txt:
web-platform-tests/workers/interfaces/WorkerUtils/importScripts/report-error-setTimeout-same-origin.sub.any.worker-expected.txt:
Disable console output in some worker tests where the reduced timeout
would cause intemittent failures due to the console message sometimes
not making it to the test output in time.
Source/WebCore:
This patch removes the 1ms minimum for setTimeout. The HTML spec makes
no mention of such a minimum, and Firefox and Chrome do not enforce
this minimum. Removing this for setTimeout results in a 0.7-2.1%
improvement on Speedometer, depending on platform and hardware.
The WPT added here demonstrates how this change can affect pages: if a
page schedules a 1ms and then a 0ms timeout in the same turn of the
event loop, then with this patch they will now be fired in the reverse
order. Since Firefox and Chrome do not impose a 1ms minimum, this
reduces the risk of this being a compatbility problem.
Scheduling a 0ms timeout will cause its callback to be called the next
time around the event loop. Other, non-timer queued tasks, will be
pre-empted. This behavior is permitted by the HTML spec, since the
event loop processing model[1] states that the implementation can
choose which task source to service, and timer callbacks are
dispatched using their own task source. Due to the way the SharedTimer
is called, we don't need to literally dispatch a task with a new
TaskSource::Timer source. (If we decided later to make a different
about whether to service timer callbacks before tasks from all other
task sources, we might need to.)
Not addressing the setTimeout 1ms minimum here, which should likely also
be removed.
While we're here, settle on "one shot" rather rather than "single
shot" as the term for timers that fire once.
[1] https://html.spec.whatwg.org/#event-loop-processing-model
Tests: imported/w3c/web-platform-tests/html/webappapis/timers/zero-settimeout.any.html
imported/w3c/web-platform-tests/html/webappapis/timers/zero-settimeout.any.worker.html
page/DOMTimer.h:
page/DOMTimer.cpp:
(WebCore::DOMTimer::DOMTimer):
(WebCore::DOMTimer::install):
(WebCore::DOMTimer::fired):
(WebCore::DOMTimer::updateTimerIntervalIfNecessary):
(WebCore::DOMTimer::intervalClampedToMinimum const):
LayoutTests:
TestExpectations: Disable console output in some worker tests where
the reduced timeout would cause intemittent failures due to the
console message sometimes not making it to the test output in time.
js/script-tests/weakref-finalizationregistry.js:
(turnEventLoop): Use a timeout of 1ms instead of 0ms so that
the deferred work task that calls the JS FinalizationRegistry
callback gets a chance to run before we continue on to the
assertion that it was run.
- 2:56 PM Changeset in webkit [292346] by
-
- 2 adds in branches/safari-613-branch/Source/WebCore/html/parser
Add HTMLNameCache.h/cpp from r289991. Prior cherry-pick somehow missed it.
- 2:56 PM Changeset in webkit [292345] by
-
- 9 edits2 adds in branches/safari-613-branch
Cherry-pick r291889. rdar://91259284
Enable PGO when building for release and production
https://bugs.webkit.org/show_bug.cgi?id=238119
rdar://90182309
Reviewed by Alexey Proskuryakov and Geoff Garen.
Source/JavaScriptCore:
See WebCore/ChangeLog for more information.
Configurations/Base.xcconfig:
Configurations/JavaScriptCore.xcconfig:
JavaScriptCore.xcodeproj/project.pbxproj:
Source/WebCore:
Attempt to re-land support for compiling against profiling data, after it was reverted due to the profiling data
files being too large. We mitigate this by instead storing sparse profdata files as compressed files in
WebKitAdditions through git lfs, such that they don't cause the repo to grow significantly each time we update
profiling data.
At build time, we then introduce new build phase scripts to the JavaScriptCore, WebCore and WebKit builds to
decompress their respective .profdata.compressed files into .profdata files in the build, using
compression_tool. We compile against these profdata files when building for release and production
configurations, via the -fprofile-instr-use flag.
In the case where the *.profdata.compressed files are non-existent or haven't been downloaded yet, we instead
fall back to using an empty profiling data file, but only on non-production builds; this allows us to continue
passing in the -fprofile-instr-use flag, without running into build failures.
Note that we intentionally require production builds to use the (real) profiling data, and explicitly fail the
build with a specific error message in the case where the profiles are missing.
Additionally, note that in order to check for and deal with the case where the *.profdata.compressed files are
only undownloaded git-lfs stubs, we not only check whether or not the profdata.compressed file exists, but
also whether or not the file size is at least an arbitrary cutoff of 4 KB (which should already be an order of
magnitude larger than the git-lfs stub). While mostly arbitrary, I chose this cutoff due to the fact that it's
very close to the size of the Empty.profdata placeholder file in Tools; in practice, we should expect the
profiles for WebKit, WebCore and JavaScriptCore to be much, much larger than this empty file.
Configurations/Base.xcconfig:
Configurations/WebCore.xcconfig:
WebCore.xcodeproj/project.pbxproj:
Source/WebKit:
See WebCore/ChangeLog for more information.
Configurations/Base.xcconfig:
Configurations/BaseTarget.xcconfig:
WebKit.xcodeproj/project.pbxproj:
Tools:
Add an empty profiling data file that can be used as a fallback only for release (non-production) builds, when
the JavaScriptCore, WebCore or WebKit profiling data hasn't been locally downloaded.
Profiling/Empty.profdata: Added.
- 2:56 PM Changeset in webkit [292344] by
-
- 6 edits in branches/safari-613-branch/Source/WebCore
Cherry-pick r291981. rdar://91259284
Speed up Element::removedFromAncestor()
https://bugs.webkit.org/show_bug.cgi?id=238404
Reviewed by Geoffrey Garen.
Speed up Element::removedFromAncestor() by inlining some of the functions it is calling.
This is a confirmed 1.5-2% progression on Speedometer on iMac 20,1.
dom/Element.cpp:
(WebCore::Element::removedFromAncestor):
(WebCore::Element::clearBeforePseudoElementSlow):
(WebCore::Element::clearAfterPseudoElementSlow):
(WebCore::Element::setSavedLayerScrollPositionSlow):
(WebCore::Element::clearBeforePseudoElement): Deleted.
(WebCore::Element::clearAfterPseudoElement): Deleted.
(WebCore::Element::setSavedLayerScrollPosition): Deleted.
dom/Element.h:
(WebCore::Element::setSavedLayerScrollPosition):
(WebCore::Element::clearBeforePseudoElement):
(WebCore::Element::clearAfterPseudoElement):
page/PointerCaptureController.cpp:
(WebCore::PointerCaptureController::elementWasRemovedSlow):
(WebCore::PointerCaptureController::elementWasRemoved): Deleted.
page/PointerCaptureController.h:
(WebCore::PointerCaptureController::elementWasRemoved):
page/PointerLockController.cpp:
(WebCore::PointerLockController::elementWasRemovedInternal):
(WebCore::PointerLockController::elementWasRemoved): Deleted.
page/PointerLockController.h:
(WebCore::PointerLockController::elementWasRemoved):
- 2:56 PM Changeset in webkit [292343] by
-
- 2 edits in branches/safari-613-branch/Source/WebCore
Cherry-pick r291964. rdar://91259284
Optimize toJS() for HTMLElements
https://bugs.webkit.org/show_bug.cgi?id=238426
Reviewed by Yusuke Suzuki.
Optimize toJS() for HTMLElements. Previously, the more generic Element's toJS() would be called,
which would have to do more checks.
This is a 0.6% progression on Speedometer 2.0 on MacBook Air 10,1 (AS).
bindings/js/JSHTMLElementCustom.cpp:
(WebCore::toJS):
(WebCore::toJSNewlyCreated):
html/HTMLElement.idl:
- 2:56 PM Changeset in webkit [292342] by
-
- 5 edits in branches/safari-613-branch/Source/WebCore
Cherry-pick r291933. rdar://91259284
Simplify / Optimize JSNodeOwner::isReachableFromOpaqueRoots()
https://bugs.webkit.org/show_bug.cgi?id=238380
Reviewed by Geoffrey Garen.
Drop checks specific to HTMLAudioElement and HTMLImageElement from
JSNodeOwner::isReachableFromOpaqueRoots() so that other Node wrappers
that are not audio or image elements do not have to pay the cost.
In the HTMLAudioElement case, HTMLAudioElement already subclasses HTMLMediaElement which
is an ActiveDOMObject and HTMLMediaElement::virtualHasPendingActivity() already takes
care of keeping the JS wrapper alive is there is audio playing.
For HTMLImageElement, I made it subclass ActiveDOMObject so that the JSHTMLImageElement
wrapper is now calling HTMLImageElement::hasPendingActivity() instead of every JS Node
wrapper via JSNodeOwner::isReachableFromOpaqueRoots().
bindings/js/JSNodeCustom.cpp:
(WebCore::isReachableFromDOM):
html/HTMLImageElement.cpp:
(WebCore::HTMLImageElement::HTMLImageElement):
(WebCore::HTMLImageElement::create):
(WebCore::HTMLImageElement::createForLegacyFactoryFunction):
(WebCore::HTMLImageElement::activeDOMObjectName const):
(WebCore::HTMLImageElement::virtualHasPendingActivity const):
(WebCore::HTMLImageElement::hasPendingActivity const): Deleted.
html/HTMLImageElement.h:
html/HTMLImageElement.idl:
html/ImageDocument.cpp:
(WebCore::ImageDocumentElement::create):
- 2:56 PM Changeset in webkit [292341] by
-
- 1 edit in branches/safari-613-branch/Source/WebCore/dom/EventListenerMap.h
Cherry-pick r291866. rdar://91259284
Reduce EventListenerVector's minimum capacity from 16 to 2
https://bugs.webkit.org/show_bug.cgi?id=238374
Reviewed by Geoffrey Garen.
Reduce EventListenerVector's minimum capacity from 16 to 2 to save memory and get a small speedup on Speedometer.
Very few event listeners are registered for a given type in the common case so eagerly allocating enough memory for 16 is wasteful.
This is a confirmed 0.4% progression on Speedometer according to A/B bots.
dom/EventListenerMap.h:
- 2:56 PM Changeset in webkit [292340] by
-
- 4 edits in branches/safari-613-branch/Source/WebCore/rendering
Cherry-pick r291793. rdar://91259284
Devirtualize RenderText::width
https://bugs.webkit.org/show_bug.cgi?id=238285
Reviewed by Antti Koivisto.
RenderCombineText handling is moved to RenderText (we already handle combine text in RenderText::widthFromCache).
rendering/RenderCombineText.cpp:
(WebCore::RenderCombineText::combineTextIfNeeded): These are all non-text-combine callsites.
(WebCore::RenderCombineText::width const): Deleted.
rendering/RenderCombineText.h:
rendering/RenderText.cpp:
(WebCore::combineTextWidth): RenderCombineText::combinedTextWidth returns the same value as RenderCombineText::width.
(WebCore::RenderText::widthFromCache const):
(WebCore::RenderText::width const):
rendering/RenderText.h:
- 2:56 PM Changeset in webkit [292339] by
-
- 4 edits in branches/safari-613-branch/Source/WebCore/style
Cherry-pick r291790. rdar://91259284
Allow styles with appearance in matched declaration cache
https://bugs.webkit.org/show_bug.cgi?id=238247
Reviewed by Antoine Quint.
Improve cache efficiency by allowing styles with appearance (typically form controls) to be cached.
In Speedometer this improves the cache hit rate ~75% -> 94%.
style/MatchedDeclarationsCache.cpp:
(WebCore::Style::MatchedDeclarationsCache::isCacheable):
Remove appearance check.
(WebCore::Style::MatchedDeclarationsCache::add):
Also cache the UA style for styles with appearance.
(WebCore::Style::MatchedDeclarationsCache::remove):
style/MatchedDeclarationsCache.h:
style/StyleResolver.cpp:
(WebCore::Style::Resolver::applyMatchedProperties):
Also simplify the case where inherited properties affect resolution of other properties by
kicking out the existing entry. This also makes the second attempt cacheable.
style/StyleResolver.h:
- 2:56 PM Changeset in webkit [292338] by
-
- 4 edits in branches/safari-613-branch/Source/WebCore/dom
Cherry-pick r291538. rdar://91259284
Optimize EventTarget::visitJSEventListeners()
https://bugs.webkit.org/show_bug.cgi?id=238116
Reviewed by Darin Adler.
This was confirmed by A/B bots to be a 1-1.5% progression on Speedometer on
iMac 20,1 (Intel).
dom/EventListenerMap.cpp:
(WebCore::EventListenerMap::clear):
(WebCore::EventListenerMap::replace):
(WebCore::EventListenerMap::add):
(WebCore::EventListenerMap::remove):
(WebCore::EventListenerMap::removeFirstEventListenerCreatedFromMarkup):
(WebCore::EventListenerMap::assertNoActiveIterators const): Deleted.
(WebCore::EventListenerMap::EventListenerMap): Deleted.
(WebCore::EventListenerIterator::EventListenerIterator): Deleted.
(WebCore::EventListenerIterator::~EventListenerIterator): Deleted.
(WebCore::EventListenerIterator::nextListener): Deleted.
dom/EventListenerMap.h:
(WebCore::EventListenerMap::visitJSEventListeners):
(): Deleted.
(WebCore::EventListenerMap::assertNoActiveIterators const): Deleted.
dom/EventTarget.cpp:
(WebCore::EventTarget::visitJSEventListeners): Deleted.
dom/EventTarget.h:
(WebCore::EventTarget::visitJSEventListeners):
- 2:56 PM Changeset in webkit [292337] by
-
- 1 edit in branches/safari-613-branch/Source/WebCore/html/parser/AtomHTMLToken.h
Cherry-pick r291508. rdar://91259284
Optimize AtomHTMLToken::initializeAttributes()
https://bugs.webkit.org/show_bug.cgi?id=238074
Reviewed by Geoffrey Garen.
Use a HashSet to find duplicate attributes instead of doing a linear search.
This is a confirmed 1.2% progression on Speedometer on iMac20,1 via A/B bots.
html/parser/AtomHTMLToken.h:
(WebCore::AtomHTMLToken::initializeAttributes):
- 2:56 PM Changeset in webkit [292336] by
-
- 2 edits in branches/safari-613-branch/Source/WebCore/dom
Cherry-pick r291495. rdar://91259284
Avoid extra pointer dereference in EventListenerMap::m_entries
https://bugs.webkit.org/show_bug.cgi?id=238075
Reviewed by Geoffrey Garen.
This is a confirmed 0.5-0.8% progression on Speedometer according to A/B
bots.
dom/EventListenerMap.cpp:
(WebCore::EventListenerMap::clear):
(WebCore::EventListenerMap::add):
(WebCore::EventListenerMap::remove):
(WebCore::EventListenerMap::find):
(WebCore::EventListenerMap::removeFirstEventListenerCreatedFromMarkup):
(WebCore::EventListenerMap::copyEventListenersNotCreatedFromMarkupToTarget):
(WebCore::EventListenerIterator::nextListener):
(WebCore::EventListenerMap::find const): Deleted.
dom/EventListenerMap.h:
(WebCore::EventListenerMap::find const):
- 2:56 PM Changeset in webkit [292335] by
-
- 1 edit in branches/safari-613-branch/Source/JavaScriptCore/Configurations/Base.xcconfig
- 2:56 PM Changeset in webkit [292334] by
-
- 29 edits7 adds in branches/safari-613-branch
Cherry pick r290574 r290639 r291028 r291961.
Patches needed for Cameron's "Make input element UA shadow tree creation lazy" change.
- 2:55 PM Changeset in webkit [292333] by
-
- 1 edit in branches/safari-613-branch/Source/JavaScriptCore/runtime/Options.cpp
Cherry-pick r290405. rdar://91259284
[JSC] Adjust thread number for GC throughput
https://bugs.webkit.org/show_bug.cgi?id=237122
Reviewed by Mark Lam.
Adjust numberOfGCMarkers from 4 to 3 to make GC and main thread througput better on M1 macOS.
3 makes sense since there is also a main thread when they are running concurrently to the
main thread.
It offers 1.2% improvement in Speedometer2 in M1Max MBP and 0.4% improvement in M1 MBP.
| subtest | ms | ms | b / a | pValue (significance using False Discovery Rate) |
| Elm-TodoMVC |107.445000 |102.856667 |0.957296 | 0.000000 (significant) |
| VueJS-TodoMVC |21.571667 |21.805000 |1.010817 | 0.403054 |
| EmberJS-TodoMVC |113.320000 |111.300000 |0.982174 | 0.000027 (significant) |
| BackboneJS-TodoMVC |39.981667 |39.318333 |0.983409 | 0.002346 (significant) |
| Preact-TodoMVC |15.516667 |15.648333 |1.008485 | 0.544754 |
| AngularJS-TodoMVC |117.010000 |115.346667 |0.985785 | 0.000495 (significant) |
| Vanilla-ES2015-TodoMVC |57.790000 |57.176667 |0.989387 | 0.000270 (significant) |
| Inferno-TodoMVC |55.275000 |53.755000 |0.972501 | 0.000000 (significant) |
| Flight-TodoMVC |53.875000 |53.941667 |1.001237 | 0.739556 |
| Angular2-TypeScript-TodoMVC |36.600000 |36.471667 |0.996494 | 0.743761 |
| VanillaJS-TodoMVC |48.058333 |47.671667 |0.991954 | 0.158193 |
| jQuery-TodoMVC |203.433333 |201.878333 |0.992356 | 0.009271 (significant) |
| EmberJS-Debug-TodoMVC |325.058333 |319.848333 |0.983972 | 0.000003 (significant) |
| React-TodoMVC |80.533333 |79.281667 |0.984458 | 0.000011 (significant) |
| React-Redux-TodoMVC |134.738333 |131.801667 |0.978205 | 0.000000 (significant) |
| Vanilla-ES2015-Babel-Webpack-TodoMVC |56.780000 |56.168333 |0.989227 | 0.000514 (significant) |
a mean = 293.86568
b mean = 297.52900
pValue = 0.0266899465
(Bigger means are better.)
1.012 times better
Results ARE significant
runtime/Options.cpp:
(JSC::overrideDefaults):
- 2:55 PM Changeset in webkit [292332] by
-
- 15 edits in branches/safari-613-branch/Source/WebCore/html
Cherry-pick r290086. rdar://91259284
Always use ChildChange::Source::Parser when creating input element UA shadow tree contents
https://bugs.webkit.org/show_bug.cgi?id=236740
Reviewed by Dean Jackson.
When creating an input element's UA shadow tree, we currently use a
ChildChange::Source value that depends on whether the input element
itself was parser- or script-inserted. But since UA shadow trees are
not exposed to content, and we don't have any dependency on the extra
work that inserting using ChildChange::Source::API does, we can use
ChildChange::Source::Parser unconditionally.
Local testing shows this scores a 0.1% Speedometer 2 improvement.
html/BaseDateAndTimeInputType.cpp:
(WebCore::BaseDateAndTimeInputType::createShadowSubtreeAndUpdateInnerTextElementEditability):
html/BaseDateAndTimeInputType.h:
html/ColorInputType.cpp:
(WebCore::ColorInputType::createShadowSubtreeAndUpdateInnerTextElementEditability):
html/ColorInputType.h:
html/FileInputType.cpp:
(WebCore::FileInputType::appendFormData const):
(WebCore::FileInputType::createShadowSubtreeAndUpdateInnerTextElementEditability):
html/FileInputType.h:
html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::createShadowSubtreeAndUpdateInnerTextElementEditability):
html/InputType.cpp:
(WebCore::InputType::createShadowSubtreeAndUpdateInnerTextElementEditability):
html/InputType.h:
html/RangeInputType.cpp:
(WebCore::RangeInputType::createShadowSubtreeAndUpdateInnerTextElementEditability):
html/RangeInputType.h:
html/SearchInputType.cpp:
(WebCore::SearchInputType::createShadowSubtreeAndUpdateInnerTextElementEditability):
html/SearchInputType.h:
html/TextFieldInputType.cpp:
(WebCore::TextFieldInputType::createShadowSubtreeAndUpdateInnerTextElementEditability):
html/TextFieldInputType.h:
- 2:55 PM Changeset in webkit [292331] by
-
- 8 edits in branches/safari-613-branch/Source/WebCore
Cherry-pick r289991. rdar://91259284
Cache an entire attribute QualifiedName when parsing HTML, not just its local name AtomString
https://bugs.webkit.org/show_bug.cgi?id=236570
<rdar://problem/88876545>
Reviewed by Darin Adler.
Bug 229907 added HTMLAtomStringCache, which uses a fast to compute hash
that works well to cache HTML tag names, attribute names, and attribute
values. When AtomHTMLToken initializes its list of Attributes, it uses
HTMLAtomStringCache to look up or create an AtomString for the
attribute's local name, and then creates a QualifiedName to wrap it.
QualifiedName construction involves looking up QualifiedNameCache, which
is a thread-specific cache of QualifiedNameImpl objects. If we make
HTMLAtomStringCache responsible for caching an attribute's QualifiedName
instead of just its local name AtomString, we can avoid the work of
looking up the QualifiedNameCache.
To reflect its broader responsibilities, HTMLAtomStringCache is renamed
to HTMLNameCache.
Doing this results in a 0.2-0.3% improvement on Speedometer 2, and a
0.3-0.4% improvement on PLT5 (with the lower end of those ranges being
on Apple Silicon and the higher end on Intel).
Sources.txt:
WebCore.xcodeproj/project.pbxproj:
dom/QualifiedName.h:
(WebCore::QualifiedName::QualifiedName):
html/parser/AtomHTMLToken.h:
(WebCore::AtomHTMLToken::initializeAttributes):
(WebCore::AtomHTMLToken::AtomHTMLToken):
html/parser/HTMLAtomStringCache.h: Removed.
(WebCore::HTMLAtomStringCache::makeTagOrAttributeName): Deleted.
(WebCore::HTMLAtomStringCache::makeAttributeValue): Deleted.
(WebCore::HTMLAtomStringCache::clear): Deleted.
(WebCore::HTMLAtomStringCache::make): Deleted.
(WebCore::HTMLAtomStringCache::cacheSlot): Deleted.
html/parser/HTMLNameCache.cpp: Renamed from Source/WebCore/html/parser/HTMLAtomStringCache.cpp.
(WebCore::HTMLNameCache::atomStringCache):
(WebCore::HTMLNameCache::qualifiedNameCache):
html/parser/HTMLNameCache.h: Added.
(WebCore::HTMLNameCache::makeTagName):
(WebCore::HTMLNameCache::makeAttributeQualifiedName):
(WebCore::HTMLNameCache::makeAttributeValue):
(WebCore::HTMLNameCache::clear):
(WebCore::HTMLNameCache::makeAtomString):
(WebCore::HTMLNameCache::makeQualifiedName):
(WebCore::HTMLNameCache::slotIndex):
(WebCore::HTMLNameCache::atomStringCacheSlot):
(WebCore::HTMLNameCache::qualifiedNameCacheSlot):
page/MemoryRelease.cpp:
(WebCore::releaseNoncriticalMemory):
page/cocoa/MemoryReleaseCocoa.mm:
(WebCore::jettisonExpensiveObjectsOnTopLevelNavigation):
- 2:55 PM Changeset in webkit [292330] by
-
- 2 edits in branches/safari-613-branch/Source/WebCore/rendering
Cherry-pick r289692. rdar://91259284
Make WidgetHierarchyUpdatesSuspensionScope cheaper if it has nothing to do
https://bugs.webkit.org/show_bug.cgi?id=236486
Reviewed by Simon Fraser.
With content that does a lot of DOM manipulation, we can create and
destroy a WidgetHierarchyUpdatesSuspensionScope on the stack many times.
When this object has nothing to do, it calls an out of line function.
This patch pulls out the check for whether it needs to call
moveWidgets() into the inline destructor.
This is a 1% saving on the jQuery-TodoMVC subtest of Speedometer 2,
though the effect on the top line score is minimal.
rendering/RenderWidget.cpp:
(WebCore::WidgetHierarchyUpdatesSuspensionScope::moveWidgets):
rendering/RenderWidget.h:
(WebCore::WidgetHierarchyUpdatesSuspensionScope::~WidgetHierarchyUpdatesSuspensionScope):
(WebCore::WidgetHierarchyUpdatesSuspensionScope::scheduleWidgetToMove):
- 2:55 PM Changeset in webkit [292329] by
-
- 1 edit in branches/safari-613-branch/Source/WebCore/html/InputType.cpp
Cherry-pick r289691. rdar://91259284
Look up InputTypeFactoryMap with an ASCII lowercase string instead of using a ASCIICaseInsensitiveHash
https://bugs.webkit.org/show_bug.cgi?id=236532
Reviewed by Myles C. Maxfield.
InputType::create looks up the InputTypeFactoryMap based on the
AtomString value of the <input type> attribute. The HashMap uses an
ASCIICaseInsensitiveHash, but the AtomStrings stored in the map are all
ASCII lowercase to begin with. This means that we spend time doing an
ASCII case insensitive hash computation on the query string. Most
content already supplies an ASCII lowercase type value, so it's less
work to ASCII lowercase the type value and then look up the HashMap
using the regular hash for AtomStrings (i.e., pulling the hash out of
AtomString).
Doing this is a 0.5% improvement on a couple of Speedometer 2 subtests,
and a 0.1% improvement to the overall score.
html/InputType.cpp:
(WebCore::InputType::create):
- 2:55 PM Changeset in webkit [292328] by
-
- 8 edits in branches/safari-613-branch/Source/JavaScriptCore
Cherry-pick r289359. rdar://91259284
[JSC] Convert JSString's non-atomic WTF::String to atomic string while concurrent compilers / heap threads run
https://bugs.webkit.org/show_bug.cgi?id=236262
Reviewed by Saam Barati.
Inspired from r289177. This patch introduces a new protocol which allows us to replace JSString's underlying non-atomic String
to atomic String if we once call toIdentifier / toAtomString.
We had a problem that,
We have a JSString, which has a "test" WTF::String.
We already have "test" atomic string in the table.
Then, when we call JSString::toIdentifier, we know that there is an atomic "test" string, but we cannot replace the current JSString's WTF::String because it can be accessed concurrently from concurrent compilers and GC heap helpers.
Thus, JSString keeps non atomic "test" WTF::String.
But this means that we need to lookup atom string table every time we would like to get an atom string from this JSString.
So, in this patch, we introduce a new protocol, which allows swapping existing WTF::String with an atom string.
When we found that JSString has a WTF::String and we already have atom string in the table with the same content (when calling
toIdentifier / toAtomString), we attempt to replace JSString's WTF::String with the atom string, but *keep the old string in JSC::Heap's
vector called m_possiblyAccessedStringsFromConcurrentThreads. Then, we can keep these strings alive until next GC ends. This ensures that
all concurrent compilers / heap helpers can keep accessing to the old strings. And then, in the GC finalize, we clear this vector since
resumed concurrent compilers and GC heap helpers will not touch these old strings in the next GC cycle. Only case we have a problem is
that we keep having StringImpl* of the old string after GC safepoint in the concurrent compiler, and the only use of that is
DFG::Graph::m_copiedStrings. So, I changed the code not to keep old StringImpl* in DFG::Graph::m_copiedStrings. Also, note that we do
this only when we convert non-atom string to atom string so all UniquedStringImpl* from JSString* (it is atom ones) does not matter since
they are already atom one: they will not be replaced.
This does not increase memory usage, rather, improve memory usage since this kept string was anyway held by the wrapper's JSString at least
until the next GC run. And we clear m_possiblyAccessedStringsFromConcurrentThreads in the next GC run, so we can shrink memory.
It improves Speedometer2 by 0.2%.
----------------------------------------------------------------------------------------------------------------------------------
| subtest | ms | ms | b / a | pValue (significance using False Discovery Rate) |
----------------------------------------------------------------------------------------------------------------------------------
| Elm-TodoMVC |106.193333 |105.690000 |0.995260 | 0.050074 |
| VueJS-TodoMVC |21.671667 |21.741667 |1.003230 | 0.715305 |
| EmberJS-TodoMVC |113.146667 |110.871667 |0.979893 | 0.000000 (significant) |
| BackboneJS-TodoMVC |42.481667 |42.346667 |0.996822 | 0.358040 |
| Preact-TodoMVC |15.796667 |16.016667 |1.013927 | 0.226011 |
| AngularJS-TodoMVC |117.568333 |117.345000 |0.998100 | 0.543369 |
| Vanilla-ES2015-TodoMVC |58.348333 |57.905000 |0.992402 | 0.000381 (significant) |
| Inferno-TodoMVC |54.656667 |54.946667 |1.005306 | 0.254310 |
| Flight-TodoMVC |61.106667 |61.141667 |1.000573 | 0.880780 |
| Angular2-TypeScript-TodoMVC |37.030000 |37.065000 |1.000945 | 0.918550 |
| VanillaJS-TodoMVC |47.741667 |47.911667 |1.003561 | 0.497675 |
| jQuery-TodoMVC |205.251667 |203.903333 |0.993431 | 0.000420 (significant) |
| EmberJS-Debug-TodoMVC |312.448333 |308.848333 |0.988478 | 0.000020 (significant) |
| React-TodoMVC |78.381667 |78.268333 |0.998554 | 0.654647 |
| React-Redux-TodoMVC |131.246667 |131.626667 |1.002895 | 0.138912 |
| Vanilla-ES2015-Babel-Webpack-TodoMVC |57.860000 |57.533333 |0.994354 | 0.156536 |
----------------------------------------------------------------------------------------------------------------------------------
a mean = 290.61106
b mean = 291.21768
pValue = 0.1419936818
(Bigger means are better.)
1.002 times better
Results ARE NOT significant
bytecompiler/BytecodeGenerator.cpp:
(JSC::prepareJumpTableForStringSwitch):
dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
dfg/DFGGraph.h:
dfg/DFGLazyJSValue.cpp:
(JSC::DFG::CrossThreadStringTranslator::hash):
(JSC::DFG::CrossThreadStringTranslator::equal):
(JSC::DFG::CrossThreadStringTranslator::translate):
(JSC::DFG::LazyJSValue::tryGetString const):
dfg/DFGLazyJSValue.h:
(JSC::DFG::LazyJSValue::knownStringImpl):
heap/Heap.cpp:
(JSC::Heap::finalize):
heap/Heap.h:
(JSC::Heap::appendPossiblyAccessedStringFromConcurrentThreads):
runtime/JSString.h:
(JSC::JSString::swapToAtomString const):
(JSC::JSString::toIdentifier const):
(JSC::JSString::toAtomString const):
- 2:55 PM Changeset in webkit [292327] by
-
- 2 edits in branches/safari-613-branch/Source/JavaScriptCore/runtime
Cherry-pick r289177. rdar://91259284
Cache the most recent AtomString produced by JSString::toIdentifier
https://bugs.webkit.org/show_bug.cgi?id=236124
Reviewed by Yusuke Suzuki.
JSString::toIdentifier does not store the result of atomizing its string
value, except when it is a rope. We can often end up atomizing the same
JSString a number of times.
This patch caches the last atomized string produced from
JSString::toIdentifier in a given VM. From local testing, this is a 0.5%
Speedometer2 improvement on an M1 MacBook Air, although surprisingly is
neutral on a recent Intel MacBook Pro.
runtime/JSString.h:
(JSC::JSRopeString::toIdentifier const):
(JSC::JSString::toIdentifier const):
runtime/VM.h:
- 2:55 PM Changeset in webkit [292326] by
-
- 5 edits1 add in branches/safari-613-branch
Cherry-pick r289020. rdar://91259284
Speed-up JSON.stringify() by avoiding "toJSON" property lookups
https://bugs.webkit.org/show_bug.cgi?id=235996
Patch by Alexey Shvayka ashvayka@apple.com> on 2022-02-02
Reviewed by Saam Barati.
JSTests:
microbenchmarks/json-stringify-many-objects-to-json.js:
Make this test a little more realistic by moving "toJSON" onto prototype.
microbenchmarks/vanilla-todomvc-json-stringify.js: Added.
Source/JavaScriptCore:
Speedometer2/Vanilla* subtests are highly reliant on JSON.stringify() for "storage":
it accounts for 10-15% of running time. EmberJS* subtests rely on JSON.stringify() as
well, although they are significantly slower overall, and also encounter only a few
different structures.
This patch caches "toJSON" properties on Structure's rare data; it's the same technique
we are using in toPrimitive() to avoid "toString" / "valueOf" lookups. The microbenchmark,
which was carefully extracted from Speedometer2/Vanilla* subtests, progressed by 3.7%.
While we could come up with a solution that doesn't involve creating StructureRareData
for all structures we stringify, like keeping a list of StructureIDs w/o "toJSON" method,
which will be correct as long as m_hasFastObjectProperties m_isJSArray is true for all seen objects, that would probably miss some edge case, won't persist between JSON.stringify()
calls, and won't speed-up structures with "toJSON" methods like Dates.
runtime/CachedSpecialPropertyAdaptiveStructureWatchpoint.cpp:
(JSC::CachedSpecialPropertyAdaptiveStructureWatchpoint::fireInternal):
runtime/JSONObject.cpp:
(JSC::Stringifier::toJSON):
runtime/StructureRareData.cpp:
(JSC::StructureRareData::cacheSpecialPropertySlow):
(JSC::CachedSpecialPropertyAdaptiveInferredPropertyValueWatchpoint::handleFire):
runtime/StructureRareData.h:
- 2:55 PM Changeset in webkit [292325] by
-
- 112 edits3 copies2 adds in branches/safari-613-branch/Source
Cherry pick r288815 r288854 r288870 r289592 r289717 r289718 r291448 r291456.
These are all part of Keith's StructureID overhaul.
- 2:54 PM Changeset in webkit [292324] by
-
- 1 edit in branches/safari-613-branch/Source/JavaScriptCore/yarr/YarrJIT.cpp
Cherry-pick r288748. rdar://91259284
[JSC] YarrJIT optimization for character BM search
https://bugs.webkit.org/show_bug.cgi?id=235738
Reviewed by Saam Barati.
Add micro-optimization of BM search path. Since it is super hot path,
this small improvement offsers 1% in jquery-todomvc-regexp microbenchmark.
ToT Patched
jquery-todomvc-regexp 484.1399+-1.0527 479.0932+-1.0999 definitely 1.0105x faster
yarr/YarrJIT.cpp:
- 2:54 PM Changeset in webkit [292323] by
-
- 2 edits in branches/safari-613-branch
Cherry-pick r288669. rdar://91259284
Avoid setting and clearing :active state when dispatching synthetic click events when possible
https://bugs.webkit.org/show_bug.cgi?id=235672
<rdar://problem/88095418>
Reviewed by Simon Fraser.
Source/WebCore:
Simulated click events are dispatched with two options:
whether to send associated events mouseover, mouseup, mousedown
whether to repaint the target element with its pressed look
We currently always set the element's :active state just after when we'd
send the mousedown event, and clear it just after that.
When we dispatch a simulated click event with neither of the above
options set, there's no way to observe the temporary :active state on
the element. We can skip it in that case.
We need to continue clearing clearing the :active state regardless,
because some callers have already set :active and are relying on
simulateClick to clear it.
This patch is a 0.3-0.4% improvement on Speedometer 2.
dom/SimulatedClick.cpp:
(WebCore::simulateClick):
LayoutTests:
platform/gtk/inspector/timeline/line-column-expected.txt:
- 2:54 PM Changeset in webkit [292322] by
-
- 3 edits in branches/safari-613-branch/Source/JavaScriptCore/runtime
Cherry-pick r288537. rdar://91259284
Remove VM::stringCache
https://bugs.webkit.org/show_bug.cgi?id=235536
Reviewed by Sam Weinig.
We consult VM::stringCache when creating a JSString, but since
bug 142115 we never insert anything into it.
Removing this results in almost-significant improvements in the VueJS,
Vanilla-ES2015, and jQuery sub-tests of Speedometer 2 (of 0.5-2%,
0.03 <= p <= 0.05), and an almost significant 0.2% improvement in the
overall score (p = 0.06).
runtime/JSString.cpp:
(JSC::jsStringWithCacheSlowCase):
runtime/VM.cpp:
(JSC::VM::VM):
runtime/VM.h:
- 2:52 PM Changeset in webkit [292321] by
-
- 1 edit in trunk/Source/WebCore/features.json
Correct typo in features.json
- 2:38 PM Changeset in webkit [292320] by
-
- 9 edits in branches/safari-613-branch/Source
Versioning.
WebKit-7613.2.6
- 2:38 PM Changeset in webkit [292319] by
-
- 4 edits in trunk/Source/WebKit
Remove display list map entry before remote resource
https://bugs.webkit.org/show_bug.cgi?id=238764
Reviewed by Simon Fraser.
- GPUProcess/graphics/RemoteDisplayListRecorder.cpp:
(WebKit::RemoteDisplayListRecorder::clearImageBufferReference):
- GPUProcess/graphics/RemoteDisplayListRecorder.h:
- GPUProcess/graphics/RemoteRenderingBackend.cpp:
(WebKit::RemoteRenderingBackend::releaseRemoteResourceWithQualifiedIdentifier):
- 2:30 PM Changeset in webkit [292318] by
-
- 2 edits in trunk/Tools
Fix the TestWebKitAPI build with an iOS 15.4 internal SDK
https://bugs.webkit.org/show_bug.cgi?id=238750
Reviewed by Alex Christensen.
Add needed include.
- TestWebKitAPI/ios/UIKitSPI.h:
- 2:21 PM Changeset in webkit [292317] by
-
- 2 edits in trunk/LayoutTests
[CSS-contain] Update select element based test failures.
Unreviewed.
- 2:16 PM Changeset in webkit [292316] by
-
- 7 edits in trunk/Source
[macOS] Add helper methods to install and uninstall VKCImageAnalysisOverlayView
https://bugs.webkit.org/show_bug.cgi?id=238714
Reviewed by Tim Horton.
Source/WebCore/PAL:
Add soft-linking support for VKCImageAnalysisOverlayView. See WebKit/ChangeLog for more details.
- pal/cocoa/VisionKitCoreSoftLink.h:
- pal/cocoa/VisionKitCoreSoftLink.mm:
Source/WebKit:
Add helper methods for adding and removing a temporary VKCImageAnalysisOverlayView as a subview of WKWebView.
See below for more details. No change in behavior (yet).
- UIProcess/Cocoa/WebViewImpl.h:
(WebKit::WebViewImpl::imageAnalysisInteractionBounds const):
(WebKit::WebViewImpl::imageAnalysisOverlayView const):
- UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::processImageAnalyzerRequest):
Pull logic for processing an image analyzer request and invoking the completion handler on the main thread (via
callOnMainRunLoop
) out into a separate helper method (to be used in a subsequent patch).
(WebKit::WebViewImpl::requestTextRecognition):
(-[WKImageAnalysisOverlayViewDelegate initWithWebViewImpl:]):
Add an Objective-C object that acts as a delegate for the image analysis overlay view. This is done to correctly
position the overlay, but also for a couple of additonal reasons below.
(-[WKImageAnalysisOverlayViewDelegate dealloc]):
(-[WKImageAnalysisOverlayViewDelegate observeValueForKeyPath:ofObject:change:context:]):
Add logic to steal first responder status away from VKCImageAnalysisOverlayView's internal text selection view
and restore it to the web view when there is no longer an active text selection in the overlay. This ensures
that key events are only routed to the image analysis overlay view in the case where the overlay actually
contains a text selection.
(-[WKImageAnalysisOverlayViewDelegate firstResponderIsInsideImageOverlay]):
(-[WKImageAnalysisOverlayViewDelegate imageAnalysisOverlay:shouldHandleKeyDownEvent:]):
Never allow the image overlay view to override Escape key handling.
(-[WKImageAnalysisOverlayViewDelegate contentsRectForImageAnalysisOverlayView:]):
(WebKit::WebViewImpl::installImageAnalysisOverlayView):
(WebKit::WebViewImpl::uninstallImageAnalysisOverlayView):
(WebKit::WebViewImpl::imageAnalysisOverlayViewHasCursorAtPoint const):
Allow the image analysis overlay view to set the mouse cursor when the mouse is over interactable content.
- UIProcess/mac/PageClientImplMac.mm:
(WebKit::PageClientImpl::setCursor):
- 1:54 PM Changeset in webkit [292315] by
-
- 2 edits in trunk/Source/JavaScriptCore
Only check isPagedOut() under memory pressure
https://bugs.webkit.org/show_bug.cgi?id=238742
Reviewed by Cameron McCormack.
Worth about 0.4% on Speedometer.
In theory, if we're not under memory pressure, we're either (a) not
paged out because we were not recently under memory pressure or (b)
paged out but OK to page in again because memory is available.
This could increase swap if a system frequently oscillated between
yes-memory-pressure and no-memory-pressure; but in practice the systems
we see under significant memory pressure tend to stay that way.
- heap/FullGCActivityCallback.cpp:
(JSC::FullGCActivityCallback::doCollection):
- 1:41 PM Changeset in webkit [292314] by
-
- 4 edits5 adds in trunk
AccessibilityNodeObject::elementRect should use children rects for display:contents AX objects
https://bugs.webkit.org/show_bug.cgi?id=238680
Reviewed by Chris Fleizach and Andres Gonzalez.
Source/WebCore:
Because display:contents AccessibilityNodeObjects can have rendered
content (unlikehidden
,aria-hidden="false"
node objects), we can compute
AccessibilityNodeObject::elementRect by adding up the rectangles of the object's children.
This provides a more accurate frame for these objects.
Test: accessibility/node-only-object-element-rect.html
- accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::boundingBoxRect const):
LayoutTests:
- accessibility/node-only-object-element-rect-expected.txt: Added.
- accessibility/node-only-object-element-rect.html: Added.
- platform/glib/accessibility/node-only-object-element-rect-expected.txt: Added.
- platform/ios/TestExpectations: Enable new test.
- platform/ios/accessibility/node-only-object-element-rect-expected.txt: Added.
- platform/win/accessibility/node-only-object-element-rect-expected.txt: Added.
- 12:53 PM Changeset in webkit [292313] by
-
- 2 edits in trunk
[PlayStation] Re-disable WebDriver
https://bugs.webkit.org/show_bug.cgi?id=238756
Unreviewed build fix
- Source/cmake/OptionsPlayStation.cmake:
- 12:48 PM Changeset in webkit [292312] by
-
- 2 edits in trunk/Source/WebCore
[Apple Pay] buttons should be localized based on the system if not specified by the HTML
https://bugs.webkit.org/show_bug.cgi?id=238743
<rdar://problem/89592004>
Reviewed by Wenson Hsieh.
- rendering/RenderThemeCocoa.mm:
(WebCore::RenderThemeCocoa::paintApplePayButton):
- 12:44 PM Changeset in webkit [292311] by
-
- 2 edits in trunk/Source/WebCore
Update 'features.json' for current state of WebKit
https://bugs.webkit.org/show_bug.cgi?id=238746
Reviewed by Tim Nguyen.
I noticed that the current 'features.json' file is out of date. I think the attached changes more
accurately reflect the state of the engine.
- features.json:
- 12:25 PM Changeset in webkit [292310] by
-
- 3 edits in trunk/Source/WebCore
Simplify / Optimize the whitespace cache implementation
https://bugs.webkit.org/show_bug.cgi?id=238736
Reviewed by Sam Weinig.
Instead of using 2 C arrays of size maximumCachedStringLength + 1 Vector with an inline
buffer of size maximumCachedStringLength, we now used a single FixedVector of size
maximumCachedStringLength.
Because the Vector has an inline buffer whose size is the max size of the cache, using
a FixedVector is just more efficient. It also means we don't need to store indexes in
that Vector in a separate C array. Finally, I used a struct named AtomStringWithCode to
store { AtomString, uint64 code } so we don't need separate containers for the AtomString
and the code.
Note that I added VectorTraits for the new AtomStringWithCode struct to make sure it can
get initialized via a simple memset.
This is a 0.25-0.3% progression on Speedometer according to A/B bots.
- html/parser/HTMLConstructionSite.cpp:
(WebCore::WhitespaceCache::lookup):
- html/parser/HTMLConstructionSite.h:
(WebCore::WhitespaceCache::WhitespaceCache):
- 12:06 PM Changeset in webkit [292309] by
-
- 5 edits2 adds in trunk/Tools
[iOS] Add API tests for video extraction in element fullscreen
https://bugs.webkit.org/show_bug.cgi?id=238706
rdar://91205141
Reviewed by Eric Carlson.
Add a WebKitAdditions hook for the new API test, as well as a new test page that exercises element fullscreen
with a video element.
- TestWebKitAPI/SourcesCocoa.txt:
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebKitCocoa/FullscreenVideoExtraction.mm: Added.
- TestWebKitAPI/Tests/WebKitCocoa/PushAPI.mm:
- TestWebKitAPI/Tests/WebKitCocoa/element-fullscreen.html: Added.
- TestWebKitAPI/Tests/WebKitCocoa/iOSMouseSupport.mm:
- 11:31 AM Changeset in webkit [292308] by
-
- 16 edits26 adds4 deletes in trunk
[ iOS 15 ] imported/w3c/web-platform-tests/WebCryptoAPI/derive_bits_keys/pbkdf2.https.any.worker.html is flaky timing out
https://bugs.webkit.org/show_bug.cgi?id=231544
rdar://problem/84122086
Reviewed by Brent Fulgham.
LayoutTests/imported/w3c:
Update expectations to account for variant metadata.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/hkdf.https.any-expected.txt: Removed.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/hkdf.https.any.html:
- web-platform-tests/WebCryptoAPI/derive_bits_keys/hkdf.https.any.worker-expected.txt: Removed.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/hkdf.https.any.worker.html:
- web-platform-tests/WebCryptoAPI/derive_bits_keys/hkdf.https.any.worker_1-1000-expected.txt: Added.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/hkdf.https.any.worker_1001-2000-expected.txt: Added.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/hkdf.https.any.worker_2001-3000-expected.txt: Added.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/hkdf.https.any.worker_3001-last-expected.txt: Added.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/hkdf.https.any_1-1000-expected.txt: Added.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/hkdf.https.any_1001-2000-expected.txt: Added.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/hkdf.https.any_2001-3000-expected.txt: Added.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/hkdf.https.any_3001-last-expected.txt: Added.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/pbkdf2.https.any-expected.txt: Removed.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/pbkdf2.https.any.html:
- web-platform-tests/WebCryptoAPI/derive_bits_keys/pbkdf2.https.any.worker-expected.txt: Removed.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/pbkdf2.https.any.worker.html:
- web-platform-tests/WebCryptoAPI/derive_bits_keys/pbkdf2.https.any.worker_1-1000-expected.txt: Added.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/pbkdf2.https.any.worker_1001-2000-expected.txt: Added.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/pbkdf2.https.any.worker_2001-3000-expected.txt: Added.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/pbkdf2.https.any.worker_3001-4000-expected.txt: Added.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/pbkdf2.https.any.worker_4001-5000-expected.txt: Added.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/pbkdf2.https.any.worker_5001-6000-expected.txt: Added.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/pbkdf2.https.any.worker_6001-7000-expected.txt: Added.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/pbkdf2.https.any.worker_7001-8000-expected.txt: Added.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/pbkdf2.https.any.worker_8001-last-expected.txt: Added.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/pbkdf2.https.any_1-1000-expected.txt: Added.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/pbkdf2.https.any_1001-2000-expected.txt: Added.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/pbkdf2.https.any_2001-3000-expected.txt: Added.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/pbkdf2.https.any_3001-4000-expected.txt: Added.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/pbkdf2.https.any_4001-5000-expected.txt: Added.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/pbkdf2.https.any_5001-6000-expected.txt: Added.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/pbkdf2.https.any_6001-7000-expected.txt: Added.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/pbkdf2.https.any_7001-8000-expected.txt: Added.
- web-platform-tests/WebCryptoAPI/derive_bits_keys/pbkdf2.https.any_8001-last-expected.txt: Added.
Tools:
This patch adds support for running js templated WPT tests with the variant
meta tag seperately, as the WPT test infrastructure does.
New unit tests were added to webkitpy scripts to test the new behavior.
- Scripts/webkitpy/layout_tests/controllers/layout_test_finder_legacy.py:
(LayoutTestFinder._expand_variants):
(LayoutTestFinder._real_tests):
- Scripts/webkitpy/layout_tests/controllers/layout_test_finder_legacy_unittest.py:
(LayoutTestFinderTests.test_find_template_variants):
(LayoutTestFinderTests.test_preserves_order_directories): Deleted.
(LayoutTestFinderTests.test_preserves_order_mixed_file_type): Deleted.
(LayoutTestFinderTests.test_preserves_order_mixed_file_type_b): Deleted.
(LayoutTestFinderTests.test_find_directory_multiple_times): Deleted.
(LayoutTestFinderTests.test_no_reference): Deleted.
(LayoutTestFinderTests.test_glob_no_references): Deleted.
(LayoutTestFinderTests.test_find_with_skipped_directories): Deleted.
(LayoutTestFinderTests.test_find_with_skipped_directories_2): Deleted.
(LayoutTestFinderTests.test_is_test_file): Deleted.
(LayoutTestFinderTests.test_is_w3c_resource_file): Deleted.
- Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
(SingleTestRunner):
- Scripts/webkitpy/layout_tests/controllers/test_result_writer.py:
(TestResultWriter.output_filename):
- Scripts/webkitpy/port/base.py:
(Port._expected_baselines_for_suffixes):
- Scripts/webkitpy/w3c/common.py:
- Scripts/webkitpy/w3c/test_importer.py:
(TestImporter._variant_lines):
(TestImporter):
(TestImporter._write_html_template):
(TestImporter._read_environments_and_variants_for_template_test):
(TestImporter.write_html_files_for_templated_js_tests):
(TestImporter.readEnvironmentsForTemplateTest): Deleted.
- Scripts/webkitpy/w3c/test_importer_unittest.py:
LayoutTests:
Remove timeout expectation.
- platform/ios-wk2/TestExpectations:
- 11:27 AM Changeset in webkit [292307] by
-
- 3 edits in trunk/LayoutTests/imported/w3c
Make focus-after-close.html WPT pass
https://bugs.webkit.org/show_bug.cgi?id=233525
Reviewed by Simon Fraser.
The last subtest doesn't pass, because WebKit intentionally differs from other browsers by scrolling
to the focused element asynchronously (see bug 181575). Wait for a scroll event + tick to make it pass.
- web-platform-tests/html/semantics/interactive-elements/the-dialog-element/focus-after-close-expected.txt:
- web-platform-tests/html/semantics/interactive-elements/the-dialog-element/focus-after-close.html:
- 11:11 AM Changeset in webkit [292306] by
-
- 12 edits3 deletes in trunk
Conditionally inject <attachment> styles based on runtime flag
https://bugs.webkit.org/show_bug.cgi?id=238739
Reviewed by Tim Horton.
Source/WebCore:
Also use appearance: auto instead of -webkit-appearance: attachment, since it also works thanks to
RenderTheme::adjustAppearanceForElement().
Test: LayoutTests/fast/attachment/attachment-disabled-rendering.html
- css/html.css:
(#endif):
- rendering/RenderTheme.cpp:
(WebCore::RenderTheme::attachmentStyleSheet const):
Move html.css styles in there.
(WebCore::RenderTheme::adjustStyle):
(WebCore::RenderTheme::adjustAttachmentStyle const): Deleted.
adjustAttachmentStyle was unused, not overriden and no-op.
- rendering/RenderTheme.h:
- rendering/RenderThemeIOS.h:
- rendering/RenderThemeIOS.mm:
(WebCore::RenderThemeIOS::attachmentStyleSheet const):
Put iOS specific styles there.
- style/UserAgentStyle.cpp:
(WebCore::Style::UserAgentStyle::ensureDefaultStyleSheetsForElement):
Append styles to UA styling.
- style/UserAgentStyle.h:
LayoutTests:
Update test expectations, now that display is no longer forced to inline-block by appearance, and now that
color is no longer unconditionally set on iOS to -apple-system-blue.
- fast/attachment/attachment-disabled-rendering-expected.txt:
- fast/attachment/attachment-disabled-rendering.html:
- platform/ios/fast/attachment/attachment-disabled-rendering-expected.txt: Removed.
- platform/mac/fast/attachment/attachment-disabled-rendering-expected.png:
- platform/win/fast/attachment/attachment-disabled-rendering-expected.txt: Removed.
- platform/wpe/fast/attachment/attachment-disabled-rendering-expected.txt: Removed.
- 10:56 AM Changeset in webkit [292305] by
-
- 2 edits in trunk/Source/WebCore
[GTK][WPE] Compilation error in debug mode after r292279
https://bugs.webkit.org/show_bug.cgi?id=238741
Reviewed by Philippe Normand.
No functional changes.
- animation/CSSPropertyAnimation.cpp:
(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap): Add symbol
guards.
- 10:56 AM Changeset in webkit [292304] by
-
- 3 edits in trunk/Tools
[git-webkit canonicalize] Support multiple empty lines
https://bugs.webkit.org/show_bug.cgi?id=238744
<rdar://problem/91246947>
Reviewed by Stephanie Lewis and Dewei Zhu.
- Tools/Scripts/libraries/webkitscmpy/webkitscmpy/program/canonicalize/message.py:
(main): When committing a change with 'Patch by' in it, SVN adds an
extra empty line in the commit message.
- Tools/Scripts/libraries/webkitscmpy/webkitscmpy/test/canonicalize_unittest.py:
(TestCanonicalize.test_git_svn_existing_merge_queue): Added.
Canonical link: https://commits.webkit.org/249197@main
- 10:52 AM Changeset in webkit [292303] by
-
- 1 copy in tags/Safari-614.1.8.2
Tag Safari-614.1.8.2.
- 10:49 AM Changeset in webkit [292302] by
-
- 1 copy in tags/Safari-614.1.7.5
Tag Safari-614.1.7.5.
- 10:49 AM Changeset in webkit [292301] by
-
- 16 edits in branches/safari-614.1.8-branch/Source
Cherry-pick r292258. rdar://problem/91069927
Stop copying StagedFrameworks to the secondary path by default
https://bugs.webkit.org/show_bug.cgi?id=238688
Reviewed by Saam Barati.
Decoupled COPY_STAGED_FRAMEWORKS_TO_SECONDARY_PATH from USE_SYSTEM_CONTENT_PATH so we won't
always copy frameworks to the secondary path on macOS. Instead, the build configuration can set
COPY_STAGED_FRAMEWORKS_TO_SECONDARY_PATH as appropriate.
Source/JavaScriptCore:
- Configurations/Base.xcconfig:
Source/ThirdParty/ANGLE:
- Configurations/ANGLE-dynamic.xcconfig:
Source/ThirdParty/libwebrtc:
- Configurations/libwebrtc.xcconfig:
Source/WebCore:
- Configurations/WebCore.xcconfig:
Source/WebGPU:
- Configurations/WebGPU.xcconfig:
Source/WebInspectorUI:
- Configurations/WebInspectorUIFramework.xcconfig:
Source/WebKit:
- Configurations/Base.xcconfig:
Source/WebKitLegacy/mac:
- Configurations/Base.xcconfig:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@292258 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 10:46 AM Changeset in webkit [292300] by
-
- 9 edits in branches/safari-614.1.8-branch/Source
Versioning.
WebKit-7614.1.8.2
- 10:37 AM Changeset in webkit [292299] by
-
- 7 edits in trunk
Drop mostly unused String(const LChar*) constructor
https://bugs.webkit.org/show_bug.cgi?id=238716
Reviewed by Geoffrey Garen.
Source/WTF:
- wtf/text/WTFString.cpp:
- wtf/text/WTFString.h:
Tools:
- TestWebKitAPI/Tests/WTF/StringOperators.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WTF/cocoa/URLExtras.mm:
(TestWebKitAPI::TEST):
- 10:33 AM Changeset in webkit [292298] by
-
- 1 copy in branches/safari-614.1.9-branch
New branch.
- 10:32 AM Changeset in webkit [292297] by
-
- 9 edits in trunk/Source
Versioning.
WebKit-7614.1.10
- 10:31 AM Changeset in webkit [292296] by
-
- 3 edits4 adds in trunk
Service-Worker-Navigation-Preload header not being sent when Navigation Preload is enabled.
https://bugs.webkit.org/show_bug.cgi?id=238564
Reviewed by Alex Christensen.
Source/WebKit:
We were cancelling the preload as soon as receiving a response through FetchEvent.respondWith.
But it is possible to answer with a synthetic response and then use the preload to fill the synthetic response body.
To allow this, we no longer cancel the preload when receiving a response in case of enabled navigation preload.
Test: http/wpt/service-workers/service-worker-iframe-preload-after-response.https.html
- NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp:
LayoutTests:
- http/wpt/service-workers/resources/service-worker-iframe-preload-after-response-script.py: Added.
- http/wpt/service-workers/service-worker-iframe-preload-after-response-worker.js: Added.
- http/wpt/service-workers/service-worker-iframe-preload-after-response.https-expected.txt: Added.
- http/wpt/service-workers/service-worker-iframe-preload-after-response.https.html: Added.
- 10:21 AM Changeset in webkit [292295] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, GStreamer 1.21 build fix after r292215
- Modules/mediastream/gstreamer/GStreamerStatsCollector.cpp:
(WebCore::fillInboundRTPStreamStats): Fix typo in packetsLost variable name.
- 10:20 AM Changeset in webkit [292294] by
-
- 9 edits in trunk
[GPU Process] [iOS] Sometimes the text drop shadow is not drawn
https://bugs.webkit.org/show_bug.cgi?id=236923
rdar://89196794
Reviewed by Simon Fraser.
Source/WebCore:
The baseCTM of internal context of DrawGlyphsRecorder has to match the
baseCTM of the owner DisplayList::Recorder.
When recording the glyph runs, DrawGlyphsRecorder::recordDrawGlyphs()
updates the shadow of the recorder such that ShadowsIgnoreTransforms is
set to "false". That means no shadow transformation will be applied to
the offset or the blur radius in GPUP.
- platform/graphics/DrawGlyphsRecorder.h:
- platform/graphics/coretext/DrawGlyphsRecorderCoreText.cpp:
(WebCore::DrawGlyphsRecorder::DrawGlyphsRecorder):
(WebCore::DrawGlyphsRecorder::populateInternalState):
- platform/graphics/displaylists/DisplayListRecorder.cpp:
(WebCore::DisplayList::Recorder::Recorder):
- platform/graphics/harfbuzz/DrawGlyphsRecorderHarfBuzz.cpp:
(WebCore::DrawGlyphsRecorder::DrawGlyphsRecorder):
- platform/graphics/win/DrawGlyphsRecorderWin.cpp:
(WebCore::DrawGlyphsRecorder::DrawGlyphsRecorder):
- rendering/RenderThemeIOS.mm:
(WebCore::paintAttachmentText):
LayoutTests:
Unskip failed the text drop shadow layout test.
- platform/ios-wk2/TestExpectations:
- 10:07 AM Changeset in webkit [292293] by
-
- 7 edits in trunk
CORS: Allow particular Range header values without a preflight
https://bugs.webkit.org/show_bug.cgi?id=231174
<rdar://problem/84101544>
Reviewed by Alex Christensen.
LayoutTests/imported/w3c:
- web-platform-tests/fetch/range/general.any-expected.txt:
- web-platform-tests/fetch/range/general.any.js:
- web-platform-tests/fetch/range/general.any.worker-expected.txt:
- web-platform-tests/fetch/range/resources/long-wav.py:
Source/WebCore:
Covered by updated tests.
- platform/network/HTTPParsers.cpp:
- 9:59 AM Changeset in webkit [292292] by
-
- 9 edits1 add2 deletes in trunk
[XCBuild] WebKitLegacy's "Migrated headers" script does not emit task information
https://bugs.webkit.org/show_bug.cgi?id=238409
<rdar://problem/90869551>
Reviewed by Alexey Proskuryakov.
Source/WebKit:
- WebKit.xcodeproj/project.pbxproj: Small build rule fix to prevent "no rule to process
file" warnings on every generated forwarding header. This happened because the build rule
that generates these temporary forwarding headers looked like it was supposed to _process_
those headers, too.
Source/WebKitLegacy:
Like r291809, replace MigrateHeaders.make with a "Migrated Headers" group in
WebKitLegacy.xcodeproj, and use a build rule to rewrite the headers at build-time. This
provides the build system with sufficient metadata to reason about the migrated headers and
when they need to be re-processed.
Since WebKitLegacy uses an export symbols list, run tapi-reexport on each migrated header as
it is processed. In the "Generate Export Files" phase, stitch these together to form the
EXPORTED_SYMBOLS_FILE given to the linker.
- scripts/migrate-header-rule: Added. Runs sed and tapi-reexport on headers as they are
migrated. For tapi, include <TargetConditionals.h> so that TARGET_OS_* declarations get
resolved according to the target triple. This was not needed in the Make-based approach
because it processed all the headers in one invocation, and one of them imports
TargetConditionals early enough that it affects the others.
Running one tapi instance per header is obviously more overhead, but on a sufficiently
multicore machine it should be faster than blocking WebKitLegacy's build process on the
Make-based script phase.
- WebKitLegacy.xcodeproj/project.pbxproj: Delete script phases, add "Migrated Headers" group
and build rule. Add a legacy-only "Install Headers" phase which launches a child xcodebuild
to install headers using the new build system. Unlike prior implementations in WebKit, WTF,
and PAL, the child xcodebuild needs access to existing build products so that clang (via
tapi) can import them. Do this by populating the child xcodebuild's SYMROOT with symlinks to
the real build products.
Source/WebKitLegacy/mac:
- Configurations/WebKitLegacy.xcconfig: Use EXCLUDED_SOURCE_FILE_NAMES and
INCLUDED_SOURCE_FILE_NAMES to control which headers are exported. Set
USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES, so that the "Generate Export Files" phase can
depend on the whole directory of reexport files and be invoked when any of them change.
- MigrateHeaders.make: Removed.
Tools:
- Scripts/check-for-inappropriate-files-in-framework: We were relying on a script to create
an (empty) WebKitLegacy.framework/Headers directory, which was being scanned here.
WebKitLegacy is entirely private API, so change it to check PrivateHeaders/.
- 9:31 AM Changeset in webkit [292291] by
-
- 3 edits in trunk/Tools
[Merge-Queue] Remove custom summaries when skipped
https://bugs.webkit.org/show_bug.cgi?id=238633
<rdar://problem/91125435>
Reviewed by Aakash Jain.
- Tools/CISupport/ews-build/steps.py:
(ValidateSquashed.getResultSummary):
(AddReviewerToCommitMessage.getResultSummary):
(AddReviewerToChangeLog.getResultSummary):
(ValidateCommitMessage.getResultSummary):
(Canonicalize.getResultSummary):
(PushPullRequestBranch.getResultSummary):
(UpdatePullRequest.getResultSummary):
- Tools/CISupport/ews-build/steps_unittest.py:
Canonical link: https://commits.webkit.org/249189@main
- 8:55 AM Changeset in webkit [292290] by
-
- 4 edits in trunk/Source/WebCore
[Perf] HTMLVideoElement is performing synchronous paints; causing main thread hangs
https://bugs.webkit.org/show_bug.cgi?id=238707
<rdar://91025299>
Reviewed by Eric Carlson.
Spin trace diagnostics show that the main thread of the WebContent process is often hung,
blocked on a synchronous Paint message to the GPU process; in turn, the GPU process is often
busy performing media-related work, but in each of the cases found, painting is unnecessary.
The media player in question is accelerated, and should only be painted during layer snapshotting
or during a print operation.
Only paint if the renderer is not accelerated, the media element is not accelerated, or if
the paint operation isn't flattening or snapshotting. HTMLMediaElement inappropriately caches
the value of MediaPlayer::supportsAcceleratedRendering(), under the (incorrect) assumption that
the value cannot change during the lifetime of the MediaPlayer, so remove this caching layer.
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::mediaEngineWasUpdated):
(WebCore::HTMLMediaElement::clearMediaPlayer):
- html/HTMLMediaElement.h:
(WebCore::HTMLMediaElement::supportsAcceleratedRendering const):
- rendering/RenderVideo.cpp:
(WebCore::RenderVideo::paintReplaced):
- 8:45 AM Changeset in webkit [292289] by
-
- 4 edits in trunk/Source/WebKit
RemoteRenderingBackendProxy fails to maintain correct state when gpu process crashes and upon deletion
https://bugs.webkit.org/show_bug.cgi?id=238618
Patch by Kimmo Kinnunen <kkinnunen@apple.com> on 2022-04-04
Reviewed by Simon Fraser.
RemoteRenderingBackendProxy::m_needsWakeUpSemaphoreForDisplayListStream
was not reset when proxy would connect to a new gpu process after a crash.
RemoteRenderingBackendProxy::~RemoteRenderingBackendProxy() would not
remove the GPUConnection::Client registration.
- Platform/IPC/MessageReceiveQueueMap.cpp:
(IPC::MessageReceiveQueueMap::remove):
- Platform/IPC/StreamClientConnection.h:
- WebProcess/GPU/graphics/RemoteRenderingBackendProxy.cpp:
(WebKit::RemoteRenderingBackendProxy::~RemoteRenderingBackendProxy):
(WebKit::RemoteRenderingBackendProxy::gpuProcessConnectionDidClose):
(WebKit::RemoteRenderingBackendProxy::disconnectGPUProcess):
(WebKit::RemoteRenderingBackendProxy::streamConnection):
(WebKit::RemoteRenderingBackendProxy::didCreateWakeUpSemaphoreForDisplayListStream):
- WebProcess/GPU/graphics/RemoteRenderingBackendProxy.h:
- 8:40 AM Changeset in webkit [292288] by
-
- 2 edits in trunk/Tools
WPT export broken under Python 3
https://bugs.webkit.org/show_bug.cgi?id=238735
Reviewed by Tim Nguyen.
- Scripts/webkitpy/w3c/wpt_github.py:
(WPTGitHub.request): Ensure we have bytes, not str.
- 4:19 AM Changeset in webkit [292287] by
-
- 5 edits in trunk
[WPE][GTK] REGRESSION(r292263): Cannot make release tarballs
https://bugs.webkit.org/show_bug.cgi?id=238698
Reviewed by Carlos Garcia Campos.
.:
- Source/cmake/WebKitDist.cmake: Make "dist" and "distcheck" targets depend on "doc-all".
Tools:
- gtk/manifest.txt.in: Fix paths of generated documentation to be included in release tarballs.
- wpe/manifest.txt.in: Ditto.
- 4:17 AM Changeset in webkit [292286] by
-
- 2 edits in trunk
[CMake] Provide better messages when gi-docgen cannot be found
https://bugs.webkit.org/show_bug.cgi?id=238729
Reviewed by Carlos Garcia Campos.
When gi-docgen cannot be found, or cannot be executed, provide better error messages
than those provided by CMake. While at it, make the messages mention how gi-docgen
can be installed inside the WebKit source tree to be used for the build.
- Source/cmake/FindGIDocgen.cmake:
- 2:39 AM Changeset in webkit [292285] by
-
- 2 edits in trunk
Change contributor status of Miguel Gomez from committer to reviewer
https://bugs.webkit.org/show_bug.cgi?id=238730
Unreviewed.
- metadata/contributors.json:
- 1:37 AM Changeset in webkit [292284] by
-
- 6 edits2 deletes in trunk
REGRESSION(r291797): [wk1] 5 contain-intrinsic-size* tests are constant text failures
https://bugs.webkit.org/show_bug.cgi?id=238584
Reviewed by Simon Fraser.
Source/WTF:
Enable ResizeObserver for legacy WebKit.
- Scripts/Preferences/WebPreferencesExperimental.yaml:
Tools:
Enable ResizeObserver for wk1 test.
- DumpRenderTree/TestOptions.cpp:
(WTR::TestOptions::defaults):
LayoutTests:
- platform/mac-wk1/TestExpectations:
- platform/mac-wk1/imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-031-expected.txt: Removed.
- platform/mac-wk1/imported/w3c/web-platform-tests/resize-observer/change-layout-in-error-expected.txt: Removed.
- 1:03 AM Changeset in webkit [292283] by
-
- 4 edits in trunk/LayoutTests
[WebGPU] Unskip the first few passing WebGPU tests
https://bugs.webkit.org/show_bug.cgi?id=238709
Reviewed by Tim Nguyen.
The tests pass, so they shouldn't be marked as skip.
- platform/ios-device-wk1/TestExpectations:
- platform/ios-simulator-wk1/TestExpectations:
- platform/mac-wk1/TestExpectations:
- 12:53 AM Changeset in webkit [292282] by
-
- 7 edits in trunk/Source/WebKit
StreamClientConnection should have waitForAndDispatchImmediately
https://bugs.webkit.org/show_bug.cgi?id=238622
Patch by Kimmo Kinnunen <kkinnunen@apple.com> on 2022-04-04
Reviewed by Simon Fraser.
IPC::StreamClientConnection should have the same communication methods
as the IPC::Connection. The stream connection will forward
the calls to underlying IPC::Connection, if needed.
Add missing IPC::StreamClientConnection::waitForAndDispatchImmediately()
and use it.
Remove conveinence accessor methods for the IPC::Connection, as that should be
accessed by accessing the stream connection in the respective classes.
No new tests, refactor.
- Platform/IPC/StreamClientConnection.h:
(IPC::StreamClientConnection::waitForAndDispatchImmediately):
- WebProcess/GPU/graphics/RemoteGraphicsContextGLProxy.cpp:
(WebKit::RemoteGraphicsContextGLProxy::RemoteGraphicsContextGLProxy):
(WebKit::RemoteGraphicsContextGLProxy::waitUntilInitialized):
- WebProcess/GPU/graphics/RemoteGraphicsContextGLProxy.h:
(WebKit::RemoteGraphicsContextGLProxy::sendSync):
- WebProcess/GPU/graphics/RemoteRenderingBackendProxy.cpp:
(WebKit::RemoteRenderingBackendProxy::waitForDidCreateImageBufferBackend):
(WebKit::RemoteRenderingBackendProxy::waitForDidFlush):
(WebKit::RemoteRenderingBackendProxy::streamConnection):
- WebProcess/GPU/graphics/RemoteRenderingBackendProxy.h:
- WebProcess/GPU/graphics/WebGPU/RemoteGPUProxy.cpp:
(WebKit::RemoteGPUProxy::RemoteGPUProxy):
(WebKit::RemoteGPUProxy::waitUntilInitialized):
- 12:36 AM Changeset in webkit [292281] by
-
- 157 edits1 add7 deletes in trunk/Source/ThirdParty/ANGLE
Roll ANGLE to 2022-03-31 (fe28a4295af087ee82b8f629b67176b95019af6d)
https://bugs.webkit.org/show_bug.cgi?id=238647
Large autogenerated ChangeLog elided.
Tested locally with MiniBrowser on M1.
Patch by Kenneth Russell <kbr@chromium.org> on 2022-04-04
Reviewed by Kimmo Kinnunen.
- 12:29 AM Changeset in webkit [292280] by
-
- 35 edits in trunk/Source/WebKit
IPC::StreamServerConnectionBase has only one subclass, it should be removed
https://bugs.webkit.org/show_bug.cgi?id=238676
Patch by Kimmo Kinnunen <kkinnunen@apple.com> on 2022-04-04
Reviewed by Wenson Hsieh.
Merge IPC::StreamServerConnectionBase and IPC::StreamServerConnection.
The base was useful when the concrete classes were templates per message receiver.
The concrete class was changed to use multiple message receivers, and the templating
was replaced with id lookup.
No new tests, refactor.
- GPUProcess/graphics/RemoteDisplayListRecorder.h:
- GPUProcess/graphics/RemoteGraphicsContextGL.h:
- GPUProcess/graphics/RemoteRenderingBackend.h:
- GPUProcess/graphics/WebGPU/RemoteAdapter.h:
- GPUProcess/graphics/WebGPU/RemoteBindGroup.h:
- GPUProcess/graphics/WebGPU/RemoteBindGroupLayout.h:
- GPUProcess/graphics/WebGPU/RemoteBuffer.h:
- GPUProcess/graphics/WebGPU/RemoteCommandBuffer.h:
- GPUProcess/graphics/WebGPU/RemoteCommandEncoder.h:
- GPUProcess/graphics/WebGPU/RemoteComputePassEncoder.h:
- GPUProcess/graphics/WebGPU/RemoteComputePipeline.h:
- GPUProcess/graphics/WebGPU/RemoteDevice.h:
- GPUProcess/graphics/WebGPU/RemoteExternalTexture.h:
- GPUProcess/graphics/WebGPU/RemoteGPU.h:
- GPUProcess/graphics/WebGPU/RemotePipelineLayout.h:
- GPUProcess/graphics/WebGPU/RemoteQuerySet.h:
- GPUProcess/graphics/WebGPU/RemoteQueue.h:
- GPUProcess/graphics/WebGPU/RemoteRenderBundle.h:
- GPUProcess/graphics/WebGPU/RemoteRenderBundleEncoder.h:
- GPUProcess/graphics/WebGPU/RemoteRenderPassEncoder.h:
- GPUProcess/graphics/WebGPU/RemoteRenderPipeline.h:
- GPUProcess/graphics/WebGPU/RemoteSampler.h:
- GPUProcess/graphics/WebGPU/RemoteShaderModule.h:
- GPUProcess/graphics/WebGPU/RemoteTexture.h:
- GPUProcess/graphics/WebGPU/RemoteTextureView.h:
- Platform/IPC/HandleMessage.h:
(IPC::handleMessageSynchronous):
- Platform/IPC/StreamConnectionWorkQueue.cpp:
(IPC::StreamConnectionWorkQueue::addStreamConnection):
(IPC::StreamConnectionWorkQueue::removeStreamConnection):
(IPC::StreamConnectionWorkQueue::processStreams):
- Platform/IPC/StreamConnectionWorkQueue.h:
- Platform/IPC/StreamMessageReceiver.h:
- Platform/IPC/StreamServerConnection.cpp:
(IPC::StreamServerConnection::StreamServerConnection):
(IPC::StreamServerConnection::startReceivingMessages):
(IPC::StreamServerConnection::stopReceivingMessages):
(IPC::StreamServerConnection::enqueueMessage):
(IPC::StreamServerConnection::tryAcquire):
(IPC::StreamServerConnection::acquireAll):
(IPC::StreamServerConnection::release):
(IPC::StreamServerConnection::releaseAll):
(IPC::StreamServerConnection::alignedSpan):
(IPC::StreamServerConnection::size):
(IPC::StreamServerConnection::clampedLimit const):
(IPC::StreamServerConnection::dispatchStreamMessages):
- Platform/IPC/StreamServerConnection.h:
(IPC::StreamServerConnection::sendSyncReply):
- Scripts/webkit/messages.py:
(generate_message_handler):
- Scripts/webkit/tests/TestWithStreamMessageReceiver.cpp:
(WebKit::TestWithStream::didReceiveStreamMessage):
- Shared/IPCStreamTester.h:
Apr 3, 2022:
- 11:18 PM Changeset in webkit [292279] by
-
- 2 edits in trunk/Source/WebCore
Make it hard to add a new CSS property to WebKit wihtout adding animation support
https://bugs.webkit.org/show_bug.cgi?id=238447
Reviewed by Dean Jackson.
It's easy to add a new CSS property to WebKit without thinking about animation support.
Down the line, it would be better to add support to the script dealing with CSSProperties.json
to automatically generate animation support where possible, but to get started we now
ASSERT() whether all properties have been found to have animated support, except those
known not to be animatable.
- animation/CSSPropertyAnimation.cpp:
(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):
- 7:35 PM Changeset in webkit [292278] by
-
- 2 edits in trunk/Source/WebCore
Standardize naming of WK_NETWORK_EXTENSION_LDFLAGS (from LD_FLAGS)
https://bugs.webkit.org/show_bug.cgi?id=238717
Reviewed by Wenson Hsieh.
No new tests, just a style fix.
- Configurations/WebCore.xcconfig:
- 6:14 PM Changeset in webkit [292277] by
-
- 2 edits in trunk/Source/WebCore
Document::addListenerTypeIfNeeded should not call pthread_get_specific 14 times
https://bugs.webkit.org/show_bug.cgi?id=238702
Reviewed by Cameron McCormack.
Document::addListenerTypeIfNeeded => pthread_get_specific showed up in
a profile of Preact-TodoMVC, and I verified by disassembly that the
generated code really does call pthread_get_specific 14x, along with
related inefficiencies.
Only worth about 0.5%, so I didn't A/B test it.
You could imagine lots of other ways to speed up this function /
functionality, but why don't we start with 14x and see where that takes
us.
- dom/Document.cpp:
(WebCore::Document::addListenerTypeIfNeeded): Use a local variable
because, like, come on.
- 12:51 PM Changeset in webkit [292276] by
-
- 2 edits in trunk/Source/WebCore
-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:] should fail fast if the given parameter wrapper has no backing object
https://bugs.webkit.org/show_bug.cgi?id=238635
Reviewed by Chris Fleizach.
If this method is called with a parameter wrapper object that has lost
its backing object, we should return early to avoid dereferencing a
null pointer.
This could happen in rare split-second transition states where a wrapper
has lost its backing object but has not yet been cleaned up by a notification.
This could also happen if WebKit is vending detached objects (e.g. via AXChildren)
in a similar transition state.
No test added because I haven't been able to find any scenario reproducing
this issue either in our existing layout tests or on real webpages.
rdar://90925399
- accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
- 1:04 AM Changeset in webkit [292275] by
-
- 6 edits in trunk/Source
_WKDataTask doesn't work in macCatalyst
https://bugs.webkit.org/show_bug.cgi?id=238655
Reviewed by Alexey Proskuryakov.
Source/WebCore/PAL:
- pal/spi/cf/CFNetworkSPI.h:
Source/WebKit:
- NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(-[WKNetworkSessionDelegate URLSession:downloadTask:didResumeAtOffset:expectedTotalBytes:]): Deleted.
Source/WTF:
- wtf/PlatformHave.h:
Enable HAVE(NSURLSESSION_TASK_DELEGATE) on macCatalyst.
Drive-by enable a few other things on macCatalyst.
Remove and simplify some always-true version checks.
Leave some comments about ones I'm not sure about.
Apr 2, 2022:
- 10:39 PM Changeset in webkit [292274] by
-
- 13 edits2 adds in trunk
[Cocoa] Automatically relayout the page when new fonts are installed
https://bugs.webkit.org/show_bug.cgi?id=238483
<rdar://problem/80544133>
Reviewed by Chris Dumez.
Source/WebCore:
This patch simply calls setNeedsRecalcStyleInAllFrames on every Page when we receive a
kCTFontManagerRegisteredFontsChangedNotification.
FontCache::invalidateAllFontCaches() can't do this directly because it's in platform/ and
therefore isn't allowed to know what Pages are. Instead, this patch takes a process-global
callback and calls that instead. This callback is set at initialization time.
Test: fast/text/install-font-style-recalc.html
- page/Page.cpp:
(WebCore::m_contentSecurityPolicyModeForExtension):
(WebCore::Page::firstTimeInitialization):
- page/Page.h:
- platform/graphics/FontCache.cpp:
(WebCore::Function<void):
(WebCore::FontCache::registerFontCacheInvalidationCallback):
(WebCore::FontCache::invalidateAllFontCaches):
- platform/graphics/FontCache.h:
Tools:
Make TestRunner::dumpResourceLoadStatistics() clear any currently-recorded statistics.
This avoids the problem where spurious layouts during the time when the page has been created but
before the test has begun record irrelevant statistics.
- WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::beginTesting):
(WTR::InjectedBundle::clearResourceLoadStatistics):
- WebKitTestRunner/InjectedBundle/InjectedBundle.h:
- WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::dumpResourceLoadStatistics):
LayoutTests:
- TestExpectations:
- fast/text/install-font-style-recalc-expected.txt: Added.
- fast/text/install-font-style-recalc.html: Added.
- platform/ios-wk2/TestExpectations:
- platform/mac-wk2/TestExpectations:
- 10:24 PM Changeset in webkit [292273] by
-
- 24 edits in trunk/Source
Plumb the IOSurfacePool through to ImageBufferBackend creation via ImageBuffer::CreationContext
https://bugs.webkit.org/show_bug.cgi?id=238695
Reviewed by Said Abou-Hallawa.
Wrap the existing HostWindow* and a new IOSurfacePool* pointers into a ImageBuffer::CreationContext
struct, and replace the HostWindow* argument with it in buffer creation functions.
RemoteLayerBackingStoreCollection::allocateBufferForBackingStore() passes the singleton IOSurfacePool
which is thus used in the non-GPU Process code path (DOM rendering disabled).
Source/WebCore:
- css/CSSFilterImageValue.cpp:
(WebCore::CSSFilterImageValue::image):
- platform/graphics/ConcreteImageBuffer.h:
(WebCore::ConcreteImageBuffer::create):
- platform/graphics/ImageBuffer.cpp:
(WebCore::ImageBuffer::create):
- platform/graphics/ImageBuffer.h:
(WebCore::ImageBuffer::CreationContext::CreationContext):
(WebCore::ImageBuffer::create):
- platform/graphics/ImageBufferBackend.h:
- platform/graphics/PlatformImageBuffer.h:
- platform/graphics/cairo/ImageBufferCairoImageSurfaceBackend.cpp:
(WebCore::ImageBufferCairoImageSurfaceBackend::create):
- platform/graphics/cairo/ImageBufferCairoImageSurfaceBackend.h:
- platform/graphics/cg/IOSurfacePool.cpp:
(WebCore::IOSurfacePool::poolStatistics const):
- platform/graphics/cg/ImageBufferCGBitmapBackend.cpp:
(WebCore::ImageBufferCGBitmapBackend::create):
- platform/graphics/cg/ImageBufferCGBitmapBackend.h:
- platform/graphics/cg/ImageBufferIOSurfaceBackend.cpp:
(WebCore::ImageBufferIOSurfaceBackend::create):
- platform/graphics/cg/ImageBufferIOSurfaceBackend.h:
- platform/graphics/displaylists/DisplayListImageBuffer.h:
Source/WebKit:
- Shared/RemoteLayerTree/CGDisplayListImageBufferBackend.cpp:
(WebKit::CGDisplayListImageBufferBackend::create):
- Shared/RemoteLayerTree/CGDisplayListImageBufferBackend.h:
- Shared/RemoteLayerTree/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStore::ensureFrontBuffer):
- Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.mm:
(WebKit::RemoteLayerBackingStoreCollection::allocateBufferForBackingStore):
- WebProcess/GPU/graphics/ImageBufferShareableBitmapBackend.cpp:
(WebKit::ImageBufferShareableBitmapBackend::create):
- WebProcess/GPU/graphics/ImageBufferShareableBitmapBackend.h:
- WebProcess/GPU/graphics/cocoa/ImageBufferShareableMappedIOSurfaceBackend.cpp:
(WebKit::ImageBufferShareableMappedIOSurfaceBackend::create):
- WebProcess/GPU/graphics/cocoa/ImageBufferShareableMappedIOSurfaceBackend.h:
- 8:56 PM Changeset in webkit [292272] by
-
- 43 edits in trunk/Source
Add default constructor to ASCIILiteral
https://bugs.webkit.org/show_bug.cgi?id=238700
Reviewed by Geoffrey Garen.
Add default constructor to ASCIILiteral, to replace the more verbose ASCIILiteral::null().
Source/JavaScriptCore:
- Scripts/tests/builtins/expected/JavaScriptCore-Builtin.Promise-Combined.js-result:
- Scripts/tests/builtins/expected/JavaScriptCore-Builtin.Promise-Separate.js-result:
- Scripts/tests/builtins/expected/JavaScriptCore-Builtin.prototype-Combined.js-result:
- Scripts/tests/builtins/expected/JavaScriptCore-Builtin.prototype-Separate.js-result:
- Scripts/tests/builtins/expected/JavaScriptCore-BuiltinConstructor-Combined.js-result:
- Scripts/tests/builtins/expected/JavaScriptCore-BuiltinConstructor-Separate.js-result:
- Scripts/tests/builtins/expected/JavaScriptCore-InternalClashingNames-Combined.js-result:
- Scripts/tests/builtins/expected/WebCore-AnotherGuardedInternalBuiltin-Separate.js-result:
- Scripts/tests/builtins/expected/WebCore-ArbitraryConditionalGuard-Separate.js-result:
- Scripts/tests/builtins/expected/WebCore-GuardedBuiltin-Separate.js-result:
- Scripts/tests/builtins/expected/WebCore-GuardedInternalBuiltin-Separate.js-result:
- Scripts/tests/builtins/expected/WebCore-UnguardedBuiltin-Separate.js-result:
- Scripts/tests/builtins/expected/WebCore-xmlCasingTest-Separate.js-result:
- Scripts/wkbuiltins/builtins_model.py:
(BuiltinFunction.fromString):
- runtime/ArrayBufferSharingMode.h:
(JSC::arrayBufferSharingModeName):
- runtime/IntlCollator.cpp:
(JSC::IntlCollator::initializeCollator):
(JSC::IntlCollator::usageString):
(JSC::IntlCollator::sensitivityString):
(JSC::IntlCollator::caseFirstString):
- runtime/IntlDateTimeFormat.cpp:
(JSC::IntlDateTimeFormat::initializeDateTimeFormat):
(JSC::IntlDateTimeFormat::hourCycleString):
(JSC::IntlDateTimeFormat::weekdayString):
(JSC::IntlDateTimeFormat::eraString):
(JSC::IntlDateTimeFormat::yearString):
(JSC::IntlDateTimeFormat::monthString):
(JSC::IntlDateTimeFormat::dayString):
(JSC::IntlDateTimeFormat::dayPeriodString):
(JSC::IntlDateTimeFormat::hourString):
(JSC::IntlDateTimeFormat::minuteString):
(JSC::IntlDateTimeFormat::secondString):
(JSC::IntlDateTimeFormat::timeZoneNameString):
(JSC::IntlDateTimeFormat::formatStyleString):
- runtime/IntlDisplayNames.cpp:
(JSC::IntlDisplayNames::styleString):
(JSC::IntlDisplayNames::typeString):
(JSC::IntlDisplayNames::fallbackString):
(JSC::IntlDisplayNames::languageDisplayString):
- runtime/IntlListFormat.cpp:
(JSC::IntlListFormat::styleString):
(JSC::IntlListFormat::typeString):
- runtime/IntlLocale.cpp:
(JSC::IntlLocale::initializeLocale):
- runtime/IntlNumberFormat.cpp:
(JSC::IntlNumberFormat::initializeNumberFormat):
(JSC::IntlNumberFormat::styleString):
(JSC::IntlNumberFormat::currencyDisplayString):
(JSC::IntlNumberFormat::notationString):
(JSC::IntlNumberFormat::currencySignString):
(JSC::IntlNumberFormat::unitDisplayString):
(JSC::IntlNumberFormat::compactDisplayString):
(JSC::IntlNumberFormat::signDisplayString):
(JSC::IntlNumberFormat::roundingModeString):
(JSC::IntlNumberFormat::trailingZeroDisplayString):
(JSC::IntlNumberFormat::roundingPriorityString):
- runtime/IntlObject.cpp:
(JSC::relevantExtensionKeyString):
- runtime/IntlRelativeTimeFormat.cpp:
(JSC::IntlRelativeTimeFormat::initializeRelativeTimeFormat):
(JSC::IntlRelativeTimeFormat::styleString):
- runtime/IntlSegmenter.cpp:
(JSC::IntlSegmenter::granularityString):
- runtime/JSObjectInlines.h:
(JSC::JSObject::putDirectInternal):
- runtime/TemporalDuration.cpp:
(JSC::TemporalDuration::total const):
- runtime/TemporalObject.cpp:
(JSC::temporalLargestUnit):
(JSC::temporalSmallestUnit):
- yarr/YarrErrorCode.cpp:
(JSC::Yarr::errorMessage):
Source/WebCore:
- css/makevalues.pl:
- dom/DOMException.cpp:
(WebCore::DOMException::description const):
- platform/cocoa/PasteboardCocoa.mm:
(WebCore::imageTypeToFakeFilename):
- platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::propertyIdToString):
Source/WebKit:
- NetworkProcess/WebStorage/LocalStorageDatabase.cpp:
(WebKit::LocalStorageDatabase::migrateItemTableIfNeeded):
- UIProcess/AuxiliaryProcessProxy.cpp:
(WebKit::AuxiliaryProcessProxy::sendMessage):
- WebProcess/Inspector/WebInspectorUI.cpp:
(WebKit::WebInspectorUI::setDockSide):
Source/WebKitLegacy:
- Storage/StorageAreaSync.cpp:
(WebKit::StorageAreaSync::migrateItemTableIfNeeded):
Source/WTF:
- wtf/cocoa/ResourceUsageCocoa.cpp:
(WTF::displayNameForVMTag):
- wtf/text/ASCIILiteral.h:
- 2:52 PM Changeset in webkit [292271] by
-
- 3 edits in trunk/Tools
Add to MiniBrowser the ability to log a textual representation of the AX trees for the current page.
https://bugs.webkit.org/show_bug.cgi?id=238566
<rdar://problem/91059308>
Reviewed by Chris Fleizach and Simon Fraser.
MiniBrowser can now log a textual representation of the AX trees via
Debug > Log Accessibility Trees menu item, or pressing the keystroke
Cmd Opt A.
- MiniBrowser/mac/MainMenu.xib:
- MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController logAccessibilityTrees:]):
- 2:03 PM Changeset in webkit [292270] by
-
- 21 edits in trunk
[Ruby] Remove incorrect implicit integral floor in RenderRubyText::adjustInlineDirectionLineBounds
https://bugs.webkit.org/show_bug.cgi?id=238671
Reviewed by Simon Fraser.
Source/WebCore:
In case of a fractional width value, the unintended integral flooring makes us believe we've got content overflow and we apply
a fractional inset which slightly moves the content in the inline direction.
- rendering/RenderRubyText.cpp:
(WebCore::RenderRubyText::adjustInlineDirectionLineBounds const):
LayoutTests:
- TestExpectations:
- fast/ruby/bopomofo-mixed-expected.txt:
- platform/mac/fast/css/bidi-override-in-anonymous-block-expected.txt:
- platform/mac/fast/ruby/bopomofo-expected.txt:
- platform/mac/fast/ruby/bopomofo-letter-spacing-expected.txt:
- platform/mac/fast/ruby/bopomofo-rl-expected.txt:
- platform/mac/fast/ruby/ruby-run-break-expected.txt:
- platform/mac/fast/ruby/ruby-runs-expected.txt:
- platform/mac/fast/ruby/ruby-runs-spans-expected.txt:
- platform/mac/fast/ruby/ruby-text-before-after-content-expected.txt:
- platform/mac/fast/ruby/rubyDOM-insert-rt-expected.txt:
- platform/mac/fast/ruby/rubyDOM-insert-text1-expected.txt:
- 1:36 PM Changeset in webkit [292269] by
-
- 2 edits in trunk/Source/JavaScriptCore
AI should do int32 optimization in ValueRep
https://bugs.webkit.org/show_bug.cgi?id=238699
Reviewed by Saam Barati.
When constant folding an int52 into a ValueRep AI doesn't
do our normal int32 boxing optimization. I'm not sure if
it matters since I couldn't find a test but it probably
doesn't hurt.
- dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
- 11:38 AM Changeset in webkit [292268] by
-
- 8 edits in trunk
[css-ui] Only apply 'overflow:visible' to elements that support menulist appearance
https://bugs.webkit.org/show_bug.cgi?id=238501
Reviewed by Tim Nguyen.
Source/WebCore:
This CL adds support to alias appearance <compat-auto> keywords to 'auto' for menulist.
When an element supports '-webkit-appearance: menulist' or 'appearance: menulist' appearance,
we will apply 'overflow: visible'. The existing code, though, apply 'overflow: visible' before
the 'menulist' appearance is workable. This patch corrects it.
It is an import of chromium CL at
https://chromium.googlesource.com/chromium/src.git/+/1635202d8979f4d42b96021d8386278261e52768
- rendering/RenderTheme.cpp:
(WebCore::RenderTheme::adjustAppearanceForElement const):
(WebCore::RenderTheme::adjustMenuListStyle const):
- rendering/RenderThemeAdwaita.cpp:
(WebCore::RenderThemeAdwaita::adjustMenuListStyle const):
- rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::adjustMenuListStyle const):
- rendering/RenderThemeWin.cpp:
(WebCore::RenderThemeWin::adjustMenuListStyle const):
- style/StyleAdjuster.cpp:
(WebCore::Style::Adjuster::adjust const):
LayoutTests:
Unskip the tests that are now passing.
- 9:36 AM Changeset in webkit [292267] by
-
- 2 edits in trunk/Source/WebKit
[Cocoa] semaphore_timedwait() can return KERN_ABORTED
https://bugs.webkit.org/show_bug.cgi?id=238694
Reviewed by Geoffrey Garen.
I was hitting this assert while debugging WebKit today.
- Platform/IPC/darwin/IPCSemaphoreDarwin.cpp:
(IPC::Semaphore::waitFor):
- 9:22 AM Changeset in webkit [292266] by
-
- 8 edits in trunk
CSP: Improve compatibility of source matching
https://bugs.webkit.org/show_bug.cgi?id=235873
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
Update expectation as passing.
- web-platform-tests/content-security-policy/connect-src/connect-src-websocket-self.sub-expected.txt:
Source/WebCore:
- Improved handling of protocol changes:
- For host and self sources direct upgrades are allowed (ws->wss) (http->https already worked).
- For self sources side grades are now allowed (http->ws).
- For self sources upgrades are always allowed (*->https, *->wss).
This is documented here: https://www.w3.org/TR/CSP3/#match-url-to-source-expression
I also included some minor cleanups and adding of comments.
- page/csp/ContentSecurityPolicy.cpp:
(WebCore::ContentSecurityPolicy::updateSourceSelf):
(WebCore::ContentSecurityPolicy::protocolMatchesSelf const): Deleted.
- page/csp/ContentSecurityPolicy.h:
(WebCore::ContentSecurityPolicy::selfProtocol const):
- page/csp/ContentSecurityPolicySource.cpp:
(WebCore::ContentSecurityPolicySource::ContentSecurityPolicySource):
(WebCore::ContentSecurityPolicySource::matches const):
(WebCore::ContentSecurityPolicySource::schemeMatches const):
(WebCore::ContentSecurityPolicySource::portMatches const):
- page/csp/ContentSecurityPolicySource.h:
- page/csp/ContentSecurityPolicySourceList.cpp:
(WebCore::ContentSecurityPolicySourceList::isProtocolAllowedByStar const):
(WebCore::ContentSecurityPolicySourceList::parse):
- 8:59 AM Changeset in webkit [292265] by
-
- 2 edits in trunk/Source/WebKit
GTK doesn't compile with ENABLE_ACCESSIBILITY=0
https://bugs.webkit.org/show_bug.cgi?id=238669
Reviewed by Michael Catanzaro.
Fix GTK compilation with ENABLE_ACCESSIBILITY=0
No new tests.
- UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseDispose):
(webkit_web_view_base_class_init):
- 6:35 AM Changeset in webkit [292264] by
-
- 11 edits in trunk/Source
Expose AXObjectCache::treeData to the UI process.
https://bugs.webkit.org/show_bug.cgi?id=238563
<rdar://problem/91057915>
Reviewed by Chris Fleizach.
Source/WebCore:
Added Page::accessibilityTreeData so that it can be invoked from the UI
process. This will be used to log a textual representation of the AX
trees from the browser process.
- page/Page.cpp:
(WebCore::Page::accessibilityTreeData const):
- page/Page.h:
Source/WebKit:
Exposed Page::accessibilityTreeData so that it can be invoked from the UI
process. This will be used to log a textual representation of the AX
trees from the browser process.
- UIProcess/API/Cocoa/WKWebView.h:
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView retrieveAccessibilityTreeData:]):
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::getAccessibilityTreeData):
- UIProcess/WebPageProxy.h:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::getAccessibilityTreeData):
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
- 3:57 AM Changeset in webkit [292263] by
-
- 198 edits7 adds9 deletes in trunk
[GTK] Replace gtk-doc with gi-docgen
https://bugs.webkit.org/show_bug.cgi?id=226662
Reviewed by Michael Catanzaro.
Import two new CMake modules which define commands to easy setup of GObject-Introspection
and gi-docgen. These in turn allow to remove a bunch of duplicated CMake code, reuse
the same for both the WPE and GTK ports, and remove the gnarly DocBook templates and
other auxiliary files previously used by gtk-doc (which amount to a sizeable amount of
code).
While at it, do a quick pass to fix the most egregious issues reported by gi-docgen's
linting mode and that all public symbols end up with at least some documentation in
the generated output. Follow-up patches will be needed to keep adapting to the style
encouraged by gi-docgen, fix linking between documented entities, make code examples
display properly, and a few other things.
.:
- Source/PlatformGTK.cmake: Adapted to use the new CMake modules.
- Source/PlatformWPE.cmake: Ditto.
- Source/cmake/FindGI.cmake: Added.
- Source/cmake/FindGIDocgen.cmake: Added.
- Source/cmake/FindGObjectIntrospection.cmake: Removed.
- Source/cmake/OptionsGTK.cmake: Adapted to use the new CMake modules.
- Source/cmake/OptionsWPE.cmake: Ditto.
Source/JavaScriptCore:
- API/glib/JSCClass.cpp: Fix documentation comments.
- API/glib/JSCContext.cpp: Ditto.
- API/glib/JSCDefines.h: Ditto.
- API/glib/JSCException.cpp: Ditto.
- API/glib/JSCValue.cpp: Ditto.
- API/glib/JSCVersion.cpp: Ditto.
- API/glib/JSCVersion.h.in: Ditto.
- API/glib/JSCVirtualMachine.cpp: Ditto.
- API/glib/JSCWeakValue.cpp: Ditto.
- API/glib/docs/jsc-glib-4.0-sections.txt: Removed.
- API/glib/docs/jsc-glib-4.0.types: Removed.
- API/glib/docs/jsc-glib-docs.sgml: Removed.
- API/glib/docs/jsc.toml.in: Added.
- PlatformGTK.cmake: Adapt to use the new CMake modules.
Source/WebKit:
- PlatformGTK.cmake: Adapt to use the new CMake modules.
- PlatformWPE.cmake: Ditto.
- Shared/API/glib/WebKitContextMenu.cpp: Fix documentation comments.
- Shared/API/glib/WebKitContextMenuItem.cpp: Ditto.
- Shared/API/glib/WebKitHitTestResult.cpp: Ditto.
- Shared/API/glib/WebKitURIRequest.cpp: Ditto.
- Shared/API/glib/WebKitURIResponse.cpp: Ditto.
- Shared/API/glib/WebKitUserMessage.cpp: Ditto.
- UIProcess/API/glib/WebKitApplicationInfo.cpp: Ditto.
- UIProcess/API/glib/WebKitAuthenticationRequest.cpp: Ditto.
- UIProcess/API/glib/WebKitAutomationSession.cpp: Ditto.
- UIProcess/API/glib/WebKitBackForwardList.cpp: Ditto.
- UIProcess/API/glib/WebKitBackForwardListItem.cpp: Ditto.
- UIProcess/API/glib/WebKitCookieManager.cpp: Ditto.
- UIProcess/API/glib/WebKitCredential.cpp: Ditto.
- UIProcess/API/glib/WebKitDeviceInfoPermissionRequest.cpp: Ditto.
- UIProcess/API/glib/WebKitDownload.cpp: Ditto.
- UIProcess/API/glib/WebKitEditorState.cpp: Ditto.
- UIProcess/API/glib/WebKitError.cpp: Ditto.
- UIProcess/API/glib/WebKitFaviconDatabase.cpp: Ditto.
- UIProcess/API/glib/WebKitFileChooserRequest.cpp: Ditto.
- UIProcess/API/glib/WebKitFindController.cpp: Ditto.
- UIProcess/API/glib/WebKitFormSubmissionRequest.cpp: Ditto.
- UIProcess/API/glib/WebKitGeolocationManager.cpp: Ditto.
- UIProcess/API/glib/WebKitGeolocationPermissionRequest.cpp: Ditto.
- UIProcess/API/glib/WebKitInputMethodContext.cpp: Ditto.
(webkit_input_method_context_class_init): Ditto.
- UIProcess/API/glib/WebKitInstallMissingMediaPluginsPermissionRequest.cpp: Ditto.
- UIProcess/API/glib/WebKitJavascriptResult.cpp: Ditto.
- UIProcess/API/glib/WebKitMediaKeySystemPermissionRequest.cpp: Ditto.
- UIProcess/API/glib/WebKitMemoryPressureSettings.cpp: Ditto.
- UIProcess/API/glib/WebKitMimeInfo.cpp: Ditto.
- UIProcess/API/glib/WebKitNavigationAction.cpp: Ditto.
- UIProcess/API/glib/WebKitNavigationPolicyDecision.cpp: Ditto.
- UIProcess/API/glib/WebKitNetworkProxySettings.cpp: Ditto.
- UIProcess/API/glib/WebKitNotification.cpp: Ditto.
- UIProcess/API/glib/WebKitNotificationPermissionRequest.cpp: Ditto.
- UIProcess/API/glib/WebKitOptionMenu.cpp: Ditto.
- UIProcess/API/glib/WebKitOptionMenuItem.cpp: Ditto.
- UIProcess/API/glib/WebKitPermissionRequest.cpp: Ditto.
- UIProcess/API/glib/WebKitPlugin.cpp: Ditto.
- UIProcess/API/glib/WebKitPointerLockPermissionRequest.cpp: Ditto.
- UIProcess/API/glib/WebKitPolicyDecision.cpp: Ditto.
- UIProcess/API/glib/WebKitResponsePolicyDecision.cpp: Ditto.
- UIProcess/API/glib/WebKitScriptDialog.cpp: Ditto.
- UIProcess/API/glib/WebKitSecurityManager.cpp: Ditto.
- UIProcess/API/glib/WebKitSecurityOrigin.cpp: Ditto.
- UIProcess/API/glib/WebKitSettings.cpp: Ditto.
- UIProcess/API/glib/WebKitURISchemeRequest.cpp: Ditto.
- UIProcess/API/glib/WebKitURISchemeResponse.cpp: Ditto.
(webkit_uri_scheme_response_class_init): Ditto.
- UIProcess/API/glib/WebKitURIUtilities.cpp: Ditto.
- UIProcess/API/glib/WebKitUserContent.cpp: Ditto.
- UIProcess/API/glib/WebKitUserContentFilterStore.cpp: Ditto.
- UIProcess/API/glib/WebKitUserContentManager.cpp: Ditto.
- UIProcess/API/glib/WebKitUserMediaPermissionRequest.cpp: Ditto.
(webkit_user_media_permission_request_class_init): Ditto.
- UIProcess/API/glib/WebKitVersion.cpp: Ditto.
- UIProcess/API/glib/WebKitWebContext.cpp: Ditto.
- UIProcess/API/glib/WebKitWebResource.cpp: Ditto.
- UIProcess/API/glib/WebKitWebView.cpp: Ditto.
- UIProcess/API/glib/WebKitWebViewSessionState.cpp: Ditto.
- UIProcess/API/glib/WebKitWebsiteData.cpp: Ditto.
- UIProcess/API/glib/WebKitWebsiteDataAccessPermissionRequest.cpp: Ditto.
- UIProcess/API/glib/WebKitWebsiteDataManager.cpp: Ditto.
- UIProcess/API/glib/WebKitWebsitePolicies.cpp: Ditto.
- UIProcess/API/glib/WebKitWindowProperties.cpp: Ditto.
(webkit_window_properties_class_init): Ditto.
- UIProcess/API/gtk/WebKitAuthenticationDialog.h: Ditto.
- UIProcess/API/gtk/WebKitAuthenticationRequest.h: Ditto.
- UIProcess/API/gtk/WebKitAutomationSession.h: Ditto.
- UIProcess/API/gtk/WebKitBackForwardList.h: Ditto.
- UIProcess/API/gtk/WebKitBackForwardListItem.h: Ditto.
- UIProcess/API/gtk/WebKitColorChooserRequest.cpp: Ditto.
(webkit_color_chooser_request_class_init): Ditto.
- UIProcess/API/gtk/WebKitContextMenu.h: Ditto.
- UIProcess/API/gtk/WebKitCookieManager.h: Ditto.
- UIProcess/API/gtk/WebKitDefines.h: Ditto.
- UIProcess/API/gtk/WebKitDeviceInfoPermissionRequest.h: Ditto.
- UIProcess/API/gtk/WebKitDownload.h: Ditto.
- UIProcess/API/gtk/WebKitEditorState.h: Ditto.
- UIProcess/API/gtk/WebKitError.h: Ditto.
- UIProcess/API/gtk/WebKitFaviconDatabase.h: Ditto.
- UIProcess/API/gtk/WebKitFileChooserRequest.h: Ditto.
- UIProcess/API/gtk/WebKitFindController.h: Ditto.
- UIProcess/API/gtk/WebKitFormSubmissionRequest.h: Ditto.
- UIProcess/API/gtk/WebKitGeolocationManager.h: Ditto.
- UIProcess/API/gtk/WebKitGeolocationPermissionRequest.h: Ditto.
- UIProcess/API/gtk/WebKitHitTestResult.h: Ditto.
- UIProcess/API/gtk/WebKitInstallMissingMediaPluginsPermissionRequest.h: Ditto.
- UIProcess/API/gtk/WebKitMediaKeySystemPermissionRequest.h: Ditto.
- UIProcess/API/gtk/WebKitNavigationPolicyDecision.h: Ditto.
- UIProcess/API/gtk/WebKitNotification.h: Ditto.
- UIProcess/API/gtk/WebKitOptionMenu.h: Ditto.
- UIProcess/API/gtk/WebKitPlugin.h: Ditto.
- UIProcess/API/gtk/WebKitPointerLockPermissionRequest.h: Ditto.
- UIProcess/API/gtk/WebKitPolicyDecision.h: Ditto.
- UIProcess/API/gtk/WebKitPrintCustomWidget.cpp: Ditto.
- UIProcess/API/gtk/WebKitPrintCustomWidget.h: Ditto.
- UIProcess/API/gtk/WebKitPrintOperation.cpp: Ditto.
- UIProcess/API/gtk/WebKitPrintOperation.h: Ditto.
- UIProcess/API/gtk/WebKitResponsePolicyDecision.h: Ditto.
- UIProcess/API/gtk/WebKitSecurityManager.h: Ditto.
- UIProcess/API/gtk/WebKitSettings.h: Ditto.
- UIProcess/API/gtk/WebKitURIRequest.h: Ditto.
- UIProcess/API/gtk/WebKitURIResponse.h: Ditto.
- UIProcess/API/gtk/WebKitURISchemeRequest.h: Ditto.
- UIProcess/API/gtk/WebKitURISchemeResponse.h: Ditto.
- UIProcess/API/gtk/WebKitUserContentFilterStore.h: Ditto.
- UIProcess/API/gtk/WebKitUserContentManager.h: Ditto.
- UIProcess/API/gtk/WebKitUserMediaPermissionRequest.h: Ditto.
- UIProcess/API/gtk/WebKitUserMessage.h: Ditto.
- UIProcess/API/gtk/WebKitVersion.h.in: Ditto.
- UIProcess/API/gtk/WebKitWebContext.h: Ditto.
- UIProcess/API/gtk/WebKitWebInspector.cpp: Ditto.
- UIProcess/API/gtk/WebKitWebInspector.h: Ditto.
- UIProcess/API/gtk/WebKitWebResource.h: Ditto.
- UIProcess/API/gtk/WebKitWebView.h: Ditto.
- UIProcess/API/gtk/WebKitWebViewBase.cpp: Ditto.
- UIProcess/API/gtk/WebKitWebViewDialog.h: Ditto.
- UIProcess/API/gtk/WebKitWebsiteDataAccessPermissionRequest.h: Ditto.
- UIProcess/API/gtk/WebKitWebsiteDataManager.h: Ditto.
- UIProcess/API/gtk/WebKitWebsitePolicies.h: Ditto.
- UIProcess/API/gtk/WebKitWindowProperties.h: Ditto.
- UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt: Removed.
- UIProcess/API/gtk/docs/webkit2gtk-4.0.types: Removed.
- UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Removed.
- UIProcess/API/wpe/WebKitAuthenticationRequest.h: Fix documentation comments.
- UIProcess/API/wpe/WebKitAutomationSession.h: Ditto.
- UIProcess/API/wpe/WebKitBackForwardList.h: Ditto.
- UIProcess/API/wpe/WebKitBackForwardListItem.h: Ditto.
- UIProcess/API/wpe/WebKitColor.cpp: Ditto.
- UIProcess/API/wpe/WebKitColor.h: Ditto.
- UIProcess/API/wpe/WebKitContextMenu.h: Ditto.
- UIProcess/API/wpe/WebKitContextMenuItem.h: Ditto.
- UIProcess/API/wpe/WebKitCookieManager.h: Ditto.
- UIProcess/API/wpe/WebKitDefines.h: Ditto.
- UIProcess/API/wpe/WebKitDeviceInfoPermissionRequest.h: Ditto.
- UIProcess/API/wpe/WebKitDownload.h: Ditto.
- UIProcess/API/wpe/WebKitEditorState.h: Ditto.
- UIProcess/API/wpe/WebKitError.h: Ditto.
- UIProcess/API/wpe/WebKitFaviconDatabase.h: Ditto.
- UIProcess/API/wpe/WebKitFileChooserRequest.h: Ditto.
- UIProcess/API/wpe/WebKitFindController.h: Ditto.
- UIProcess/API/wpe/WebKitFormSubmissionRequest.h: Ditto.
- UIProcess/API/wpe/WebKitGeolocationManager.h: Ditto.
- UIProcess/API/wpe/WebKitGeolocationPermissionRequest.h: Ditto.
- UIProcess/API/wpe/WebKitHitTestResult.h: Ditto.
- UIProcess/API/wpe/WebKitInputMethodContext.h: Ditto.
- UIProcess/API/wpe/WebKitInstallMissingMediaPluginsPermissionRequest.h: Ditto.
- UIProcess/API/wpe/WebKitMediaKeySystemPermissionRequest.h: Ditto.
- UIProcess/API/wpe/WebKitNavigationPolicyDecision.h: Ditto.
- UIProcess/API/wpe/WebKitNotification.h: Ditto.
- UIProcess/API/wpe/WebKitOptionMenu.h: Ditto.
- UIProcess/API/wpe/WebKitPlugin.h: Ditto.
- UIProcess/API/wpe/WebKitPolicyDecision.h: Ditto.
- UIProcess/API/wpe/WebKitRectangle.cpp: Ditto.
- UIProcess/API/wpe/WebKitRectangle.h: Ditto.
- UIProcess/API/wpe/WebKitResponsePolicyDecision.h: Ditto.
- UIProcess/API/wpe/WebKitSecurityManager.h: Ditto.
- UIProcess/API/wpe/WebKitSettings.h: Ditto.
- UIProcess/API/wpe/WebKitURIRequest.h: Ditto.
- UIProcess/API/wpe/WebKitURIResponse.h: Ditto.
- UIProcess/API/wpe/WebKitURISchemeRequest.h: Ditto.
- UIProcess/API/wpe/WebKitURISchemeResponse.h: Ditto.
- UIProcess/API/wpe/WebKitUserContentFilterStore.h: Ditto.
- UIProcess/API/wpe/WebKitUserContentManager.h: Ditto.
- UIProcess/API/wpe/WebKitUserMediaPermissionRequest.h: Ditto.
- UIProcess/API/wpe/WebKitUserMessage.h: Ditto.
- UIProcess/API/wpe/WebKitVersion.h.in: Ditto.
- UIProcess/API/wpe/WebKitWebContext.h: Ditto.
- UIProcess/API/wpe/WebKitWebResource.h: Ditto.
- UIProcess/API/wpe/WebKitWebView.h: Ditto.
- UIProcess/API/wpe/WebKitWebViewBackend.cpp: Ditto.
- UIProcess/API/wpe/WebKitWebViewWPE.cpp: Ditto.
- UIProcess/API/wpe/WebKitWebsiteDataAccessPermissionRequest.h: Ditto.
- UIProcess/API/wpe/WebKitWebsiteDataManager.h: Ditto.
- UIProcess/API/wpe/WebKitWebsitePolicies.h: Ditto.
- UIProcess/API/wpe/WebKitWindowProperties.h: Ditto.
- UIProcess/API/wpe/docs/wpe-1.0-sections.txt: Removed.
- UIProcess/API/wpe/docs/wpe-docs.sgml: Removed.
- WebProcess/InjectedBundle/API/glib/WebKitFrame.cpp: Fix documentation comments.
- WebProcess/InjectedBundle/API/glib/WebKitWebEditor.cpp: Ditto.
- WebProcess/InjectedBundle/API/glib/WebKitWebExtension.cpp: Ditto.
- WebProcess/InjectedBundle/API/glib/WebKitWebHitTestResult.cpp: Ditto.
- WebProcess/InjectedBundle/API/glib/WebKitWebPage.cpp: Ditto.
- WebProcess/InjectedBundle/API/gtk/DOM/docs/webkitdomgtk-4.0-sections.txt: Removed.
- WebProcess/InjectedBundle/API/gtk/DOM/docs/webkitdomgtk-docs.sgml: Removed.
- WebProcess/InjectedBundle/API/gtk/WebKitFrame.h: Fix documentation comments.
- WebProcess/InjectedBundle/API/gtk/WebKitWebPage.h: Ditto.
- WebProcess/InjectedBundle/API/wpe/WebKitFrame.h: Ditto.
- WebProcess/InjectedBundle/API/wpe/WebKitWebPage.h: Ditto.
- WebProcess/InjectedBundle/API/wpe/docs/wpe-webextensions-1.0-sections.txt: Removed.
- WebProcess/InjectedBundle/API/wpe/docs/wpe-webextensions-docs.sgml: Removed.
- gtk/webkit2gtk-webextension.toml.in: Added.
- gtk/webkit2gtk.toml.in: Added.
- wpe/wpewebextension.toml.in: Added.
- wpe/wpewebkit.toml.in: Added.
Tools:
- gtkdoc/generate-gtkdoc: Removed.
- gtkdoc/gtkdoc.py: Removed.
(GTKDoc): Deleted.
(GTKDoc.init): Deleted.
(GTKDoc.generate): Deleted.
(GTKDoc._delete_file_if_exists): Deleted.
(GTKDoc._create_directory_if_nonexistent): Deleted.
(GTKDoc._raise_exception_if_file_inaccessible): Deleted.
(GTKDoc._output_has_warnings): Deleted.
(GTKDoc._ask_yes_or_no_question): Deleted.
(GTKDoc._run_command): Deleted.
(GTKDoc._copy_doc_files_to_output_dir): Deleted.
(GTKDoc._copy_doc_files_to_output_dir.copy_file_replacing_existing): Deleted.
(GTKDoc._copy_doc_files_to_output_dir.copy_all_files_in_directory): Deleted.
(GTKDoc._write_version_xml): Deleted.
(GTKDoc._ignored_files_basenames): Deleted.
(GTKDoc._run_gtkdoc_scan): Deleted.
(GTKDoc._run_gtkdoc_scangobj): Deleted.
(GTKDoc._run_gtkdoc_mkdb): Deleted.
(GTKDoc._run_gtkdoc_mkhtml): Deleted.
(GTKDoc._run_gtkdoc_fixxref): Deleted.
(GTKDoc.rebase_installed_docs): Deleted.
(GTKDoc.api_missing_documentation): Deleted.
(PkgConfigGTKDoc): Deleted.
(PkgConfigGTKDoc.init): Deleted.
- 12:20 AM Changeset in webkit [292262] by
-
- 5 edits3 adds in trunk
Remove notifications from notification list when notification gets closed
https://bugs.webkit.org/show_bug.cgi?id=238665
Reviewed by Darin Adler.
Source/WebCore:
Test: http/tests/workers/service/getnotifications-stop.html
- Modules/notifications/Notification.cpp:
(WebCore::Notification::stop):
Do not destroy persistent permissions when the JS object gets stopped.
Source/WebKit:
Cancelling a notification should trigger the close steps, which means removing the notification from the notification list.
- UIProcess/Notifications/WebNotificationManagerProxy.cpp:
(WebKit::WebNotificationManagerProxy::cancel):
(WebKit::WebNotificationManagerProxy::didDestroyNotification):
LayoutTests:
- http/tests/workers/service/getnotifications-stop-expected.txt: Added.
- http/tests/workers/service/getnotifications-stop.html: Added.
- http/tests/workers/service/resources/getNotifications-iframe.html: Added.
Apr 1, 2022:
- 11:33 PM Changeset in webkit [292261] by
-
- 2 edits in trunk/Source/WebKit
[iOS] WKFullScreenWindowController's UIViewController leaks after entering element fullscreen
https://bugs.webkit.org/show_bug.cgi?id=238684
Reviewed by Eric Carlson.
The window controller's
_rootViewController
is aRetainPtr
, but we're missing anadoptNS
when creating a
new view controller. Fix the leak by usingadoptNS
to prevent the redundant-retain
when constructing
RetainPtr
.
- UIProcess/ios/fullscreen/WKFullScreenWindowControllerIOS.mm:
(-[WKFullScreenWindowController enterFullScreen]):
- 11:27 PM Changeset in webkit [292260] by
-
- 2 edits in trunk/Source/WebKit
[iOS] Several tests in media/modern-media-controls crash in -[WKActionSheetAssistant _uiMenuElementsForMediaControlContextMenuItems:]
https://bugs.webkit.org/show_bug.cgi?id=238687
Reviewed by Tim Horton.
Fixes several debug assertions that are hit when running layout tests in media/modern-media-controls, due to
exercising undefined behavior in the case where there is only one item. This is because we currently use
Vector's move assignment operator to setitems
toitems[0].children
; however, this move assignment operator
starts by calling the destructor on the contents ofitem
, which puts the first item's vector of children in an
invalid state.
Instead, simply add a new temporary variable, and move into the temporary variable instead.
- UIProcess/ios/WKActionSheetAssistant.mm:
(-[WKActionSheetAssistant _uiMenuElementsForMediaControlContextMenuItems:]):
(-[WKActionSheetAssistant showMediaControlsContextMenu:items:completionHandler:]):
- 11:10 PM Changeset in webkit [292259] by
-
- 4 edits in trunk/Tools
Fix internal iOS build
https://bugs.webkit.org/show_bug.cgi?id=238032
This is what we get when we add files to unified builds.
- TestWebKitAPI/Tests/WebKitCocoa/FindInPage.mm:
- TestWebKitAPI/Tests/WebKitCocoa/ImageAnalysisTests.mm:
- TestWebKitAPI/ios/UIKitSPI.h:
- 10:18 PM Changeset in webkit [292258] by
-
- 16 edits in trunk/Source
Stop copying StagedFrameworks to the secondary path by default
https://bugs.webkit.org/show_bug.cgi?id=238688
Reviewed by Saam Barati.
Decoupled COPY_STAGED_FRAMEWORKS_TO_SECONDARY_PATH from USE_SYSTEM_CONTENT_PATH so we won't
always copy frameworks to the secondary path on macOS. Instead, the build configuration can set
COPY_STAGED_FRAMEWORKS_TO_SECONDARY_PATH as appropriate.
Source/JavaScriptCore:
- Configurations/Base.xcconfig:
Source/ThirdParty/ANGLE:
- Configurations/ANGLE-dynamic.xcconfig:
Source/ThirdParty/libwebrtc:
- Configurations/libwebrtc.xcconfig:
Source/WebCore:
- Configurations/WebCore.xcconfig:
Source/WebGPU:
- Configurations/WebGPU.xcconfig:
Source/WebInspectorUI:
- Configurations/WebInspectorUIFramework.xcconfig:
Source/WebKit:
- Configurations/Base.xcconfig:
Source/WebKitLegacy/mac:
- Configurations/Base.xcconfig:
- 8:53 PM Changeset in webkit [292257] by
-
- 2 edits in trunk/LayoutTests
[CSS-contain] Update select element failures with bugzilla link.
Unreviewed.
- 8:46 PM Changeset in webkit [292256] by
-
- 2 edits in trunk/Source/WebKit
Unreviewed, fix non-unified build after r292225
- Platform/IPC/unix/IPCSemaphoreUnix.cpp: Add poll.h and remove
duplicated Decoder.h and Encoder.h headers.
- 8:29 PM Changeset in webkit [292255] by
-
- 5 edits in trunk
Avoid initializing default WKWebsiteDataStore in -[WKWebViewConfiguration copyWithZone]
https://bugs.webkit.org/show_bug.cgi?id=238531
rdar://90628101
Reviewed by Tim Horton.
Source/WebKit:
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _initializeWithConfiguration:]):
- UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
(-[WKWebViewConfiguration copyWithZone:]):
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm:
(TestWebKitAPI::TEST):
- 8:04 PM Changeset in webkit [292254] by
-
- 21 edits3 adds in trunk
WKBundlePageUIClient console message support should include source URL, column number, and console messages with arguments
https://bugs.webkit.org/show_bug.cgi?id=238032
Patch by Jeff Miller <jeffm@apple.com> on 2022-04-01
Reviewed by Alex Christensen.
Source/JavaScriptCore:
Add a function to ScriptArguments to get a vector of argument strings. As we do in
ScriptArguments::getFirstArgumentAsString(), avoid triggering Proxy traps on a Proxy object when
generating the vector.
- inspector/ScriptArguments.cpp:
(Inspector::ScriptArguments::getArgumentAtIndexAsString const):
Refactored from getFirstArgumentAsString().
(Inspector::ScriptArguments::getFirstArgumentAsString const):
Use getArgumentAtIndexAsString().
(Inspector::ScriptArguments::getArgumentsAsStrings const):
- inspector/ScriptArguments.h:
Source/WebCore:
Add a new ChromeClient addMessageWithArgumentsToConsole() member function for adding a console
message that includes formatted arguments. I left the existing behavior of addMessageToConsole()
unchanged since layout tests expect to get the console message without these arguments.
New API test was added in TestWebKitAPI/Tests/WebKitCocoa/ConsoleMessageWithDetails.mm.
- loader/EmptyClients.h:
Added addMessageWithArgumentsToConsole().
- page/ChromeClient.h:
(WebCore::ChromeClient::addMessageWithArgumentsToConsole):
Added, subclasses can optionally override this.
- page/PageConsoleClient.cpp:
(WebCore::additionalArgumentsFromArgumentsVector):
Added, pulls out any additional arguments beyond the initial message.
(WebCore::PageConsoleClient::addMessage):
Create a Span of any message arguments and include it when calling the new
addMessageWithArgumentsToConsole() function.
(WebCore::PageConsoleClient::messageWithTypeAndLevel):
Ditto.
Source/WebKit:
Add a new ChromeClient addMessageWithArgumentsToConsole() member function for adding a console
message that includes formatted arguments. I left the existing behavior of addMessageToConsole()
unchanged since layout tests expect to get the console message without these arguments.
- Shared/API/APIArray.cpp:
(API::Array::createStringArray):
Added, creates an array from a Span.
- Shared/API/APIArray.h:
- WebProcess/InjectedBundle/API/APIInjectedBundlePageUIClient.h:
(API::InjectedBundle::PageUIClient::willAddMessageWithArgumentsToConsole):
Added.
- WebProcess/InjectedBundle/API/c/WKBundlePageUIClient.h:
Add WKBundlePageUIClientV5 with a new willAddMessageWithDetailsToConsole callback. This callback is
similar to the existing willAddMessageToConsole callback, but includes any message arguments, the
column number, and source URL.
- WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
(WebKit::InjectedBundlePageUIClient::willAddMessageWithArgumentsToConsole):
Added, invokes the new willAddMessageWithDetailsToConsole callback.
- WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
Add a new bundle page UI client version.
- WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::addMessageWithArgumentsToConsole):
Added.
- WebProcess/WebCoreSupport/WebChromeClient.h:
Added addMessageWithArgumentsToConsole().
Tools:
Add a test for the new willAddMessageWithDetailsToConsole callback in WKBundlePageUIClient. This
includes a new WKWebProcessPlugIn subclass, BundlePageConsoleMessageWithDetails, that implements
this callback and formats the message and arguments into a single string which it sends to the UI
process.
- TestWebKitAPI/SourcesCocoa.txt:
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebKitCocoa/BundlePageConsoleMessageWithDetails.mm: Added.
(willAddMessageWithDetailsToConsoleCallback):
(-[BundlePageConsoleMessageWithDetails webProcessPlugIn:didCreateBrowserContextController:]):
- TestWebKitAPI/Tests/WebKitCocoa/ConsoleMessageWithDetails.mm: Added.
(TestWebKitAPI::didReceivePageMessageFromInjectedBundle):
(TestWebKitAPI::setInjectedBundleClient):
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitCocoa/console-message-with-details.html: Added.
- 7:14 PM Changeset in webkit [292253] by
-
- 2 edits in trunk/Source/WebCore
Fix the WebGPU-less build
https://bugs.webkit.org/show_bug.cgi?id=238692
Reviewed by Myles Maxfield.
- Configurations/WebCore.xcconfig:
- 7:09 PM Changeset in webkit [292252] by
-
- 15 edits in trunk/Source
[iOS] [WK2] Add plumbing for extracting video frames in element fullscreen
https://bugs.webkit.org/show_bug.cgi?id=238607
rdar://91102888
Reviewed by Eric Carlson.
Source/WebCore:
Add a helper function on HTMLMediaElement to return the identifier of its MediaPlayer. See WebKit ChangeLog for
more information.
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::playerIdentifier const):
- html/HTMLMediaElement.h:
Source/WebKit:
Add WebKit2 client layer plumbing for triggering video extraction for the prominent video in element fullscreen.
See below for more details.
- UIProcess/PageClient.h:
(WebKit::PageClient::beginElementFullscreenVideoExtraction):
(WebKit::PageClient::cancelElementFullscreenVideoExtraction):
Add new PageClient hooks to start and cancel video element extraction in element fullscreen. We only implement
these on iOS, for now.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::extractVideoInElementFullScreen):
(WebKit::WebPageProxy::cancelVideoExtractionInElementFullScreen):
- UIProcess/WebPageProxy.h:
- UIProcess/WebPageProxy.messages.in:
Add IPC plumbing from WebPage to WebPageProxy for starting and canceling video element extraction.
- UIProcess/ios/PageClientImplIOS.h:
- UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::beginElementFullscreenVideoExtraction):
(WebKit::PageClientImpl::cancelElementFullscreenVideoExtraction):
- UIProcess/ios/WKContentViewInteraction.h:
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView beginElementFullscreenVideoExtraction:bounds:]):
(-[WKContentView cancelElementFullscreenVideoExtraction]):
Add method stubs for non-internal builds.
- WebProcess/FullScreen/WebFullScreenManager.cpp:
(WebKit::WebFullScreenManager::mainVideoElementExtractionTimerFired):
(WebKit::WebFullScreenManager::endMainVideoElementExtractionIfNeeded):
Remove the FIXMEs and call into the new helper methods on WebPage to start and cancel video element extraction.
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::extractVideoInElementFullScreen):
(WebKit::WebPage::cancelVideoExtractionInElementFullScreen):
- WebProcess/WebPage/WebPage.h:
- 7:01 PM Changeset in webkit [292251] by
-
- 93 edits in trunk/Tools
Prepare Tools/ for making the String(const char*) constructor explicit
https://bugs.webkit.org/show_bug.cgi?id=238530
Reviewed by Geoffrey Garen.
- DumpRenderTree/TestRunner.cpp:
(TestRunner::setAccummulateLogsForChannel):
- DumpRenderTree/mac/DumpRenderTree.mm:
(resetWebViewToConsistentState):
- TestWebKitAPI/Tests/WTF/FileSystem.cpp:
(TestWebKitAPI::TEST_F):
- TestWebKitAPI/Tests/WTF/HashCountedSet.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WTF/JSONValue.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WTF/StringBuilder.cpp:
(TestWebKitAPI::expectBuilderContent):
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WTF/StringView.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WTF/URL.cpp:
(TestWebKitAPI::TEST_F):
(TestWebKitAPI::createURL):
- TestWebKitAPI/Tests/WTF/URLParser.cpp:
(TestWebKitAPI::insertTabAtLocation):
(TestWebKitAPI::invalidParts):
(TestWebKitAPI::checkURL):
(TestWebKitAPI::checkRelativeURL):
(TestWebKitAPI::checkURLDifferences):
(TestWebKitAPI::checkRelativeURLDifferences):
(TestWebKitAPI::shouldFail):
(TestWebKitAPI::testUserPassword):
- TestWebKitAPI/Tests/WTF/Vector.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WTF/WTFString.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WTF/cocoa/URLExtras.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/ApplicationManifestParser.cpp:
(ApplicationManifestParserTest::SetUp):
(ApplicationManifestParserTest::testStartURL):
(ApplicationManifestParserTest::testDisplay):
(ApplicationManifestParserTest::testName):
(ApplicationManifestParserTest::testDescription):
(ApplicationManifestParserTest::testShortName):
(ApplicationManifestParserTest::testThemeColor):
(ApplicationManifestParserTest::testIconsSrc):
(ApplicationManifestParserTest::testIconsType):
(ApplicationManifestParserTest::testIconsSizes):
(ApplicationManifestParserTest::testIconsPurposes):
(TEST_F):
- TestWebKitAPI/Tests/WebCore/CBORReaderTest.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/CBORValueTest.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/CBORWriterTest.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/CSSParser.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
(TestWebKitAPI::mainDocumentRequest):
(TestWebKitAPI::subResourceRequest):
(TestWebKitAPI::requestInTopAndFrameURLs):
(TestWebKitAPI::makeBackend):
(TestWebKitAPI::TEST_F):
(TestWebKitAPI::actionsEqual):
(TestWebKitAPI::sequenceInstances):
(TestWebKitAPI::checkCompilerError):
- TestWebKitAPI/Tests/WebCore/CtapPinTest.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/CtapRequestTest.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/CtapResponseTest.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/FidoTestData.h:
- TestWebKitAPI/Tests/WebCore/GridPosition.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/HTMLParserIdioms.cpp:
(TestWebKitAPI::testParseHTMLInteger):
(TestWebKitAPI::parseHTMLIntegerFails):
(TestWebKitAPI::testParseHTMLNonNegativeInteger):
(TestWebKitAPI::parseHTMLNonNegativeIntegerFails):
- TestWebKitAPI/Tests/WebCore/HTTPHeaderField.cpp:
(TEST):
- TestWebKitAPI/Tests/WebCore/HTTPHeaderMap.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/KeyedCoding.cpp:
(TestWebKitAPI::TEST):
(TestWebKitAPI::testSimpleValue):
(TestWebKitAPI::KeyedCodingTestObject::encode):
(TestWebKitAPI::KeyedCodingTestObject::decode):
- TestWebKitAPI/Tests/WebCore/MIMETypeRegistry.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/NowPlayingInfoTests.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/ParsedContentRange.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/ParsedContentType.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/PrivateClickMeasurement.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/PublicSuffix.cpp:
(TestWebKitAPI::TEST_F):
- TestWebKitAPI/Tests/WebCore/PushDatabase.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/PushMessageCrypto.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/RegistrableDomain.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
(TestWebKitAPI::TEST_F):
- TestWebKitAPI/Tests/WebCore/StringUtilities.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/StringWithDirection.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/U2fCommandConstructorTest.cpp:
(TestWebKitAPI::constructMakeCredentialRequest):
(TestWebKitAPI::constructGetAssertionRequest):
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/URLParserTextEncoding.cpp:
(TestWebKitAPI::invalidParts):
(TestWebKitAPI::TEST_F):
- TestWebKitAPI/Tests/WebCore/YouTubePluginReplacement.cpp:
(TestWebKitAPI::test):
(TestWebKitAPI::TEST_F):
- TestWebKitAPI/Tests/WebCore/cg/BifurcatedGraphicsContextTestsCG.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKit/GetUserMedia.mm:
- TestWebKitAPI/Tests/WebKit/MediaSessionCoordinatorTest.mm:
(TestWebKitAPI::MediaSessionCoordinatorTest::loadPageAndBecomeReady):
(TestWebKitAPI::MediaSessionCoordinatorTest::play):
(TestWebKitAPI::MediaSessionCoordinatorTest::pause):
- TestWebKitAPI/Tests/WebKit/WebRTC.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKit/XPCEndpoint.mm:
- TestWebKitAPI/Tests/WebKitCocoa/ApplicationManifest.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm:
(TEST):
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitCocoa/ContentRuleListNotification.mm:
(TEST):
- TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
(-[BlobWithUSDZExtensionDownloadDelegate _download:decideDestinationWithSuggestedFilename:completionHandler:]):
(TestWebKitAPI::downloadAtRate):
(TEST):
- TestWebKitAPI/Tests/WebKitCocoa/EventAttribution.mm:
(TestWebKitAPI::runBasicPCMTest):
(TestWebKitAPI::triggerAttributionWithSubresourceRedirect):
(TestWebKitAPI::signUnlinkableTokenAndSendSecretToken):
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitCocoa/FTP.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitCocoa/FileSystemAccess.mm:
- TestWebKitAPI/Tests/WebKitCocoa/HSTS.mm:
(TestWebKitAPI::hstsServer):
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitCocoa/IndexedDBFileName.mm:
(runTest):
(createDirectories):
- TestWebKitAPI/Tests/WebKitCocoa/MediaLoading.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitCocoa/MediaSession.mm:
(TestWebKitAPI::MediaSessionTest::loadPageAndBecomeNowPlaying):
(TestWebKitAPI::MediaSessionTest::runScriptWithUserGesture):
(TestWebKitAPI::MediaSessionTest::play):
(TestWebKitAPI::MediaSessionTest::pause):
(TestWebKitAPI::MediaSessionTest::eventListenerWasCalled):
(TestWebKitAPI::MediaSessionTest::waitForEventListenerToBeCalled):
(TestWebKitAPI::MediaSessionTest::sessionHandlerWasCalled):
(TestWebKitAPI::MediaSessionTest::waitForSessionHandlerToBeCalled):
(TestWebKitAPI::TEST_F):
- TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm:
(TEST):
- TestWebKitAPI/Tests/WebKitCocoa/NetworkProcess.mm:
(TEST):
- TestWebKitAPI/Tests/WebKitCocoa/NowPlaying.mm:
(NowPlayingTest::loadPage):
(NowPlayingTest::runScriptWithUserGesture):
(NowPlayingTest::runScriptWithoutUserGesture):
(TEST_F):
- TestWebKitAPI/Tests/WebKitCocoa/PDFLinkReferrer.mm:
(TEST):
- TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
- TestWebKitAPI/Tests/WebKitCocoa/Proxy.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitCocoa/PushAPI.mm:
- TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadDelegate.mm:
(TEST):
- TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
- TestWebKitAPI/Tests/WebKitCocoa/StorageQuota.mm:
- TestWebKitAPI/Tests/WebKitCocoa/TLSDeprecation.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitCocoa/TestSOAuthorization.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
- TestWebKitAPI/Tests/WebKitCocoa/UploadDirectory.mm:
(TEST):
- TestWebKitAPI/Tests/WebKitCocoa/WKContentExtensionStore.mm:
(TEST_F):
- TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
(TEST):
- TestWebKitAPI/Tests/WebKitCocoa/WKURLSchemeHandler-1.mm:
- TestWebKitAPI/Tests/WebKitCocoa/WKWebViewEvaluateJavaScript.mm:
(TEST):
- TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitCocoa/WebLocks.mm:
(TestWebKitAPI::runSnapshotAcrossPagesTest):
(TestWebKitAPI::runLockRequestWaitingOnAnotherPage):
- TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm:
(TestWebKitAPI::TEST):
(TestWebKitAPI::WebPushDTest::loadRequest):
- TestWebKitAPI/Tests/WebKitCocoa/WebSocket.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
(TEST):
- TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/mac/SSLKeyGenerator.mm:
(TestWebKitAPI::TEST_F):
- TestWebKitAPI/cocoa/HTTPServer.h:
- TestWebKitAPI/cocoa/HTTPServer.mm:
(TestWebKitAPI::HTTPServer::respondWithChallengeThenOK):
(TestWebKitAPI::HTTPServer::respondWithOK):
(TestWebKitAPI::HTTPServer::request const):
(TestWebKitAPI::HTTPServer::requestWithLocalhost const):
- WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::outputText):
- WebKitTestRunner/InjectedBundle/InjectedBundle.h:
- WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::dumpPath):
(WTR::string):
(WTR::pathSuitableForTestResult):
(WTR::dumpErrorDescriptionSuitableForTestResult):
- WebKitTestRunner/TestController.cpp:
(WTR::TestController::findAndDumpWorldLeaks):
(WTR::TestController::didReceiveLiveDocumentsList):
(WTR::TestController::canAuthenticateAgainstProtectionSpace):
(WTR::TestController::didReceiveAuthenticationChallenge):
(WTR::TestController::downloadDidStart):
(WTR::TestController::decideDestinationWithSuggestedFilename):
(WTR::TestController::downloadDidFinish):
- WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::waitToDumpWatchdogTimerFired):
(WTR::TestInvocation::waitForPostDumpWatchdogTimerFired):
- WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::cocoaResetStateToConsistentValues):
- 7:00 PM Changeset in webkit [292250] by
-
- 2 edits in trunk/LayoutTests
Unreviewed gardening.
- platform/ios-wk2/TestExpectations: Forms test was flaky before turning GPUP on by default,
move it out of the section of GPUP-specific failures. Update WebGL failure with bugzilla link.
- 6:29 PM Changeset in webkit [292249] by
-
- 19 edits in trunk
Hoist the IOSurfacePool out of IOSurface
https://bugs.webkit.org/show_bug.cgi?id=238675
Reviewed by Tim Horton.
Source/WebCore:
A future patch will break the assumption that there is a singleton IOSurfacePool per
process, so we can't have IOSurface::create() consult the pool internally. Instead,
pass the pool to the create() functions, and to the moveToPool() function.
Callers in the web process pass IOSurfacePool::sharedPool(); those in the UI process
pass nullptr to avoid pool creation there.
- Modules/system-preview/ARKitBadgeSystemImage.mm:
(WebCore::ARKitBadgeSystemImage::draw const):
- platform/graphics/cg/IOSurfacePool.cpp:
(WebCore::IOSurfacePool::addSurface):
- platform/graphics/cg/IOSurfacePool.h:
- platform/graphics/cg/ImageBufferIOSurfaceBackend.cpp:
(WebCore::ImageBufferIOSurfaceBackend::create):
(WebCore::ImageBufferIOSurfaceBackend::releaseBufferToPool):
- platform/graphics/cocoa/GraphicsContextGLCocoa.mm:
(WebCore::GraphicsContextGLCocoa::allocateAndBindDisplayBufferBacking):
- platform/graphics/cocoa/IOSurface.h: createFromImageBuffer() was unused; remove it.
- platform/graphics/cocoa/IOSurface.mm:
(WebCore::IOSurface::create):
(WebCore::IOSurface::createFromImage):
(WebCore::IOSurface::moveToPool):
(WebCore::IOSurface::surfaceFromPool): Deleted.
- testing/WebFakeXRDevice.cpp:
(WebCore::SimulatedXRDevice::frameTimerFired):
Source/WebKit:
A future patch will break the assumption that there is a singleton IOSurfacePool per
process, so we can't have IOSurface::create() consult the pool internally. Instead,
pass the pool to the create() functions, and to the moveToPool() function.
Callers in the web process pass IOSurfacePool::sharedPool(); those in the UI process
pass nullptr to avoid pool creation there.
- GPUProcess/media/RemoteImageDecoderAVFProxy.cpp:
(WebKit::RemoteImageDecoderAVFProxy::createFrameImageAtIndex):
- GPUProcess/media/cocoa/RemoteMediaPlayerProxyCocoa.mm:
(WebKit::RemoteMediaPlayerProxy::nativeImageForCurrentTime):
- Shared/RemoteLayerTree/RemoteLayerBackingStore.h:
- UIProcess/API/ios/WKWebViewIOS.mm:
(-[WKWebView _takeViewSnapshot]):
(-[WKWebView _snapshotRectAfterScreenUpdates:rectInViewCoordinates:intoImageOfWidth:completionHandler:]):
- UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::takeViewSnapshot):
- WebProcess/GPU/graphics/cocoa/ImageBufferShareableMappedIOSurfaceBackend.cpp:
(WebKit::ImageBufferShareableMappedIOSurfaceBackend::create):
Tools:
A future patch will break the assumption that there is a singleton IOSurfacePool per
process, so we can't have IOSurface::create() consult the pool internally. Instead,
pass the pool to the create() functions, and to the moveToPool() function.
Callers in the web process pass IOSurfacePool::sharedPool(); those in the UI process
pass nullptr to avoid pool creation there.
- DumpRenderTree/ios/PixelDumpSupportIOS.mm:
(createBitmapContextFromWebView):
- 6:18 PM Changeset in webkit [292248] by
-
- 2 edits in trunk/Source/WebKit
Fix build break after r292225 for Playstation.
https://bugs.webkit.org/show_bug.cgi?id=238683
Patch by Jigen Zhou <jigen.zhou@sony.com> on 2022-04-01
Reviewed by Don Olmstead.
Unreviewed build fix after 292225 for Playstation build.
- Platform/IPC/unix/IPCSemaphoreUnix.cpp:
- 5:46 PM Changeset in webkit [292247] by
-
- 3 edits1 add in trunk
Fix 'Error: too many values to unpack (expected 2)'
https://bugs.webkit.org/show_bug.cgi?id=238682
Reviewed by Jonathan Bedard.
- Tools/Scripts/libraries/resultsdbpy/resultsdbpy/bug_trackers/bug_description_unittest.py: Added.
(MockCommit):
(MockCommit.init):
(MockCommitContext):
(MockCommitContext.init):
(MockCommitContext.find_commits_by_uuid):
(MockCommitContext.url):
(TestBugDescription):
(TestBugDescription.setUp):
(TestBugDescription.test_single_row_and_single_test_failure):
- Tools/Scripts/libraries/resultsdbpy/resultsdbpy/bug_trackers/bugzilla.py:
(WebKitBugzilla.create_bug):
- Tools/Scripts/libraries/resultsdbpy/resultsdbpy/run-tests:
Canonical link: https://commits.webkit.org/249145@main
- 5:43 PM Changeset in webkit [292246] by
-
- 3 edits in trunk/LayoutTests
REGRESSION(r292072): [ Mac iOS ] http/tests/webAPIStatistics/canvas-read-and-write-data-collection.html is a constant text failure
https://bugs.webkit.org/show_bug.cgi?id=238580
Unreviewed test gardening.
Remove expectations as cause has been reverted.
- platform/ios-wk2/TestExpectations:
- platform/mac-wk2/TestExpectations:
- 5:41 PM Changeset in webkit [292245] by
-
- 7 edits2 deletes in trunk
Unreviewed, reverting r292072.
https://bugs.webkit.org/show_bug.cgi?id=238690
Caused webAPIStatistics test failures
Reverted changeset:
"[Cocoa] Automatically relayout the page when new fonts are
installed"
https://bugs.webkit.org/show_bug.cgi?id=238483
https://commits.webkit.org/r292072
Patch by Commit Queue <commit-queue@webkit.org> on 2022-04-01
- 5:25 PM Changeset in webkit [292244] by
-
- 9 edits in trunk/Source
Source/WebCore:
Unreviewed, fix non-unified build after r292208
- css/typedom/ComputedStylePropertyMapReadOnly.cpp:
- css/typedom/StylePropertyMapReadOnly.cpp:
- page/FrameSnapshotting.h:
- page/InteractionRegion.cpp:
- platform/graphics/gbm/GBMDevice.cpp:
Source/WebKit:
Unreviewed, fix non-unified build after r292218
- Platform/IPC/unix/IPCSemaphoreUnix.cpp:
- UIProcess/Notifications/WebNotificationManagerProxy.h:
- 5:23 PM Changeset in webkit [292243] by
-
- 2 edits in trunk/LayoutTests
REGRESSION(r290822?): [ wk1 ] storage/websql/change-version.html is a flaky timeout
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations:
- 4:57 PM Changeset in webkit [292242] by
-
- 6 edits in trunk
Change one-shot maxTimerNestingLevel from 5 to 10
https://bugs.webkit.org/show_bug.cgi?id=237168
Reviewed by Sam Weinig, Saam Barati, and Cameron McCormack .
Source/WebCore:
Recently, we found from Chromium change[1] that changing this from 5 to 10 offers 10% Speedometer2 improvement
because Speedometer2's setTimeout nesting level is typically 7-8. We discussed with folks including Chris, Maciej,
Saam, and Cameron and for now, we increase this from 5 to 10 to align to Blink's change to keep these kind of web
content fast. This is not aligned to the spec, and currently, we only apply it to one-shot timer.
[1]: https://chromium-review.googlesource.com/c/chromium/src/+/3473463
- page/DOMTimer.cpp:
(WebCore::DOMTimer::intervalClampedToMinimum const):
(WebCore::DOMTimer::alignedFireTime const):
LayoutTests:
- fast/dom/timer-increase-min-interval.html:
- fast/dom/timer-throttling-hidden-page-expected.txt:
- fast/dom/timer-throttling-hidden-page.html:
- 4:35 PM Changeset in webkit [292241] by
-
- 1 copy in tags/Safari-614.1.8.1
Tag Safari-614.1.8.1.
- 4:31 PM Changeset in webkit [292240] by
-
- 9 edits in branches/safari-614.1.8-branch/Source
Versioning.
WebKit-7614.1.8.1
- 4:04 PM Changeset in webkit [292239] by
-
- 9 edits in branches/safari-614.1.7-branch/Source
Versioning.
WebKit-7614.1.7.5
- 3:42 PM Changeset in webkit [292238] by
-
- 2 edits in trunk/Source/WTF
Unreviewed, drop unnecessary WTF_EXPORT_PRIVATE on String(ASCIILiteral)
This constructor was recently inlined.
- wtf/text/WTFString.h:
- 3:38 PM Changeset in webkit [292237] by
-
- 5 edits in trunk/LayoutTests
Unreviewed gardening.
This is based on auditing the failing tests cited after turning DOM in GPUP on by default.
- TestExpectations: One test was flaky on the bots before we turned on the flag.
- platform/ios-simulator-wk2/TestExpectations: Some tests have fail/pass results only when the iOS sim is on an arm64 host.
- platform/ios-wk2/TestExpectations: Lots of tests no longer fail.
- platform/ios/TestExpectations:
- 2:38 PM Changeset in webkit [292236] by
-
- 3 edits in trunk/Source/WebKit
Expose WebKitWebView from WPEQtView
https://bugs.webkit.org/show_bug.cgi?id=236746
Patch by Tusooa Zhu <tusooa@kazv.moe> on 2022-04-01
Reviewed by Adrian Perez de Castro.
WPEQtView currently does not allow manipulating the underlying WebKitWebView.
This patch allows retrieving the WebKitWebView from the WPEQtView.
No tests needed, as this patch only adds a trivial getter.
- UIProcess/API/wpe/qt/WPEQtView.cpp:
(WPEQtView::webView const):
- UIProcess/API/wpe/qt/WPEQtView.h:
- 2:29 PM Changeset in webkit [292235] by
-
- 3 edits in trunk/Tools
[Merge-Queue] Canonicalize commit without rebase
https://bugs.webkit.org/show_bug.cgi?id=238614
<rdar://problem/91113465>
Reviewed by Aakash Jain.
This is helpful immiediatly after landing a subversion commit
and allows us to bypass the 60 second sleep in PushCommitToWebKitRepo.
- Tools/CISupport/ews-build/steps.py:
(Canonicalize.init): Allow caller to opt out of rebasing.
(Canonicalize.run): Ditto.
- Tools/CISupport/ews-build/steps_unittest.py:
Canonical link: https://commits.webkit.org/249136@main
- 2:21 PM Changeset in webkit [292234] by
-
- 1 copy in tags/Safari-613.2.5
Tag Safari-613.2.5.
- 2:18 PM Changeset in webkit [292233] by
-
- 4 edits in trunk/LayoutTests
REGRESSION(r292072): [ wk1 ] fast/text/install-font-style-recalc.html is a constant text failure
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations:
- platform/mac-wk2/TestExpectations:
- platform/mac/TestExpectations:
- 1:47 PM Changeset in webkit [292232] by
-
- 12 edits in trunk
Add more push-related logging
https://bugs.webkit.org/show_bug.cgi?id=238591
Reviewed by Youenn Fablet.
Source/WebCore:
Add logging to help diagnose Push API errors. We currently log very little, which is making
it hard for us to diagnose bug reports.
- Log if PushManager.subscribe fails the user gesture check. We log this to both syslog and the developer console. We do the latter to inform developers, and we already log an identical message from Notification.requestPermission when that fails in this manner.
- Log if we can't fire a push event because the service worker registration went away.
- Modules/push-api/PushManager.cpp:
(WebCore::PushManager::subscribe):
- workers/service/server/SWServer.cpp:
(WebCore::SWServer::processPushMessage):
Source/WebKit:
Add logging to help diagnose Push API errors. We currently log very little, which is making
it hard for us to diagnose bug reports.
- Log when we try to fetch or process push messages in NetworkProcess.
- Log when we enqueue, start, and finish a PushServiceRequest. This helps catch issues such as a queued request never running because the OS push daemon never completing a request.
- Log if we failed trying to wake up the browser to process a push message.
- NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::processPushMessage):
- UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
(-[WKWebsiteDataStore _getPendingPushMessages:]):
(-[WKWebsiteDataStore _processPushMessage:completionHandler:]):
- webpushd/PushService.mm:
(WebPushD::PushService::create):
(WebPushD::PushServiceRequestImpl::fulfill):
(WebPushD::PushServiceRequestImpl::reject):
(WebPushD::SubscribeRequest::startImpl):
(WebPushD::UnsubscribeRequest::startInternal):
(WebPushD::PushService::enqueuePushServiceRequest):
(WebPushD::PushService::incrementSilentPushCount):
(WebPushD::PushService::removeRecordsImpl):
(WebPushD::makeRawPushMessage):
(WebPushD::PushService::didReceivePushMessage):
- webpushd/WebPushDaemon.mm:
(WebPushD::Daemon::injectEncryptedPushMessageForTesting):
(WebPushD::Daemon::notifyClientPushMessageIsAvailable):
(WebPushD::Daemon::getPendingPushMessages):
LayoutTests:
Modify test cases to check for user gesture error console message.
- http/tests/push-api/subscribe-default-permissions-expected.txt:
- http/tests/push-api/subscribe-default-permissions-iframe-same-origin-expected.txt:
- http/tests/push-api/subscribe-deny-permissions-on-prompt-expected.txt:
- 12:53 PM Changeset in webkit [292231] by
-
- 2 edits in trunk/LayoutTests
REGRESSION(r292072): [ wk1 ] fast/text/install-font-style-recalc.html is a constant text failure
https://bugs.webkit.org/show_bug.cgi?id=238641
Unreviewed test gardening.
platform/mac-wk1/TestExpectations:
- 12:30 PM Changeset in webkit [292230] by
-
- 2 edits in trunk/Source/WebKit
REGRESSION(r292197): 3 TestWebKitAPI.ContentRuleList API tests are constant failures/timeout
https://bugs.webkit.org/show_bug.cgi?id=238678
<rdar://91173297>
Unreviewed, in r292197, I made a last minute mistake when applying some of Darin's review comments.
I converted a few calls toNSURL.absoluteURL.fileSystemRepresentation
to
NSURL.absoluteString
instead ofNSURL.absoluteURL.path
. As a result, the file://
prefix was still present and some characters may still be URL-encoded.
No new tests, covered by existing API tests failing on the bots.
- UIProcess/API/Cocoa/WKContentRuleListStore.mm:
(+[WKContentRuleListStore storeWithURL:]):
(+[WKContentRuleListStore storeWithURLAndLegacyFilename:]):
- 12:26 PM Changeset in webkit [292229] by
-
- 8 edits5 adds in trunk
CSP: WASM fails to execute after window.open
https://bugs.webkit.org/show_bug.cgi?id=238562
<rdar://problem/90778752>
Reviewed by Brent Fulgham.
Source/WebCore:
Test: http/tests/security/contentSecurityPolicy/allow-wasm-after-window-open.html
Reset WASM enabled value after a window.open() call. This patch simplifies
eval and wasm setters by removing the distinct enable/disable functions
and using one consistent setter.
- bindings/js/ScriptController.cpp:
(WebCore::ScriptController::setEvalEnabled):
(WebCore::ScriptController::setWebAssemblyEnabled):
(WebCore::ScriptController::enableEval): Deleted.
(WebCore::ScriptController::enableWebAssembly): Deleted.
(WebCore::ScriptController::disableEval): Deleted.
(WebCore::ScriptController::disableWebAssembly): Deleted.
- bindings/js/ScriptController.h:
- dom/Document.cpp:
(WebCore::Document::disableEval):
(WebCore::Document::disableWebAssembly):
- loader/FrameLoader.cpp:
(WebCore::FrameLoader::clear):
- page/csp/ContentSecurityPolicy.h:
(WebCore::ContentSecurityPolicy::webAssemblyErrorMessage const):
LayoutTests:
Layout test coverage. Copy some wasm helper scripts into the http directory.
- platform/win/TestExpectations:
We don't support wasm on win.
- http/tests/security/contentSecurityPolicy/allow-wasm-after-window-open-expected.txt: Added.
- http/tests/security/contentSecurityPolicy/allow-wasm-after-window-open.html: Added.
- http/tests/security/contentSecurityPolicy/resources/load_wasm.js: Added.
(createWasmModule):
- http/tests/security/contentSecurityPolicy/resources/run-web-assembly.html: Added.
- http/tests/security/contentSecurityPolicy/resources/wasm-builder.js: Added.
(const._fail):
(const.isNotA.assert.isNotA):
(const):
(switch.typeof):
(Builder):
(Builder.prototype.setChecked):
(Builder.prototype.setPreamble):
(Builder.prototype._functionIndexSpaceKeyHash):
(Builder.prototype._registerFunctionToIndexSpace):
(Builder.prototype._getFunctionFromIndexSpace):
(Builder.prototype._registerSectionBuilders.const.section.in.WASM.description.section.switch.section.case.string_appeared_here.this.section):
(Builder.prototype._registerSectionBuilders.const.section.in.WASM.description.section.switch.section.const.codeBuilder.End.switch.case.string_appeared_here.e):
(Builder.prototype._registerSectionBuilders.this.Unknown):
- 12:23 PM Changeset in webkit [292228] by
-
- 2 edits in trunk/Source/WebCore
(REGRESSION r291992) showRenderTree fails to print the name of the renderer when "(" is present
https://bugs.webkit.org/show_bug.cgi?id=238666
Reviewed by Antti Koivisto.
- rendering/RenderObject.cpp:
(WebCore::RenderObject::outputRenderObject const): with names like "RenderRubyBase (anonymous)" we print an address and not "RenderRubyBase"
- 12:03 PM Changeset in webkit [292227] by
-
- 1 copy in tags/Safari-614.1.8
Tag Safari-614.1.8.
- 11:41 AM Changeset in webkit [292226] by
-
- 7 edits2 adds in trunk
[Ruby] Statically positioned out-of-flow block boxes are mispositioned
https://bugs.webkit.org/show_bug.cgi?id=238653
Reviewed by Antti Koivisto.
Source/WebCore:
A statically positioned out-of-flow ruby base e.g.
<div>A<ruby><rb style="position: absolute">B</rb></ruby></div>
and
<div>A<span style="position: absolute">B</span></div>
should match layout where <rb> box's top is aligned with current line box's top position
(as if <rb> was inflow, which then puts "A" and "B" (somewhat) next to each other vertically).
However since we wrap such content (<rb>) inside an inline-block type anonymous box (RenderRubyBase), in practice
we match instead this:
<div>A
<span style="display: inline-block">
<span style="position: absolute">B</span>
</span>
</div>
where <rb>'s top is now aligned with the top of the wrapper inline-block box's top.
But this inline-block box sits on the line box's baseline with the height of 0 (it's inflow empty)
which makes the <rb> aligned with the line box's baseline instead of its top (and now "B" in below "A" under the baseline).
This patch fixes this by making sure that the (inflow empty) inline-block box's baseline is computed as if it had inflow content.
Test: fast/ruby/ruby-with-out-of-flow-base-content.html
- rendering/RenderRubyBase.cpp:
(WebCore::RenderRubyBase::isEmptyOrHasInFlowContent const):
- rendering/RenderRubyBase.h:
- rendering/RenderRubyRun.cpp:
(WebCore::RenderRubyRun::baselinePosition const):
- rendering/RenderRubyRun.h:
LayoutTests:
- TestExpectations:
- fast/ruby/ruby-with-out-of-flow-base-content-expected.html: Added.
- fast/ruby/ruby-with-out-of-flow-base-content.html: Added.
- 10:43 AM Changeset in webkit [292225] by
-
- 3 edits in trunk/Source/WebKit
[Linux] Implement IPC::Semaphore
https://bugs.webkit.org/show_bug.cgi?id=238596
Patch by Zan Dobersek <zdobersek@igalia.com> on 2022-04-01
Reviewed by Adrian Perez de Castro.
Provide a Linux implementation for IPC::Semaphore that's based on
eventfd mechanics.
The IPC::Semaphore class now has a UNIX-specific file descriptor member
variable. For Linux, this file descriptor is an eventfd with semaphore
semantics (eventfd being Linux-specific). Signalling and waiting on
such semaphore is done through the read() and write() functions.
Non-Linux platforms are expected to provide something equivalent, if
possible.
For encoding and decoding that's necessary to move these semaphores
across process boundaries, IPC::Attachment is used. For encoding the
eventfd is simply duplicated and pushed into the Attachment, and for
decoding the Attachment's file descriptor is taken and adopted by the
Semaphore object.
- Platform/IPC/IPCSemaphore.h:
(IPC::Semaphore::operator bool const):
- Platform/IPC/unix/IPCSemaphoreUnix.cpp:
(IPC::Semaphore::Semaphore):
(IPC::Semaphore::~Semaphore):
(IPC::Semaphore::operator=):
(IPC::Semaphore::signal):
(IPC::waitImpl):
(IPC::Semaphore::wait):
(IPC::Semaphore::waitFor):
(IPC::Semaphore::encode const):
(IPC::Semaphore::decode):
(IPC::Semaphore::destroy):
- 10:22 AM Changeset in webkit [292224] by
-
- 3 edits in trunk/LayoutTests
REGRESSION(r292072): [ Mac iOS ] http/tests/webAPIStatistics/canvas-read-and-write-data-collection.html is a constant text failure
https://bugs.webkit.org/show_bug.cgi?id=238580
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- platform/mac/TestExpectations:
- 9:42 AM Changeset in webkit [292223] by
-
- 3 edits in trunk/Source/WebCore
Add AXObjectCache::treeData() to retrieve serialized representation of the AX trees.
https://bugs.webkit.org/show_bug.cgi?id=238561
<rdar://problem/91055027>
Reviewed by Chris Fleizach.
Added AXObjectCache::treeData() to retrieve a serialized representation
of both the live and isolated AX trees. The immediate application of
this will be log to file the trees from the browser. Other application
down the road may be to expose a text document-like representation of
the web page for AT clients.
- accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::treeData):
- accessibility/AXObjectCache.h:
(WebCore::AXObjectCache::treeData):
- 8:35 AM Changeset in webkit [292222] by
-
- 13 edits in trunk
[css-logical] Add support for block/inline CSS values for resize property
https://bugs.webkit.org/show_bug.cgi?id=218088
Reviewed by Antti Koivisto.
LayoutTests/imported/w3c:
Marked relevant WPT as passing.
- web-platform-tests/css/css-logical/logical-values-resize-expected.txt:
Source/WebCore:
Tests:
- Parsing: imported/w3c/web-platform-tests/css/css-logical/logical-values-resize.html
- Functionality: fast/css/resize-single-axis.html
- css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator Resize const):
- css/CSSProperties.json:
- css/parser/CSSParserFastPaths.cpp:
(WebCore::CSSParserFastPaths::isValidKeywordPropertyAndValue):
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::resize):
- rendering/style/RenderStyleConstants.cpp:
(WebCore::operator<<):
- rendering/style/RenderStyleConstants.h:
- rendering/style/StyleRareNonInheritedData.h:
LayoutTests:
Add tests for functionality.
- fast/css/resize-single-axis-expected.txt:
- fast/css/resize-single-axis.html:
- 7:45 AM Changeset in webkit [292221] by
-
- 4 edits in trunk/Source/WebCore
Add RenderGrid parameter to resolveGridPositionsFromStyle
https://bugs.webkit.org/show_bug.cgi?id=238660
Patch by Rob Buis <rbuis@igalia.com> on 2022-04-01
Reviewed by Javier Fernandez.
The containing block of an out of flow grid item does
not have to be of type RenderGrid. To obtain the correct
RenderGrid pass it at the time the RenderGrid calls
resolveGridPositionsFromStyle.
- rendering/RenderGrid.cpp:
(WebCore::RenderGrid::populateExplicitGridAndOrderIterator const):
(WebCore::RenderGrid::computeGridPositionsForOutOfFlowChild const):
- rendering/style/GridPositionsResolver.cpp:
(WebCore::GridPositionsResolver::resolveGridPositionsFromStyle):
- rendering/style/GridPositionsResolver.h:
- 7:39 AM Changeset in webkit [292220] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, update DerivedSources-output.xcfilelist to fix build.
- DerivedSources-output.xcfilelist:
- 7:11 AM Changeset in webkit [292219] by
-
- 2 edits in trunk/Source/WebCore
Abort formatBlock command on null start or end selections
https://bugs.webkit.org/show_bug.cgi?id=238657
Patch by Rob Buis <rbuis@igalia.com> on 2022-04-01
Reviewed by Wenson Hsieh.
Abort formatBlock command in case selectionForParagraphIteration
returns with a null start or end selection due to inline table specific
adjustments.
- editing/ApplyBlockElementCommand.cpp:
(WebCore::ApplyBlockElementCommand::doApply):
- 6:12 AM Changeset in webkit [292218] by
-
- 24 edits in trunk
ServiceWorkerRegistration.getNotifications should list all persistent notifications
https://bugs.webkit.org/show_bug.cgi?id=238544
Reviewed by Darin Adler.
Source/WebCore:
Remove context based notification list since the list is global.
Add creation time to notification data.
Instead of reading the list locally, use the SWClient connection to get it.
Covered by updated test.
- Modules/notifications/Notification.cpp:
- Modules/notifications/Notification.h:
- Modules/notifications/NotificationData.h:
- workers/service/SWClientConnection.h:
- workers/service/ServiceWorkerContainer.cpp:
- workers/service/ServiceWorkerContainer.h:
- workers/service/ServiceWorkerRegistration.cpp:
- workers/service/ServiceWorkerRegistration.h:
- workers/service/ServiceWorkerRegistration.idl:
- workers/service/WorkerSWClientConnection.cpp:
- workers/service/WorkerSWClientConnection.h:
Source/WebKit:
Go from WebProcess to UIProcess to read the notification map through IPC messaging.
Filter out the notifications according tag, origin and session.
Sort the notifications according creationTime with UIProcess identifier as tie breaker.
- UIProcess/Notifications/WebNotificationManagerProxy.cpp:
- UIProcess/Notifications/WebNotificationManagerProxy.h:
- UIProcess/WebProcessProxy.cpp:
- UIProcess/WebProcessProxy.h:
- UIProcess/WebProcessProxy.messages.in:
- UIProcess/WebsiteData/WebsiteDataStore.cpp:
- WebProcess/Notifications/WebNotificationManager.cpp:
- WebProcess/Storage/WebSWClientConnection.cpp:
- WebProcess/Storage/WebSWClientConnection.h:
LayoutTests:
- http/tests/workers/service/getnotifications-expected.txt:
- http/tests/workers/service/getnotifications.html:
- 5:08 AM Changeset in webkit [292217] by
-
- 2 edits in trunk/JSTests
Skip flaky test on mips
https://bugs.webkit.org/show_bug.cgi?id=238656
Unreviewed gardening.
- stress/new-largeish-contiguous-array-with-size.js:
- 4:48 AM Changeset in webkit [292216] by
-
- 9 edits in trunk
Notification should be exposed to ServiceWorker contexts
https://bugs.webkit.org/show_bug.cgi?id=238548
Reviewed by Chris Dumez.
LayoutTests/imported/w3c:
- web-platform-tests/notifications/idlharness.https.any.serviceworker-expected.txt:
Source/WebCore:
Mark Notification as exposed in ServiceWorker (not yet Worker as it would not be functional).
Add a dedicated createForServiceWorker routine that takes a registration URL to create persistent permissions.
Throw an exception in case of calling Notification constructor directly in a ServiceWorkerGlobalScope, as per spec.
Covered by updated and existing tests.
- Modules/notifications/Notification.cpp:
- Modules/notifications/Notification.h:
- Modules/notifications/Notification.idl:
- workers/service/ServiceWorkerRegistration.cpp:
LayoutTests:
- http/tests/workers/service/resources/shownotification-worker.js:
- 4:00 AM Changeset in webkit [292215] by
-
- 2 edits in trunk/Source/WebCore
[GStreamer][WebRTC] Improve RTP stats gathering
https://bugs.webkit.org/show_bug.cgi?id=238602
Patch by Philippe Normand <philn@igalia.com> on 2022-04-01
Reviewed by Xabier Rodriguez-Calvar.
Proxy a few more stats fields from GstWebRTC to the WebCore StatsCollector.
- Modules/mediastream/gstreamer/GStreamerStatsCollector.cpp:
(WebCore::fillInboundRTPStreamStats):
(WebCore::fillOutboundRTPStreamStats):
- 3:49 AM Changeset in webkit [292214] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, fix obsolete FIXME comments in CSSParserFastPaths.cpp
- overflow-anchor is still not implemented, and the visible value has been removed from the spec.
- text-combine-upright was implemented in r287487
- css/parser/CSSParserFastPaths.cpp:
(WebCore::CSSParserFastPaths::isValidKeywordPropertyAndValue):
- 2:17 AM Changeset in webkit [292213] by
-
- 3 edits in trunk
[GTK][WPE] Enable CSS Typed OM by default
https://bugs.webkit.org/show_bug.cgi?id=238659
Reviewed by Adrian Perez de Castro.
Always build with Typed OM enabled, it's handled by an off by default setting.
- Source/cmake/OptionsGTK.cmake:
- Source/cmake/OptionsWPE.cmake:
- 2:05 AM Changeset in webkit [292212] by
-
- 1 edit1 add in trunk/Source/WebCore/platform/gtk/po
Croatian translation for WebKitGTK
https://bugs.webkit.org/show_bug.cgi?id=238611
Patch by gogo <trebelnik2@gmail.com> on 2022-04-01
Rubber-stamped by Carlos Garcia Campos.
- hr.po: Added.
- 2:00 AM Changeset in webkit [292211] by
-
- 11 edits in trunk/Source
REGRESSION(r290360): [GLX] Crash on process exit
https://bugs.webkit.org/show_bug.cgi?id=238494
Reviewed by Michael Catanzaro.
Source/WebCore:
When creating a PlatformDisplay from a shared GdkDisplay, we need to keep a reference to the display and connect
to closed signal to release our display dependent resources. Closed signal is emitted right before the native
display is actually closed by GDK. We also need to make sure that the sharing GL context is released before the
PlatformDisplay is destroyed. This is always happening for EGL because the sharing GL context is cleared before
terminating the EGL display in the atexit handler, but that's not the case of GLX. Since X11 only allows one
PlatformDisplay, which is always the shared one, we can just install an atexit handler in the constructor to
clear the sharing context before the destructor is called.
- platform/graphics/PlatformDisplay.cpp:
(WebCore::PlatformDisplay::createPlatformDisplay):
(WebCore::PlatformDisplay::PlatformDisplay):
(WebCore::PlatformDisplay::sharedDisplayDidClose):
(WebCore::PlatformDisplay::~PlatformDisplay):
(WebCore::PlatformDisplay::clearSharingGLContext):
(WebCore::PlatformDisplay::terminateEGLDisplay):
- platform/graphics/PlatformDisplay.h:
- platform/graphics/libwpe/PlatformDisplayLibWPE.cpp:
(WebCore::PlatformDisplayLibWPE::PlatformDisplayLibWPE):
- platform/graphics/wayland/PlatformDisplayWayland.cpp:
(WebCore::PlatformDisplayWayland::create):
(WebCore::PlatformDisplayWayland::PlatformDisplayWayland):
(WebCore::PlatformDisplayWayland::~PlatformDisplayWayland):
(WebCore::PlatformDisplayWayland::sharedDisplayDidClose):
- platform/graphics/wayland/PlatformDisplayWayland.h:
- platform/graphics/win/PlatformDisplayWin.h:
- platform/graphics/x11/PlatformDisplayX11.cpp:
(WebCore::PlatformDisplayX11::create):
(WebCore::clearSharingGLContextAtExit):
(WebCore::PlatformDisplayX11::PlatformDisplayX11):
(WebCore::PlatformDisplayX11::~PlatformDisplayX11):
(WebCore::PlatformDisplayX11::sharedDisplayDidClose):
- platform/graphics/x11/PlatformDisplayX11.h:
Source/WebKit:
- WebProcess/gtk/WaylandCompositorDisplay.cpp:
(WebKit::WaylandCompositorDisplay::WaylandCompositorDisplay):
- 1:29 AM Changeset in webkit [292210] by
-
- 45 edits1 copy2 adds1 delete in trunk
Add support for element.computedStyleMap()
https://bugs.webkit.org/show_bug.cgi?id=238375
Reviewed by Alex Christensen.
LayoutTests/imported/w3c:
Update test expectations.
- web-platform-tests/css/css-color/system-color-compute-expected.txt:
- web-platform-tests/css/css-properties-values-api/at-property-typedom-expected.txt:
- web-platform-tests/css/css-properties-values-api/property-cascade-expected.txt:
- web-platform-tests/css/css-properties-values-api/typedom-expected.txt:
- web-platform-tests/css/css-transforms/animation/transform-interpolation-computed-value-expected.txt:
- web-platform-tests/css/css-typed-om/idlharness-expected.txt:
- web-platform-tests/css/css-typed-om/stylevalue-serialization/cssStyleValue-cssom-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/computed.tentative-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/get-auto-min-size-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/get-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/get-invalid-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/get-position-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/get-shorthand-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/getAll-shorthand-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/getAll.tentative-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/has.tentative-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/computed/iterable.tentative-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/getAll-shorthand-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/getAll.tentative-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/has.tentative-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/inline/iterable.tentative-expected.txt:
- web-platform-tests/css/css-typed-om/the-stylepropertymap/properties/transform-interpolated-expected.txt:
Source/WebCore:
Covered by existing w3c tests.
- CMakeLists.txt:
- Sources.txt:
- css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::propertyValue): Add PropertyValueType parameter to get either the computed or
resolved value.
- css/CSSComputedStyleDeclaration.h:
- css/typedom/CSSStyleValueFactory.cpp:
(WebCore::CSSStyleValueFactory::reifyValue): Handle more cases of custom property.
- css/typedom/ComputedStylePropertyMapReadOnly.cpp: Added.
(WebCore::ComputedStylePropertyMapReadOnly::create):
(WebCore::ComputedStylePropertyMapReadOnly::ComputedStylePropertyMapReadOnly):
(WebCore::ComputedStylePropertyMapReadOnly::get const):
(WebCore::ComputedStylePropertyMapReadOnly::getAll const):
(WebCore::ComputedStylePropertyMapReadOnly::has const):
(WebCore::ComputedStylePropertyMapReadOnly::size const):
(WebCore::ComputedStylePropertyMapReadOnly::entries const):
- css/typedom/ComputedStylePropertyMapReadOnly.h: Added.
- css/typedom/StylePropertyMapReadOnly.cpp:
(WebCore::StylePropertyMapReadOnly::reifyValueToVector): Returns a Vector so in case of CSSValueList, every
value is added to the vector.
(WebCore::StylePropertyMapReadOnly::Iterator::Iterator): Add iterator implementation, since this is now iterable.
(WebCore::StylePropertyMapReadOnly::Iterator::next): Ditto.
- css/typedom/StylePropertyMapReadOnly.h:
(WebCore::StylePropertyMapReadOnly::createIterator):
- css/typedom/StylePropertyMapReadOnly.idl:
- dom/Element+ComputedStyleMap.idl: Added.
- dom/Element.cpp:
(WebCore::Element::computedStyleMap): Get or create the computed style map.
- dom/Element.h:
- dom/ElementRareData.cpp:
- dom/ElementRareData.h:
(WebCore::ElementRareData::computedStyleMap):
(WebCore::ElementRareData::setComputedStyleMap):
(WebCore::ElementRareData::useTypes const):
- dom/NodeRareData.h:
- dom/StyledElement.cpp:
- html/CustomPaintImage.cpp:
LayoutTests:
Update test expectations.
- platform/glib/imported/w3c/web-platform-tests/css/css-color/system-color-compute-expected.txt:
- platform/glib/imported/w3c/web-platform-tests/css/css-transforms/animation/transform-interpolation-computed-value-expected.txt: Removed.
- platform/ios/imported/w3c/web-platform-tests/css/css-color/system-color-compute-expected.txt:
- 1:26 AM Changeset in webkit [292209] by
-
- 4 edits in trunk/Source/WebKit
Translated applications cannot use remote methods with BOOL arguments
https://bugs.webkit.org/show_bug.cgi?id=238651
<rdar://90509457>
Reviewed by Geoffrey Garen.
Propagate the fix from r261155 to WKRemoteObjectCoder's method-signature-equality test as well,
so that BOOL arguments correctly compare as equal between a Rosetta application and its
native ARM Web Content process.
- Shared/API/Cocoa/WKRemoteObjectCoder.h:
- Shared/API/Cocoa/WKRemoteObjectCoder.mm:
(WebKit::methodSignaturesAreCompatible):
(decodeInvocation):
Relax argument signature validation slightly, considering signed char and BOOL,
which are equivalent and sometimes substituted for each other, to be equal.
- Shared/API/Cocoa/_WKRemoteObjectRegistry.mm:
(-[_WKRemoteObjectRegistry _invokeMethod:]):
(blockSignaturesAreCompatible): Deleted.
- 1:17 AM Changeset in webkit [292208] by
-
- 29 edits2 adds in trunk
Add a debug overlay for interaction regions
https://bugs.webkit.org/show_bug.cgi?id=238187
Reviewed by Wenson Hsieh.
Source/WebCore:
- Sources.txt:
- WebCore.xcodeproj/project.pbxproj:
- dom/Node.cpp:
(WebCore::Node::willRespondToTouchEvents):
- dom/Node.h:
Expose
willRespondToTouchEvents
, similar towillRespondToMouseMoveEvents
.
- page/DebugOverlayRegions.h:
- page/DebugPageOverlays.cpp:
(WebCore::InteractionRegionOverlay::updateRegion):
(WebCore::pathsForRegion):
(WebCore::InteractionRegionOverlay::activeRegion):
(WebCore::drawCheckbox):
(WebCore::InteractionRegionOverlay::rectForSettingAtIndex):
(WebCore::InteractionRegionOverlay::valueForSetting):
(WebCore::InteractionRegionOverlay::drawSettings):
(WebCore::InteractionRegionOverlay::drawRect):
(WebCore::InteractionRegionOverlay::mouseEvent):
(WebCore::RegionOverlay::create):
(WebCore::DebugPageOverlays::updateOverlayRegionVisibility):
- page/DebugPageOverlays.h:
(WebCore::DebugPageOverlays::didLayout):
(WebCore::DebugPageOverlays::didChangeEventHandlers):
(WebCore::DebugPageOverlays::doAfterUpdateRendering):
Add an overlay for indicating interaction regions.
- page/FrameSnapshotting.cpp:
(WebCore::styleContainsComplexBackground):
(WebCore::estimatedBackgroundColorForRange):
- page/FrameSnapshotting.h:
- page/TextIndicator.cpp:
(WebCore::styleContainsComplexBackground): Deleted.
(WebCore::estimatedBackgroundColorForRange): Deleted.
MoveestimatedBackgroundColorForRange
from TextIndicator to
FrameSnapshotting for ease of reuse.
- page/InteractionRegion.cpp: Added.
(WebCore::absoluteBoundingRectForRange):
(WebCore::regionForElement):
(WebCore::cursorTypeForElement):
(WebCore::interactionRegions):
- page/InteractionRegion.h: Added.
(WebCore::InteractionRegion::encode const):
(WebCore::InteractionRegion::decode):
Add InteractionRegion, which keeps track of the location of and metadata
about interaction regions.
- platform/graphics/LayoutSize.h:
(WebCore::LayoutSize::minDimension const):
(WebCore::LayoutSize::maxDimension const):
- platform/graphics/RoundedRect.h:
(WebCore::RoundedRect::Radii::minimumRadius const):
Add minimumRadius() to Radii.
Source/WebKit:
- Shared/mac/MediaFormatReader/MediaFormatReader.cpp:
Unified source fixes.
- UIProcess/API/Cocoa/WKPreferencesPrivate.h:
Add plumbing for a new debug overlay.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::interactionRegions):
(WebKit::WebPageProxy::interactableRegionsInRootViewCoordinates): Deleted.
- UIProcess/WebPageProxy.h:
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView interactionRegionsForHoverPlatter:inRect:completionHandler:]):
(-[WKContentView interactableRegionsForHoverPlatter:inRect:completionHandler:]): Deleted.
- UIProcess/ios/WKHoverPlatter.h:
- UIProcess/ios/WKHoverPlatter.mm:
(-[WKHoverPlatter updateDebugIndicator]):
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::interactionRegions):
Move interactionRegions() from WebPage to WebCore::InteractionRegion.
(WebKit::WebPage::interactableRegionsInRootViewCoordinates): Deleted.
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
Tools:
- MiniBrowser/mac/SettingsController.h:
- MiniBrowser/mac/SettingsController.m:
(-[SettingsController _populateMenu]):
(-[SettingsController interactionRegionOverlayVisible]):
(-[SettingsController preferenceKeyForRegionOverlayTag:]):
- MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController didChangeSettings]):
Add a switch for the new debug overlay in MiniBrowser.
- 1:03 AM Changeset in webkit [292207] by
-
- 8 edits2 adds in trunk
Persistent notifications should work in document scopes as well as service worker global scopes
https://bugs.webkit.org/show_bug.cgi?id=238601
Reviewed by Brady Eidson.
Source/WebCore:
Add a m_serviceWorkerRegistrationURL in Notification to identify whether a notfication is persistent or not.
Set that field when creating a notification from NotificationData or from ServiceWorkerRegistration::showNotification.
Test: http/tests/workers/service/shownotification-allowed-document.html
- Modules/notifications/Notification.cpp:
(WebCore::Notification::create):
(WebCore::Notification::data const):
- Modules/notifications/Notification.h:
- workers/service/ServiceWorkerRegistration.cpp:
(WebCore::ServiceWorkerRegistration::showNotification):
Source/WebKit:
In case of notification message coming from a WebPage, check whether the notification is persistent or not.
If persistent, go to ServiceWorkerNotificationHandler, otherwise use the current code path through WebPageProxy.
- UIProcess/Notifications/ServiceWorkerNotificationHandler.h:
- UIProcess/Notifications/WebNotificationManagerMessageHandler.cpp:
(WebKit::WebNotificationManagerMessageHandler::showNotification):
(WebKit::WebNotificationManagerMessageHandler::cancelNotification):
(WebKit::WebNotificationManagerMessageHandler::clearNotifications):
(WebKit::WebNotificationManagerMessageHandler::didDestroyNotification):
LayoutTests:
- http/tests/workers/service/shownotification-allowed-document-expected.txt: Added.
- http/tests/workers/service/shownotification-allowed-document.html: Added.
- 12:11 AM Changeset in webkit [292206] by
-
- 2 edits in trunk/Source/JavaScriptCore
Unreviewed, fix non-unified build after r292191
- runtime/ScriptExecutableInlines.h: