main
Name already in use
Commits on Mar 24, 2023
-
JavaScriptCore: m_linkBuffer should be initialized via WTF::makeUnique
https://bugs.webkit.org/show_bug.cgi?id=253156 Reviewed by Chris Dumez. m_linkBuffer can be fast-allocated, so let's do this via WTF::makeUnique. * Source/JavaScriptCore/jit/JIT.cpp:(JIT::compileAndLinkWithoutFinalizing): Use WTF::MakeUnique to initialize m_linkBuffer. Canonical link: https://commits.webkit.org/262084@main
-
WebCore: Prefer mutableCopy over mutableCopyWithZone
https://bugs.webkit.org/show_bug.cgi?id=253825 Reviewed by Chris Dumez. The mutableCopyWithZone method is not overridden, nor is the zone parameter even acknowledged anymore by the Objective-C runtime. We should replace calls to mutableCopyWithZone with calls to mutableCopy. * Source/WebCore/platform/mac/WebNSAttributedStringExtras.mm: (attributedStringByStrippingAttachmentCharacters): Replace mutableCopyWithZone with mutableCopy. * Source/WebCore/platform/network/cocoa/WebCoreNSURLSession.mm: (initWithSession): Ditto. Canonical link: https://commits.webkit.org/262083@main
-
[UI-side compositing] Add infrastructure to get scrollbar state in la…
…yout tests https://bugs.webkit.org/show_bug.cgi?id=254372 rdar://107154212 Reviewed by Simon Fraser. Add UI-script controller function for getting scrollbar state for a scrolling tree node id. Add an internals function for getting the scrolling tree node id from a node. * LayoutTests/fast/scrolling/mac/scrollbars/overflow-overlay-scrollbar-reveal.html: * Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.h: * Source/WebCore/page/scrolling/ScrollingTreeScrollingNodeDelegate.h: (WebCore::ScrollingTreeScrollingNodeDelegate::scrollbarStateForOrientation const): * Source/WebCore/page/scrolling/mac/ScrollerMac.h: * Source/WebCore/page/scrolling/mac/ScrollerMac.mm: (WebCore::ScrollerMac::scrollbarState const): * Source/WebCore/page/scrolling/mac/ScrollerPairMac.h: * Source/WebCore/page/scrolling/mac/ScrollerPairMac.mm: (WebCore::ScrollerPairMac::scrollbarStateForOrientation const): * Source/WebCore/page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.h: * Source/WebCore/page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm: (WebCore::ScrollingTreeScrollingNodeDelegateMac::scrollbarStateForOrientation const): * Source/WebCore/testing/Internals.cpp: (WebCore::Internals::scrollingNodeIDForNode): * Source/WebCore/testing/Internals.h: * Source/WebCore/testing/Internals.idl: * Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivateForTesting.h: * Source/WebKit/UIProcess/API/Cocoa/WKWebViewTesting.mm: (-[WKWebView _scrollbarStateForScrollingNodeID:isVertical:]): * Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp: (WebKit::RemoteScrollingCoordinatorProxy::scrollbarStateForScrollingNodeID): * Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.h: * Source/WebKit/UIProcess/RemoteLayerTree/mac/ScrollingTreeFrameScrollingNodeRemoteMac.cpp: (WebKit::ScrollingTreeFrameScrollingNodeRemoteMac::scrollbarStateForOrientation const): * Source/WebKit/UIProcess/RemoteLayerTree/mac/ScrollingTreeFrameScrollingNodeRemoteMac.h: * Source/WebKit/UIProcess/RemoteLayerTree/mac/ScrollingTreeOverflowScrollingNodeRemoteMac.cpp: (WebKit::ScrollingTreeOverflowScrollingNodeRemoteMac::scrollbarStateForOrientation const): * Source/WebKit/UIProcess/RemoteLayerTree/mac/ScrollingTreeOverflowScrollingNodeRemoteMac.h: * Source/WebKit/UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::scrollbarStateForScrollingNodeID): * Source/WebKit/UIProcess/WebPageProxy.h: * Tools/TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl: * Tools/TestRunnerShared/UIScriptContext/UIScriptController.h: (WTR::UIScriptController::scrollbarStateForScrollingNodeID const): * Tools/WebKitTestRunner/mac/UIScriptControllerMac.h: * Tools/WebKitTestRunner/mac/UIScriptControllerMac.mm: (WTR::UIScriptControllerMac::scrollbarStateForScrollingNodeID const): Canonical link: https://commits.webkit.org/262082@main
-
Trimmed block-start margins for flex items in horizontal writing mode…
… should be reflected in computed style https://bugs.webkit.org/show_bug.cgi?id=253712 rdar://106558991 Reviewed by Alan Baradlay. Whenever we trim a block-start margin for a flex item, we should include a bit of information for this trimmed margin as a piece of rare data for the object. The trimming is done inside trimMainAxisMarginStart and trimCrossAxisMarginStart, so we can wrap abstract the trimming into a new helper method, RenderBlock::setTrimmedMarginForChild. This new helper will trim the correct margin and also set the corresponding bit of rare data Then, inside of ComputedStyleExtractor we can check if this bit has been set when trying to determine the block-start margin when the flexbox is in horizontal writing-mode (i.e. the top margin). For flex layout, we can clear these new bits whenever we go through another layout and recreate the flex items. We also need to update the conditions for determining whether the margin-top property is layout dependent by taking into consideration margin-trim. For flex items, this can be done by checking the set margin-trim values on the flexbox. * LayoutTests/imported/w3c/web-platform-tests/css/css-box/margin-trim/computed-margin-values/flexbox-column-block-start-expected.txt: Added. * LayoutTests/imported/w3c/web-platform-tests/css/css-box/margin-trim/computed-margin-values/flexbox-column-block-start.html: Added. * LayoutTests/imported/w3c/web-platform-tests/css/css-box/margin-trim/computed-margin-values/flexbox-column-multi-line-block-start-expected.txt: Added. * LayoutTests/imported/w3c/web-platform-tests/css/css-box/margin-trim/computed-margin-values/flexbox-column-multi-line-block-start.html: Added. * LayoutTests/imported/w3c/web-platform-tests/css/css-box/margin-trim/computed-margin-values/flexbox-row-block-start-dynamic-expected.txt: Added. * LayoutTests/imported/w3c/web-platform-tests/css/css-box/margin-trim/computed-margin-values/flexbox-row-block-start-dynamic.html: Added. * LayoutTests/imported/w3c/web-platform-tests/css/css-box/margin-trim/computed-margin-values/flexbox-row-block-start-expected.txt: Added. * LayoutTests/imported/w3c/web-platform-tests/css/css-box/margin-trim/computed-margin-values/flexbox-row-block-start.html: Added. * LayoutTests/imported/w3c/web-platform-tests/css/css-box/margin-trim/computed-margin-values/flexbox-row-multi-line-block-start-expected.txt: Added. * LayoutTests/imported/w3c/web-platform-tests/css/css-box/margin-trim/computed-margin-values/flexbox-row-multi-line-block-start.html: Added. * Source/WebCore/css/ComputedStyleExtractor.cpp: (WebCore::isFlexItem): (WebCore::rendererContainingBlockHasMarginTrim): (WebCore::isLayoutDependent): (WebCore::ComputedStyleExtractor::valueForPropertyInStyle): * Source/WebCore/rendering/RenderBlock.cpp: (WebCore::RenderBlock::setTrimmedMarginForChild): * Source/WebCore/rendering/RenderBlock.h: * Source/WebCore/rendering/RenderBox.cpp: (WebCore::RenderBox::physicalToFlowRelativeDirectionMapping const): (WebCore::flowRelativeDirectionToMarginTrimType): (WebCore::RenderBox::markMarginAsTrimmed): (WebCore::RenderBox::clearTrimmedMarginsMarkings): (WebCore::RenderBox::hasTrimmedMargin const): * Source/WebCore/rendering/RenderBox.h: * Source/WebCore/rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::trimMainAxisMarginStart): (WebCore::RenderFlexibleBox::trimCrossAxisMarginStart): (WebCore::RenderFlexibleBox::constructFlexItem): * Source/WebCore/rendering/RenderObject.h: Canonical link: https://commits.webkit.org/262081@main
-
ARQL: Launch Preview needs to be passed along the appropriate disable…
…Scaling and customSharing fragment identifiers https://bugs.webkit.org/show_bug.cgi?id=254371 rdar://106193234 Reviewed by Antoine Quint. ARQL needs to see the fragment identifier on the link in order to do things like disable scaling. * Source/WebKit/UIProcess/Cocoa/LegacyDownloadClient.mm: (WebKit::LegacyDownloadClient::didCreateDestination): Pass along the fragment identifier. (WebKit::LegacyDownloadClient::didFinish): Copy the code from above. * Source/WebKit/UIProcess/Cocoa/SystemPreviewControllerCocoa.mm: Don't explicitly remove the fragment identifier. Canonical link: https://commits.webkit.org/262080@main
-
ReadableStream.tee should make sure to have its internal pull promise…
…s handled https://bugs.webkit.org/show_bug.cgi?id=254407 rdar://problem/107183268 Reviewed by Alex Christensen. Make sure that the read promise used for teeing is handled. We do not currently use the rejection handler as we handle closure with the closed promise. A follow-up patch should update the tee algorithm to the latest specification. * LayoutTests/imported/w3c/web-platform-tests/streams/readable-byte-streams/tee.any.serviceworker-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/streams/readable-byte-streams/tee.any.sharedworker-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/streams/readable-byte-streams/tee.any-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/streams/readable-byte-streams/tee.any.worker-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/tee.any-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/tee.any.serviceworker-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/tee.any.sharedworker-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/tee.any.worker-expected.txt: * Source/WebCore/Modules/streams/ReadableStreamInternals.js: (readableStreamTeePullFunction): Canonical link: https://commits.webkit.org/262079@main
-
WritableStreamDefaultController constructor should throw if called di…
…rectly https://bugs.webkit.org/show_bug.cgi?id=254418 rdar://problem/107185937 Reviewed by Alex Christensen. Fix the check in initializeWritableStreamDefaultController to make sure the constructor will throw. * LayoutTests/imported/w3c/web-platform-tests/streams/writable-streams/constructor.any-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/streams/writable-streams/constructor.any.worker-expected.txt: * Source/WebCore/Modules/streams/WritableStreamDefaultController.js: (initializeWritableStreamDefaultController): Canonical link: https://commits.webkit.org/262078@main
-
RenderBlockFlows with no children should not even try to run inline l…
…ayout https://bugs.webkit.org/show_bug.cgi?id=254391 Reviewed by Antti Koivisto. 1. RenderBlockFlow's initial state is m_childrenInline = true 2. m_childrenInline is set to true when the block ends up with no children. 3. childrenInline() makes RenderBlockFlow run inline layout. Initiating layout (IFC or BFC) does not make much sense when there's nothing to run layout on. * Source/WebCore/rendering/RenderBlockFlow.cpp: (WebCore::RenderBlockFlow::layoutInlineChildren): RenderSVGText calls layoutInlineChildren with no children :| Canonical link: https://commits.webkit.org/262077@main
-
Animations inside a Details tag only fire once
https://bugs.webkit.org/show_bug.cgi?id=254401 Reviewed by Antti Koivisto. We should always cancel declarative animations in case of a Full teardown, and never in the FullAfterSlotChange case. We remove the FALLTHROUGH to make this all clearer and better distinguish the Full and FullAfterSlotChange cases. * LayoutTests/imported/w3c/web-platform-tests/css/css-animations/animation-canceled-by-parent-details-element-being-closed-expected.txt: Added. * LayoutTests/imported/w3c/web-platform-tests/css/css-animations/animation-canceled-by-parent-details-element-being-closed.html: Added. * Source/WebCore/rendering/updating/RenderTreeUpdater.cpp: (WebCore::RenderTreeUpdater::tearDownRenderers): Canonical link: https://commits.webkit.org/262076@main
-
[GTK] Allow pasting content with async clipboard when origin is the same
https://bugs.webkit.org/show_bug.cgi?id=254408 Reviewed by Michael Catanzaro. * LayoutTests/platform/gtk/TestExpectations: * Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml: * Source/WebKit/UIProcess/API/gtk/PageClientImpl.cpp: (WebKit::PageClientImpl::requestDOMPasteAccess): Canonical link: https://commits.webkit.org/262075@main
-
[EGL] Merge GLContext and GLContextEGL
https://bugs.webkit.org/show_bug.cgi?id=254270 Reviewed by Adrian Perez de Castro. GLContextEGL is now the only implementation of GLContext, so there's no reason to have a base abstract class. * Source/WebCore/Headers.cmake: * Source/WebCore/PlatformPlayStation.cmake: * Source/WebCore/PlatformWin.cmake: * Source/WebCore/SourcesGTK.txt: * Source/WebCore/SourcesWPE.txt: * Source/WebCore/platform/graphics/GLContext.cpp: Removed. * Source/WebCore/platform/graphics/GLContext.h: Removed. * Source/WebCore/platform/graphics/PlatformDisplay.cpp: (WebCore::PlatformDisplay::sharingGLContext): (WebCore::PlatformDisplay::initializeEGLDisplay): * Source/WebCore/platform/graphics/egl/GLContext.cpp: Renamed from Source/WebCore/platform/graphics/egl/GLContextEGL.cpp. (WebCore::initializeOpenGLShimsIfNeeded): (WebCore::GLContext::errorString): (WebCore::GLContext::lastErrorString): (WebCore::GLContext::getEGLConfig): (WebCore::GLContext::createWindowContext): (WebCore::GLContext::createPbufferContext): (WebCore::GLContext::createSurfacelessContext): (WebCore::GLContext::createContext): (WebCore::GLContext::createOffscreen): (WebCore::GLContext::createSharing): (WebCore::GLContext::GLContext): (WebCore::GLContext::~GLContext): (WebCore::GLContext::createContextForEGLVersion): (WebCore::GLContext::makeContextCurrent): (WebCore::GLContext::current): (WebCore::GLContext::swapBuffers): (WebCore::GLContext::platformContext): (WebCore::GLContext::isExtensionSupported): (WebCore::GLContext::version): * Source/WebCore/platform/graphics/egl/GLContext.h: Added. (WebCore::GLContext::display const): (WebCore::GLContext::config const): * Source/WebCore/platform/graphics/egl/GLContextEGL.h: Removed. * Source/WebCore/platform/graphics/egl/GLContextEGLLibWPE.cpp: (WebCore::GLContext::GLContext): (WebCore::GLContext::createWindowSurfaceWPE): (WebCore::GLContext::createWPEContext): (WebCore::GLContext::destroyWPETarget): (WebCore::GLContextEGL::GLContextEGL): Deleted. (WebCore::GLContextEGL::createWindowSurfaceWPE): Deleted. (WebCore::GLContextEGL::createWPEContext): Deleted. (WebCore::GLContextEGL::destroyWPETarget): Deleted. * Source/WebCore/platform/graphics/egl/GLContextEGLWayland.cpp: (WebCore::GLContext::GLContext): (WebCore::GLContext::createWindowSurfaceWayland): (WebCore::GLContext::createWaylandContext): (WebCore::GLContext::destroyWaylandWindow): (WebCore::GLContextEGL::GLContextEGL): Deleted. (WebCore::GLContextEGL::createWindowSurfaceWayland): Deleted. (WebCore::GLContextEGL::createWaylandContext): Deleted. (WebCore::GLContextEGL::destroyWaylandWindow): Deleted. * Source/WebCore/platform/graphics/egl/GLContextEGLX11.cpp: (WebCore::GLContext::GLContext): (WebCore::GLContext::createWindowSurfaceX11): (WebCore::GLContext::createPixmapContext): (WebCore::GLContextEGL::GLContextEGL): Deleted. (WebCore::GLContextEGL::createWindowSurfaceX11): Deleted. (WebCore::GLContextEGL::createPixmapContext): Deleted. * Source/WebCore/platform/graphics/gstreamer/PlatformDisplayGStreamer.cpp: * Source/WebCore/platform/graphics/libwpe/PlatformDisplayLibWPE.cpp: (WebCore::PlatformDisplayLibWPE::initialize): * Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayerDmabuf.cpp: (WebCore::TextureMapperPlatformLayerDmabuf::validateTexture): * Source/WebCore/platform/graphics/wayland/PlatformDisplayWayland.cpp: * Source/WebCore/platform/xr/openxr/PlatformXROpenXR.cpp: (PlatformXR::OpenXRDevice::initializeTrackingAndRendering): * Source/WebCore/platform/xr/openxr/PlatformXROpenXR.h: * Source/WebKit/GPUProcess/graphics/wc/WCSceneContext.cpp: (WebKit::WCSceneContext::WCSceneContext): * Source/WebKit/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp: (WebKit::ThreadedCompositor::createGLContext): * Source/WebKit/UIProcess/API/glib/WebKitProtocolHandler.cpp: (WebKit::WebKitProtocolHandler::handleGPU): * Source/WebKit/UIProcess/gtk/AcceleratedBackingStoreWayland.cpp: (WebKit::tryInitializeEGL): * Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/LayerTreeHostTextureMapper.cpp: (WebKit::LayerTreeHost::LayerTreeHost): Canonical link: https://commits.webkit.org/262074@main
-
https://bugs.webkit.org/show_bug.cgi?id=254416 rdar://107184642 Reviewed by Youenn Fablet. Corrects oversight of 09841b4. * LayoutTests/imported/w3c/web-platform-tests/fetch/range/blob.any.worker-expected.txt: Added. * LayoutTests/imported/w3c/web-platform-tests/fetch/range/blob.any.worker.html: Added. * LayoutTests/imported/w3c/web-platform-tests/fetch/range/w3c-import.log: Canonical link: https://commits.webkit.org/262073@main
-
https://bugs.webkit.org/show_bug.cgi?id=254147 rdar://106934916 Reviewed by Chris Dumez. Additionally removes an overload that's not supported by the URL Standard. * LayoutTests/imported/w3c/web-platform-tests/url/historical.any-expected.txt: * LayoutTests/imported/w3c/web-platform-tests/url/historical.any.js: (test): * LayoutTests/imported/w3c/web-platform-tests/url/historical.any.worker-expected.txt: Changes exported via web-platform-tests/wpt#39177. * LayoutTests/imported/w3c/web-platform-tests/url/url-statics-canparse.any-expected.txt: Added. * LayoutTests/imported/w3c/web-platform-tests/url/url-statics-canparse.any.html: Added. * LayoutTests/imported/w3c/web-platform-tests/url/url-statics-canparse.any.js: Added. (forEach): Imported from upstream. * Source/WebCore/html/DOMURL.cpp: (WebCore::DOMURL::canParse): * Source/WebCore/html/DOMURL.h: * Source/WebCore/html/DOMURL.idl: Canonical link: https://commits.webkit.org/262072@main
-
[MSE] media/media-source/media-source-video-playback-quality.html is …
…a constant failure with MockMSE in GPUP https://bugs.webkit.org/show_bug.cgi?id=254405 rdar://107182984 Reviewed by Youenn Fablet. To get a valid VideoPlaybackQuality object about all the frames contained in the SourceBuffer we must get the entire content first. We modify the test so that the video is played to the end first and only then get the VideoPlaybackQuality. * LayoutTests/media/media-source/media-source-video-playback-quality-expected.txt: * LayoutTests/media/media-source/media-source-video-playback-quality.html: Canonical link: https://commits.webkit.org/262071@main
-
m_styleScope should be a WeakPtr in InlineStyleSheetOwner
https://bugs.webkit.org/show_bug.cgi?id=254397 Reviewed by Chris Dumez. Use WeakPtr instead of a raw pointer in InlineStyleSheetOwner for Style::Scope. * Source/WebCore/dom/InlineStyleSheetOwner.cpp: (WebCore::InlineStyleSheetOwner::insertedIntoDocument): (WebCore::InlineStyleSheetOwner::removedFromDocument): (WebCore::InlineStyleSheetOwner::clearDocumentData): (WebCore::InlineStyleSheetOwner::createSheet): (WebCore::InlineStyleSheetOwner::sheetLoaded): (WebCore::InlineStyleSheetOwner::startLoadingDynamicSheet): * Source/WebCore/dom/InlineStyleSheetOwner.h: (WebCore::InlineStyleSheetOwner::styleScope): Canonical link: https://commits.webkit.org/262070@main
-
[MSE] media/media-source/media-source-fudge-factor.html times out
https://bugs.webkit.org/show_bug.cgi?id=254385 rdar://107162814 Reviewed by Jer Noble. The test assumed that it assumes that the `SourceBuffer.updating` attribute will be false when `loadedmetadata` or `loadeddata` are fired. This isn't guaranteed, only once `updateend` has fired would the updating attribute be false, allowing to append more data again to the sourceBuffer. * LayoutTests/media/media-source/media-source-fudge-factor-expected.txt: * LayoutTests/media/media-source/media-source-fudge-factor.html: Canonical link: https://commits.webkit.org/262069@main
-
https://bugs.webkit.org/show_bug.cgi?id=253413 Reviewed by Yusuke Suzuki. This change adds support for tuples in the DFG. It works similarly to how tuples work in B3 where there is a side buffer which holds most of the metadata for a tuple. In the DFG there are three pieces of information held here: 1) The reference count 2) The result flags 3) The virtual register 1) tells us if the ExtractFromTuple Node for a given tuple result still exists (e.g. it could have been constant folded or dead code eliminated). From that we will decide to fill (3) the virtual register when allocating registers. If we didn't have the reference count then we would have no way to know that the virtual registers isn't going to be consumed thus we will leak it. Lastly we have (2) the result flags for the node. This tells the ExtractFromTuple and theoretically (as right now the only ExtractFromTuple users produce Int32s) any consumers of the ExtractFromTuple what value format the tuple's result will be in. For the DFG, we don't need this because we know there's at most one ExtractFromTuple for any given tuple index since we don't duplicate code. When dumping the DFG graph ExtractFromTuple follows the same pattern as B3 and uses `<<X` to denote the offset we are extracting from. So it will look something like: 6 1 0: D@101:< 1:-> EnumeratorNextUpdateIndexAndMode(Check:Untyped:D@97, Check:Untyped:D@98, Check:Untyped:D@100, Check:Untyped:D@99, VarArgs, SelectUsingPredictions+NonArray+InBounds+AsIs+Read, enumeratorModes = 4, R:World, W:Heap, Exits, ClobbersExit, bc#115, ExitValid) 7 1 0: D@102:< 1:-> ExtractFromTuple(Check:Untyped:D@101, Int32|UseAsOther, <<0, bc#115, ExitInvalid) 8 1 0: D@103:<!0:-> MovHint(Check:Untyped:D@102, MustGen, loc10, W:SideState, ClobbersExit, bc#115, ExitInvalid) 9 1 0: D@104:< 1:-> ExtractFromTuple(Check:Untyped:D@101, Int32|UseAsOther, <<1, bc#115, ExitInvalid) This patch also adds support for calling operations in both the FTL/B3 via CCall. CCall can take exactly the tuple of `{ pointerType(), pointerType() }`, which, for every calling conevention we support, should be returned in both the return value registers. As the only way to look into a tuple is via the B3 prodecure, the first Air::Arg of any CCall/ColdCCall Inst is now the CCallSpecial for the compiling Air::Code. This gives us access to Air::Code inside CCallCustom::forEachArg and isValidForm. * JSTests/stress/for-in-redefine-enumerable.js: (shouldBe): * Source/JavaScriptCore/b3/B3LowerToAir.cpp: * Source/JavaScriptCore/b3/B3Type.h: (JSC::B3::pointerType): (JSC::B3::registerType): * Source/JavaScriptCore/b3/B3Validate.cpp: * Source/JavaScriptCore/b3/air/AirCCallingConvention.cpp: (JSC::B3::Air::cCallResultCount): (JSC::B3::Air::cCallArgumentRegisterWidth): (JSC::B3::Air::cCallResult): * Source/JavaScriptCore/b3/air/AirCCallingConvention.h: * Source/JavaScriptCore/b3/air/AirCustom.cpp: (JSC::B3::Air::CCallCustom::isValidForm): * Source/JavaScriptCore/b3/air/AirCustom.h: (JSC::B3::Air::CCallCustom::forEachArg): * Source/JavaScriptCore/b3/air/AirLowerAfterRegAlloc.cpp: (JSC::B3::Air::lowerAfterRegAlloc): * Source/JavaScriptCore/b3/air/AirLowerMacros.cpp: (JSC::B3::Air::lowerMacros): * Source/JavaScriptCore/b3/air/AirOpcode.opcodes: * Source/JavaScriptCore/b3/testb3.h: * Source/JavaScriptCore/b3/testb3_3.cpp: (addCallTests): * Source/JavaScriptCore/b3/testb3_5.cpp: (JSC_DEFINE_JIT_OPERATION): (testCallPairResult): (testCallPairResultRare): * Source/JavaScriptCore/dfg/DFGAbstractInterpreter.h: (JSC::DFG::AbstractInterpreter::setTupleConstant): * Source/JavaScriptCore/dfg/DFGAbstractInterpreterInlines.h: (JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects): * Source/JavaScriptCore/dfg/DFGAtTailAbstractState.cpp: (JSC::DFG::AtTailAbstractState::AtTailAbstractState): * Source/JavaScriptCore/dfg/DFGAtTailAbstractState.h: (JSC::DFG::AtTailAbstractState::forTupleNode): (JSC::DFG::AtTailAbstractState::clearForTupleNode): (JSC::DFG::AtTailAbstractState::setForTupleNode): (JSC::DFG::AtTailAbstractState::setTypeForTupleNode): (JSC::DFG::AtTailAbstractState::setNonCellTypeForTupleNode): (JSC::DFG::AtTailAbstractState::makeBytecodeTopForTupleNode): (JSC::DFG::AtTailAbstractState::makeHeapTopForTupleNode): * Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp: (JSC::DFG::ByteCodeParser::addToGraph): (JSC::DFG::ByteCodeParser::parseBlock): * Source/JavaScriptCore/dfg/DFGClobberize.h: (JSC::DFG::clobberize): * Source/JavaScriptCore/dfg/DFGDoesGC.cpp: (JSC::DFG::doesGC): * Source/JavaScriptCore/dfg/DFGFixupPhase.cpp: (JSC::DFG::FixupPhase::fixupNode): * Source/JavaScriptCore/dfg/DFGGenerationInfo.h: (JSC::DFG::GenerationInfo::initFromTupleResult): * Source/JavaScriptCore/dfg/DFGGraph.cpp: (JSC::DFG::Graph::dump): * Source/JavaScriptCore/dfg/DFGGraph.h: * Source/JavaScriptCore/dfg/DFGInPlaceAbstractState.cpp: (JSC::DFG::InPlaceAbstractState::InPlaceAbstractState): * Source/JavaScriptCore/dfg/DFGInPlaceAbstractState.h: (JSC::DFG::InPlaceAbstractState::forTupleNode): (JSC::DFG::InPlaceAbstractState::clearForTupleNode): (JSC::DFG::InPlaceAbstractState::setForTupleNode): (JSC::DFG::InPlaceAbstractState::setTypeForTupleNode): (JSC::DFG::InPlaceAbstractState::setNonCellTypeForTupleNode): (JSC::DFG::InPlaceAbstractState::makeBytecodeTopForTupleNode): (JSC::DFG::InPlaceAbstractState::makeHeapTopForTupleNode): * Source/JavaScriptCore/dfg/DFGMayExit.cpp: * Source/JavaScriptCore/dfg/DFGNode.h: (JSC::DFG::Node::isTuple const): (JSC::DFG::Node::setTupleOffset): (JSC::DFG::Node::tupleOffset const): (JSC::DFG::Node::hasExtractOffset const): (JSC::DFG::Node::extractOffset const): (JSC::DFG::Node::tupleIndex const): (JSC::DFG::Node::tupleSize const): (JSC::DFG::Node::hasVirtualRegister): (JSC::DFG::Node::virtualRegister): (JSC::DFG::Node::setVirtualRegister): * Source/JavaScriptCore/dfg/DFGNodeType.h: * Source/JavaScriptCore/dfg/DFGOperations.cpp: (JSC::DFG::JSC_DEFINE_JIT_OPERATION): * Source/JavaScriptCore/dfg/DFGOperations.h: (JSC::DFG::makeUGPRPair): * Source/JavaScriptCore/dfg/DFGPredictionPropagationPhase.cpp: * Source/JavaScriptCore/dfg/DFGSafeToExecute.h: (JSC::DFG::safeToExecute): * Source/JavaScriptCore/dfg/DFGScoreBoard.h: (JSC::DFG::ScoreBoard::use): * Source/JavaScriptCore/dfg/DFGSpeculativeJIT.cpp: * Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h: (JSC::DFG::SpeculativeJIT::strictInt32TupleResultWithoutUsingChildren): * Source/JavaScriptCore/dfg/DFGSpeculativeJIT32_64.cpp: (JSC::DFG::SpeculativeJIT::compile): * Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp: (JSC::DFG::SpeculativeJIT::compile): * Source/JavaScriptCore/dfg/DFGValidate.cpp: * Source/JavaScriptCore/dfg/DFGVirtualRegisterAllocationPhase.cpp: (JSC::DFG::VirtualRegisterAllocationPhase::run): * Source/JavaScriptCore/ftl/FTLCapabilities.cpp: (JSC::FTL::canCompile): * Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp: (JSC::FTL::DFG::LowerDFGToB3::LowerDFGToB3): (JSC::FTL::DFG::LowerDFGToB3::compileNode): (JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq): * Source/JavaScriptCore/ftl/FTLOutput.cpp: (JSC::FTL::Output::extract): * Source/JavaScriptCore/ftl/FTLOutput.h: * Source/JavaScriptCore/wasm/WasmAirIRGeneratorBase.h: (JSC::Wasm::AirIRGeneratorBase::emitCCall): Canonical link: https://commits.webkit.org/262068@main
-
Add initial slew of tests for wide-layout attachment
https://bugs.webkit.org/show_bug.cgi?id=254203 rdar://106984208 Reviewed by Aditya Keerthi. Most are copies of the non-"wide" tests. Minor bugs were revealed and fixed: - When setting/changing the top-level attachment's id or class (or even style) attribute, it was copied to the inner attachment, possibly modifying its rendering through css. So instead of indiscriminately copying every attribute, only the necessary ones related to the icon/thumbnail display are now copied. - setFile function calls on the top-level attachment needed to be forwarded to the inner attachment to display the correct icon in some cases. Render tree tests could become proper ref tests once the inner attachment is replaced with a standard HTML image element. * LayoutTests/TestExpectations: * LayoutTests/fast/attachment/cocoa/wide-attachment-class-expected.html: Added. * LayoutTests/fast/attachment/cocoa/wide-attachment-class.html: Added. * LayoutTests/fast/attachment/cocoa/wide-attachment-default-icon-expected.html: Added. * LayoutTests/fast/attachment/cocoa/wide-attachment-default-icon.html: Added. * LayoutTests/fast/attachment/cocoa/wide-attachment-dom-expected.txt: Added. * LayoutTests/fast/attachment/cocoa/wide-attachment-dom.html: Added. * LayoutTests/fast/attachment/cocoa/wide-attachment-folder-icon-expected.html: Added. * LayoutTests/fast/attachment/cocoa/wide-attachment-folder-icon.html: Added. * LayoutTests/fast/attachment/cocoa/wide-attachment-icon-from-file-extension-expected.html: Added. * LayoutTests/fast/attachment/cocoa/wide-attachment-icon-from-file-extension.html: Added. * LayoutTests/fast/attachment/cocoa/wide-attachment-id-expected.html: Added. * LayoutTests/fast/attachment/cocoa/wide-attachment-id.html: Added. * LayoutTests/fast/attachment/cocoa/wide-attachment-rendering.html: Added. * LayoutTests/fast/attachment/cocoa/wide-attachment-save-event-expected.txt: Added. * LayoutTests/fast/attachment/cocoa/wide-attachment-save-event.html: Added. * LayoutTests/fast/attachment/cocoa/wide-attachment-uti-expected.html: Added. * LayoutTests/fast/attachment/cocoa/wide-attachment-uti.html: Added. * LayoutTests/fast/attachment/cocoa/wide-attachment-wrapping-action-expected-mismatch.html: Added. * LayoutTests/fast/attachment/cocoa/wide-attachment-wrapping-action.html: Added. * LayoutTests/fast/attachment/mac/wide-attachment-element-gpu-process-expected.html: Added. * LayoutTests/fast/attachment/mac/wide-attachment-element-gpu-process.html: Added. * LayoutTests/fast/attachment/mac/wide-attachment-image-controls-basic-expected.txt: Added. * LayoutTests/fast/attachment/mac/wide-attachment-image-controls-basic.html: Added. * LayoutTests/fast/attachment/mac/wide-attachment-type-attribute-expected.html: Added. * LayoutTests/fast/attachment/mac/wide-attachment-type-attribute.html: Added. * LayoutTests/platform/ios-wk2/TestExpectations: * LayoutTests/platform/ios-wk2/fast/attachment/cocoa/wide-attachment-rendering-expected.txt: Added. * LayoutTests/platform/mac-wk2/TestExpectations: * LayoutTests/platform/mac-wk2/fast/attachment/cocoa/wide-attachment-rendering-expected.txt: Added. * Source/WebCore/html/HTMLAttachmentElement.cpp: (WebCore::HTMLAttachmentElement::ensureModernShadowTree): When first constructed, only relevant attributes are copied into the inner attachment. (WebCore::HTMLAttachmentElement::setFile): File details may be set through this function (instead of through element attributes), so the call must be duplicated into the inner attachment. (WebCore::HTMLAttachmentElement::parseAttribute): When attributes are modified, only the ones relevant to the attachment display are forwarded to the inner attachment. Canonical link: https://commits.webkit.org/262067@main
-
[GStreamer] Harness: Support for output stream caps changes
https://bugs.webkit.org/show_bug.cgi?id=254332 Reviewed by Xabier Rodriguez-Calvar. The harness was internally caching output stream pad caps but additional caps events were not taken in account. We now clear the cached caps when the pad receives a caps event. * Source/WebCore/platform/gstreamer/GStreamerElementHarness.cpp: (WebCore::GStreamerElementHarness::Stream::outputCaps): (WebCore::GStreamerElementHarness::Stream::sinkEvent): * Source/WebCore/platform/gstreamer/GStreamerElementHarness.h: Canonical link: https://commits.webkit.org/262066@main
-
[MediaStream][GStreamer] Add support for InputDeviceInfo
https://bugs.webkit.org/show_bug.cgi?id=254040 Reviewed by Carlos Garcia Campos. The GLib UIProcess->WebProcess IPC now takes in account the desire for the UIProcess to reveal device IDs and labels. * LayoutTests/platform/glib/TestExpectations: * Source/WebKit/UIProcess/glib/UserMediaPermissionRequestManagerProxyGLib.cpp: (WebKit::UserMediaPermissionRequestManagerProxy::platformGetMediaStreamDevices): * Source/WebKit/WebProcess/glib/UserMediaCaptureManager.cpp: (WebKit::UserMediaCaptureManager::getMediaStreamDevices): * Source/WebKit/WebProcess/glib/UserMediaCaptureManager.h: * Source/WebKit/WebProcess/glib/UserMediaCaptureManager.messages.in: Canonical link: https://commits.webkit.org/262065@main
-
[media-controls] volume slider should animate when mute button is tog…
…gled https://bugs.webkit.org/show_bug.cgi?id=254350 rdar://102427937 Reviewed by Dean Jackson. We used to simply snap the volume slider value as the mute button is toggled. Now we use a short animation by checking we have an event passed to syncControl(), which indicates this is not the initial call to syncControl() where we do not want to animate as we just want to match the initial state of the media element. * LayoutTests/media/modern-media-controls/volume-support/volume-support-media-api-expected.txt: * LayoutTests/media/modern-media-controls/volume-support/volume-support-media-api-mute-expected.txt: * LayoutTests/media/modern-media-controls/volume-support/volume-support-media-api-mute.html: * LayoutTests/media/modern-media-controls/volume-support/volume-support-media-api.html: * Source/WebCore/Modules/modern-media-controls/controls/slider-base.js: (SliderBase.prototype.set value): (SliderBase.prototype.setValueAnimated): (SliderBase.prototype._setValueInternal): (SliderBase.prototype._handlePointerdownEvent): * Source/WebCore/Modules/modern-media-controls/media/media-controller-support.js: (MediaControllerSupport.prototype.handleEvent): * Source/WebCore/Modules/modern-media-controls/media/volume-support.js: (VolumeSupport.prototype.syncControl): (VolumeSupport): Canonical link: https://commits.webkit.org/262064@main
-
[WGSL] Add support for textures
https://bugs.webkit.org/show_bug.cgi?id=254278 <rdar://problem/107067119> Reviewed by Mike Wyrzykowski. Still needs the functions that use textures to make it useful, but this patch adds support for textures in the parser, type checker and code generator. * Source/WebGPU/WGSL/AST/ASTTypeName.h: (WGSL::AST::ParameterizedTypeName::stringViewToKind): * Source/WebGPU/WGSL/Metal/MetalFunctionWriter.cpp: (WGSL::Metal::FunctionDefinitionWriter::visit): * Source/WebGPU/WGSL/TypeStore.cpp: (WGSL::TextureKey::extra const): (WGSL::TypeStore::TypeStore): (WGSL::TypeStore::textureType): * Source/WebGPU/WGSL/TypeStore.h: * Source/WebGPU/WGSL/Types.cpp: (WGSL::Type::dump const): * Source/WebGPU/WGSL/Types.h: Canonical link: https://commits.webkit.org/262063@main
-
make all remaining { No, Yes } and { Yes, No } enums use bool as unde…
…rlying type https://bugs.webkit.org/show_bug.cgi?id=254358 Reviewed by Chris Dumez. Missed a few, such as multiline declarations, in 262018@main. * Source/JavaScriptCore/assembler/AssemblerBuffer.h: * Source/JavaScriptCore/bytecode/CallLinkInfo.h: * Source/ThirdParty/libwebrtc/Source/webrtc/pc/channel_unittest.cc: * Source/WTF/wtf/playstation/FileSystemPlayStation.cpp: * Source/WebCore/Modules/mediastream/RTCRtpScriptTransformer.h: * Source/WebCore/Modules/mediastream/gstreamer/GStreamerMediaEndpoint.cpp: * Source/WebCore/accessibility/AccessibilityNodeObject.h: * Source/WebCore/crypto/algorithms/CryptoAlgorithmAES_CBC.h: * Source/WebCore/css/parser/CSSParserEnum.h: * Source/WebCore/css/parser/CSSParserImpl.h: * Source/WebCore/dom/DocumentStorageAccess.h: * Source/WebCore/dom/ScriptExecutionContext.h: * Source/WebCore/loader/FrameLoaderTypes.h: * Source/WebCore/loader/ResourceLoaderOptions.h: * Source/WebCore/page/LocalFrameView.h: * Source/WebCore/platform/ScrollAnimator.h: * Source/WebCore/platform/ScrollTypes.h: * Source/WebCore/platform/gamepad/libwpe/GamepadProviderLibWPE.h: * Source/WebCore/platform/graphics/FontCache.h: * Source/WebCore/platform/graphics/GraphicsContextGL.h: * Source/WebCore/platform/graphics/ShouldLocalizeAxisNames.h: * Source/WebCore/platform/graphics/cocoa/FontCacheCoreText.h: * Source/WebCore/platform/graphics/gstreamer/GStreamerRegistryScanner.h: * Source/WebCore/platform/network/HTTPParsers.h: * Source/WebCore/platform/text/TextFlags.h: * Source/WebCore/rendering/BreakLines.h: * Source/WebCore/rendering/RenderBox.h: * Source/WebCore/rendering/RenderLayerCompositor.h: * Source/WebCore/rendering/style/StyleCursorImage.h: * Source/WebCore/rendering/svg/SVGRenderTreeAsText.cpp: * Source/WebCore/style/StyleBuilderState.h: * Source/WebDriver/Session.h: * Source/WebDriver/WebDriverService.cpp: * Source/WebKit/NetworkProcess/soup/NetworkDataTaskSoup.h: * Source/WebKit/Platform/IPC/StreamClientConnectionBuffer.h: * Source/WebKit/Platform/IPC/StreamServerConnectionBuffer.h: * Source/WebKit/Shared/TextFlags.serialization.in: * Source/WebKit/Shared/ios/GestureTypes.h: * Source/WebKit/UIProcess/API/glib/IconDatabase.h: * Source/WebKit/UIProcess/API/gtk/WebKitWebViewBaseInternal.h: * Source/WebKit/UIProcess/PageClient.h: * Source/WebKit/UIProcess/WebAuthentication/Cocoa/HidConnection.h: * Source/WebKit/UIProcess/WebProcessProxy.h: * Source/WebKit/UIProcess/ios/WKContentViewInteraction.h: * Source/WebKit/WebProcess/WebPage/WebBackForwardListProxy.h: * Tools/TestWebKitAPI/Tests/WebCore/ImageBufferTests.cpp: * Tools/TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm: Canonical link: https://commits.webkit.org/262062@main
-
[GTK] font-size-adjust does not work for non-Ahem fonts
https://bugs.webkit.org/show_bug.cgi?id=254145 Reviewed by Carlos Garcia Campos. The GTK port does not properly handle the font-size-adjust CSS property. This is because xHeight is not retrieved with FreeType in Font::platformInit() at SimpleFontDataFreeType.cpp. We attempt to get the xHeight from FreeType first, then do the same from Cairo. If we get 0 of xHeight in the first trial and set it to `std::optional<float> xHeight`, the second trial never happens as `if (!xHeight)` does not hit. That condition just checks if xHeight has a value or not. Our intention is to retry to get xHeight by an alternative way (i.e., Cairo) where the xHeight is not normal (i.e., 0). To fix this, we test if xHeight has a value and that is a non-zero value for the second trial. Otherwise, we get the xHeight from Cairo. The following results are updated since the xHeight value was not reflected. * LayoutTests/platform/gtk/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.png: * LayoutTests/platform/gtk/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.txt: * LayoutTests/platform/wpe/svg/W3C-SVG-1.1-SE/coords-units-03-b-expected.txt: * Source/WebCore/platform/graphics/freetype/SimpleFontDataFreeType.cpp: (WebCore::Font::platformInit): Canonical link: https://commits.webkit.org/262061@main
-
Custom highlight creation behind marked text should not be gated on i…
…nput sources supporting live conversion only https://bugs.webkit.org/show_bug.cgi?id=254354 rdar://107142115 Reviewed by Wenson Hsieh. Previously, we gated custom highlight creation with a check on the `NSMarkedClauseSegmentAttributeName` attribute. This allowed us to honor background color only in the case of live conversion. Since that is no longer the case, it is undesirable to gate our behavior to the live conversion case. As such, we remove this attribute check and allow custom highlight creation for other IMEs. * Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm: (compositionHighlights): Canonical link: https://commits.webkit.org/262060@main
-
[Gardening] http/tests/priority-hints/fetch-api-priority.html
https://bugs.webkit.org/show_bug.cgi?id=254259 Unreviewed test gardening. http/tests/priority-hints/fetch-api-priority.html is randomly failing since it was added. * LayoutTests/TestExpectations: Canonical link: https://commits.webkit.org/262059@main
-
Block unused resources in v3 sandbox
https://bugs.webkit.org/show_bug.cgi?id=254291 rdar://106827256 Reviewed by Brent Fulgham. Block unused resources in v3 sandbox in the WebContent process on macOS and iOS. For Catalyst, we will enforce separately. * Source/WebKit/Shared/Sandbox/common.sb: Canonical link: https://commits.webkit.org/262058@main
-
https://bugs.webkit.org/show_bug.cgi?id=254390 rdar://107167728 Reviewed by Cameron McCormack. Upstream revision: web-platform-tests/wpt@c49cf0a * LayoutTests/TestExpectations: * LayoutTests/imported/w3c/web-platform-tests/css/css-images/image-set/image-set-calc-x-rendering-2-expected.html: Copied from LayoutTests/imported/w3c/web-platform-tests/css/css-images/image-set/image-set-invalid-resolution-rendering-2-expected.html. * LayoutTests/imported/w3c/web-platform-tests/css/css-images/image-set/image-set-calc-x-rendering-2.html: Added. * LayoutTests/imported/w3c/web-platform-tests/css/css-images/image-set/image-set-calc-x-rendering-expected.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-images/image-set/image-set-invalid-resolution-rendering-expected.html. * LayoutTests/imported/w3c/web-platform-tests/css/css-images/image-set/image-set-calc-x-rendering.html: Added. * LayoutTests/imported/w3c/web-platform-tests/css/css-images/image-set/image-set-computed.sub.html: * LayoutTests/imported/w3c/web-platform-tests/css/css-images/image-set/image-set-invalid-resolution-rendering.html: Removed. * LayoutTests/imported/w3c/web-platform-tests/css/css-images/image-set/image-set-negative-resolution-rendering-2-expected.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-images/image-set/image-set-invalid-resolution-rendering-2-expected.html. * LayoutTests/imported/w3c/web-platform-tests/css/css-images/image-set/image-set-negative-resolution-rendering-2.html: Renamed from LayoutTests/imported/w3c/web-platform-tests/css/css-images/image-set/image-set-invalid-resolution-rendering-2.html. * LayoutTests/imported/w3c/web-platform-tests/css/css-images/image-set/image-set-negative-resolution-rendering-expected.html: Added. * LayoutTests/imported/w3c/web-platform-tests/css/css-images/image-set/image-set-negative-resolution-rendering.html: Added. * LayoutTests/imported/w3c/web-platform-tests/css/css-images/image-set/image-set-parsing.html: * LayoutTests/imported/w3c/web-platform-tests/css/css-images/image-set/w3c-import.log: Canonical link: https://commits.webkit.org/262057@main
-
[IFC] InlineFormattingContextIntegrationEnabled belongs to CSS category
https://bugs.webkit.org/show_bug.cgi?id=254345 Reviewed by Antti Koivisto. * Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml: Canonical link: https://commits.webkit.org/262056@main
-
[WinCairo] Unreviewed test gardening
* LayoutTests/platform/wincairo/TestExpectations: * LayoutTests/platform/wincairo/editing/selection/selection-display-block-sibling-expected.txt: Added. * LayoutTests/platform/wincairo/editing/selection/selection-display-flex-expected.txt: Added. * LayoutTests/platform/wincairo/editing/selection/vertical-rl-rtl-extend-line-backward-br-mixed-expected.txt: Added. * LayoutTests/platform/wincairo/editing/selection/vertical-rl-rtl-extend-line-backward-p-mixed-expected.txt: Added. * LayoutTests/platform/wincairo/editing/selection/vertical-rl-rtl-extend-line-forward-br-mixed-expected.txt: Added. * LayoutTests/platform/wincairo/editing/selection/vertical-rl-rtl-extend-line-forward-p-mixed-expected.txt: Added. * LayoutTests/platform/wincairo/fast/css/vertical-text-overflow-ellipsis-text-align-center-mixed-expected.txt: Added. * LayoutTests/platform/wincairo/fast/css/vertical-text-overflow-ellipsis-text-align-justify-mixed-expected.txt: Added. * LayoutTests/platform/wincairo/fast/css/vertical-text-overflow-ellipsis-text-align-left-mixed-expected.txt: Added. * LayoutTests/platform/wincairo/fast/css/vertical-text-overflow-ellipsis-text-align-right-mixed-expected.txt: Added. * LayoutTests/platform/wincairo/fast/html/details-marker-style-mixed-expected.txt: Added. * LayoutTests/platform/wincairo/fast/html/details-writing-mode-mixed-expected.txt: Added. * LayoutTests/platform/wincairo/fast/text/combining-enclosing-keycap-expected.txt: Added. * LayoutTests/platform/wincairo/fast/text/han-generic-font-families-expected.txt: Added. * LayoutTests/platform/wincairo/fast/text/hangul-generic-font-families-expected.txt: Added. * LayoutTests/platform/wincairo/fast/text/vertical-rl-rtl-linebreak-mixed-expected.txt: Added. Canonical link: https://commits.webkit.org/262055@main
-
[JSC] Refine DFG AI type speculations for GetInternalField when calle…
…d on ProxyObject https://bugs.webkit.org/show_bug.cgi?id=254271 <rdar://problem/107056889> Reviewed by Yusuke Suzuki. This change refines type speculations for [[ProxyTarget]] and [[ProxyHandler]] internal fields as their types are guaranteed by the ECMA-262, getting rid of SpecBytecodeTop, which enables downstream optimizations in IC helpers for ProxyObject's "has" and "get" traps, progressing microbenchmarks by 6-10%. microbenchmarks/proxy-get-miss-handler.js speedup probably slighly affects Speedometer2/Flight-TodoMVC. This very optimization may be applied to other object types, including Promise. ToT patch proxy-has-hit 4.9520+-0.0588 ^ 4.6705+-0.0609 ^ definitely 1.0603x faster proxy-has-miss-handler 5.0585+-0.0674 ^ 4.7937+-0.0778 ^ definitely 1.0552x faster proxy-get-miss-handler 17.1412+-0.1817 ^ 15.5256+-0.1962 ^ definitely 1.1041x faster * Source/JavaScriptCore/dfg/DFGAbstractInterpreterInlines.h: (JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects): Canonical link: https://commits.webkit.org/262054@main
Alexey Shvayka committedMar 24, 2023 -
Only apply certain UA styles to HTML elements
https://bugs.webkit.org/show_bug.cgi?id=254380 rdar://107162842 Reviewed by Simon Fraser. Some of these styles should not apply to elements with other namespaces than HTML (e.g. SVG). * LayoutTests/imported/w3c/web-platform-tests/html/semantics/popovers/popover-and-svg-expected.html: Added. * LayoutTests/imported/w3c/web-platform-tests/html/semantics/popovers/popover-and-svg-ref.html: Added. * LayoutTests/imported/w3c/web-platform-tests/html/semantics/popovers/popover-and-svg.html: Added. * Source/WebCore/css/captions.css: (@namespace "http://www.w3.org/1999/xhtml";): * Source/WebCore/css/dialog.css: (@namespace "http://www.w3.org/1999/xhtml";): * Source/WebCore/css/mediaControls.css: (#if defined(ENABLE_VIDEO) && ENABLE_VIDEO && !(defined(ENABLE_MODERN_MEDIA_CONTROLS) && ENABLE_MODERN_MEDIA_CONTROLS)): * Source/WebCore/css/plugIns.css: (@namespace "http://www.w3.org/1999/xhtml";): (embed::-webkit-snapshotted-plugin-content,): Deleted. * Source/WebCore/css/popover.css: (@namespace "http://www.w3.org/1999/xhtml";): ([popover]:closed:not(dialog[open])): Deleted. * Source/WebCore/css/quirks.css: (@namespace "http://www.w3.org/1999/xhtml";): (img[align="left"]): Deleted. Canonical link: https://commits.webkit.org/262053@main
-
Attempting to release memory from RemoteResourceCacheProxy can create…
… a new GPU Process connection. https://bugs.webkit.org/show_bug.cgi?id=254369 <rdar://106852656> Reviewed by Geoffrey Garen. If we don't have a connection, then all the GPUP-side memory must already be released, and creating a new connection isn't helpful. * Source/WebKit/WebProcess/GPU/graphics/RemoteRenderingBackendProxy.cpp: (WebKit::RemoteRenderingBackendProxy::releaseAllRemoteResources): (WebKit::RemoteRenderingBackendProxy::releaseRemoteResource): Canonical link: https://commits.webkit.org/262052@main
-
Assertion failure in CompositeEditCommand::moveParagraph via InsertLi…
…stCommand::listifyParagraph https://bugs.webkit.org/show_bug.cgi?id=254375 Reviewed by Wenson Hsieh. https://commits.webkit.org/70668@main made InsertListCommand::listifyParagraph to cross editing boundaries to look for the start & the end of the current paragraph so that we can include non-editable inline content. This, however, is inconsistent with CompositeEditCommand::moveParagraph's precondition that startOfParagraph is the start of paragraph without crossing editing boundaries. This patch addresses this precondition by calling startOfParagraph and endOfParagraph for the second time without specifying CanSkipOverEditingBoundary. * LayoutTests/editing/execCommand/insert-list-move-paragraph-display-contents-crash-expected.txt: Added. * LayoutTests/editing/execCommand/insert-list-move-paragraph-display-contents-crash.html: Added. * Source/WebCore/editing/InsertListCommand.cpp: (WebCore::InsertListCommand::listifyParagraph): Canonical link: https://commits.webkit.org/262051@main
-
The HTML fast parser may not parse HTML entities correctly
https://bugs.webkit.org/show_bug.cgi?id=254370 Reviewed by Ryosuke Niwa. The code was assuming consumeHTMLEntity() consumes all the input, which is not necessarily the case. This fixes cases where the reference is only part of the text. This is a cherry-pick from Blink: - https://chromium-review.googlesource.com/c/chromium/src/+/4305159 * LayoutTests/fast/parser/fast-html-parser-consume-entity-expected.txt: Added. * LayoutTests/fast/parser/fast-html-parser-consume-entity.html: Added. * Source/WebCore/html/parser/HTMLDocumentParserFastPath.cpp: (WebCore::HTMLFastPathParser::scanHTMLCharacterReference): Canonical link: https://commits.webkit.org/262050@main