[webkit-changes] [291206] trunk/Source/WebKit
Title: [291206] trunk/Source/WebKit Revision 291206 Author commit-qu...@webkit.org Date 2022-03-11 21:01:28 -0800 (Fri, 11 Mar 2022) Log Message Adjust when _setPrivacyProxyFailClosedForUnreachableNonMainHosts is called https://bugs.webkit.org/show_bug.cgi?id=237735 Patch by Alex Christensen on 2022-03-11 Reviewed by Geoff Garen. It was originally being called differently between main resources and subresources on the same domain, causing them to use connections with different properties, so we couldn't share connections any more. This will make it so that more connections are shared, which should fix the performance regression from no longer sharing connections to the same domain. * NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: (WebKit::NetworkDataTaskCocoa::NetworkDataTaskCocoa): * NetworkProcess/cocoa/NetworkSessionCocoa.mm: (-[WKNetworkSessionDelegate URLSession:dataTask:didReceiveResponse:completionHandler:]): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm Diff Modified: trunk/Source/WebKit/ChangeLog (291205 => 291206) --- trunk/Source/WebKit/ChangeLog 2022-03-12 04:07:43 UTC (rev 291205) +++ trunk/Source/WebKit/ChangeLog 2022-03-12 05:01:28 UTC (rev 291206) @@ -1,3 +1,21 @@ +2022-03-11 Alex Christensen + +Adjust when _setPrivacyProxyFailClosedForUnreachableNonMainHosts is called +https://bugs.webkit.org/show_bug.cgi?id=237735 + + +Reviewed by Geoff Garen. + +It was originally being called differently between main resources and subresources on the same domain, +causing them to use connections with different properties, so we couldn't share connections any more. +This will make it so that more connections are shared, which should fix the performance regression from +no longer sharing connections to the same domain. + +* NetworkProcess/cocoa/NetworkDataTaskCocoa.mm: +(WebKit::NetworkDataTaskCocoa::NetworkDataTaskCocoa): +* NetworkProcess/cocoa/NetworkSessionCocoa.mm: +(-[WKNetworkSessionDelegate URLSession:dataTask:didReceiveResponse:completionHandler:]): + 2022-03-11 Simon Fraser Unreviewed logging removal. Modified: trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm (291205 => 291206) --- trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm 2022-03-12 04:07:43 UTC (rev 291205) +++ trunk/Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm 2022-03-12 05:01:28 UTC (rev 291206) @@ -340,10 +340,13 @@ RetainPtr nsRequest = request.nsURLRequest(WebCore::HTTPBodyUpdatePolicy::UpdateHTTPBody); RetainPtr mutableRequest = adoptNS([nsRequest.get() mutableCopy]); -if (!parameters.isMainFrameNavigation -&& parameters.hadMainFrameMainResourcePrivateRelayed -&& [mutableRequest respondsToSelector:@selector(_setPrivacyProxyFailClosedForUnreachableNonMainHosts:)]) -[mutableRequest _setPrivacyProxyFailClosedForUnreachableNonMainHosts:YES]; +if (parameters.isMainFrameNavigation +|| parameters.hadMainFrameMainResourcePrivateRelayed // This means it did not fail. FIXME: adjust names to reflect this. +|| !parameters.topOrigin +|| request.url().host() == parameters.topOrigin->host()) { +if ([mutableRequest respondsToSelector:@selector(_setPrivacyProxyFailClosedForUnreachableNonMainHosts:)]) +[mutableRequest _setPrivacyProxyFailClosedForUnreachableNonMainHosts:YES]; +} #if ENABLE(APP_PRIVACY_REPORT) mutableRequest.get().attribution = request.isAppInitiated() ? NSURLRequestAttributionDeveloper : NSURLRequestAttributionUser; Modified: trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm (291205 => 291206) --- trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm 2022-03-12 04:07:43 UTC (rev 291205) +++ trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm 2022-03-12 05:01:28 UTC (rev 291206) @@ -931,7 +931,7 @@ NSURLSessionTaskTransactionMetrics *metrics = taskMetrics.transactionMetrics.lastObject; #if HAVE(NETWORK_CONNECTION_PRIVACY_STANCE) -auto privateRelayed = metrics._privacyStance == nw_connection_privacy_stance_direct ? PrivateRelayed::No : PrivateRelayed::Yes; +auto privateRelayed = metrics._privacyStance == nw_connection_privacy_stance_failed ? PrivateRelayed::No : PrivateRelayed::Yes; #else auto privateRelayed = PrivateRelayed::No; #endif @@ -1721,7 +1721,7 @@ // Reduce that to one if the protocol is null, the request isn't app initiated, // or the main frame main resource was private relayed, then set all properties // on the one copy. -if (hadMainFrameMainResourcePrivateRelayed) { +if (hadMainFrameMainResourcePrivateRelayed || request.url().host() == clientOrigin.topOrigin.host) { RetainPtr mutableRequest =
[webkit-changes] [291205] trunk/Source/WebKit
Title: [291205] trunk/Source/WebKit Revision 291205 Author simon.fra...@apple.com Date 2022-03-11 20:07:43 -0800 (Fri, 11 Mar 2022) Log Message Unreviewed logging removal. Revert an ALWAYS_LOG_WITH_STREAM() that I inadvertently committed back to a LOG_WITH_STREAM(). * WebProcess/GPU/graphics/RemoteRenderingBackendProxy.cpp: (WebKit::RemoteRenderingBackendProxy::swapToValidFrontBuffer): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/WebProcess/GPU/graphics/RemoteRenderingBackendProxy.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (291204 => 291205) --- trunk/Source/WebKit/ChangeLog 2022-03-12 03:15:58 UTC (rev 291204) +++ trunk/Source/WebKit/ChangeLog 2022-03-12 04:07:43 UTC (rev 291205) @@ -1,3 +1,13 @@ +2022-03-11 Simon Fraser + +Unreviewed logging removal. + +Revert an ALWAYS_LOG_WITH_STREAM() that I inadvertently committed back to a +LOG_WITH_STREAM(). + +* WebProcess/GPU/graphics/RemoteRenderingBackendProxy.cpp: +(WebKit::RemoteRenderingBackendProxy::swapToValidFrontBuffer): + 2022-03-11 Chris Dumez IPC thread's QOS should match the sending thread's QOS when calling sendSync() Modified: trunk/Source/WebKit/WebProcess/GPU/graphics/RemoteRenderingBackendProxy.cpp (291204 => 291205) --- trunk/Source/WebKit/WebProcess/GPU/graphics/RemoteRenderingBackendProxy.cpp 2022-03-12 03:15:58 UTC (rev 291204) +++ trunk/Source/WebKit/WebProcess/GPU/graphics/RemoteRenderingBackendProxy.cpp 2022-03-12 04:07:43 UTC (rev 291205) @@ -304,7 +304,7 @@ sendSyncToStream(Messages::RemoteRenderingBackend::SwapToValidFrontBuffer(bufferSet), Messages::RemoteRenderingBackend::SwapToValidFrontBuffer::Reply(swappedBufferSet, frontBufferHandle, frontBufferWasEmpty)); -ALWAYS_LOG_WITH_STREAM(stream << "RemoteRenderingBackendProxy::swapToValidFrontBuffer swapped to " << swappedBufferSet.front << " " << swappedBufferSet.back << " " << swappedBufferSet.secondaryBack); +LOG_WITH_STREAM(RemoteRenderingBufferVolatility, stream << "RemoteRenderingBackendProxy::swapToValidFrontBuffer swapped to " << swappedBufferSet.front << " " << swappedBufferSet.back << " " << swappedBufferSet.secondaryBack); auto fetchBufferWithIdentifier = [&](std::optional identifier, std::optional&& handle = std::nullopt, bool isFrontBuffer = false) -> RefPtr { if (!identifier) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [291204] trunk/Source/WebCore
Title: [291204] trunk/Source/WebCore Revision 291204 Author pvol...@apple.com Date 2022-03-11 19:15:58 -0800 (Fri, 11 Mar 2022) Log Message [macOS] Image decoders should be restricted for Mail https://bugs.webkit.org/show_bug.cgi?id=237717 Reviewed by Geoffrey Garen. Use correct prefix for static member. * platform/graphics/cg/ImageDecoderCG.cpp: (WebCore::ImageDecoderCG::enableRestrictedDecoding): (WebCore::ImageDecoderCG::restrictedDecodingEnabled): * platform/graphics/cg/ImageDecoderCG.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/cg/ImageDecoderCG.cpp trunk/Source/WebCore/platform/graphics/cg/ImageDecoderCG.h Diff Modified: trunk/Source/WebCore/ChangeLog (291203 => 291204) --- trunk/Source/WebCore/ChangeLog 2022-03-12 02:33:04 UTC (rev 291203) +++ trunk/Source/WebCore/ChangeLog 2022-03-12 03:15:58 UTC (rev 291204) @@ -1,3 +1,18 @@ +2022-03-11 Per Arne Vollan + +[macOS] Image decoders should be restricted for Mail +https://bugs.webkit.org/show_bug.cgi?id=237717 + + +Reviewed by Geoffrey Garen. + +Use correct prefix for static member. + +* platform/graphics/cg/ImageDecoderCG.cpp: +(WebCore::ImageDecoderCG::enableRestrictedDecoding): +(WebCore::ImageDecoderCG::restrictedDecodingEnabled): +* platform/graphics/cg/ImageDecoderCG.h: + 2022-03-11 Wenson Hsieh Refactor the filter block in DocumentMarkerController::filterMarkers() to return an enum type Modified: trunk/Source/WebCore/platform/graphics/cg/ImageDecoderCG.cpp (291203 => 291204) --- trunk/Source/WebCore/platform/graphics/cg/ImageDecoderCG.cpp 2022-03-12 02:33:04 UTC (rev 291203) +++ trunk/Source/WebCore/platform/graphics/cg/ImageDecoderCG.cpp 2022-03-12 03:15:58 UTC (rev 291204) @@ -255,7 +255,7 @@ } #endif -bool ImageDecoderCG::m_enableRestrictedDecoding = false; +bool ImageDecoderCG::s_enableRestrictedDecoding = false; ImageDecoderCG::ImageDecoderCG(FragmentedSharedBuffer& data, AlphaOption, GammaAndColorProfileOption) { @@ -599,12 +599,12 @@ void ImageDecoderCG::enableRestrictedDecoding() { -m_enableRestrictedDecoding = true; +s_enableRestrictedDecoding = true; } bool ImageDecoderCG::restrictedDecodingEnabled() { -return m_enableRestrictedDecoding; +return s_enableRestrictedDecoding; } } Modified: trunk/Source/WebCore/platform/graphics/cg/ImageDecoderCG.h (291203 => 291204) --- trunk/Source/WebCore/platform/graphics/cg/ImageDecoderCG.h 2022-03-12 02:33:04 UTC (rev 291203) +++ trunk/Source/WebCore/platform/graphics/cg/ImageDecoderCG.h 2022-03-12 03:15:58 UTC (rev 291204) @@ -75,7 +75,7 @@ bool m_isAllDataReceived { false }; mutable EncodedDataStatus m_encodedDataStatus { EncodedDataStatus::Unknown }; RetainPtr m_nativeDecoder; -static bool m_enableRestrictedDecoding; +static bool s_enableRestrictedDecoding; }; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [291203] trunk/Source
Title: [291203] trunk/Source Revision 291203 Author cdu...@apple.com Date 2022-03-11 18:33:04 -0800 (Fri, 11 Mar 2022) Log Message IPC thread's QOS should match the sending thread's QOS when calling sendSync() https://bugs.webkit.org/show_bug.cgi?id=237800 Reviewed by Geoffrey Garen. Source/WebKit: IPC thread's QOS should match the sending thread's QOS when calling sendSync(), since it blocks the calling thread. * Platform/IPC/Connection.cpp: (IPC::Connection::sendSyncMessage): Source/WTF: Add function to get the QoS of the current thread. * wtf/Threading.cpp: (WTF::toQOS): (WTF::Thread::currentThreadQOS): * wtf/Threading.h: Modified Paths trunk/Source/WTF/ChangeLog trunk/Source/WTF/wtf/Threading.cpp trunk/Source/WTF/wtf/Threading.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Platform/IPC/Connection.cpp Diff Modified: trunk/Source/WTF/ChangeLog (291202 => 291203) --- trunk/Source/WTF/ChangeLog 2022-03-12 02:23:42 UTC (rev 291202) +++ trunk/Source/WTF/ChangeLog 2022-03-12 02:33:04 UTC (rev 291203) @@ -1,3 +1,18 @@ +2022-03-11 Chris Dumez + +IPC thread's QOS should match the sending thread's QOS when calling sendSync() +https://bugs.webkit.org/show_bug.cgi?id=237800 + + +Reviewed by Geoffrey Garen. + +Add function to get the QoS of the current thread. + +* wtf/Threading.cpp: +(WTF::toQOS): +(WTF::Thread::currentThreadQOS): +* wtf/Threading.h: + 2022-03-11 Elliott Williams [Xcode] "Nest Headers" script phases copy headers incorrectly on Catalyst Modified: trunk/Source/WTF/wtf/Threading.cpp (291202 => 291203) --- trunk/Source/WTF/wtf/Threading.cpp 2022-03-12 02:23:42 UTC (rev 291202) +++ trunk/Source/WTF/wtf/Threading.cpp 2022-03-12 02:33:04 UTC (rev 291203) @@ -401,6 +401,38 @@ } #if HAVE(QOS_CLASSES) +static Thread::QOS toQOS(qos_class_t qosClass) +{ +switch (qosClass) { +case QOS_CLASS_USER_INTERACTIVE: +return Thread::QOS::UserInteractive; +case QOS_CLASS_USER_INITIATED: +return Thread::QOS::UserInitiated; +case QOS_CLASS_UTILITY: +return Thread::QOS::Utility; +case QOS_CLASS_BACKGROUND: +return Thread::QOS::Background; +case QOS_CLASS_UNSPECIFIED: +case QOS_CLASS_DEFAULT: +default: +return Thread::QOS::Default; +} +} +#endif + +auto Thread::currentThreadQOS() -> QOS +{ +#if HAVE(QOS_CLASSES) +qos_class_t qos = QOS_CLASS_DEFAULT; +int relativePriority; +pthread_get_qos_class_np(pthread_self(), , ); +return toQOS(qos); +#else +return QOS::Default; +#endif +} + +#if HAVE(QOS_CLASSES) static qos_class_t globalMaxQOSclass { QOS_CLASS_UNSPECIFIED }; void Thread::setGlobalMaxQOSClass(qos_class_t maxClass) Modified: trunk/Source/WTF/wtf/Threading.h (291202 => 291203) --- trunk/Source/WTF/wtf/Threading.h 2022-03-12 02:23:42 UTC (rev 291202) +++ trunk/Source/WTF/wtf/Threading.h 2022-03-12 02:33:04 UTC (rev 291203) @@ -195,6 +195,7 @@ // relativePriority is a value in the range [-15, 0] where a lower value indicates a lower priority. WTF_EXPORT_PRIVATE static void setCurrentThreadIsUserInteractive(int relativePriority = 0); WTF_EXPORT_PRIVATE static void setCurrentThreadIsUserInitiated(int relativePriority = 0); +WTF_EXPORT_PRIVATE static QOS currentThreadQOS(); #if HAVE(QOS_CLASSES) WTF_EXPORT_PRIVATE static void setGlobalMaxQOSClass(qos_class_t); Modified: trunk/Source/WebKit/ChangeLog (291202 => 291203) --- trunk/Source/WebKit/ChangeLog 2022-03-12 02:23:42 UTC (rev 291202) +++ trunk/Source/WebKit/ChangeLog 2022-03-12 02:33:04 UTC (rev 291203) @@ -1,3 +1,16 @@ +2022-03-11 Chris Dumez + +IPC thread's QOS should match the sending thread's QOS when calling sendSync() +https://bugs.webkit.org/show_bug.cgi?id=237800 + + +Reviewed by Geoffrey Garen. + +IPC thread's QOS should match the sending thread's QOS when calling sendSync(), since it blocks the calling thread. + +* Platform/IPC/Connection.cpp: +(IPC::Connection::sendSyncMessage): + 2022-03-11 Simon Fraser Move RemoteLayerBackingStore flusher creation into RemoteLayerBackingStoreCollection Modified: trunk/Source/WebKit/Platform/IPC/Connection.cpp (291202 => 291203) --- trunk/Source/WebKit/Platform/IPC/Connection.cpp 2022-03-12 02:23:42 UTC (rev 291202) +++ trunk/Source/WebKit/Platform/IPC/Connection.cpp 2022-03-12 02:33:04 UTC (rev 291203) @@ -652,8 +652,11 @@ encoder->setShouldMaintainOrderingWithAsyncMessages(); auto messageName = encoder->messageName(); -sendMessage(WTFMove(encoder), sendOptions); +// Since sync IPC is blocking the current thread, make sure we use the same priority for the IPC sending thread +// as the current thread. +sendMessage(WTFMove(encoder), sendOptions, Thread::currentThreadQOS()); + // Then wait for a reply. Waiting for a reply could involve dispatching incoming
[webkit-changes] [291202] trunk/Source/WebKit
Title: [291202] trunk/Source/WebKit Revision 291202 Author simon.fra...@apple.com Date 2022-03-11 18:23:42 -0800 (Fri, 11 Mar 2022) Log Message Move RemoteLayerBackingStore flusher creation into RemoteLayerBackingStoreCollection https://bugs.webkit.org/show_bug.cgi?id=237798 Reviewed by Tim Horton. Move the code that creates layer flushers from RemoteLayerTreeDrawingArea into RemoteLayerBackingStoreCollection, per the FIXME. RemoteLayerBackingStoreCollection::didFlushLayers() then becomes internal, and gets renamed to updateUnreachableBackingStores(). Now we only need to schedule the volatility timer from one place. * Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.h: * Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.mm: (WebKit::RemoteLayerBackingStoreCollection::didFlushLayers): (WebKit::RemoteLayerBackingStoreCollection::updateUnreachableBackingStores): * WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm: (WebKit::RemoteLayerTreeDrawingArea::updateRendering): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.h trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.mm trunk/Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm Diff Modified: trunk/Source/WebKit/ChangeLog (291201 => 291202) --- trunk/Source/WebKit/ChangeLog 2022-03-12 00:56:15 UTC (rev 291201) +++ trunk/Source/WebKit/ChangeLog 2022-03-12 02:23:42 UTC (rev 291202) @@ -1,3 +1,24 @@ +2022-03-11 Simon Fraser + +Move RemoteLayerBackingStore flusher creation into RemoteLayerBackingStoreCollection +https://bugs.webkit.org/show_bug.cgi?id=237798 + +Reviewed by Tim Horton. + +Move the code that creates layer flushers from RemoteLayerTreeDrawingArea into +RemoteLayerBackingStoreCollection, per the FIXME. + +RemoteLayerBackingStoreCollection::didFlushLayers() then becomes internal, and gets renamed +to updateUnreachableBackingStores(). Now we only need to schedule the volatility timer from +one place. + +* Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.h: +* Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.mm: +(WebKit::RemoteLayerBackingStoreCollection::didFlushLayers): +(WebKit::RemoteLayerBackingStoreCollection::updateUnreachableBackingStores): +* WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm: +(WebKit::RemoteLayerTreeDrawingArea::updateRendering): + 2022-03-11 Wenson Hsieh Refactor the filter block in DocumentMarkerController::filterMarkers() to return an enum type Modified: trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.h (291201 => 291202) --- trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.h 2022-03-12 00:56:15 UTC (rev 291201) +++ trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.h 2022-03-12 02:23:42 UTC (rev 291202) @@ -33,6 +33,7 @@ namespace WebCore { class ImageBuffer; +class ThreadSafeImageBufferFlusher; enum class SetNonVolatileResult : uint8_t; } @@ -63,7 +64,7 @@ void willFlushLayers(); void willCommitLayerTree(RemoteLayerTreeTransaction&); -void didFlushLayers(); +Vector> didFlushLayers(RemoteLayerTreeTransaction&); virtual void tryMarkAllBackingStoreVolatile(CompletionHandler&&); @@ -86,6 +87,7 @@ bool markBackingStoreVolatile(RemoteLayerBackingStore&, OptionSet = { }, MonotonicTime = { }); bool markAllBackingStoreVolatile(OptionSet liveBackingStoreMarkingBehavior, OptionSet unparentedBackingStoreMarkingBehavior); +bool updateUnreachableBackingStores(); void volatilityTimerFired(); protected: Modified: trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.mm (291201 => 291202) --- trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.mm 2022-03-12 00:56:15 UTC (rev 291201) +++ trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.mm 2022-03-12 02:23:42 UTC (rev 291202) @@ -70,10 +70,34 @@ transaction.setLayerIDsWithNewlyUnreachableBackingStore(newlyUnreachableLayerIDs); } -void RemoteLayerBackingStoreCollection::didFlushLayers() +Vector> RemoteLayerBackingStoreCollection::didFlushLayers(RemoteLayerTreeTransaction& transaction) { +bool needToScheduleVolatilityTimer = false; + +Vector> flushers; +for (auto& layer : transaction.changedLayers()) { +if (layer->properties().changedProperties & RemoteLayerTreeTransaction::BackingStoreChanged) { +needToScheduleVolatilityTimer = true; +if (layer->properties().backingStore) +flushers.appendVector(layer->properties().backingStore->takePendingFlushers()); +} + +layer->didCommit(); +} + m_inLayerFlush = false; +if
[webkit-changes] [291201] trunk/Source
Title: [291201] trunk/Source Revision 291201 Author wenson_hs...@apple.com Date 2022-03-11 16:56:15 -0800 (Fri, 11 Mar 2022) Log Message Refactor the filter block in DocumentMarkerController::filterMarkers() to return an enum type https://bugs.webkit.org/show_bug.cgi?id=237794 Reviewed by Megan Gardner. Source/WebCore: Change the return value of the `filter` function argument in `filterMarkers()` from a `bool` to a named enum type with 2 values: `Keep` or `Remove`; this makes it more obvious to call sites whether the return value will cause document markers to remain or be removed from the document. * dom/DocumentMarkerController.cpp: (WebCore::DocumentMarkerController::filterMarkers): (WebCore::DocumentMarkerController::removeMarkers): * dom/DocumentMarkerController.h: Remove a FIXME and comment that's no longer needed. Source/WebKit: Drive-by fix: only remove the spellchecking document marker in `removeAnnotationRelativeToSelection` if the annotation string of the marker matches the given annotation string to the method. * WebProcess/WebPage/Cocoa/TextCheckingControllerProxy.mm: (WebKit::TextCheckingControllerProxy::removeAnnotationRelativeToSelection): * WebProcess/WebPage/Cocoa/WebPageCocoa.mm: (WebKit::WebPage::clearDictationAlternatives): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/DocumentMarkerController.cpp trunk/Source/WebCore/dom/DocumentMarkerController.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/WebProcess/WebPage/Cocoa/TextCheckingControllerProxy.mm trunk/Source/WebKit/WebProcess/WebPage/Cocoa/WebPageCocoa.mm Diff Modified: trunk/Source/WebCore/ChangeLog (291200 => 291201) --- trunk/Source/WebCore/ChangeLog 2022-03-12 00:32:18 UTC (rev 291200) +++ trunk/Source/WebCore/ChangeLog 2022-03-12 00:56:15 UTC (rev 291201) @@ -1,3 +1,19 @@ +2022-03-11 Wenson Hsieh + +Refactor the filter block in DocumentMarkerController::filterMarkers() to return an enum type +https://bugs.webkit.org/show_bug.cgi?id=237794 + +Reviewed by Megan Gardner. + +Change the return value of the `filter` function argument in `filterMarkers()` from a `bool` to a named enum +type with 2 values: `Keep` or `Remove`; this makes it more obvious to call sites whether the return value will +cause document markers to remain or be removed from the document. + +* dom/DocumentMarkerController.cpp: +(WebCore::DocumentMarkerController::filterMarkers): +(WebCore::DocumentMarkerController::removeMarkers): +* dom/DocumentMarkerController.h: Remove a FIXME and comment that's no longer needed. + 2022-03-11 Alex Christensen Finish implementing modify-headers actions for WKContentRuleList SPI Modified: trunk/Source/WebCore/dom/DocumentMarkerController.cpp (291200 => 291201) --- trunk/Source/WebCore/dom/DocumentMarkerController.cpp 2022-03-12 00:32:18 UTC (rev 291200) +++ trunk/Source/WebCore/dom/DocumentMarkerController.cpp 2022-03-12 00:56:15 UTC (rev 291201) @@ -92,7 +92,7 @@ filterMarkers(range, nullptr, types, overlapRule); } -void DocumentMarkerController::filterMarkers(const SimpleRange& range, const Function& filter, OptionSet types, RemovePartiallyOverlappingMarker overlapRule) +void DocumentMarkerController::filterMarkers(const SimpleRange& range, const Function& filter, OptionSet types, RemovePartiallyOverlappingMarker overlapRule) { for (auto& textPiece : collectTextRanges(range)) { if (!possiblyHasMarkers(types)) @@ -357,7 +357,7 @@ } } -void DocumentMarkerController::removeMarkers(Node& node, OffsetRange range, OptionSet types, const Function& filter, RemovePartiallyOverlappingMarker overlapRule) +void DocumentMarkerController::removeMarkers(Node& node, OffsetRange range, OptionSet types, const Function& filter, RemovePartiallyOverlappingMarker overlapRule) { if (range.start >= range.end) return; @@ -384,7 +384,7 @@ continue; } -if (filter && !filter(marker)) { +if (filter && filter(marker) == FilterMarkerResult::Keep) { i++; continue; } Modified: trunk/Source/WebCore/dom/DocumentMarkerController.h (291200 => 291201) --- trunk/Source/WebCore/dom/DocumentMarkerController.h 2022-03-12 00:32:18 UTC (rev 291200) +++ trunk/Source/WebCore/dom/DocumentMarkerController.h 2022-03-12 00:56:15 UTC (rev 291201) @@ -42,6 +42,7 @@ struct SimpleRange; enum class RemovePartiallyOverlappingMarker : bool { No, Yes }; +enum class FilterMarkerResult : bool { Keep, Remove }; class DocumentMarkerController { WTF_MAKE_NONCOPYABLE(DocumentMarkerController); WTF_MAKE_FAST_ALLOCATED; @@ -63,11 +64,9 @@ // remove the marker. If the argument is false, we will adjust the span of the marker so that it retains // the portion that is outside of the range. WEBCORE_EXPORT void removeMarkers(const SimpleRange&, OptionSet = DocumentMarker::allMarkers(),
[webkit-changes] [291200] trunk
Title: [291200] trunk Revision 291200 Author commit-qu...@webkit.org Date 2022-03-11 16:32:18 -0800 (Fri, 11 Mar 2022) Log Message Finish implementing modify-headers actions for WKContentRuleList SPI https://bugs.webkit.org/show_bug.cgi?id=237784 Source/WebCore: Patch by Alex Christensen on 2022-03-11 Reviewed by Tim Hatcher. I hadn't implemented regex substitution yet. * contentextensions/ContentExtensionActions.cpp: (WebCore::ContentExtensions::RedirectAction::parse): (WebCore::ContentExtensions::RedirectAction::serialize const): (WebCore::ContentExtensions::RedirectAction::deserialize): (WebCore::ContentExtensions::RedirectAction::applyToRequest): (WebCore::ContentExtensions::RedirectAction::RegexSubstitutionAction::serialize const): (WebCore::ContentExtensions::RedirectAction::RegexSubstitutionAction::deserialize): (WebCore::ContentExtensions::makeJSString): (WebCore::ContentExtensions::RedirectAction::RegexSubstitutionAction::applyToURL const): * contentextensions/ContentExtensionActions.h: (WebCore::ContentExtensions::add): * contentextensions/ContentExtensionParser.cpp: (WebCore::ContentExtensions::loadAction): (WebCore::ContentExtensions::loadRule): Source/WebKit: Patch by Alex Christensen on 2022-03-11 Reviewed by Tim Hatcher. * UIProcess/API/APIContentRuleListStore.h: Tools: Patch by Alex Christensen on 2022-03-11 Reviewed by Tim Hatcher. * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp: (TestWebKitAPI::TEST_F): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/contentextensions/ContentExtensionActions.cpp trunk/Source/WebCore/contentextensions/ContentExtensionActions.h trunk/Source/WebCore/contentextensions/ContentExtensionParser.cpp trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/API/APIContentRuleListStore.h trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WKContentExtensionStore.mm Diff Modified: trunk/Source/WebCore/ChangeLog (291199 => 291200) --- trunk/Source/WebCore/ChangeLog 2022-03-12 00:00:08 UTC (rev 291199) +++ trunk/Source/WebCore/ChangeLog 2022-03-12 00:32:18 UTC (rev 291200) @@ -1,3 +1,28 @@ +2022-03-11 Alex Christensen + +Finish implementing modify-headers actions for WKContentRuleList SPI +https://bugs.webkit.org/show_bug.cgi?id=237784 + + +Reviewed by Tim Hatcher. + +I hadn't implemented regex substitution yet. + +* contentextensions/ContentExtensionActions.cpp: +(WebCore::ContentExtensions::RedirectAction::parse): +(WebCore::ContentExtensions::RedirectAction::serialize const): +(WebCore::ContentExtensions::RedirectAction::deserialize): +(WebCore::ContentExtensions::RedirectAction::applyToRequest): +(WebCore::ContentExtensions::RedirectAction::RegexSubstitutionAction::serialize const): +(WebCore::ContentExtensions::RedirectAction::RegexSubstitutionAction::deserialize): +(WebCore::ContentExtensions::makeJSString): +(WebCore::ContentExtensions::RedirectAction::RegexSubstitutionAction::applyToURL const): +* contentextensions/ContentExtensionActions.h: +(WebCore::ContentExtensions::add): +* contentextensions/ContentExtensionParser.cpp: +(WebCore::ContentExtensions::loadAction): +(WebCore::ContentExtensions::loadRule): + 2022-03-11 Nikolaos Mouchtaris [iOS] Fix ovserscroll-behavior for main document Modified: trunk/Source/WebCore/contentextensions/ContentExtensionActions.cpp (291199 => 291200) --- trunk/Source/WebCore/contentextensions/ContentExtensionActions.cpp 2022-03-12 00:00:08 UTC (rev 291199) +++ trunk/Source/WebCore/contentextensions/ContentExtensionActions.cpp 2022-03-12 00:32:18 UTC (rev 291200) @@ -30,6 +30,8 @@ #include "ContentExtensionError.h" #include "ResourceRequest.h" +#include <_javascript_Core/JSRetainPtr.h> +#include <_javascript_Core/_javascript_.h> #include #include #include @@ -285,7 +287,7 @@ return deserializeLength(span, 0); } -Expected RedirectAction::parse(const JSON::Object& redirectObject) +Expected RedirectAction::parse(const JSON::Object& redirectObject, const String& urlFilter) { auto redirect = redirectObject.getObject("redirect"); if (!redirect) @@ -298,7 +300,7 @@ } if (auto regexSubstitution = redirect->getString("regex-substitution"); !!regexSubstitution) -return RedirectAction { RegexSubstitutionAction { WTFMove(regexSubstitution) } }; +return RedirectAction { RegexSubstitutionAction { WTFMove(regexSubstitution), urlFilter } }; if (auto transform = redirect->getObject("transform")) { auto parsedTransform = URLTransformAction::parse(*transform); @@ -343,7 +345,7 @@ std::visit(WTF::makeVisitor([&](const ExtensionPathAction& action) { append(vector, action.extensionPath.utf8()); }, [&](const RegexSubstitutionAction& action) { -
[webkit-changes] [291199] trunk/Source/bmalloc
Title: [291199] trunk/Source/bmalloc Revision 291199 Author ysuz...@apple.com Date 2022-03-11 16:00:08 -0800 (Fri, 11 Mar 2022) Log Message Unreviewed, ASan specific build fix https://bugs.webkit.org/show_bug.cgi?id=237572 * libpas/src/libpas/pas_utils.h: (pas_zero_memory): Modified Paths trunk/Source/bmalloc/ChangeLog trunk/Source/bmalloc/libpas/src/libpas/pas_utils.h Diff Modified: trunk/Source/bmalloc/ChangeLog (291198 => 291199) --- trunk/Source/bmalloc/ChangeLog 2022-03-11 23:42:47 UTC (rev 291198) +++ trunk/Source/bmalloc/ChangeLog 2022-03-12 00:00:08 UTC (rev 291199) @@ -1,3 +1,11 @@ +2022-03-11 Yusuke Suzuki + +Unreviewed, ASan specific build fix +https://bugs.webkit.org/show_bug.cgi?id=237572 + +* libpas/src/libpas/pas_utils.h: +(pas_zero_memory): + 2022-03-09 Yusuke Suzuki [libpas] We should gurantee that in-flux-stash is fully baked when pointing table is set Modified: trunk/Source/bmalloc/libpas/src/libpas/pas_utils.h (291198 => 291199) --- trunk/Source/bmalloc/libpas/src/libpas/pas_utils.h 2022-03-11 23:42:47 UTC (rev 291198) +++ trunk/Source/bmalloc/libpas/src/libpas/pas_utils.h 2022-03-12 00:00:08 UTC (rev 291199) @@ -158,7 +158,7 @@ #define PAS_TYPEOF(a) typeof (a) #endif -PAS_ALWAYS_INLINE void pas_zero_memory(void* memory, size_t size) +static PAS_ALWAYS_INLINE void pas_zero_memory(void* memory, size_t size) { memset(memory, 0, size); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [291198] trunk
Title: [291198] trunk Revision 291198 Author nmouchta...@apple.com Date 2022-03-11 15:42:47 -0800 (Fri, 11 Mar 2022) Log Message [iOS] Fix ovserscroll-behavior for main document https://bugs.webkit.org/show_bug.cgi?id=237696 Reviewed by Simon Fraser. Source/WebCore: Make getters for overscroll behavior public. Test: fast/scrolling/ios/overscroll-behavior-on-body.html * page/scrolling/ScrollingTreeScrollingNode.h: Source/WebKit: Get value of over scroll behavior from root scrolling node to set whether root UIScrollView should rubber band or not. Add new UIScrollView SPI. * Platform/spi/ios/UIKitSPI.h: * UIProcess/API/ios/WKWebViewIOS.mm: (-[WKWebView _updateScrollViewForTransaction:]): * UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp: (WebKit::RemoteScrollingCoordinatorProxy::rootNode const): * UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.h: * UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.h: * UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.mm: (WebKit::ScrollingTreeScrollingNodeDelegateIOS::updateScrollViewForOverscrollBehavior): (WebKit::ScrollingTreeScrollingNodeDelegateIOS::commitStateAfterChildren): LayoutTests: Added test that does a scroll expecting a rubberband, sets overscroll-behavior:none for the body, then does another scroll, expected that no rubberband occurs. * fast/scrolling/ios/overscroll-behavior-on-body-expected.txt: Added. * fast/scrolling/ios/overscroll-behavior-on-body.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Platform/spi/ios/UIKitSPI.h trunk/Source/WebKit/UIProcess/API/ios/WKWebViewIOS.mm trunk/Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp trunk/Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.h trunk/Source/WebKit/UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.h trunk/Source/WebKit/UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.mm Added Paths trunk/LayoutTests/fast/scrolling/ios/overscroll-behavior-on-body-expected.txt trunk/LayoutTests/fast/scrolling/ios/overscroll-behavior-on-body.html Diff Modified: trunk/LayoutTests/ChangeLog (291197 => 291198) --- trunk/LayoutTests/ChangeLog 2022-03-11 23:34:29 UTC (rev 291197) +++ trunk/LayoutTests/ChangeLog 2022-03-11 23:42:47 UTC (rev 291198) @@ -1,3 +1,16 @@ +2022-03-11 Nikolaos Mouchtaris + +[iOS] Fix ovserscroll-behavior for main document +https://bugs.webkit.org/show_bug.cgi?id=237696 + +Reviewed by Simon Fraser. + +Added test that does a scroll expecting a rubberband, sets overscroll-behavior:none for +the body, then does another scroll, expected that no rubberband occurs. + +* fast/scrolling/ios/overscroll-behavior-on-body-expected.txt: Added. +* fast/scrolling/ios/overscroll-behavior-on-body.html: Added. + 2022-03-11 Matteo Flores [ iOS ] fast/events/ios/rotation/layout-viewport-during-safari-type-rotation.html is flaky failing Added: trunk/LayoutTests/fast/scrolling/ios/overscroll-behavior-on-body-expected.txt (0 => 291198) --- trunk/LayoutTests/fast/scrolling/ios/overscroll-behavior-on-body-expected.txt (rev 0) +++ trunk/LayoutTests/fast/scrolling/ios/overscroll-behavior-on-body-expected.txt 2022-03-11 23:42:47 UTC (rev 291198) @@ -0,0 +1,11 @@ +Top +PASS window.pageYOffset is 0 +PASS window.pageXOffset is 0 +PASS window.pageYOffset is not 0 +PASS window.pageXOffset is not 0 +PASS window.pageYOffset is 0 +PASS window.pageXOffset is 0 +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/fast/scrolling/ios/overscroll-behavior-on-body.html (0 => 291198) --- trunk/LayoutTests/fast/scrolling/ios/overscroll-behavior-on-body.html (rev 0) +++ trunk/LayoutTests/fast/scrolling/ios/overscroll-behavior-on-body.html 2022-03-11 23:42:47 UTC (rev 291198) @@ -0,0 +1,43 @@ + + + + + +body { +height: 5000px; +width: 200%; +} + + +var jsTestIsAsync = true; + +async function doTest() +{ +shouldBe('window.pageYOffset', '0'); +shouldBe('window.pageXOffset', '0'); + +await UIHelper.dragFromPointToPoint(150, 150, 200, 200, 0.1); +shouldNotBe('window.pageYOffset', '0'); +shouldNotBe('window.pageXOffset', '0'); + +document.documentElement.style.overscrollBehavior = "none"; +await UIHelper.dragFromPointToPoint(150, 150, 200, 200, 0.1); +shouldBe('window.pageYOffset', '0'); +shouldBe('window.pageXOffset', '0'); +finishJSTest(); +} + +window.addEventListener('load', () => { +doTest(); +}, false); + + + +Top
[webkit-changes] [291196] trunk/Source/WebKit
Title: [291196] trunk/Source/WebKit Revision 291196 Author j_pas...@apple.com Date 2022-03-11 15:30:11 -0800 (Fri, 11 Mar 2022) Log Message [WebAuthn] Unreviewed build fix after r291177 https://bugs.webkit.org/show_bug.cgi?id=237797 rdar://problem/90183881 Remove unused move that is breaking iOS build * UIProcess/WebAuthentication/Cocoa/WebAuthenticatorCoordinatorProxy.mm: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/WebAuthentication/Cocoa/WebAuthenticatorCoordinatorProxy.mm Diff Modified: trunk/Source/WebKit/ChangeLog (291195 => 291196) --- trunk/Source/WebKit/ChangeLog 2022-03-11 23:25:11 UTC (rev 291195) +++ trunk/Source/WebKit/ChangeLog 2022-03-11 23:30:11 UTC (rev 291196) @@ -1,3 +1,13 @@ +2022-03-11 J Pascoe + +[WebAuthn] Unreviewed build fix after r291177 +https://bugs.webkit.org/show_bug.cgi?id=237797 +rdar://problem/90183881 + +Remove unused move that is breaking iOS build + +* UIProcess/WebAuthentication/Cocoa/WebAuthenticatorCoordinatorProxy.mm: + 2022-03-11 Simon Fraser Do buffer swapping on all RemoteLayerBackingStores before painting all of them Modified: trunk/Source/WebKit/UIProcess/WebAuthentication/Cocoa/WebAuthenticatorCoordinatorProxy.mm (291195 => 291196) --- trunk/Source/WebKit/UIProcess/WebAuthentication/Cocoa/WebAuthenticatorCoordinatorProxy.mm 2022-03-11 23:25:11 UTC (rev 291195) +++ trunk/Source/WebKit/UIProcess/WebAuthentication/Cocoa/WebAuthenticatorCoordinatorProxy.mm 2022-03-11 23:30:11 UTC (rev 291196) @@ -401,7 +401,7 @@ #endif // PLATFORM(MAC) || PLATFORM(MACCATALYST) #if PLATFORM(IOS) [m_proxy performAuthorizationRequestsForContext:requestContext.get() withCompletionHandler:makeBlockPtr([handler = WTFMove(handler)](id credential, NSError *error) mutable { -callOnMainRunLoop([handler = WTFMove(handler), proxy = WTFMove(proxy), credential = retainPtr(credential), error = retainPtr(error)] () mutable { +callOnMainRunLoop([handler = WTFMove(handler), credential = retainPtr(credential), error = retainPtr(error)] () mutable { #elif PLATFORM(MAC) RetainPtr window = m_webPageProxy.platformWindow(); [m_proxy performAuthorizationRequestsForContext:requestContext.get() withClearanceHandler:makeBlockPtr([weakThis = WeakPtr { *this }, handler = WTFMove(handler), window = WTFMove(window)](NSXPCListenerEndpoint *daemonEndpoint, NSError *error) mutable { ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [291195] tags/Safari-614.1.5.10/
Title: [291195] tags/Safari-614.1.5.10/ Revision 291195 Author kocsen_ch...@apple.com Date 2022-03-11 15:25:11 -0800 (Fri, 11 Mar 2022) Log Message Tag Safari-614.1.5.10. Added Paths tags/Safari-614.1.5.10/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [291194] trunk
Title: [291194] trunk Revision 291194 Author ape...@igalia.com Date 2022-03-11 14:55:46 -0800 (Fri, 11 Mar 2022) Log Message [GLib] Expose ArrayBuffer in the public API https://bugs.webkit.org/show_bug.cgi?id=237088 Reviewed by Carlos Garcia Campos. This adds a set of new functions to operate on JSCValue objects which refer to array buffers in the JS side of the world. This allows sharing chunks of memory buffers efficiently with native code, without needing to copy nor encode data back and forth. Source/_javascript_Core: * API/glib/JSCValue.cpp: (jscArrayBufferDeallocate): (jsc_value_new_array_buffer): (jsc_value_is_array_buffer): (jsc_value_array_buffer_get_data): (jsc_value_array_buffer_get_length): * API/glib/JSCValue.h: * API/glib/docs/jsc-glib-4.0-sections.txt: Tools: * TestWebKitAPI/Tests/_javascript_Core/glib/TestJSC.cpp: Added test for array buffers. (testJSCArrayBuffer): (main): Modified Paths trunk/Source/_javascript_Core/API/glib/JSCValue.cpp trunk/Source/_javascript_Core/API/glib/JSCValue.h trunk/Source/_javascript_Core/API/glib/docs/jsc-glib-4.0-sections.txt trunk/Source/_javascript_Core/ChangeLog trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/Tests/_javascript_Core/glib/TestJSC.cpp Diff Modified: trunk/Source/_javascript_Core/API/glib/JSCValue.cpp (291193 => 291194) --- trunk/Source/_javascript_Core/API/glib/JSCValue.cpp 2022-03-11 22:45:35 UTC (rev 291193) +++ trunk/Source/_javascript_Core/API/glib/JSCValue.cpp 2022-03-11 22:55:46 UTC (rev 291194) @@ -22,6 +22,7 @@ #include "APICast.h" #include "APIUtils.h" +#include "JSArrayBuffer.h" #include "JSCCallbackFunction.h" #include "JSCClassPrivate.h" #include "JSCContextPrivate.h" @@ -28,6 +29,7 @@ #include "JSCInlines.h" #include "JSCValuePrivate.h" #include "JSRetainPtr.h" +#include "JSTypedArray.h" #include "LiteralParser.h" #include "OpaqueJSString.h" #include @@ -1461,7 +1463,184 @@ return jscContextGetOrCreateValue(priv->context.get(), result).leakRef(); } +struct ArrayBufferDeallocatorContext { +gpointer userData; +GDestroyNotify destroyNotify; +}; +WEBKIT_DEFINE_ASYNC_DATA_STRUCT(ArrayBufferDeallocatorContext) + /** + * jsc_value_new_array_buffer: + * @context: A #JSCContext + * @data: Pointer to a region of memory. + * @size: Size in bytes of the memory region. + * @destroy_notify: (nullable): destroy notifier for @user_data. + * @user_data: (closure): user data. + * + * Creates a new %ArrayBuffer from existing @data in memory. + * + * The @data is not copied: while this allows sharing data with _javascript_ + * efficiently, the caller must ensure that the memory region remains valid + * until the newly created object is released by JSC. + * + * Optionally, a @destroy_notify callback can be provided, which will be + * invoked with @user_data as parameter when the %ArrayBuffer object is + * released. This is intended to be used for freeing resources related to + * the memory region which contains the data: + * + * |[!<-- language="C" --> + * GMappedFile *f = g_mapped_file_new (file_path, TRUE, NULL); + * JSCValue *value = jsc_value_new_array_buffer (context, + * g_mapped_file_get_contents (f), g_mapped_file_get_length (f), + * (GDestroyNotify) g_mapped_file_unref, f); + * ]| + * + * Note that the @user_data can be the same value as @data: + * + * |[!<-- language="C" --> + * void *bytes = g_malloc0 (100); + * JSCValue *value = jsc_value_new_array_buffer (context, bytes, 100, g_free, bytes); + * ]| + * + * Returns: (transfer full) (nullable): A #JSCValue, or %NULL in case of exception. + * + * Since: 2.38 + */ +JSCValue* jsc_value_new_array_buffer(JSCContext* context, void* data, size_t length, GDestroyNotify destroyNotify, gpointer userData) +{ +g_return_val_if_fail(JSC_IS_CONTEXT(context), nullptr); + +ArrayBufferDeallocatorContext* deallocatorContext = nullptr; +if (destroyNotify) { +deallocatorContext = createArrayBufferDeallocatorContext(); +deallocatorContext->destroyNotify = destroyNotify; +deallocatorContext->userData = userData; +} + +JSValueRef exception = nullptr; +auto* jsContext = jscContextGetJSContext(context); +auto* jsArrayBuffer = JSObjectMakeArrayBufferWithBytesNoCopy(jsContext, data, length, [](void*, void* deallocatorContext) { +if (deallocatorContext) { +auto* context = static_cast(deallocatorContext); +context->destroyNotify(context->userData); +destroyArrayBufferDeallocatorContext(context); +} +}, deallocatorContext, ); + +if (jscContextHandleExceptionIfNeeded(context, exception)) +return nullptr; + +return jscContextGetOrCreateValue(context, jsArrayBuffer).leakRef(); +} + +/** + * jsc_value_is_array_buffer: + * @value: A #JSCValue. + * + * Check whether the @value is an %ArrayBuffer. + * + * Returns: whether the value is an %ArrayBuffer + * + * Since: 2.38 + */ +gboolean jsc_value_is_array_buffer(JSCValue* value) +{ +
[webkit-changes] [291193] trunk/Tools
Title: [291193] trunk/Tools Revision 291193 Author jbed...@apple.com Date 2022-03-11 14:45:35 -0800 (Fri, 11 Mar 2022) Log Message [Merge-Queue] Add queue triggered by label addition https://bugs.webkit.org/show_bug.cgi?id=237615 Reviewed by Aakash Jain. * Tools/CISupport/ews-build/config.json: Add Merge-Queue. * Tools/CISupport/ews-build/events.py: (GitHubEventHandlerNoEdits): Remove action list, add merge-queue labels. (GitHubEventHandlerNoEdits.handle_pull_request): Let parent class filter actions, treat merge-queue label addition as a 'synchronize', but change event name to trigger different scheduler family. * Tools/CISupport/ews-build/factories.py: (MergeQueueFactory): Added. * Tools/CISupport/ews-build/factories_unittest.py: (TestExpectedBuildSteps): * Tools/CISupport/ews-build/loadConfig.py: (loadBuilderConfig): AnyBranchSchedulers should only accept events which match their name. * Tools/CISupport/ews-build/loadConfig_unittest.py: (ConfigDotJSONTest): Match pull request scheduler name to pull request event. Canonical link: https://commits.webkit.org/248349@main Modified Paths trunk/Tools/CISupport/ews-build/config.json trunk/Tools/CISupport/ews-build/events.py trunk/Tools/CISupport/ews-build/factories.py trunk/Tools/CISupport/ews-build/factories_unittest.py trunk/Tools/CISupport/ews-build/loadConfig.py trunk/Tools/CISupport/ews-build/loadConfig_unittest.py trunk/Tools/ChangeLog Diff Modified: trunk/Tools/CISupport/ews-build/config.json (291192 => 291193) --- trunk/Tools/CISupport/ews-build/config.json 2022-03-11 22:30:31 UTC (rev 291192) +++ trunk/Tools/CISupport/ews-build/config.json 2022-03-11 22:45:35 UTC (rev 291193) @@ -329,6 +329,12 @@ "factory": "CommitQueueFactory", "platform": "mac-bigsur", "configuration": "release", "architectures": ["x86_64"], "workernames": ["webkit-cq-01", "webkit-cq-02", "webkit-cq-03"] +}, +{ + "name": "Merge-Queue", "shortname": "merge", "icon": "buildAndTest", + "factory": "MergeQueueFactory", "platform": "mac-bigsur", + "configuration": "release", "architectures": ["x86_64"], + "workernames": ["webkit-cq-01", "webkit-cq-02", "webkit-cq-03", "ews151"] } ], "schedulers": [ @@ -347,7 +353,7 @@ "builderNames": ["Commit-Queue"] }, { - "type": "AnyBranchScheduler", "name": "pullrequest", + "type": "AnyBranchScheduler", "name": "pull_request", "builderNames": [ "Bindings-Tests-EWS", "GTK-Build-EWS", "iOS-15-Build-EWS", "iOS-15-Simulator-Build-EWS", "JSC-ARMv7-32bits-Build-EWS", "JSC-i386-32bits-EWS", "JSC-MIPSEL-32bits-Build-EWS", "JSC-Tests-EWS", @@ -357,6 +363,10 @@ ] }, { + "type": "AnyBranchScheduler", "name": "merge_queue", + "builderNames": ["Merge-Queue"] +}, +{ "type": "Triggerable", "name": "macos-bigsur-debug-build-ews", "builderNames": ["macOS-BigSur-Debug-Build-EWS"] }, Modified: trunk/Tools/CISupport/ews-build/events.py (291192 => 291193) --- trunk/Tools/CISupport/ews-build/events.py 2022-03-11 22:30:31 UTC (rev 291192) +++ trunk/Tools/CISupport/ews-build/events.py 2022-03-11 22:45:35 UTC (rev 291193) @@ -311,8 +311,8 @@ class GitHubEventHandlerNoEdits(GitHubEventHandler): -ACTIONS_TO_TRIGGER_EWS = ('opened', 'synchronize') OPEN_STATES = ('open',) +MERGE_QUEUE_LABELS = ('merge-queue', 'fast-merge-queue') @classmethod def file_with_status_sign(cls, info): @@ -350,10 +350,14 @@ pr_number = payload['number'] action = "" state = payload.get('pull_request', {}).get('state') -if action not in self.ACTIONS_TO_TRIGGER_EWS: -log.msg('Action {} on PR #{} does not indicate code has been changed'.format(action, pr_number)) -return ([], 'git') +labels = [label.get('name') for label in payload.get('pull_request', {}).get('labels', [])] + if state not in self.OPEN_STATES: log.msg("PR #{} is '{}', which triggers nothing".format(pr_number, state)) return ([], 'git') +if action == 'labeled' and any(label in self.MERGE_QUEUE_LABELS for label in labels): +log.msg("PR #{} was labeled for merge-queue".format(pr_number)) +# 'labeled' is usually an ignored action, override it to force build +payload['action'] = 'synchronize' +return super(GitHubEventHandlerNoEdits, self).handle_pull_request(payload, 'merge_queue') return super(GitHubEventHandlerNoEdits, self).handle_pull_request(payload, event) Modified: trunk/Tools/CISupport/ews-build/factories.py (291192 => 291193) --- trunk/Tools/CISupport/ews-build/factories.py 2022-03-11 22:30:31 UTC (rev 291192) +++ trunk/Tools/CISupport/ews-build/factories.py 2022-03-11 22:45:35 UTC (rev 291193) @@ -314,3 +314,10 @@ self.addStep(CreateLocalGITCommit()) self.addStep(PushCommitToWebKitRepo())
[webkit-changes] [291192] trunk/Source
Title: [291192] trunk/Source Revision 291192 Author e...@apple.com Date 2022-03-11 14:30:31 -0800 (Fri, 11 Mar 2022) Log Message [Xcode] "Nest Headers" script phases copy headers incorrectly on Catalyst https://bugs.webkit.org/show_bug.cgi?id=237793 Reviewed by Alexey Proskuryakov. Source/WebCore/PAL: * PAL.xcodeproj/project.pbxproj: Source/WTF: SDK_VARIANT needs to be passed into the nested `xcodebuild` invocation that these script phases run. Pass WK_USE_ALTERNATE_FRAMEWORKS_DIR=NO to prevent the default behavior where Catalyst content is installed to /System/iOSSupport, as this causes headers to be copied to WebKitBuild/Release/System/iOSSupport/... This script phases only run under the legacy build system, so they do not affect production builds. https://commits.webkit.org/247656@main provides more context on this hack (tl;dr it's a temporary workaround for the XCBuild migration). * WTF.xcodeproj/project.pbxproj: Modified Paths trunk/Source/WTF/ChangeLog trunk/Source/WTF/WTF.xcodeproj/project.pbxproj trunk/Source/WebCore/PAL/ChangeLog trunk/Source/WebCore/PAL/PAL.xcodeproj/project.pbxproj Diff Modified: trunk/Source/WTF/ChangeLog (291191 => 291192) --- trunk/Source/WTF/ChangeLog 2022-03-11 22:22:51 UTC (rev 291191) +++ trunk/Source/WTF/ChangeLog 2022-03-11 22:30:31 UTC (rev 291192) @@ -1,3 +1,21 @@ +2022-03-11 Elliott Williams + +[Xcode] "Nest Headers" script phases copy headers incorrectly on Catalyst +https://bugs.webkit.org/show_bug.cgi?id=237793 + +Reviewed by Alexey Proskuryakov. + +SDK_VARIANT needs to be passed into the nested `xcodebuild` invocation that these script +phases run. Pass WK_USE_ALTERNATE_FRAMEWORKS_DIR=NO to prevent the default behavior where +Catalyst content is installed to /System/iOSSupport, as this causes headers to be copied to +WebKitBuild/Release/System/iOSSupport/... + +This script phases only run under the legacy build system, so they do not affect production +builds. https://commits.webkit.org/247656@main provides more context on this hack (tl;dr +it's a temporary workaround for the XCBuild migration). + +* WTF.xcodeproj/project.pbxproj: + 2022-03-10 Carlos Garcia Campos [GTK] Add a unit tests to check the remote inspector HTTP server Modified: trunk/Source/WTF/WTF.xcodeproj/project.pbxproj (291191 => 291192) --- trunk/Source/WTF/WTF.xcodeproj/project.pbxproj 2022-03-11 22:22:51 UTC (rev 291191) +++ trunk/Source/WTF/WTF.xcodeproj/project.pbxproj 2022-03-11 22:30:31 UTC (rev 291192) @@ -3521,7 +3521,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "[ \"${WK_USE_NEW_BUILD_SYSTEM}\" = YES ] && exit 0\nxcodebuild -project \"${PROJECT_FILE_PATH}\" -target \"${TARGET_NAME}\" installhdrs SYMROOT=\"${TARGET_TEMP_DIR}/LegacyNestHeaders-build\" DSTROOT=\"${BUILT_PRODUCTS_DIR}\" SDKROOT=\"${SDKROOT}\" -UseNewBuildSystem=YES\n\n"; + shellScript = "[ \"${WK_USE_NEW_BUILD_SYSTEM}\" = YES ] && exit 0\nxcodebuild -project \"${PROJECT_FILE_PATH}\" -target \"${TARGET_NAME}\" installhdrs SYMROOT=\"${TARGET_TEMP_DIR}/LegacyNestHeaders-build\" DSTROOT=\"${BUILT_PRODUCTS_DIR}\" SDKROOT=\"${SDKROOT}\" SDK_VARIANT=\"${SDK_VARIANT}\" WK_USE_ALTERNATE_FRAMEWORKS_DIR=NO -UseNewBuildSystem=YES\n\n"; }; /* End PBXShellScriptBuildPhase section */ Modified: trunk/Source/WebCore/PAL/ChangeLog (291191 => 291192) --- trunk/Source/WebCore/PAL/ChangeLog 2022-03-11 22:22:51 UTC (rev 291191) +++ trunk/Source/WebCore/PAL/ChangeLog 2022-03-11 22:30:31 UTC (rev 291192) @@ -1,3 +1,12 @@ +2022-03-11 Elliott Williams + +[Xcode] "Nest Headers" script phases copy headers incorrectly on Catalyst +https://bugs.webkit.org/show_bug.cgi?id=237793 + +Reviewed by Alexey Proskuryakov. + +* PAL.xcodeproj/project.pbxproj: + 2022-03-08 Jean-Yves Avenard Split SourceBufferParserWebM and have platform agnostic WebMParser Modified: trunk/Source/WebCore/PAL/PAL.xcodeproj/project.pbxproj (291191 => 291192) --- trunk/Source/WebCore/PAL/PAL.xcodeproj/project.pbxproj 2022-03-11 22:22:51 UTC (rev 291191) +++ trunk/Source/WebCore/PAL/PAL.xcodeproj/project.pbxproj 2022-03-11 22:30:31 UTC (rev 291192) @@ -2049,7 +2049,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "[ \"${WK_USE_NEW_BUILD_SYSTEM}\" = YES ] && exit 0\nxcodebuild -project \"${PROJECT_FILE_PATH}\" -target \"${TARGET_NAME}\" installhdrs SYMROOT=\"${TARGET_TEMP_DIR}/LegacyNestHeaders-build\" DSTROOT=\"${BUILT_PRODUCTS_DIR}\" SDKROOT=\"${SDKROOT}\" -UseNewBuildSystem=YES\n"; + shellScript = "[ \"${WK_USE_NEW_BUILD_SYSTEM}\" = YES ] && exit 0\nxcodebuild -project \"${PROJECT_FILE_PATH}\" -target \"${TARGET_NAME}\" installhdrs SYMROOT=\"${TARGET_TEMP_DIR}/LegacyNestHeaders-build\" DSTROOT=\"${BUILT_PRODUCTS_DIR}\" SDKROOT=\"${SDKROOT}\" SDK_VARIANT=\"${SDK_VARIANT}\"
[webkit-changes] [291191] trunk/Source/WebKit
Title: [291191] trunk/Source/WebKit Revision 291191 Author simon.fra...@apple.com Date 2022-03-11 14:22:51 -0800 (Fri, 11 Mar 2022) Log Message Do buffer swapping on all RemoteLayerBackingStores before painting all of them https://bugs.webkit.org/show_bug.cgi?id=237752 Reviewed by Tim Horton. Buffer swapping requires sync IPC with the GPU Process, but painting can be asynchronous, so do all the sync IPC before all the async IPC to avoid serializing everything. During the recursive PlatformCALayerRemote::recursiveBuildTransaction() we now call prepareToDisplay() which does the buffer swapping, and then we paint all the reachable backing stores via RemoteLayerTreeContext::buildTransaction(). This is a 9% perf improvement on the "Images" MotionMark subtest. * Shared/RemoteLayerTree/RemoteLayerBackingStore.h: * Shared/RemoteLayerTree/RemoteLayerBackingStore.mm: (WebKit::RemoteLayerBackingStore::prepareToDisplay): (WebKit::RemoteLayerBackingStore::display): Deleted. * Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.h: * Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.mm: (WebKit::RemoteLayerBackingStoreCollection::paintReachableBackingStoreContents): (WebKit::RemoteLayerBackingStoreCollection::didFlushLayers): The local variables can be pointers, rather than using references to pointers. (WebKit::RemoteLayerBackingStoreCollection::markAllBackingStoreVolatile): Ditto * WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemote.cpp: (WebKit::PlatformCALayerRemote::recursiveBuildTransaction): * WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeContext.mm: (WebKit::RemoteLayerTreeContext::buildTransaction): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.h trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.mm trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.h trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.mm trunk/Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemote.cpp trunk/Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeContext.mm Diff Modified: trunk/Source/WebKit/ChangeLog (291190 => 291191) --- trunk/Source/WebKit/ChangeLog 2022-03-11 22:13:34 UTC (rev 291190) +++ trunk/Source/WebKit/ChangeLog 2022-03-11 22:22:51 UTC (rev 291191) @@ -1,3 +1,34 @@ +2022-03-11 Simon Fraser + +Do buffer swapping on all RemoteLayerBackingStores before painting all of them +https://bugs.webkit.org/show_bug.cgi?id=237752 + +Reviewed by Tim Horton. + +Buffer swapping requires sync IPC with the GPU Process, but painting can be asynchronous, so +do all the sync IPC before all the async IPC to avoid serializing everything. + +During the recursive PlatformCALayerRemote::recursiveBuildTransaction() we now call +prepareToDisplay() which does the buffer swapping, and then we paint all the reachable +backing stores via RemoteLayerTreeContext::buildTransaction(). + +This is a 9% perf improvement on the "Images" MotionMark subtest. + +* Shared/RemoteLayerTree/RemoteLayerBackingStore.h: +* Shared/RemoteLayerTree/RemoteLayerBackingStore.mm: +(WebKit::RemoteLayerBackingStore::prepareToDisplay): +(WebKit::RemoteLayerBackingStore::display): Deleted. +* Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.h: +* Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.mm: +(WebKit::RemoteLayerBackingStoreCollection::paintReachableBackingStoreContents): +(WebKit::RemoteLayerBackingStoreCollection::didFlushLayers): The local variables can +be pointers, rather than using references to pointers. +(WebKit::RemoteLayerBackingStoreCollection::markAllBackingStoreVolatile): Ditto +* WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemote.cpp: +(WebKit::PlatformCALayerRemote::recursiveBuildTransaction): +* WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeContext.mm: +(WebKit::RemoteLayerTreeContext::buildTransaction): + 2022-03-11 Per Arne Vollan [macOS] Image decoders should be restricted for Mail Modified: trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.h (291190 => 291191) --- trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.h 2022-03-11 22:13:34 UTC (rev 291190) +++ trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.h 2022-03-11 22:22:51 UTC (rev 291191) @@ -66,7 +66,7 @@ void setContents(WTF::MachSendRight&& surfaceHandle); // Returns true if the backing store changed. -bool display(); +bool prepareToDisplay(); void paintContents(); WebCore::FloatSize size() const { return m_size; } Modified: trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.mm (291190 => 291191) --- trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.mm
[webkit-changes] [291190] trunk/Source
Title: [291190] trunk/Source Revision 291190 Author pvol...@apple.com Date 2022-03-11 14:13:34 -0800 (Fri, 11 Mar 2022) Log Message [macOS] Image decoders should be restricted for Mail https://bugs.webkit.org/show_bug.cgi?id=237717 Reviewed by Geoffrey Garen. Source/WebCore: Only add restricted decoding flag when it is explicitly requested. * WebCore.xcodeproj/project.pbxproj: * platform/graphics/cg/ImageDecoderCG.cpp: (WebCore::createImageSourceOptions): (WebCore::ImageDecoderCG::enableRestrictedDecoding): (WebCore::ImageDecoderCG::restrictedDecodingEnabled): * platform/graphics/cg/ImageDecoderCG.h: Source/WebKit: We already restrict image decoders for Mail on iOS. We should do so on macOS too. * Shared/WebProcessCreationParameters.cpp: (WebKit::WebProcessCreationParameters::encode const): (WebKit::WebProcessCreationParameters::decode): * Shared/WebProcessCreationParameters.h: * UIProcess/Cocoa/WebProcessPoolCocoa.mm: (WebKit::WebProcessPool::platformInitializeWebProcess): * WebProcess/cocoa/WebProcessCocoa.mm: (WebKit::WebProcess::platformInitializeWebProcess): * WebProcess/com.apple.WebProcess.sb.in: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj trunk/Source/WebCore/platform/graphics/cg/ImageDecoderCG.cpp trunk/Source/WebCore/platform/graphics/cg/ImageDecoderCG.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/WebProcessCreationParameters.cpp trunk/Source/WebKit/Shared/WebProcessCreationParameters.h trunk/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm trunk/Source/WebKit/WebProcess/cocoa/WebProcessCocoa.mm trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in Diff Modified: trunk/Source/WebCore/ChangeLog (291189 => 291190) --- trunk/Source/WebCore/ChangeLog 2022-03-11 21:55:33 UTC (rev 291189) +++ trunk/Source/WebCore/ChangeLog 2022-03-11 22:13:34 UTC (rev 291190) @@ -1,3 +1,20 @@ +2022-03-11 Per Arne Vollan + +[macOS] Image decoders should be restricted for Mail +https://bugs.webkit.org/show_bug.cgi?id=237717 + + +Reviewed by Geoffrey Garen. + +Only add restricted decoding flag when it is explicitly requested. + +* WebCore.xcodeproj/project.pbxproj: +* platform/graphics/cg/ImageDecoderCG.cpp: +(WebCore::createImageSourceOptions): +(WebCore::ImageDecoderCG::enableRestrictedDecoding): +(WebCore::ImageDecoderCG::restrictedDecodingEnabled): +* platform/graphics/cg/ImageDecoderCG.h: + 2022-03-11 Wenson Hsieh [iOS] Add support for -[UITextInput removeEmojiAlternatives] on WKContentView Modified: trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj (291189 => 291190) --- trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj 2022-03-11 21:55:33 UTC (rev 291189) +++ trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj 2022-03-11 22:13:34 UTC (rev 291190) @@ -1903,7 +1903,7 @@ 5546757B1FD212A9003B10B0 /* ImageSource.h in Headers */ = {isa = PBXBuildFile; fileRef = 554675781FD1FC1A003B10B0 /* ImageSource.h */; settings = {ATTRIBUTES = (Private, ); }; }; 5550CB421E955E3C00111AA0 /* ImageTypes.h in Headers */ = {isa = PBXBuildFile; fileRef = 5550CB411E955E3C00111AA0 /* ImageTypes.h */; settings = {ATTRIBUTES = (Private, ); }; }; 555130011E7B00A69E38 /* DecodingOptions.h in Headers */ = {isa = PBXBuildFile; fileRef = 555130001E7A00A69E38 /* DecodingOptions.h */; settings = {ATTRIBUTES = (Private, ); }; }; - 555B87ED1CAAF0AB00349425 /* ImageDecoderCG.h in Headers */ = {isa = PBXBuildFile; fileRef = 555B87EB1CAAF0AB00349425 /* ImageDecoderCG.h */; }; + 555B87ED1CAAF0AB00349425 /* ImageDecoderCG.h in Headers */ = {isa = PBXBuildFile; fileRef = 555B87EB1CAAF0AB00349425 /* ImageDecoderCG.h */; settings = {ATTRIBUTES = (Private, ); }; }; 556C7C4B22123997009B06CA /* RenderingUpdateScheduler.h in Headers */ = {isa = PBXBuildFile; fileRef = 556C7C4722123942009B06CA /* RenderingUpdateScheduler.h */; settings = {ATTRIBUTES = (Private, ); }; }; 5576A5651D88A70800CCC04C /* ImageFrame.h in Headers */ = {isa = PBXBuildFile; fileRef = 5576A5631D88A70800CCC04C /* ImageFrame.h */; settings = {ATTRIBUTES = (Private, ); }; }; 5584765A2453F334009F550C /* ReducedResolutionSeconds.h in Headers */ = {isa = PBXBuildFile; fileRef = 558476582453ABC2009F550C /* ReducedResolutionSeconds.h */; settings = {ATTRIBUTES = (Private, ); }; }; Modified: trunk/Source/WebCore/platform/graphics/cg/ImageDecoderCG.cpp (291189 => 291190) --- trunk/Source/WebCore/platform/graphics/cg/ImageDecoderCG.cpp 2022-03-11 21:55:33 UTC (rev 291189) +++ trunk/Source/WebCore/platform/graphics/cg/ImageDecoderCG.cpp 2022-03-11 22:13:34 UTC (rev 291190) @@ -67,7 +67,8 @@ CFDictionarySetValue(options.get(), kCGImageSourceShouldPreferRGB32, kCFBooleanTrue); CFDictionarySetValue(options.get(), kCGImageSourceSkipMetadata, kCFBooleanTrue); #if HAVE(IMAGE_RESTRICTED_DECODING) && USE(APPLE_INTERNAL_SDK) -
[webkit-changes] [291188] branches/safari-614.1.5-branch/Source
Title: [291188] branches/safari-614.1.5-branch/Source Revision 291188 Author kocsen_ch...@apple.com Date 2022-03-11 13:55:29 -0800 (Fri, 11 Mar 2022) Log Message Cherry-pick r291139. rdar://problem/90127039 Catalyst _javascript_Core, WebCore, WebKitLegacy, and WebKit shouldn't be copied to the Secondary Path https://bugs.webkit.org/show_bug.cgi?id=237748 Reviewed by Mark Lam. Updated the configuration to exclude copying Catalyst build products to the secondary path. Source/_javascript_Core: * 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@291139 268f45cc-cd09-0410-ab3c-d52691b4dbfc Modified Paths branches/safari-614.1.5-branch/Source/_javascript_Core/ChangeLog branches/safari-614.1.5-branch/Source/_javascript_Core/Configurations/Base.xcconfig branches/safari-614.1.5-branch/Source/ThirdParty/ANGLE/ChangeLog branches/safari-614.1.5-branch/Source/ThirdParty/ANGLE/Configurations/ANGLE-dynamic.xcconfig branches/safari-614.1.5-branch/Source/ThirdParty/libwebrtc/ChangeLog branches/safari-614.1.5-branch/Source/ThirdParty/libwebrtc/Configurations/libwebrtc.xcconfig branches/safari-614.1.5-branch/Source/WebCore/ChangeLog branches/safari-614.1.5-branch/Source/WebCore/Configurations/WebCore.xcconfig branches/safari-614.1.5-branch/Source/WebGPU/ChangeLog branches/safari-614.1.5-branch/Source/WebGPU/Configurations/WebGPU.xcconfig branches/safari-614.1.5-branch/Source/WebInspectorUI/ChangeLog branches/safari-614.1.5-branch/Source/WebInspectorUI/Configurations/WebInspectorUIFramework.xcconfig branches/safari-614.1.5-branch/Source/WebKit/ChangeLog branches/safari-614.1.5-branch/Source/WebKit/Configurations/Base.xcconfig branches/safari-614.1.5-branch/Source/WebKitLegacy/mac/ChangeLog branches/safari-614.1.5-branch/Source/WebKitLegacy/mac/Configurations/Base.xcconfig Diff Modified: branches/safari-614.1.5-branch/Source/_javascript_Core/ChangeLog (291187 => 291188) --- branches/safari-614.1.5-branch/Source/_javascript_Core/ChangeLog 2022-03-11 21:52:38 UTC (rev 291187) +++ branches/safari-614.1.5-branch/Source/_javascript_Core/ChangeLog 2022-03-11 21:55:29 UTC (rev 291188) @@ -1,3 +1,60 @@ +2022-03-11 Russell Epstein + +Cherry-pick r291139. rdar://problem/90127039 + +Catalyst _javascript_Core, WebCore, WebKitLegacy, and WebKit shouldn't be copied to the Secondary Path +https://bugs.webkit.org/show_bug.cgi?id=237748 + +Reviewed by Mark Lam. + +Updated the configuration to exclude copying Catalyst build products to the secondary path. + +Source/_javascript_Core: + +* 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@291139 268f45cc-cd09-0410-ab3c-d52691b4dbfc + +2022-03-10 Michael Saboff + +Catalyst _javascript_Core, WebCore, WebKitLegacy, and WebKit shouldn't be copied to the Secondary Path +https://bugs.webkit.org/show_bug.cgi?id=237748 + +Reviewed by Mark Lam. + +Updated the configuration to exclude copying Catalyst build products to the secondary path. + +* Configurations/Base.xcconfig: + 2022-03-03 Russell Epstein Cherry-pick r290805. rdar://problem/89053248 Modified: branches/safari-614.1.5-branch/Source/_javascript_Core/Configurations/Base.xcconfig (291187 => 291188) --- branches/safari-614.1.5-branch/Source/_javascript_Core/Configurations/Base.xcconfig 2022-03-11 21:52:38 UTC (rev 291187) +++ branches/safari-614.1.5-branch/Source/_javascript_Core/Configurations/Base.xcconfig 2022-03-11 21:55:29 UTC (rev 291188) @@ -34,8 +34,10 @@ INSTALL_PATH_PREFIX = $(INSTALL_PATH_PREFIX_$(USE_SYSTEM_CONTENT_PATH)); INSTALL_PATH_PREFIX_YES = $(SYSTEM_CONTENT_PATH); SECONDARY_STAGED_FRAMEWORK_DIRECTORY = $(SYSTEM_SECONDARY_CONTENT_PATH)$(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari -COPY_STAGED_FRAMEWORKS_TO_SECONDARY_PATH = NO
[webkit-changes] [291187] branches/safari-614.1.5-branch/Source
Title: [291187] branches/safari-614.1.5-branch/Source Revision 291187 Author kocsen_ch...@apple.com Date 2022-03-11 13:52:38 -0800 (Fri, 11 Mar 2022) Log Message Versioning. WebKit-7614.1.5.10 Modified Paths branches/safari-614.1.5-branch/Source/_javascript_Core/Configurations/Version.xcconfig branches/safari-614.1.5-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig branches/safari-614.1.5-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig branches/safari-614.1.5-branch/Source/WebCore/Configurations/Version.xcconfig branches/safari-614.1.5-branch/Source/WebCore/PAL/Configurations/Version.xcconfig branches/safari-614.1.5-branch/Source/WebGPU/Configurations/Version.xcconfig branches/safari-614.1.5-branch/Source/WebInspectorUI/Configurations/Version.xcconfig branches/safari-614.1.5-branch/Source/WebKit/Configurations/Version.xcconfig branches/safari-614.1.5-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig Diff Modified: branches/safari-614.1.5-branch/Source/_javascript_Core/Configurations/Version.xcconfig (291186 => 291187) --- branches/safari-614.1.5-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2022-03-11 21:51:35 UTC (rev 291186) +++ branches/safari-614.1.5-branch/Source/_javascript_Core/Configurations/Version.xcconfig 2022-03-11 21:52:38 UTC (rev 291187) @@ -24,7 +24,7 @@ MAJOR_VERSION = 614; MINOR_VERSION = 1; TINY_VERSION = 5; -MICRO_VERSION = 9; +MICRO_VERSION = 10; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); Modified: branches/safari-614.1.5-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig (291186 => 291187) --- branches/safari-614.1.5-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2022-03-11 21:51:35 UTC (rev 291186) +++ branches/safari-614.1.5-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig 2022-03-11 21:52:38 UTC (rev 291187) @@ -24,7 +24,7 @@ MAJOR_VERSION = 614; MINOR_VERSION = 1; TINY_VERSION = 5; -MICRO_VERSION = 9; +MICRO_VERSION = 10; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); Modified: branches/safari-614.1.5-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (291186 => 291187) --- branches/safari-614.1.5-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2022-03-11 21:51:35 UTC (rev 291186) +++ branches/safari-614.1.5-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig 2022-03-11 21:52:38 UTC (rev 291187) @@ -24,7 +24,7 @@ MAJOR_VERSION = 614; MINOR_VERSION = 1; TINY_VERSION = 5; -MICRO_VERSION = 9; +MICRO_VERSION = 10; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); Modified: branches/safari-614.1.5-branch/Source/WebCore/Configurations/Version.xcconfig (291186 => 291187) --- branches/safari-614.1.5-branch/Source/WebCore/Configurations/Version.xcconfig 2022-03-11 21:51:35 UTC (rev 291186) +++ branches/safari-614.1.5-branch/Source/WebCore/Configurations/Version.xcconfig 2022-03-11 21:52:38 UTC (rev 291187) @@ -24,7 +24,7 @@ MAJOR_VERSION = 614; MINOR_VERSION = 1; TINY_VERSION = 5; -MICRO_VERSION = 9; +MICRO_VERSION = 10; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); Modified: branches/safari-614.1.5-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (291186 => 291187) --- branches/safari-614.1.5-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2022-03-11 21:51:35 UTC (rev 291186) +++ branches/safari-614.1.5-branch/Source/WebCore/PAL/Configurations/Version.xcconfig 2022-03-11 21:52:38 UTC (rev 291187) @@ -24,7 +24,7 @@ MAJOR_VERSION = 614; MINOR_VERSION = 1; TINY_VERSION = 5; -MICRO_VERSION = 9; +MICRO_VERSION = 10; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); Modified: branches/safari-614.1.5-branch/Source/WebGPU/Configurations/Version.xcconfig (291186 => 291187) --- branches/safari-614.1.5-branch/Source/WebGPU/Configurations/Version.xcconfig 2022-03-11 21:51:35 UTC (rev 291186) +++ branches/safari-614.1.5-branch/Source/WebGPU/Configurations/Version.xcconfig 2022-03-11 21:52:38 UTC (rev 291187) @@ -24,7 +24,7 @@ MAJOR_VERSION = 614; MINOR_VERSION = 1; TINY_VERSION = 5; -MICRO_VERSION = 9; +MICRO_VERSION = 10; NANO_VERSION = 0; FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION); Modified: branches/safari-614.1.5-branch/Source/WebInspectorUI/Configurations/Version.xcconfig (291186 => 291187) --- branches/safari-614.1.5-branch/Source/WebInspectorUI/Configurations/Version.xcconfig 2022-03-11 21:51:35 UTC (rev 291186) +++ branches/safari-614.1.5-branch/Source/WebInspectorUI/Configurations/Version.xcconfig 2022-03-11 21:52:38 UTC (rev 291187) @@ -1,7 +1,7 @@ MAJOR_VERSION = 614; MINOR_VERSION = 1; TINY_VERSION = 5; -MICRO_VERSION = 9;
[webkit-changes] [291186] trunk/Tools
Title: [291186] trunk/Tools Revision 291186 Author jbed...@apple.com Date 2022-03-11 13:51:35 -0800 (Fri, 11 Mar 2022) Log Message [Merge-Queue] Check for merge-queue labels https://bugs.webkit.org/show_bug.cgi?id=237690 Reviewed by Aakash Jain. * Tools/CISupport/ews-build/steps.py: (GitHubMixin): (GitHubMixin.get_pr_json): Add retry. (GitHubMixin._is_pr_in_merge_queue): Check for merge-queue label. (GitHubMixin.should_send_email_for_pr): get_pr_json now owns logging. (ValidateChange.__init__): Add verifyMergeQueue flag. (ValidateChange): (ValidateChange.start): Add log to indicate PR has a merge-queue flag. (ValidateChange.validate_github): Add retry when getting PR json, add merge queue check. * Tools/CISupport/ews-build/steps_unittest.py: Canonical link: https://commits.webkit.org/248345@main Modified Paths trunk/Tools/CISupport/ews-build/steps.py trunk/Tools/CISupport/ews-build/steps_unittest.py trunk/Tools/ChangeLog Diff Modified: trunk/Tools/CISupport/ews-build/steps.py (291185 => 291186) --- trunk/Tools/CISupport/ews-build/steps.py 2022-03-11 21:25:32 UTC (rev 291185) +++ trunk/Tools/CISupport/ews-build/steps.py 2022-03-11 21:51:35 UTC (rev 291186) @@ -141,6 +141,8 @@ pr_open_states = ['open'] pr_closed_states = ['closed'] BLOCKED_LABEL = 'merging-blocked' +MERGE_QUEUE_LABEL = 'merge-queue' +FAST_MERGE_QUEUE_LABEL = 'fast-merge-queue' def fetch_data_from_url_with_authentication(self, url): response = None @@ -160,7 +162,7 @@ return None return response -def get_pr_json(self, pr_number, repository_url=None): +def get_pr_json(self, pr_number, repository_url=None, retry=0): api_url = GitHub.api_url(repository_url) if not api_url: return None @@ -169,15 +171,24 @@ content = self.fetch_data_from_url_with_authentication(pr_url) if not content: return None -try: -pr_json = content.json() -except Exception as e: -print('Failed to get pull request data from {}, error: {}'.format(pr_url, e)) -return None -if not pr_json or len(pr_json) == 0: -return None -return pr_json +for attempt in range(retry + 1): +try: +pr_json = content.json() +if pr_json and len(pr_json): +return pr_json +except Exception as e: +self._addToLog('stdio', 'Failed to get pull request data from {}, error: {}'.format(pr_url, e)) + +self._addToLog('stdio', 'Unable to fetch pull request {}.\n'.format(pr_number)) +if attempt > retry: +return None +wait_for = (index + 1) * 15 +self._addToLog('stdio', 'Backing off for {} seconds before retrying.\n'.format(wait_for)) +time.sleep(wait_for) + +return None + def _is_pr_closed(self, pr_json): if not pr_json or not pr_json.get('state'): self._addToLog('stdio', 'Cannot determine pull request status.\n') @@ -199,10 +210,15 @@ return 1 return 0 +def _is_pr_in_merge_queue(self, pr_json): +for label in (pr_json or {}).get('labels', {}): +if label.get('name', '') in (self.MERGE_QUEUE_LABEL, self.FAST_MERGE_QUEUE_LABEL): +return 1 +return 0 + def should_send_email_for_pr(self, pr_number): pr_json = self.get_pr_json(pr_number) if not pr_json: -self._addToLog('stdio', 'Unable to fetch PR #{}\n'.format(pr_number)) return True if 1 == self._is_hash_outdated(pr_json): @@ -1218,11 +1234,20 @@ flunkOnFailure = True haltOnFailure = True -def __init__(self, verifyObsolete=True, verifyBugClosed=True, verifyReviewDenied=True, addURLs=True, verifycqplus=False): +def __init__( +self, +verifyObsolete=True, +verifyBugClosed=True, +verifyReviewDenied=True, +addURLs=True, +verifycqplus=False, +verifyMergeQueue=False, +): self.verifyObsolete = verifyObsolete self.verifyBugClosed = verifyBugClosed self.verifyReviewDenied = verifyReviewDenied self.verifycqplus = verifycqplus +self.verifyMergeQueue = verifyMergeQueue self.addURLs = addURLs buildstep.BuildStep.__init__(self) @@ -1271,6 +1296,8 @@ if self.verifycqplus and patch_id: self._addToLog('stdio', 'Change is in commit queue.\n') self._addToLog('stdio', 'Change has been reviewed.\n') +if self.verifyMergeQueue and pr_number: +self._addToLog('stdio', 'Change is in merge queue.\n') self.finished(SUCCESS) return None @@ -1312,11 +1339,8 @@ return False repository_url = self.getProperty('repository', '') +pr_json = self.get_pr_json(pr_number,
[webkit-changes] [291185] trunk/Websites/webkit.org
Title: [291185] trunk/Websites/webkit.org Revision 291185 Author j...@apple.com Date 2022-03-11 13:25:32 -0800 (Fri, 11 Mar 2022) Log Message Allow table of contents on posts in special cases https://bugs.webkit.org/show_bug.cgi?id=237744 Reviewed by Devin Rousso. * wp-content/plugins/table-of-contents.php: * wp-content/themes/webkit/functions.php: * wp-content/themes/webkit/single.php: Modified Paths trunk/Websites/webkit.org/ChangeLog trunk/Websites/webkit.org/wp-content/plugins/table-of-contents.php trunk/Websites/webkit.org/wp-content/themes/webkit/single.php Diff Modified: trunk/Websites/webkit.org/ChangeLog (291184 => 291185) --- trunk/Websites/webkit.org/ChangeLog 2022-03-11 21:08:46 UTC (rev 291184) +++ trunk/Websites/webkit.org/ChangeLog 2022-03-11 21:25:32 UTC (rev 291185) @@ -1,3 +1,14 @@ +2022-03-11 Jon Davis + +Allow table of contents on posts in special cases +https://bugs.webkit.org/show_bug.cgi?id=237744 + +Reviewed by Devin Rousso. + +* wp-content/plugins/table-of-contents.php: +* wp-content/themes/webkit/functions.php: +* wp-content/themes/webkit/single.php: + 2022-03-03 Myles C. Maxfield [Style] Forbid spaces between type names and protocol names in Objective-C Modified: trunk/Websites/webkit.org/wp-content/plugins/table-of-contents.php (291184 => 291185) --- trunk/Websites/webkit.org/wp-content/plugins/table-of-contents.php 2022-03-11 21:08:46 UTC (rev 291184) +++ trunk/Websites/webkit.org/wp-content/plugins/table-of-contents.php 2022-03-11 21:25:32 UTC (rev 291185) @@ -20,7 +20,18 @@ add_filter( 'wp_insert_post_data', array( 'WebKitTableOfContents', 'wp_insert_post_data' ), 20, 2 ); add_action( 'wp_insert_post', array( 'WebKitTableOfContents', 'wp_insert_post' ) ); } + +public static function tocEnabled ($post_type) { +$build_toc = get_post_meta(get_the_ID(), 'build-table-of-contents', true); +if ($build_toc === 'enabled') +return true; +if (in_array($post_type, self::$supported_post_types)) +return true; + +return false; +} + public static function hasIndex() { $toc = get_post_meta( get_the_ID(), 'toc', true ); array_walk($toc, array('WebKitTableOfContents', 'filterIndex')); @@ -33,10 +44,10 @@ } public static function renderMarkup() { -if (!in_array(get_post_type(), self::$supported_post_types)) +if (!self::tocEnabled(get_post_type())) return; -if ( empty(self::$toc) || ! self::hasIndex() ) +if ( ! self::hasIndex() || empty(self::$toc) ) return; $depth = 0; @@ -74,7 +85,7 @@ } public function wp_insert_post_data( $post_data, $record ) { -if (!in_array($post_data['post_type'], self::$supported_post_types)) +if (!self::tocEnabled($post_data['post_type'])) return $post_data; $post_data['post_content'] = self::parse($post_data['post_content']); Modified: trunk/Websites/webkit.org/wp-content/themes/webkit/single.php (291184 => 291185) --- trunk/Websites/webkit.org/wp-content/themes/webkit/single.php 2022-03-11 21:08:46 UTC (rev 291184) +++ trunk/Websites/webkit.org/wp-content/themes/webkit/single.php 2022-03-11 21:25:32 UTC (rev 291185) @@ -13,6 +13,8 @@ + + Read the rest of this entry '); ?> Pages: ', '', 'number'); ?> ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [291184] trunk/Source/WebGPU
Title: [291184] trunk/Source/WebGPU Revision 291184 Author msab...@apple.com Date 2022-03-11 13:08:46 -0800 (Fri, 11 Mar 2022) Log Message WebGPU Catalyst builds fail when using the system content path https://bugs.webkit.org/show_bug.cgi?id=237790 Reviewed by Saam Barati. The value of ALTERNATE_ROOT_PATH should be set to the framework directory instead of DYLIB_INSTALL_NAME_BASE since it will include the system content path as a prefix for Catalyst builds. This is similar to the construction of ALTERNATE_ROOT_PATH for the other frameworks. * Configurations/WebGPU.xcconfig: Modified Paths trunk/Source/WebGPU/ChangeLog trunk/Source/WebGPU/Configurations/WebGPU.xcconfig Diff Modified: trunk/Source/WebGPU/ChangeLog (291183 => 291184) --- trunk/Source/WebGPU/ChangeLog 2022-03-11 21:07:19 UTC (rev 291183) +++ trunk/Source/WebGPU/ChangeLog 2022-03-11 21:08:46 UTC (rev 291184) @@ -1,3 +1,17 @@ +2022-03-11 Michael Saboff + +WebGPU Catalyst builds fail when using the system content path +https://bugs.webkit.org/show_bug.cgi?id=237790 + +Reviewed by Saam Barati. + +The value of ALTERNATE_ROOT_PATH should be set to the framework directory instead of +DYLIB_INSTALL_NAME_BASE since it will include the system content path as a prefix for +Catalyst builds. + This is similar to the construction of ALTERNATE_ROOT_PATH for the other frameworks. + +* Configurations/WebGPU.xcconfig: + 2022-03-10 Michael Saboff Catalyst _javascript_Core, WebCore, WebKitLegacy, and WebKit shouldn't be copied to the Secondary Path Modified: trunk/Source/WebGPU/Configurations/WebGPU.xcconfig (291183 => 291184) --- trunk/Source/WebGPU/Configurations/WebGPU.xcconfig 2022-03-11 21:07:19 UTC (rev 291183) +++ trunk/Source/WebGPU/Configurations/WebGPU.xcconfig 2022-03-11 21:08:46 UTC (rev 291184) @@ -41,7 +41,7 @@ DYLIB_INSTALL_NAME_BASE_NO = $(NORMAL_WEBGPU_FRAMEWORKS_DIR); DYLIB_INSTALL_NAME_BASE_YES = $(DYLIB_INSTALL_NAME_BASE); -ALTERNATE_ROOT_PATH = $(DYLIB_INSTALL_NAME_BASE); +ALTERNATE_ROOT_PATH = $(WEBGPU_FRAMEWORKS_DIR); OUTPUT_ALTERNATE_ROOT_PATH = $(OUTPUT_ALTERNATE_ROOT_PATH_$(USE_SYSTEM_CONTENT_PATH)); OUTPUT_ALTERNATE_ROOT_PATH_YES = $(DSTROOT)$(ALTERNATE_ROOT_PATH)/$(FULL_PRODUCT_NAME); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [291183] trunk/LayoutTests
Title: [291183] trunk/LayoutTests Revision 291183 Author za...@apple.com Date 2022-03-11 13:07:19 -0800 (Fri, 11 Mar 2022) Log Message [iOS] Unreviewed gardening after r291169. * platform/ios/fast/dynamic/insert-before-table-part-in-continuation-expected.txt: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/ios/fast/dynamic/insert-before-table-part-in-continuation-expected.txt Diff Modified: trunk/LayoutTests/ChangeLog (291182 => 291183) --- trunk/LayoutTests/ChangeLog 2022-03-11 20:22:03 UTC (rev 291182) +++ trunk/LayoutTests/ChangeLog 2022-03-11 21:07:19 UTC (rev 291183) @@ -1,3 +1,9 @@ +2022-03-11 Alan Bujtas + +[iOS] Unreviewed gardening after r291169. + +* platform/ios/fast/dynamic/insert-before-table-part-in-continuation-expected.txt: + 2022-03-11 J Pascoe [WebAuthn] Support authenticatorSelection.residentKey ResidentKeyRequirement Modified: trunk/LayoutTests/platform/ios/fast/dynamic/insert-before-table-part-in-continuation-expected.txt (291182 => 291183) --- trunk/LayoutTests/platform/ios/fast/dynamic/insert-before-table-part-in-continuation-expected.txt 2022-03-11 20:22:03 UTC (rev 291182) +++ trunk/LayoutTests/platform/ios/fast/dynamic/insert-before-table-part-in-continuation-expected.txt 2022-03-11 21:07:19 UTC (rev 291183) @@ -59,7 +59,7 @@ RenderInline {SPAN} at (0,0) size 146x19 RenderText {#text} at (0,0) size 41x19 text run at (0,0) width 41: "Text..." - RenderInline {SPAN} at (0,0) size 1x19 + RenderInline {SPAN} at (0,0) size 0x19 RenderTable at (40,0) size 106x20 RenderTableSection (anonymous) at (0,0) size 105x20 RenderTableRow (anonymous) at (0,0) size 105x20 @@ -120,7 +120,7 @@ RenderInline {SPAN} at (0,0) size 146x19 RenderText {#text} at (0,0) size 41x19 text run at (0,0) width 41: "Text..." - RenderInline {SPAN} at (0,0) size 1x19 + RenderInline {SPAN} at (0,0) size 0x19 RenderTable at (40,0) size 106x20 RenderTableSection (anonymous) at (0,0) size 105x20 RenderTableRow {DIV} at (0,0) size 105x20 @@ -183,7 +183,7 @@ RenderInline {SPAN} at (0,0) size 146x19 RenderText {#text} at (0,0) size 41x19 text run at (0,0) width 41: "Text..." - RenderInline {SPAN} at (0,0) size 1x19 + RenderInline {SPAN} at (0,0) size 0x19 RenderTable at (40,0) size 106x20 RenderTableSection {DIV} at (0,0) size 105x20 RenderTableRow (anonymous) at (0,0) size 105x20 ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [291182] trunk/Source/WebKit
Title: [291182] trunk/Source/WebKit Revision 291182 Author cdu...@apple.com Date 2022-03-11 12:22:03 -0800 (Fri, 11 Mar 2022) Log Message Delay responsiveness checks for the Network Process until it has finished initialization https://bugs.webkit.org/show_bug.cgi?id=237782 Reviewed by Geoffrey Garen. Delay responsiveness checks for the Network Process until it has finished initialization. Network process initialization can be slow but we have evidence that it is not truly hung since we see network process terminations right as the network process is initiating the WebProcess connection later on. * NetworkProcess/NetworkProcess.cpp: (WebKit::NetworkProcess::initializeNetworkProcess): * NetworkProcess/NetworkProcess.h: * NetworkProcess/NetworkProcess.messages.in: * UIProcess/AuxiliaryProcessProxy.cpp: (WebKit::AuxiliaryProcessProxy::didFinishLaunching): (WebKit::AuxiliaryProcessProxy::beginResponsivenessChecks): (WebKit::AuxiliaryProcessProxy::startResponsivenessTimer): * UIProcess/AuxiliaryProcessProxy.h: * UIProcess/GPU/GPUProcessProxy.cpp: (WebKit::GPUProcessProxy::didFinishLaunching): * UIProcess/Network/NetworkProcessProxy.cpp: (WebKit::NetworkProcessProxy::sendCreationParametersToNewProcess): * UIProcess/WebAuthentication/WebAuthnProcessProxy.cpp: (WebKit::WebAuthnProcessProxy::didFinishLaunching): * UIProcess/WebProcessProxy.cpp: (WebKit::WebProcessProxy::didFinishLaunching): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp trunk/Source/WebKit/NetworkProcess/NetworkProcess.h trunk/Source/WebKit/NetworkProcess/NetworkProcess.messages.in trunk/Source/WebKit/UIProcess/AuxiliaryProcessProxy.cpp trunk/Source/WebKit/UIProcess/AuxiliaryProcessProxy.h trunk/Source/WebKit/UIProcess/GPU/GPUProcessProxy.cpp trunk/Source/WebKit/UIProcess/Network/NetworkProcessProxy.cpp trunk/Source/WebKit/UIProcess/WebAuthentication/WebAuthnProcessProxy.cpp trunk/Source/WebKit/UIProcess/WebProcessProxy.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (291181 => 291182) --- trunk/Source/WebKit/ChangeLog 2022-03-11 19:14:03 UTC (rev 291181) +++ trunk/Source/WebKit/ChangeLog 2022-03-11 20:22:03 UTC (rev 291182) @@ -1,3 +1,34 @@ +2022-03-11 Chris Dumez + +Delay responsiveness checks for the Network Process until it has finished initialization +https://bugs.webkit.org/show_bug.cgi?id=237782 + + +Reviewed by Geoffrey Garen. + +Delay responsiveness checks for the Network Process until it has finished initialization. +Network process initialization can be slow but we have evidence that it is not truly +hung since we see network process terminations right as the network process is initiating +the WebProcess connection later on. + +* NetworkProcess/NetworkProcess.cpp: +(WebKit::NetworkProcess::initializeNetworkProcess): +* NetworkProcess/NetworkProcess.h: +* NetworkProcess/NetworkProcess.messages.in: +* UIProcess/AuxiliaryProcessProxy.cpp: +(WebKit::AuxiliaryProcessProxy::didFinishLaunching): +(WebKit::AuxiliaryProcessProxy::beginResponsivenessChecks): +(WebKit::AuxiliaryProcessProxy::startResponsivenessTimer): +* UIProcess/AuxiliaryProcessProxy.h: +* UIProcess/GPU/GPUProcessProxy.cpp: +(WebKit::GPUProcessProxy::didFinishLaunching): +* UIProcess/Network/NetworkProcessProxy.cpp: +(WebKit::NetworkProcessProxy::sendCreationParametersToNewProcess): +* UIProcess/WebAuthentication/WebAuthnProcessProxy.cpp: +(WebKit::WebAuthnProcessProxy::didFinishLaunching): +* UIProcess/WebProcessProxy.cpp: +(WebKit::WebProcessProxy::didFinishLaunching): + 2022-03-11 Wenson Hsieh [iOS] Add support for -[UITextInput removeEmojiAlternatives] on WKContentView Modified: trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp (291181 => 291182) --- trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp 2022-03-11 19:14:03 UTC (rev 291181) +++ trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp 2022-03-11 20:22:03 UTC (rev 291182) @@ -303,8 +303,10 @@ }); } -void NetworkProcess::initializeNetworkProcess(NetworkProcessCreationParameters&& parameters) +void NetworkProcess::initializeNetworkProcess(NetworkProcessCreationParameters&& parameters, CompletionHandler&& completionHandler) { +CompletionHandlerCallingScope callCompletionHandler(WTFMove(completionHandler)); + applyProcessCreationParameters(parameters.auxiliaryProcessParameters); #if HAVE(SEC_KEY_PROXY) WTF::setProcessPrivileges({ ProcessPrivilege::CanAccessRawCookies }); Modified: trunk/Source/WebKit/NetworkProcess/NetworkProcess.h (291181 => 291182) --- trunk/Source/WebKit/NetworkProcess/NetworkProcess.h 2022-03-11 19:14:03 UTC (rev 291181) +++ trunk/Source/WebKit/NetworkProcess/NetworkProcess.h 2022-03-11 20:22:03 UTC (rev 291182) @@ -409,7 +409,7 @@ // Message Handlers bool
[webkit-changes] [291181] trunk
Title: [291181] trunk Revision 291181 Author e...@apple.com Date 2022-03-11 11:14:03 -0800 (Fri, 11 Mar 2022) Log Message Makefile.shared: Rename WORKSPACE to WORKSPACE_PATH and allow overrides https://bugs.webkit.org/show_bug.cgi?id=237746 Reviewed by Alexey Proskuryakov. This permits Make-based workflows which build out of a different workspace, e.g. a workspace that includes WebKitAdditions. WORKSPACE_PATH was chosen as a new name for parity with SCRIPTS_PATH and to avoid confusion with USE_WORKSPACE. Refactors Makefile.shared a bit to prevent SCHEME or WORKSPACE_PATH being set without USE_WORKSPACE from breaking the build. * Makefile.shared: Modified Paths trunk/ChangeLog trunk/Makefile.shared Diff Modified: trunk/ChangeLog (291180 => 291181) --- trunk/ChangeLog 2022-03-11 19:08:58 UTC (rev 291180) +++ trunk/ChangeLog 2022-03-11 19:14:03 UTC (rev 291181) @@ -1,3 +1,21 @@ +2022-03-11 Elliott Williams + +Makefile.shared: Rename WORKSPACE to WORKSPACE_PATH and allow overrides +https://bugs.webkit.org/show_bug.cgi?id=237746 + +Reviewed by Alexey Proskuryakov. + +This permits Make-based workflows which build out of a different workspace, e.g. a workspace +that includes WebKitAdditions. + +WORKSPACE_PATH was chosen as a new name for parity with SCRIPTS_PATH and to avoid confusion +with USE_WORKSPACE. + +Refactors Makefile.shared a bit to prevent SCHEME or WORKSPACE_PATH being set without +USE_WORKSPACE from breaking the build. + +* Makefile.shared: + 2022-03-08 Jonathan Bedard [git-webkit] Support multiple metadata locations Modified: trunk/Makefile.shared (291180 => 291181) --- trunk/Makefile.shared 2022-03-11 19:08:58 UTC (rev 291180) +++ trunk/Makefile.shared 2022-03-11 19:14:03 UTC (rev 291181) @@ -4,10 +4,10 @@ ifeq ($(USE_WORKSPACE),YES) SCHEME ?= $(notdir $(CURDIR)) -XCODE_TARGET = -scheme "$(SCHEME)" -WORKSPACE := $(dir $(lastword $(MAKEFILE_LIST)))WebKit.xcworkspace +WORKSPACE_PATH ?= $(dir $(lastword $(MAKEFILE_LIST)))WebKit.xcworkspace +XCODE_TARGET = -workspace $(WORKSPACE_PATH) -scheme "$(SCHEME)" else -SCHEME = +USE_WORKSPACE = endif ifneq (,$(SDKROOT)) @@ -117,9 +117,9 @@ ( \ [[ -t 1 ]] && COLOR_DIAGNOSTICS_ARG="COLOR_DIAGNOSTICS=YES"; \ echo; \ - echo "= BUILDING $(if $(WORKSPACE),$(SCHEME),$(notdir $(CURDIR))) ="; \ + echo "= BUILDING $(if $(USE_WORKSPACE),$(SCHEME),$(notdir $(CURDIR))) ="; \ echo; \ - $1 xcodebuild $2 $(WORKSPACE:%=-workspace %) $(OTHER_OPTIONS) $(XCODE_TARGET) $(XCODE_OPTIONS) $3 | $(OUTPUT_FILTER) && exit $${PIPESTATUS[0]} \ + $1 xcodebuild $2 $(OTHER_OPTIONS) $(XCODE_TARGET) $(XCODE_OPTIONS) $3 | $(OUTPUT_FILTER) && exit $${PIPESTATUS[0]} \ ) endef ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [291179] tags/Safari-613.2.2/
Title: [291179] tags/Safari-613.2.2/ Revision 291179 Author repst...@apple.com Date 2022-03-11 11:05:16 -0800 (Fri, 11 Mar 2022) Log Message Tag Safari-613.2.2. Added Paths tags/Safari-613.2.2/ Diff ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [291178] trunk/Source/WebKit
Title: [291178] trunk/Source/WebKit Revision 291178 Author simon.fra...@apple.com Date 2022-03-11 10:42:03 -0800 (Fri, 11 Mar 2022) Log Message Some minor refactoring in RemoteLayerBackingStore https://bugs.webkit.org/show_bug.cgi?id=237749 Reviewed by Tim Horton. Simplify RemoteLayerBackingStore a little, primarily to push the setNeedsDisplay() calls when swapToValidFrontBuffer() returns WebCore::SetNonVolatileResult::Empty out to the callers, so it's clearer when m_dirtyRegion gets mutated. In order to pass SetNonVolatileResult around more, change setBufferVolatility(bool) into setBufferVolatile() and setFrontBufferNonVolatile(), which makes it clear that we only ever set the front buffer to non-volatile. Also move the call to clearBackendHandle() into RemoteLayerWithRemoteRenderingBackingStoreCollection, since it's about GPU process. * Shared/RemoteLayerTree/RemoteLayerBackingStore.h: * Shared/RemoteLayerTree/RemoteLayerBackingStore.mm: (WebKit::RemoteLayerBackingStore::swapToValidFrontBuffer): (WebKit::RemoteLayerBackingStore::applySwappedBuffers): (WebKit::RemoteLayerBackingStore::swapBuffers): (WebKit::RemoteLayerBackingStore::setContents): (WebKit::RemoteLayerBackingStore::display): (WebKit::RemoteLayerBackingStore::paintContents): (WebKit::RemoteLayerBackingStore::setBufferVolatile): (WebKit::RemoteLayerBackingStore::setFrontBufferNonVolatile): (WebKit::RemoteLayerBackingStore::willMakeBufferVolatile): Deleted. (WebKit::RemoteLayerBackingStore::didMakeFrontBufferNonVolatile): Deleted. (WebKit::RemoteLayerBackingStore::setBufferVolatility): Deleted. * Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.h: * Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.mm: (WebKit::RemoteLayerBackingStoreCollection::makeFrontBufferNonVolatile): (WebKit::RemoteLayerBackingStoreCollection::swapToValidFrontBuffer): (WebKit::RemoteLayerBackingStoreCollection::markBackingStoreVolatile): * Shared/RemoteLayerTree/RemoteLayerWithRemoteRenderingBackingStoreCollection.h: * Shared/RemoteLayerTree/RemoteLayerWithRemoteRenderingBackingStoreCollection.mm: (WebKit::RemoteLayerWithRemoteRenderingBackingStoreCollection::makeFrontBufferNonVolatile): (WebKit::RemoteLayerWithRemoteRenderingBackingStoreCollection::swapToValidFrontBuffer): (WebKit::RemoteLayerWithRemoteRenderingBackingStoreCollection::collectBackingStoreBufferIdentifiersToMarkVolatile): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.h trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.mm trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.h trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.mm trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerWithRemoteRenderingBackingStoreCollection.h trunk/Source/WebKit/Shared/RemoteLayerTree/RemoteLayerWithRemoteRenderingBackingStoreCollection.mm Diff Modified: trunk/Source/WebKit/ChangeLog (291177 => 291178) --- trunk/Source/WebKit/ChangeLog 2022-03-11 18:25:39 UTC (rev 291177) +++ trunk/Source/WebKit/ChangeLog 2022-03-11 18:42:03 UTC (rev 291178) @@ -1,3 +1,45 @@ +2022-03-11 Simon Fraser + +Some minor refactoring in RemoteLayerBackingStore +https://bugs.webkit.org/show_bug.cgi?id=237749 + +Reviewed by Tim Horton. + +Simplify RemoteLayerBackingStore a little, primarily to push the setNeedsDisplay() calls +when swapToValidFrontBuffer() returns WebCore::SetNonVolatileResult::Empty out to the +callers, so it's clearer when m_dirtyRegion gets mutated. + +In order to pass SetNonVolatileResult around more, change setBufferVolatility(bool) into +setBufferVolatile() and setFrontBufferNonVolatile(), which makes it clear that we only ever +set the front buffer to non-volatile. + +Also move the call to clearBackendHandle() into +RemoteLayerWithRemoteRenderingBackingStoreCollection, since it's about GPU process. + +* Shared/RemoteLayerTree/RemoteLayerBackingStore.h: +* Shared/RemoteLayerTree/RemoteLayerBackingStore.mm: +(WebKit::RemoteLayerBackingStore::swapToValidFrontBuffer): +(WebKit::RemoteLayerBackingStore::applySwappedBuffers): +(WebKit::RemoteLayerBackingStore::swapBuffers): +(WebKit::RemoteLayerBackingStore::setContents): +(WebKit::RemoteLayerBackingStore::display): +(WebKit::RemoteLayerBackingStore::paintContents): +(WebKit::RemoteLayerBackingStore::setBufferVolatile): +(WebKit::RemoteLayerBackingStore::setFrontBufferNonVolatile): +(WebKit::RemoteLayerBackingStore::willMakeBufferVolatile): Deleted. +(WebKit::RemoteLayerBackingStore::didMakeFrontBufferNonVolatile): Deleted. +(WebKit::RemoteLayerBackingStore::setBufferVolatility): Deleted. +* Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.h: +*
[webkit-changes] [291177] trunk/Source/WebKit
Title: [291177] trunk/Source/WebKit Revision 291177 Author j_pas...@apple.com Date 2022-03-11 10:25:39 -0800 (Fri, 11 Mar 2022) Log Message [WebAuthn] Cancel running operations in ASA on navigation https://bugs.webkit.org/show_bug.cgi?id=237452 rdar://problem/89781990 Reviewed by Brent Fulgham. Pre-ASA WebAuthn calls cancel requests on navigation via calling authenticatorManager.cancelRequest in WebPageProxy. In WebAuthn calls that go through ASA, the authenticatorManager lives in the ASA process, so calls won't be cancelled on navigation. This patch attempts to cancel ongoing operations whenever a WebAuthenticatorCoordinatorProxy that uses ASA is destroyed, effectively cancelling requests on reload or navigation. * Platform/spi/Cocoa/AuthenticationServicesCoreSPI.h: * UIProcess/WebAuthentication/Cocoa/WebAuthenticatorCoordinatorProxy.mm: * UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.cpp: (WebKit::WebAuthenticatorCoordinatorProxy::~WebAuthenticatorCoordinatorProxy): * UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.h: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Platform/spi/Cocoa/AuthenticationServicesCoreSPI.h trunk/Source/WebKit/UIProcess/WebAuthentication/Cocoa/WebAuthenticatorCoordinatorProxy.mm trunk/Source/WebKit/UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.cpp trunk/Source/WebKit/UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.h Diff Modified: trunk/Source/WebKit/ChangeLog (291176 => 291177) --- trunk/Source/WebKit/ChangeLog 2022-03-11 17:49:14 UTC (rev 291176) +++ trunk/Source/WebKit/ChangeLog 2022-03-11 18:25:39 UTC (rev 291177) @@ -1,5 +1,26 @@ 2022-03-11 J Pascoe +[WebAuthn] Cancel running operations in ASA on navigation +https://bugs.webkit.org/show_bug.cgi?id=237452 +rdar://problem/89781990 + +Reviewed by Brent Fulgham. + +Pre-ASA WebAuthn calls cancel requests on navigation via calling authenticatorManager.cancelRequest +in WebPageProxy. In WebAuthn calls that go through ASA, the authenticatorManager lives in the ASA +process, so calls won't be cancelled on navigation. + +This patch attempts to cancel ongoing operations whenever a WebAuthenticatorCoordinatorProxy that +uses ASA is destroyed, effectively cancelling requests on reload or navigation. + +* Platform/spi/Cocoa/AuthenticationServicesCoreSPI.h: +* UIProcess/WebAuthentication/Cocoa/WebAuthenticatorCoordinatorProxy.mm: +* UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.cpp: +(WebKit::WebAuthenticatorCoordinatorProxy::~WebAuthenticatorCoordinatorProxy): +* UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.h: + +2022-03-11 J Pascoe + [WebAuthn] Support authenticatorSelection.residentKey ResidentKeyRequirement https://bugs.webkit.org/show_bug.cgi?id=237567 rdar://89788378 Modified: trunk/Source/WebKit/Platform/spi/Cocoa/AuthenticationServicesCoreSPI.h (291176 => 291177) --- trunk/Source/WebKit/Platform/spi/Cocoa/AuthenticationServicesCoreSPI.h 2022-03-11 17:49:14 UTC (rev 291176) +++ trunk/Source/WebKit/Platform/spi/Cocoa/AuthenticationServicesCoreSPI.h 2022-03-11 18:25:39 UTC (rev 291177) @@ -341,6 +341,8 @@ - (void)performAutoFillAuthorizationRequestsForContext:(ASCCredentialRequestContext *)context withCompletionHandler:(void (^)(id _Nullable credential, NSError * _Nullable error))completionHandler; #endif +- (void)cancelCurrentRequest; + @end @interface ASCAgentProxy : NSObject Modified: trunk/Source/WebKit/UIProcess/WebAuthentication/Cocoa/WebAuthenticatorCoordinatorProxy.mm (291176 => 291177) --- trunk/Source/WebKit/UIProcess/WebAuthentication/Cocoa/WebAuthenticatorCoordinatorProxy.mm 2022-03-11 17:49:14 UTC (rev 291176) +++ trunk/Source/WebKit/UIProcess/WebAuthentication/Cocoa/WebAuthenticatorCoordinatorProxy.mm 2022-03-11 18:25:39 UTC (rev 291177) @@ -384,11 +384,11 @@ void WebAuthenticatorCoordinatorProxy::performRequest(RetainPtr requestContext, RequestCompletionHandler&& handler) { -auto proxy = adoptNS([allocASCAgentProxyInstance() init]); +m_proxy = adoptNS([allocASCAgentProxyInstance() init]); #if PLATFORM(MAC) || PLATFORM(MACCATALYST) if ([requestContext respondsToSelector:@selector(requestStyle)] && requestContext.get().requestStyle == ASCredentialRequestStyleAutoFill) { -[proxy performAutoFillAuthorizationRequestsForContext:requestContext.get() withCompletionHandler:makeBlockPtr([weakThis = WeakPtr { *this }, proxy = WTFMove(proxy), handler = WTFMove(handler)](id credential, NSError *error) mutable { -ensureOnMainRunLoop([weakThis, handler = WTFMove(handler), proxy = WTFMove(proxy), credential = retainPtr(credential), error = retainPtr(error)] () mutable { +[m_proxy performAutoFillAuthorizationRequestsForContext:requestContext.get() withCompletionHandler:makeBlockPtr([weakThis = WeakPtr {
[webkit-changes] [291176] trunk
Title: [291176] trunk Revision 291176 Author j_pas...@apple.com Date 2022-03-11 09:49:14 -0800 (Fri, 11 Mar 2022) Log Message [WebAuthn] Support authenticatorSelection.residentKey ResidentKeyRequirement https://bugs.webkit.org/show_bug.cgi?id=237567 rdar://89788378 Reviewed by Brent Fulgham and Chris Dumez. Source/WebCore: In Web Authentication level one, relying parties can specify authenticatorSelection.residentKeyRequired, to signify they require a client-side discoverable credential. However, if the authenticator does not support client-side discoverable credentials, the rp has no way to clarify they want a client-side discoverable credential only if available. This patch implements authenticatorSelection.residentKeyRequired introduced in level 2, which has three values 'Preferred', 'Required', and 'Discouraged'. This allows RPs to create a client-side discoverable credential if possible. * CMakeLists.txt: * DerivedSources-input.xcfilelist: * DerivedSources-output.xcfilelist: * DerivedSources.make: * Modules/webauthn/PublicKeyCredentialCreationOptions.h: (WebCore::PublicKeyCredentialCreationOptions::AuthenticatorSelectionCriteria::encode const): (WebCore::PublicKeyCredentialCreationOptions::AuthenticatorSelectionCriteria::decode): * Modules/webauthn/PublicKeyCredentialCreationOptions.idl: * Modules/webauthn/ResidentKeyRequirement.h: Copied from Source/WebKit/UIProcess/API/Cocoa/_WKAuthenticatorSelectionCriteria.mm. * Modules/webauthn/ResidentKeyRequirement.idl: Copied from Source/WebKit/UIProcess/API/Cocoa/_WKAuthenticatorSelectionCriteria.mm. * Modules/webauthn/fido/AuthenticatorSupportedOptions.cpp: (fido::AuthenticatorSupportedOptions::setResidentKeyAvailability): (fido::convertToCBOR): (fido::AuthenticatorSupportedOptions::setSupportsResidentKey): Deleted. * Modules/webauthn/fido/AuthenticatorSupportedOptions.h: * Modules/webauthn/fido/DeviceRequestConverter.cpp: (fido::encodeMakeCredenitalRequestAsCBOR): * Modules/webauthn/fido/DeviceRequestConverter.h: * Modules/webauthn/fido/DeviceResponseConverter.cpp: (fido::readCTAPGetInfoResponse): * Sources.txt: * WebCore.xcodeproj/project.pbxproj: Source/WebKit: In Web Authentication level one, relying parties can specify authenticatorSelection.residentKeyRequired, to signify they require a client-side discoverable credential. However, if the authenticator does not support client-side discoverable credentials, the rp has no way to clarify they want a client-side discoverable credential only if available. This patch implements authenticatorSelection.residentKeyRequired introduced in level 2, which has three values 'Preferred', 'Required', and 'Discouraged'. This allows RPs to create a client-side discoverable credential if possible. * UIProcess/API/Cocoa/_WKAuthenticatorSelectionCriteria.h: * UIProcess/API/Cocoa/_WKAuthenticatorSelectionCriteria.mm: (-[_WKAuthenticatorSelectionCriteria init]): * UIProcess/API/Cocoa/_WKResidentKeyRequirement.h: Copied from Source/WebKit/UIProcess/API/Cocoa/_WKAuthenticatorSelectionCriteria.mm. * UIProcess/API/Cocoa/_WKWebAuthenticationPanel.mm: (residentKey): (authenticatorSelectionCriteria): (+[_WKWebAuthenticationPanel encodeMakeCredentialCommandWithClientDataJSON:options:userVerificationAvailability:]): (+[_WKWebAuthenticationPanel encodeMakeCredentialCommandWithClientDataHash:options:userVerificationAvailability:]): * UIProcess/WebAuthentication/fido/CtapAuthenticator.cpp: (WebKit::CtapAuthenticator::makeCredential): * WebKit.xcodeproj/project.pbxproj: Tools: Add API tests for authenticatorSelection.residentKey. * TestWebKitAPI/Tests/WebCore/CtapRequestTest.cpp: (TestWebKitAPI::TEST): * TestWebKitAPI/Tests/WebCore/CtapResponseTest.cpp: (TestWebKitAPI::TEST): LayoutTests: Add layout tests using residentKey field. * http/wpt/webauthn/public-key-credential-create-failure-hid.https-expected.txt: * http/wpt/webauthn/public-key-credential-create-failure-hid.https.html: * http/wpt/webauthn/public-key-credential-create-success-hid.https-expected.txt: * http/wpt/webauthn/public-key-credential-create-success-hid.https.html: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/wpt/webauthn/public-key-credential-create-failure-hid.https-expected.txt trunk/LayoutTests/http/wpt/webauthn/public-key-credential-create-failure-hid.https.html trunk/LayoutTests/http/wpt/webauthn/public-key-credential-create-success-hid.https-expected.txt trunk/LayoutTests/http/wpt/webauthn/public-key-credential-create-success-hid.https.html trunk/Source/WebCore/CMakeLists.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/DerivedSources-input.xcfilelist trunk/Source/WebCore/DerivedSources-output.xcfilelist trunk/Source/WebCore/DerivedSources.make trunk/Source/WebCore/Modules/webauthn/PublicKeyCredentialCreationOptions.h trunk/Source/WebCore/Modules/webauthn/PublicKeyCredentialCreationOptions.idl trunk/Source/WebCore/Modules/webauthn/fido/AuthenticatorSupportedOptions.cpp
[webkit-changes] [291175] trunk/Source/WebCore
Title: [291175] trunk/Source/WebCore Revision 291175 Author n...@apple.com Date 2022-03-11 09:39:43 -0800 (Fri, 11 Mar 2022) Log Message Fix WebContent jetsam that occurs when selecting text in a large e-mail https://bugs.webkit.org/show_bug.cgi?id=237698 Reviewed by Simon Fraser. When selecting text in a large e-mail in MobileMail, we often jetsam. This is due to this chain of events: 1. If the selection extends enough to start causing the content to pan (which is easy to do when zoomed in on the mail content), then AutoscrollController ends up changing the scroll position of the FrameView to perform the pan. 2. FrameView::requestScrollPositionUpdate tries to prepopulate tiles around the endpoint of the pan by calling TileController::prepopulateRect with visibleContentRect's size. The problem is that MobileMail resizes their web view (and therefore FrameView) to match the size of the content. This causes FrameView's visibleContentRect to be very large (>100k pts high for some emails). As a result, we end up prepopulating every single tile in the email, causing a huge spike in IOSurface memory usage that leads to a jetsam. To fix this, we make FrameView::requestScrollPositionUpdate act more like RenderLayerCompositor::visibleRectForLayerFlushing. In particular, on iOS, we now use exposedContentRect instead of visibleContentRect. Since exposedContentRect is derived from contentOffset/contentSize of the scroll view in the UIProcess, it's more correct and is much smaller than visibleContentRect in this case. * page/FrameView.cpp: (WebCore::FrameView::requestScrollPositionUpdate): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/FrameView.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (291174 => 291175) --- trunk/Source/WebCore/ChangeLog 2022-03-11 17:38:17 UTC (rev 291174) +++ trunk/Source/WebCore/ChangeLog 2022-03-11 17:39:43 UTC (rev 291175) @@ -1,3 +1,33 @@ +2022-03-11 Ben Nham + +Fix WebContent jetsam that occurs when selecting text in a large e-mail +https://bugs.webkit.org/show_bug.cgi?id=237698 + +Reviewed by Simon Fraser. + +When selecting text in a large e-mail in MobileMail, we often jetsam. This is due to this +chain of events: + + 1. If the selection extends enough to start causing the content to pan (which is easy +to do when zoomed in on the mail content), then AutoscrollController ends up changing +the scroll position of the FrameView to perform the pan. + 2. FrameView::requestScrollPositionUpdate tries to prepopulate tiles around the endpoint +of the pan by calling TileController::prepopulateRect with visibleContentRect's size. + +The problem is that MobileMail resizes their web view (and therefore FrameView) to match +the size of the content. This causes FrameView's visibleContentRect to be very large (>100k +pts high for some emails). As a result, we end up prepopulating every single tile in the +email, causing a huge spike in IOSurface memory usage that leads to a jetsam. + +To fix this, we make FrameView::requestScrollPositionUpdate act more like +RenderLayerCompositor::visibleRectForLayerFlushing. In particular, on iOS, we now use +exposedContentRect instead of visibleContentRect. Since exposedContentRect is derived from +contentOffset/contentSize of the scroll view in the UIProcess, it's more correct and is much +smaller than visibleContentRect in this case. + +* page/FrameView.cpp: +(WebCore::FrameView::requestScrollPositionUpdate): + 2022-03-11 Brandon Stewart Verify values before adding to hash map Modified: trunk/Source/WebCore/page/FrameView.cpp (291174 => 291175) --- trunk/Source/WebCore/page/FrameView.cpp 2022-03-11 17:38:17 UTC (rev 291174) +++ trunk/Source/WebCore/page/FrameView.cpp 2022-03-11 17:39:43 UTC (rev 291175) @@ -2722,9 +2722,15 @@ LOG_WITH_STREAM(Scrolling, stream << "FrameView::requestScrollPositionUpdate " << position); #if ENABLE(ASYNC_SCROLLING) -if (TiledBacking* tiledBacking = this->tiledBacking()) -tiledBacking->prepopulateRect(FloatRect(position, visibleContentRect().size())); +if (TiledBacking* tiledBacking = this->tiledBacking()) { +#if PLATFORM(IOS_FAMILY) +auto contentSize = exposedContentRect().size(); +#else +auto contentSize = visibleContentRect().size(); #endif +tiledBacking->prepopulateRect(FloatRect(position, contentSize)); +} +#endif #if ENABLE(ASYNC_SCROLLING) || USE(COORDINATED_GRAPHICS) if (auto scrollingCoordinator = this->scrollingCoordinator()) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [291174] trunk/Source/WebKit
Title: [291174] trunk/Source/WebKit Revision 291174 Author hironori.fu...@sony.com Date 2022-03-11 09:38:17 -0800 (Fri, 11 Mar 2022) Log Message [WinCairo] DrawingAreaWC::sendUpdateAC should keep a WeakPtr of this for the reply handler https://bugs.webkit.org/show_bug.cgi?id=237757 Reviewed by Don Olmstead. WinCairo Release was crashing by visiting some random web sites for several minutes. The reply handler in DrawingAreaWC::sendUpdateAC should check that `this` object is still alive with `weakThis`. * WebProcess/WebPage/wc/DrawingAreaWC.cpp: (WebKit::DrawingAreaWC::sendUpdateAC): Capture weakThis for the reply handler and check it. Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/WebProcess/WebPage/wc/DrawingAreaWC.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (291173 => 291174) --- trunk/Source/WebKit/ChangeLog 2022-03-11 17:31:51 UTC (rev 291173) +++ trunk/Source/WebKit/ChangeLog 2022-03-11 17:38:17 UTC (rev 291174) @@ -1,3 +1,19 @@ +2022-03-11 Fujii Hironori + +[WinCairo] DrawingAreaWC::sendUpdateAC should keep a WeakPtr of this for the reply handler +https://bugs.webkit.org/show_bug.cgi?id=237757 + +Reviewed by Don Olmstead. + +WinCairo Release was crashing by visiting some random web sites +for several minutes. The reply handler in +DrawingAreaWC::sendUpdateAC should check that `this` object is +still alive with `weakThis`. + +* WebProcess/WebPage/wc/DrawingAreaWC.cpp: +(WebKit::DrawingAreaWC::sendUpdateAC): Capture weakThis for the +reply handler and check it. + 2022-03-11 Per Arne Vollan [macOS][WP] Add required sys call to sandbox Modified: trunk/Source/WebKit/WebProcess/WebPage/wc/DrawingAreaWC.cpp (291173 => 291174) --- trunk/Source/WebKit/WebProcess/WebPage/wc/DrawingAreaWC.cpp 2022-03-11 17:31:51 UTC (rev 291173) +++ trunk/Source/WebKit/WebProcess/WebPage/wc/DrawingAreaWC.cpp 2022-03-11 17:38:17 UTC (rev 291174) @@ -253,7 +253,9 @@ RunLoop::main().dispatch([this, weakThis = WTFMove(weakThis), stateID, updateInfo = WTFMove(updateInfo)]() mutable { if (!weakThis) return; -m_remoteWCLayerTreeHostProxy->update(WTFMove(updateInfo), [this, stateID](std::optional updateInfo) { +m_remoteWCLayerTreeHostProxy->update(WTFMove(updateInfo), [this, weakThis = WTFMove(weakThis), stateID](std::optional updateInfo) { +if (!weakThis) +return; if (updateInfo && stateID == m_backingStoreStateID) { send(Messages::DrawingAreaProxy::Update(m_backingStoreStateID, WTFMove(*updateInfo))); return; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [291173] trunk/LayoutTests
Title: [291173] trunk/LayoutTests Revision 291173 Author don.olmst...@sony.com Date 2022-03-11 09:31:51 -0800 (Fri, 11 Mar 2022) Log Message Platforms implementing WebSocketTask pass hybi/close-and-server-script-exception-expected.txt https://bugs.webkit.org/show_bug.cgi?id=237727 Reviewed by Alex Christensen. The root expected.txt had a line with FAIL but all platforms that implement WebSocketTask PASS the test fully. Make this the default and remove redundant expectations and add a FAIL for Apple WebKitLegacy ports which don't implement WebSocketTask. * http/tests/websocket/tests/hybi/close-and-server-script-exception-expected.txt: * platform/glib/http/tests/websocket/tests/hybi/close-and-server-script-exception-expected.txt: Removed. * platform/ios-wk2/http/tests/websocket/tests/hybi/close-and-server-script-exception-expected.txt: Removed. * platform/mac-wk1/http/tests/websocket/tests/hybi/close-and-server-script-exception-expected.txt: Copied from LayoutTests/http/tests/websocket/tests/hybi/close-and-server-script-exception-expected.txt. * platform/mac-wk2/http/tests/websocket/tests/hybi/close-and-server-script-exception-expected.txt: Removed. * platform/win/http/tests/websocket/tests/hybi/close-and-server-script-exception-expected.txt: Copied from LayoutTests/http/tests/websocket/tests/hybi/close-and-server-script-exception-expected.txt. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/tests/websocket/tests/hybi/close-and-server-script-exception-expected.txt Added Paths trunk/LayoutTests/platform/mac-wk1/http/tests/websocket/ trunk/LayoutTests/platform/mac-wk1/http/tests/websocket/tests/ trunk/LayoutTests/platform/mac-wk1/http/tests/websocket/tests/hybi/ trunk/LayoutTests/platform/mac-wk1/http/tests/websocket/tests/hybi/close-and-server-script-exception-expected.txt trunk/LayoutTests/platform/win/http/tests/websocket/ trunk/LayoutTests/platform/win/http/tests/websocket/tests/ trunk/LayoutTests/platform/win/http/tests/websocket/tests/hybi/ trunk/LayoutTests/platform/win/http/tests/websocket/tests/hybi/close-and-server-script-exception-expected.txt Removed Paths trunk/LayoutTests/platform/glib/http/tests/websocket/tests/hybi/close-and-server-script-exception-expected.txt trunk/LayoutTests/platform/ios-wk2/http/tests/websocket/tests/hybi/close-and-server-script-exception-expected.txt trunk/LayoutTests/platform/mac-wk2/http/tests/websocket/tests/hybi/close-and-server-script-exception-expected.txt Diff Modified: trunk/LayoutTests/ChangeLog (291172 => 291173) --- trunk/LayoutTests/ChangeLog 2022-03-11 17:16:52 UTC (rev 291172) +++ trunk/LayoutTests/ChangeLog 2022-03-11 17:31:51 UTC (rev 291173) @@ -1,3 +1,21 @@ +2022-03-11 Don Olmstead + +Platforms implementing WebSocketTask pass hybi/close-and-server-script-exception-expected.txt +https://bugs.webkit.org/show_bug.cgi?id=237727 + +Reviewed by Alex Christensen. + +The root expected.txt had a line with FAIL but all platforms that implement WebSocketTask +PASS the test fully. Make this the default and remove redundant expectations and add a +FAIL for Apple WebKitLegacy ports which don't implement WebSocketTask. + +* http/tests/websocket/tests/hybi/close-and-server-script-exception-expected.txt: +* platform/glib/http/tests/websocket/tests/hybi/close-and-server-script-exception-expected.txt: Removed. +* platform/ios-wk2/http/tests/websocket/tests/hybi/close-and-server-script-exception-expected.txt: Removed. +* platform/mac-wk1/http/tests/websocket/tests/hybi/close-and-server-script-exception-expected.txt: Copied from LayoutTests/http/tests/websocket/tests/hybi/close-and-server-script-exception-expected.txt. +* platform/mac-wk2/http/tests/websocket/tests/hybi/close-and-server-script-exception-expected.txt: Removed. +* platform/win/http/tests/websocket/tests/hybi/close-and-server-script-exception-expected.txt: Copied from LayoutTests/http/tests/websocket/tests/hybi/close-and-server-script-exception-expected.txt. + 2022-03-11 Alan Bujtas [IFC][Integration] Add support for inline table Modified: trunk/LayoutTests/http/tests/websocket/tests/hybi/close-and-server-script-exception-expected.txt (291172 => 291173) --- trunk/LayoutTests/http/tests/websocket/tests/hybi/close-and-server-script-exception-expected.txt 2022-03-11 17:16:52 UTC (rev 291172) +++ trunk/LayoutTests/http/tests/websocket/tests/hybi/close-and-server-script-exception-expected.txt 2022-03-11 17:31:51 UTC (rev 291173) @@ -5,7 +5,7 @@ PASS ws on master document is ready. PASS insert a iframe, where open ws called 'socket1' PASS 'socket1' is sent to the server. unload the iframe. expect receiving 'socket1' on ws... -FAIL closedSocket should be Closed without exception. Was Closed by exception. +PASS closedSocket is "Closed without exception" PASS successfullyParsed is true TEST COMPLETE Deleted:
[webkit-changes] [291172] trunk/Source/WebCore
Title: [291172] trunk/Source/WebCore Revision 291172 Author brandonstew...@apple.com Date 2022-03-11 09:16:52 -0800 (Fri, 11 Mar 2022) Log Message Verify values before adding to hash map https://bugs.webkit.org/show_bug.cgi?id=237781 Reviewed by Simon Fraser. Verify values before adding to hash map to avoid hash map corruption. Original patch by John Cunningham * page/scrolling/ScrollSnapOffsetsInfo.cpp: (WebCore::updateSnapOffsetsForScrollableArea): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/scrolling/ScrollSnapOffsetsInfo.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (291171 => 291172) --- trunk/Source/WebCore/ChangeLog 2022-03-11 17:11:24 UTC (rev 291171) +++ trunk/Source/WebCore/ChangeLog 2022-03-11 17:16:52 UTC (rev 291172) @@ -1,3 +1,17 @@ +2022-03-11 Brandon Stewart + +Verify values before adding to hash map +https://bugs.webkit.org/show_bug.cgi?id=237781 + +Reviewed by Simon Fraser. + +Verify values before adding to hash map to avoid hash map corruption. + +Original patch by John Cunningham + +* page/scrolling/ScrollSnapOffsetsInfo.cpp: +(WebCore::updateSnapOffsetsForScrollableArea): + 2022-03-11 Antoine Quint [web-animations] shape-rendering should support discrete animation Modified: trunk/Source/WebCore/page/scrolling/ScrollSnapOffsetsInfo.cpp (291171 => 291172) --- trunk/Source/WebCore/page/scrolling/ScrollSnapOffsetsInfo.cpp 2022-03-11 17:11:24 UTC (rev 291171) +++ trunk/Source/WebCore/page/scrolling/ScrollSnapOffsetsInfo.cpp 2022-03-11 17:16:52 UTC (rev 291172) @@ -288,6 +288,9 @@ auto addOrUpdateStopForSnapOffset = [](HashMap>& offsets, LayoutUnit newOffset, ScrollSnapStop stop, bool hasSnapAreaLargerThanViewport, size_t snapAreaIndices) { +if (!offsets.isValidKey(newOffset)) +return; + auto offset = offsets.ensure(newOffset, [&] { return SnapOffset { newOffset, stop, hasSnapAreaLargerThanViewport, { } }; }); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [291171] trunk
Title: [291171] trunk Revision 291171 Author grao...@webkit.org Date 2022-03-11 09:11:24 -0800 (Fri, 11 Mar 2022) Log Message [web-animations] shape-rendering should support discrete animation https://bugs.webkit.org/show_bug.cgi?id=237767 Reviewed by Antti Koivisto. LayoutTests/imported/w3c: * web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt: * web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt: * web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt: Source/WebCore: * animation/CSSPropertyAnimation.cpp: (WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap): Modified Paths trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/animation/CSSPropertyAnimation.cpp Diff Modified: trunk/LayoutTests/imported/w3c/ChangeLog (291170 => 291171) --- trunk/LayoutTests/imported/w3c/ChangeLog 2022-03-11 17:08:15 UTC (rev 291170) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2022-03-11 17:11:24 UTC (rev 291171) @@ -1,5 +1,16 @@ 2022-03-11 Antoine Quint +[web-animations] shape-rendering should support discrete animation +https://bugs.webkit.org/show_bug.cgi?id=237767 + +Reviewed by Antti Koivisto. + +* web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt: +* web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt: +* web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt: + +2022-03-11 Antoine Quint + [web-animations] vector-effect should support discrete animation https://bugs.webkit.org/show_bug.cgi?id=237766 Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt (291170 => 291171) --- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt 2022-03-11 17:08:15 UTC (rev 291170) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt 2022-03-11 17:11:24 UTC (rev 291171) @@ -137,6 +137,9 @@ PASS shape-outside (type: discrete) has testAccumulation function PASS shape-outside: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" PASS shape-outside: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" +PASS shape-rendering (type: discrete) has testAccumulation function +PASS shape-rendering: "crispEdges" onto "optimizeSpeed" +PASS shape-rendering: "optimizeSpeed" onto "crispEdges" PASS stop-color (type: color) has testAccumulation function FAIL stop-color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 255) at 500ms expected "rgb(255, 128, 255)" but got "rgb(192, 128, 192)" PASS stop-color supports animating as color of #RGB Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt (291170 => 291171) --- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt 2022-03-11 17:08:15 UTC (rev 291170) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt 2022-03-11 17:11:24 UTC (rev 291171) @@ -137,6 +137,9 @@ PASS shape-outside (type: discrete) has testAddition function PASS shape-outside: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" PASS shape-outside: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" +PASS shape-rendering (type: discrete) has testAddition function +PASS shape-rendering: "crispEdges" onto "optimizeSpeed" +PASS shape-rendering: "optimizeSpeed" onto "crispEdges" PASS stop-color (type: color) has testAddition function FAIL stop-color supports animating as color of rgb() with overflowed from and to values assert_equals: The value should be rgb(255, 128, 255) at 500ms expected "rgb(255, 128, 255)" but got "rgb(192, 128, 192)" PASS stop-color supports animating as color of #RGB Modified:
[webkit-changes] [291170] trunk
Title: [291170] trunk Revision 291170 Author grao...@webkit.org Date 2022-03-11 09:08:15 -0800 (Fri, 11 Mar 2022) Log Message [web-animations] vector-effect should support discrete animation https://bugs.webkit.org/show_bug.cgi?id=237766 Reviewed by Antti Koivisto. LayoutTests/imported/w3c: * web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt: * web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt: * web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt: Source/WebCore: * animation/CSSPropertyAnimation.cpp: (WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap): Modified Paths trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/animation/CSSPropertyAnimation.cpp Diff Modified: trunk/LayoutTests/imported/w3c/ChangeLog (291169 => 291170) --- trunk/LayoutTests/imported/w3c/ChangeLog 2022-03-11 16:44:43 UTC (rev 291169) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2022-03-11 17:08:15 UTC (rev 291170) @@ -1,5 +1,16 @@ 2022-03-11 Antoine Quint +[web-animations] vector-effect should support discrete animation +https://bugs.webkit.org/show_bug.cgi?id=237766 + +Reviewed by Antti Koivisto. + +* web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt: +* web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt: +* web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt: + +2022-03-11 Antoine Quint + [web-animations] text-anchor should support discrete animation https://bugs.webkit.org/show_bug.cgi?id=237765 Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt (291169 => 291170) --- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt 2022-03-11 16:44:43 UTC (rev 291169) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt 2022-03-11 17:08:15 UTC (rev 291170) @@ -248,6 +248,9 @@ PASS scale with two unspecified values PASS scale with one unspecified value PASS scale +PASS vector-effect (type: discrete) has testAccumulation function +PASS vector-effect: "non-scaling-stroke" onto "none" +PASS vector-effect: "none" onto "non-scaling-stroke" PASS visibility (type: visibility) has testAccumulation function PASS visibility: onto "visible" PASS visibility: onto "hidden" Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt (291169 => 291170) --- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt 2022-03-11 16:44:43 UTC (rev 291169) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt 2022-03-11 17:08:15 UTC (rev 291170) @@ -244,6 +244,9 @@ PASS scale with two unspecified values PASS scale with one unspecified value PASS scale +PASS vector-effect (type: discrete) has testAddition function +PASS vector-effect: "non-scaling-stroke" onto "none" +PASS vector-effect: "none" onto "non-scaling-stroke" PASS visibility (type: visibility) has testAddition function PASS visibility: onto "visible" PASS visibility: onto "hidden" Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt (291169 => 291170) --- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt 2022-03-11 16:44:43 UTC (rev 291169) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt 2022-03-11 17:08:15 UTC (rev 291170) @@ -302,6 +302,10 @@ PASS scale with two unspecified values PASS scale with one unspecified value PASS scale +PASS vector-effect (type: discrete) has testInterpolation function +PASS vector-effect uses discrete animation when animating between "none" and
[webkit-changes] [291169] trunk
Title: [291169] trunk Revision 291169 Author za...@apple.com Date 2022-03-11 08:44:43 -0800 (Fri, 11 Mar 2022) Log Message [IFC][Integration] Add support for inline table https://bugs.webkit.org/show_bug.cgi?id=237498 Reviewed by Antti Koivisto. Source/WebCore: This patch enables inline tables for IFC e.g. inline content with table We treat the inline table as any other atomic inline level box with synthetic baseline. * layout/integration/LayoutIntegrationBoxTree.cpp: (WebCore::LayoutIntegration::BoxTree::buildTree): * layout/integration/LayoutIntegrationCoverage.cpp: (WebCore::LayoutIntegration::canUseForChild): * layout/integration/LayoutIntegrationLineLayout.cpp: (WebCore::LayoutIntegration::LineLayout::updateInlineTableDimensions): (WebCore::LayoutIntegration::LineLayout::updateLayoutBoxDimensions): * layout/integration/LayoutIntegrationLineLayout.h: * rendering/RenderBlockFlow.cpp: (WebCore::RenderBlockFlow::layoutModernLines): LayoutTests: * platform/mac/fast/dynamic/insert-before-table-part-in-continuation-expected.txt: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/mac/fast/dynamic/insert-before-table-part-in-continuation-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/layout/integration/LayoutIntegrationBoxTree.cpp trunk/Source/WebCore/layout/integration/LayoutIntegrationCoverage.cpp trunk/Source/WebCore/layout/integration/LayoutIntegrationLineLayout.cpp trunk/Source/WebCore/layout/integration/LayoutIntegrationLineLayout.h trunk/Source/WebCore/rendering/RenderBlockFlow.cpp Diff Modified: trunk/LayoutTests/ChangeLog (291168 => 291169) --- trunk/LayoutTests/ChangeLog 2022-03-11 16:05:37 UTC (rev 291168) +++ trunk/LayoutTests/ChangeLog 2022-03-11 16:44:43 UTC (rev 291169) @@ -1,3 +1,12 @@ +2022-03-11 Alan Bujtas + +[IFC][Integration] Add support for inline table +https://bugs.webkit.org/show_bug.cgi?id=237498 + +Reviewed by Antti Koivisto. + +* platform/mac/fast/dynamic/insert-before-table-part-in-continuation-expected.txt: + 2022-03-11 Youenn Fablet Do capture video frame downsampling in GPUProcess Modified: trunk/LayoutTests/platform/mac/fast/dynamic/insert-before-table-part-in-continuation-expected.txt (291168 => 291169) --- trunk/LayoutTests/platform/mac/fast/dynamic/insert-before-table-part-in-continuation-expected.txt 2022-03-11 16:05:37 UTC (rev 291168) +++ trunk/LayoutTests/platform/mac/fast/dynamic/insert-before-table-part-in-continuation-expected.txt 2022-03-11 16:44:43 UTC (rev 291169) @@ -59,7 +59,7 @@ RenderInline {SPAN} at (0,0) size 146x18 RenderText {#text} at (0,0) size 41x18 text run at (0,0) width 41: "Text..." - RenderInline {SPAN} at (0,0) size 1x18 + RenderInline {SPAN} at (0,0) size 0x18 RenderTable at (40,0) size 106x18 RenderTableSection (anonymous) at (0,0) size 105x18 RenderTableRow (anonymous) at (0,0) size 105x18 @@ -120,7 +120,7 @@ RenderInline {SPAN} at (0,0) size 146x18 RenderText {#text} at (0,0) size 41x18 text run at (0,0) width 41: "Text..." - RenderInline {SPAN} at (0,0) size 1x18 + RenderInline {SPAN} at (0,0) size 0x18 RenderTable at (40,0) size 106x18 RenderTableSection (anonymous) at (0,0) size 105x18 RenderTableRow {DIV} at (0,0) size 105x18 @@ -183,7 +183,7 @@ RenderInline {SPAN} at (0,0) size 146x18 RenderText {#text} at (0,0) size 41x18 text run at (0,0) width 41: "Text..." - RenderInline {SPAN} at (0,0) size 1x18 + RenderInline {SPAN} at (0,0) size 0x18 RenderTable at (40,0) size 106x18 RenderTableSection {DIV} at (0,0) size 105x18 RenderTableRow (anonymous) at (0,0) size 105x18 Modified: trunk/Source/WebCore/ChangeLog (291168 => 291169) --- trunk/Source/WebCore/ChangeLog 2022-03-11 16:05:37 UTC (rev 291168) +++ trunk/Source/WebCore/ChangeLog 2022-03-11 16:44:43 UTC (rev 291169) @@ -1,3 +1,27 @@ +2022-03-11 Alan Bujtas + +[IFC][Integration] Add support for inline table +https://bugs.webkit.org/show_bug.cgi?id=237498 + +Reviewed by Antti Koivisto. + +This patch enables inline tables for IFC +e.g. +inline content with table + +We treat the inline table as any other atomic inline level box with synthetic baseline. + +* layout/integration/LayoutIntegrationBoxTree.cpp: +(WebCore::LayoutIntegration::BoxTree::buildTree): +* layout/integration/LayoutIntegrationCoverage.cpp: +(WebCore::LayoutIntegration::canUseForChild): +* layout/integration/LayoutIntegrationLineLayout.cpp: +(WebCore::LayoutIntegration::LineLayout::updateInlineTableDimensions): +(WebCore::LayoutIntegration::LineLayout::updateLayoutBoxDimensions): +*
[webkit-changes] [291168] trunk/Source/WebKit
Title: [291168] trunk/Source/WebKit Revision 291168 Author pvol...@apple.com Date 2022-03-11 08:05:37 -0800 (Fri, 11 Mar 2022) Log Message [macOS][WP] Add required sys call to sandbox https://bugs.webkit.org/show_bug.cgi?id=237739 Reviewed by Chris Dumez. Add a rarely used, but required syscall, to the WebContent process sandbox on macOS. * WebProcess/com.apple.WebProcess.sb.in: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in Diff Modified: trunk/Source/WebKit/ChangeLog (291167 => 291168) --- trunk/Source/WebKit/ChangeLog 2022-03-11 15:33:07 UTC (rev 291167) +++ trunk/Source/WebKit/ChangeLog 2022-03-11 16:05:37 UTC (rev 291168) @@ -1,3 +1,14 @@ +2022-03-11 Per Arne Vollan + +[macOS][WP] Add required sys call to sandbox +https://bugs.webkit.org/show_bug.cgi?id=237739 + +Reviewed by Chris Dumez. + +Add a rarely used, but required syscall, to the WebContent process sandbox on macOS. + +* WebProcess/com.apple.WebProcess.sb.in: + 2022-03-11 Youenn Fablet Do capture video frame downsampling in GPUProcess Modified: trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in (291167 => 291168) --- trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in 2022-03-11 15:33:07 UTC (rev 291167) +++ trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in 2022-03-11 16:05:37 UTC (rev 291168) @@ -2000,6 +2000,7 @@ SYS_necp_open SYS_openat_nocancel SYS_proc_rlimit_control +SYS_psynch_rw_rdlock #if !PLATFORM(MAC) || __MAC_OS_X_VERSION_MIN_REQUIRED < 12 SYS_rmdir #endif @@ -2015,7 +2016,6 @@ SYS_kqueue SYS_mkdirat SYS_open_dprotected_np -SYS_psynch_rw_rdlock SYS_setrlimit SYS_ulock_wait2 #endif ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [291167] trunk
Title: [291167] trunk Revision 291167 Author you...@apple.com Date 2022-03-11 07:33:07 -0800 (Fri, 11 Mar 2022) Log Message Do capture video frame downsampling in GPUProcess https://bugs.webkit.org/show_bug.cgi?id=237316 Reviewed by Eric Carlson. Source/WebCore: To prevent some flakinesses, we now compute the video frame size from MediaSample given to rvfc metadata. We stop making requestToEnd as virtual by introducing a virtual endProducingData method. RealtimeMediaSource::end calls the new endProducingData virtual method, which is stop by default. RealtimeVideoSource::endProducingData is implemented by calling requestToEnd on the underlying source. This makes sure that ending a source will not end a related cloned source. Covered by existing tests. * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h: * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm: * platform/mediastream/RealtimeMediaSource.cpp: * platform/mediastream/RealtimeMediaSource.h: * platform/mediastream/RealtimeVideoSource.cpp: * platform/mediastream/RealtimeVideoSource.h: Source/WebKit: Instead of cloning within WebProcess, we know clone in GPUProcess for camera tracks. This allows to keep using IOSurfaces when several tracks are using the same device with different resolutions. Since display tracks are already cloned remotely, we can merge RemoteRealtimeDisplaySource and RemoteRealtimeVideoSource. We no longer need to stop the source in ~SourceProxy given we are removing ourselves from observing the source. We rename UserMediaCaptureManagerProxy end to remove and requestToEnd to endProducingData. * SourcesCocoa.txt: * UIProcess/Cocoa/UserMediaCaptureManagerProxy.cpp: * UIProcess/Cocoa/UserMediaCaptureManagerProxy.h: * UIProcess/Cocoa/UserMediaCaptureManagerProxy.messages.in: * WebKit.xcodeproj/project.pbxproj: * WebProcess/cocoa/RemoteCaptureSampleManager.cpp: * WebProcess/cocoa/RemoteCaptureSampleManager.h: * WebProcess/cocoa/RemoteRealtimeDisplaySource.cpp: Removed. * WebProcess/cocoa/RemoteRealtimeDisplaySource.h: Removed. * WebProcess/cocoa/RemoteRealtimeMediaSourceProxy.cpp: * WebProcess/cocoa/RemoteRealtimeMediaSourceProxy.h: * WebProcess/cocoa/RemoteRealtimeVideoSource.cpp: * WebProcess/cocoa/RemoteRealtimeVideoSource.h: * WebProcess/cocoa/UserMediaCaptureManager.cpp: * WebProcess/cocoa/UserMediaCaptureManager.h: LayoutTests: * fast/mediastream/getDisplayMedia-size.html: Remove potential race condition by restarting playing the stream to compute the size. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/fast/mediastream/getDisplayMedia-size.html trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp trunk/Source/WebCore/platform/mediastream/RealtimeMediaSource.h trunk/Source/WebCore/platform/mediastream/RealtimeVideoSource.cpp trunk/Source/WebCore/platform/mediastream/RealtimeVideoSource.h trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/SourcesCocoa.txt trunk/Source/WebKit/UIProcess/Cocoa/UserMediaCaptureManagerProxy.cpp trunk/Source/WebKit/UIProcess/Cocoa/UserMediaCaptureManagerProxy.h trunk/Source/WebKit/UIProcess/Cocoa/UserMediaCaptureManagerProxy.messages.in trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj trunk/Source/WebKit/WebProcess/cocoa/RemoteCaptureSampleManager.cpp trunk/Source/WebKit/WebProcess/cocoa/RemoteCaptureSampleManager.h trunk/Source/WebKit/WebProcess/cocoa/RemoteRealtimeMediaSourceProxy.cpp trunk/Source/WebKit/WebProcess/cocoa/RemoteRealtimeMediaSourceProxy.h trunk/Source/WebKit/WebProcess/cocoa/RemoteRealtimeVideoSource.cpp trunk/Source/WebKit/WebProcess/cocoa/RemoteRealtimeVideoSource.h trunk/Source/WebKit/WebProcess/cocoa/UserMediaCaptureManager.cpp trunk/Source/WebKit/WebProcess/cocoa/UserMediaCaptureManager.h Removed Paths trunk/Source/WebKit/WebProcess/cocoa/RemoteRealtimeDisplaySource.cpp trunk/Source/WebKit/WebProcess/cocoa/RemoteRealtimeDisplaySource.h Diff Modified: trunk/LayoutTests/ChangeLog (291166 => 291167) --- trunk/LayoutTests/ChangeLog 2022-03-11 14:30:09 UTC (rev 291166) +++ trunk/LayoutTests/ChangeLog 2022-03-11 15:33:07 UTC (rev 291167) @@ -1,3 +1,14 @@ +2022-03-11 Youenn Fablet + +Do capture video frame downsampling in GPUProcess +https://bugs.webkit.org/show_bug.cgi?id=237316 + + +Reviewed by Eric Carlson. + +* fast/mediastream/getDisplayMedia-size.html: +Remove potential race condition by restarting playing the stream to compute the size. + 2022-03-10 Frédéric Wang [ iOS ] editing/inserting/insert-paragraph-separator-with-inline-table-bold-crash.html is a flaky timeout Modified: trunk/LayoutTests/fast/mediastream/getDisplayMedia-size.html (291166 => 291167) ---
[webkit-changes] [291164] trunk
Title: [291164] trunk Revision 291164 Author grao...@webkit.org Date 2022-03-11 06:27:14 -0800 (Fri, 11 Mar 2022) Log Message [web-animations] stroke-linejoin should support discrete animation https://bugs.webkit.org/show_bug.cgi?id=237764 Reviewed by Antti Koivisto. LayoutTests/imported/w3c: * web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt: * web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt: * web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt: Source/WebCore: * animation/CSSPropertyAnimation.cpp: (WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap): Modified Paths trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/animation/CSSPropertyAnimation.cpp Diff Modified: trunk/LayoutTests/imported/w3c/ChangeLog (291163 => 291164) --- trunk/LayoutTests/imported/w3c/ChangeLog 2022-03-11 14:23:34 UTC (rev 291163) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2022-03-11 14:27:14 UTC (rev 291164) @@ -1,5 +1,16 @@ 2022-03-11 Antoine Quint +[web-animations] stroke-linejoin should support discrete animation +https://bugs.webkit.org/show_bug.cgi?id=237764 + +Reviewed by Antti Koivisto. + +* web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt: +* web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt: +* web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt: + +2022-03-11 Antoine Quint + [web-animations] stroke-linecap should support discrete animation https://bugs.webkit.org/show_bug.cgi?id=237763 Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt (291163 => 291164) --- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt 2022-03-11 14:23:34 UTC (rev 291163) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt 2022-03-11 14:27:14 UTC (rev 291164) @@ -155,6 +155,9 @@ PASS stroke-linecap (type: discrete) has testAccumulation function PASS stroke-linecap: "square" onto "round" PASS stroke-linecap: "round" onto "square" +PASS stroke-linejoin (type: discrete) has testAccumulation function +PASS stroke-linejoin: "miter" onto "round" +PASS stroke-linejoin: "round" onto "miter" PASS stroke-miterlimit (type: positiveNumber) has testAccumulation function PASS stroke-miterlimit: positive number PASS stroke-opacity (type: opacity) has testAccumulation function Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt (291163 => 291164) --- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt 2022-03-11 14:23:34 UTC (rev 291163) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt 2022-03-11 14:27:14 UTC (rev 291164) @@ -155,6 +155,9 @@ PASS stroke-linecap (type: discrete) has testAddition function PASS stroke-linecap: "square" onto "round" PASS stroke-linecap: "round" onto "square" +PASS stroke-linejoin (type: discrete) has testAddition function +PASS stroke-linejoin: "miter" onto "round" +PASS stroke-linejoin: "round" onto "miter" PASS stroke-miterlimit (type: positiveNumber) has testAddition function PASS stroke-miterlimit: positive number PASS stroke-opacity (type: opacity) has testAddition function Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt (291163 => 291164) --- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt 2022-03-11 14:23:34 UTC (rev 291163) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt 2022-03-11 14:27:14 UTC (rev 291164) @@ -187,6 +187,10 @@ PASS stroke-linecap uses discrete
[webkit-changes] [291165] trunk/Source
Title: [291165] trunk/Source Revision 291165 Author mikh...@igalia.com Date 2022-03-11 06:27:16 -0800 (Fri, 11 Mar 2022) Log Message Debug build failure after r246172: ASSERT_UNDER_CONSTEXPR_CONTEXT should work in constexpr contexts https://bugs.webkit.org/show_bug.cgi?id=236728 Reviewed by Michael Catanzaro. ASSERT_UNDER_CONSTEXPR_CONTEXT is calling a non-constexpr function (WTFReportAssertionFailure) when it fails, so it cannot be used for an assert not reached. This patch adds a new RELEASE_ASSERT_NOT_REACHED_UNDER_CONSTEXPR_CONTEXT() macro that calls CRASH_UNDER_CONSTEXPR_CONTEXT() instead of WTFReportAssertionFailure. No functional change. * wasm/WasmCompilationMode.h: (JSC::Wasm::isOSREntry): (JSC::Wasm::isAnyBBQ): (JSC::Wasm::isAnyOMG): Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/wasm/WasmCompilationMode.h trunk/Source/WTF/wtf/Assertions.h Diff Modified: trunk/Source/_javascript_Core/ChangeLog (291164 => 291165) --- trunk/Source/_javascript_Core/ChangeLog 2022-03-11 14:27:14 UTC (rev 291164) +++ trunk/Source/_javascript_Core/ChangeLog 2022-03-11 14:27:16 UTC (rev 291165) @@ -1,3 +1,23 @@ +2022-03-11 Mikhail R. Gadelha + +Debug build failure after r246172: ASSERT_UNDER_CONSTEXPR_CONTEXT should work in constexpr contexts +https://bugs.webkit.org/show_bug.cgi?id=236728 + +Reviewed by Michael Catanzaro. + +ASSERT_UNDER_CONSTEXPR_CONTEXT is calling a non-constexpr function (WTFReportAssertionFailure) +when it fails, so it cannot be used for an assert not reached. + +This patch adds a new RELEASE_ASSERT_NOT_REACHED_UNDER_CONSTEXPR_CONTEXT() macro +that calls CRASH_UNDER_CONSTEXPR_CONTEXT() instead of WTFReportAssertionFailure. + +No functional change. + +* wasm/WasmCompilationMode.h: +(JSC::Wasm::isOSREntry): +(JSC::Wasm::isAnyBBQ): +(JSC::Wasm::isAnyOMG): + 2022-03-10 Elliott Williams [XCBuild] Emit a discovered dependency file from offlineasm Modified: trunk/Source/_javascript_Core/wasm/WasmCompilationMode.h (291164 => 291165) --- trunk/Source/_javascript_Core/wasm/WasmCompilationMode.h 2022-03-11 14:27:14 UTC (rev 291164) +++ trunk/Source/_javascript_Core/wasm/WasmCompilationMode.h 2022-03-11 14:27:16 UTC (rev 291165) @@ -50,7 +50,7 @@ case CompilationMode::OMGForOSREntryMode: return true; } -RELEASE_ASSERT_UNDER_CONSTEXPR_CONTEXT(false); +RELEASE_ASSERT_NOT_REACHED_UNDER_CONSTEXPR_CONTEXT(); } constexpr inline bool isAnyBBQ(CompilationMode compilationMode) @@ -65,7 +65,7 @@ case CompilationMode::EmbedderEntrypointMode: return false; } -RELEASE_ASSERT_UNDER_CONSTEXPR_CONTEXT(false); +RELEASE_ASSERT_NOT_REACHED_UNDER_CONSTEXPR_CONTEXT(); } constexpr inline bool isAnyOMG(CompilationMode compilationMode) @@ -80,7 +80,7 @@ case CompilationMode::EmbedderEntrypointMode: return false; } -RELEASE_ASSERT_UNDER_CONSTEXPR_CONTEXT(false); +RELEASE_ASSERT_NOT_REACHED_UNDER_CONSTEXPR_CONTEXT(); } } } // namespace JSC::Wasm Modified: trunk/Source/WTF/wtf/Assertions.h (291164 => 291165) --- trunk/Source/WTF/wtf/Assertions.h 2022-03-11 14:27:14 UTC (rev 291164) +++ trunk/Source/WTF/wtf/Assertions.h 2022-03-11 14:27:16 UTC (rev 291165) @@ -331,6 +331,7 @@ #define ASSERT_UNDER_CONSTEXPR_CONTEXT(assertion) ((void)0) #define ASSERT_AT(assertion, file, line, function) ((void)0) #define ASSERT_NOT_REACHED(...) ((void)0) +#define ASSERT_NOT_REACHED_UNDER_CONSTEXPR_CONTEXT(...) ((void)0) #define ASSERT_NOT_IMPLEMENTED_YET() ((void)0) #define ASSERT_IMPLIES(condition, assertion) ((void)0) #define NO_RETURN_DUE_TO_ASSERT @@ -378,6 +379,10 @@ CRASH_WITH_INFO(__VA_ARGS__); \ } while (0) +#define ASSERT_NOT_REACHED_UNDER_CONSTEXPR_CONTEXT(...) do { \ +CRASH_UNDER_CONSTEXPR_CONTEXT(); \ +} while (0) + #define ASSERT_NOT_IMPLEMENTED_YET() do { \ WTFReportNotImplementedYet(__FILE__, __LINE__, WTF_PRETTY_FUNCTION); \ CRASH(); \ @@ -655,6 +660,7 @@ #define RELEASE_ASSERT_WITH_MESSAGE(assertion, ...) RELEASE_ASSERT(assertion) #define RELEASE_ASSERT_WITH_SECURITY_IMPLICATION(assertion) RELEASE_ASSERT(assertion) #define RELEASE_ASSERT_NOT_REACHED(...) CRASH_WITH_INFO(__VA_ARGS__) +#define RELEASE_ASSERT_NOT_REACHED_UNDER_CONSTEXPR_CONTEXT() CRASH_UNDER_CONSTEXPR_CONTEXT(); #define RELEASE_ASSERT_UNDER_CONSTEXPR_CONTEXT(assertion) do { \ if (UNLIKELY(!(assertion))) { \ CRASH_UNDER_CONSTEXPR_CONTEXT(); \ @@ -667,6 +673,7 @@ #define RELEASE_ASSERT_WITH_MESSAGE(assertion, ...) ASSERT_WITH_MESSAGE(assertion, __VA_ARGS__) #define RELEASE_ASSERT_WITH_SECURITY_IMPLICATION(assertion) ASSERT_WITH_SECURITY_IMPLICATION(assertion) #define RELEASE_ASSERT_NOT_REACHED() ASSERT_NOT_REACHED() +#define RELEASE_ASSERT_NOT_REACHED_UNDER_CONSTEXPR_CONTEXT() ASSERT_NOT_REACHED_UNDER_CONSTEXPR_CONTEXT() #define
[webkit-changes] [291163] trunk
Title: [291163] trunk Revision 291163 Author grao...@webkit.org Date 2022-03-11 06:23:34 -0800 (Fri, 11 Mar 2022) Log Message [web-animations] stroke-linecap should support discrete animation https://bugs.webkit.org/show_bug.cgi?id=237763 Reviewed by Antti Koivisto. LayoutTests/imported/w3c: * web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt: * web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt: * web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt: Source/WebCore: * animation/CSSPropertyAnimation.cpp: (WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap): Modified Paths trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/animation/CSSPropertyAnimation.cpp Diff Modified: trunk/LayoutTests/imported/w3c/ChangeLog (291162 => 291163) --- trunk/LayoutTests/imported/w3c/ChangeLog 2022-03-11 14:19:05 UTC (rev 291162) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2022-03-11 14:23:34 UTC (rev 291163) @@ -1,5 +1,16 @@ 2022-03-11 Antoine Quint +[web-animations] stroke-linecap should support discrete animation +https://bugs.webkit.org/show_bug.cgi?id=237763 + +Reviewed by Antti Koivisto. + +* web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt: +* web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt: +* web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt: + +2022-03-11 Antoine Quint + [web-animations] mask-repeat should support discrete animation https://bugs.webkit.org/show_bug.cgi?id=237771 Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt (291162 => 291163) --- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt 2022-03-11 14:19:05 UTC (rev 291162) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt 2022-03-11 14:23:34 UTC (rev 291163) @@ -152,6 +152,9 @@ PASS stroke-dasharray (type: discrete) has testAccumulation function PASS stroke-dasharray: "10px, 20px" onto "none" PASS stroke-dasharray: "none" onto "10px, 20px" +PASS stroke-linecap (type: discrete) has testAccumulation function +PASS stroke-linecap: "square" onto "round" +PASS stroke-linecap: "round" onto "square" PASS stroke-miterlimit (type: positiveNumber) has testAccumulation function PASS stroke-miterlimit: positive number PASS stroke-opacity (type: opacity) has testAccumulation function Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt (291162 => 291163) --- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt 2022-03-11 14:19:05 UTC (rev 291162) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt 2022-03-11 14:23:34 UTC (rev 291163) @@ -152,6 +152,9 @@ PASS stroke-dasharray (type: discrete) has testAddition function PASS stroke-dasharray: "10px, 20px" onto "none" PASS stroke-dasharray: "none" onto "10px, 20px" +PASS stroke-linecap (type: discrete) has testAddition function +PASS stroke-linecap: "square" onto "round" +PASS stroke-linecap: "round" onto "square" PASS stroke-miterlimit (type: positiveNumber) has testAddition function PASS stroke-miterlimit: positive number PASS stroke-opacity (type: opacity) has testAddition function Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt (291162 => 291163) --- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt 2022-03-11 14:19:05 UTC (rev 291162) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt 2022-03-11 14:23:34 UTC (rev 291163) @@ -183,6 +183,10 @@ PASS stroke-dasharray
[webkit-changes] [291162] trunk/Source/WebCore
Title: [291162] trunk/Source/WebCore Revision 291162 Author commit-qu...@webkit.org Date 2022-03-11 06:19:05 -0800 (Fri, 11 Mar 2022) Log Message Rename invalidation methods in SVGElement https://bugs.webkit.org/show_bug.cgi?id=237716 Patch by Rob Buis on 2022-03-11 Reviewed by Martin Robinson. Rename invalidation methods in SVGElement to be more specific. This in fact uses the naming in the underlying ElementData. * svg/SVGCircleElement.cpp: (WebCore::SVGCircleElement::svgAttributeChanged): * svg/SVGElement.cpp: (WebCore::SVGElement::commitPropertyChange): * svg/SVGElement.h: * svg/SVGElementInlines.h: (WebCore::SVGElement::setAnimatedSVGAttributesAreDirty): (WebCore::SVGElement::setPresentationalHintStyleIsDirty): (WebCore::SVGElement::invalidateSVGAttributes): Deleted. (WebCore::SVGElement::invalidateSVGPresentationalHintStyle): Deleted. * svg/SVGEllipseElement.cpp: (WebCore::SVGEllipseElement::svgAttributeChanged): * svg/SVGFilterElement.cpp: (WebCore::SVGFilterElement::svgAttributeChanged): * svg/SVGForeignObjectElement.cpp: (WebCore::SVGForeignObjectElement::svgAttributeChanged): * svg/SVGImageElement.cpp: (WebCore::SVGImageElement::svgAttributeChanged): * svg/SVGMaskElement.cpp: (WebCore::SVGMaskElement::svgAttributeChanged): * svg/SVGPatternElement.cpp: (WebCore::SVGPatternElement::svgAttributeChanged): * svg/SVGRectElement.cpp: (WebCore::SVGRectElement::svgAttributeChanged): * svg/SVGSVGElement.cpp: (WebCore::SVGSVGElement::svgAttributeChanged): * svg/properties/SVGAttributeAnimator.cpp: (WebCore::SVGAttributeAnimator::invalidateStyle): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/svg/SVGCircleElement.cpp trunk/Source/WebCore/svg/SVGElement.cpp trunk/Source/WebCore/svg/SVGElement.h trunk/Source/WebCore/svg/SVGElementInlines.h trunk/Source/WebCore/svg/SVGEllipseElement.cpp trunk/Source/WebCore/svg/SVGFilterElement.cpp trunk/Source/WebCore/svg/SVGForeignObjectElement.cpp trunk/Source/WebCore/svg/SVGImageElement.cpp trunk/Source/WebCore/svg/SVGMaskElement.cpp trunk/Source/WebCore/svg/SVGPatternElement.cpp trunk/Source/WebCore/svg/SVGRectElement.cpp trunk/Source/WebCore/svg/SVGSVGElement.cpp trunk/Source/WebCore/svg/properties/SVGAttributeAnimator.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (291161 => 291162) --- trunk/Source/WebCore/ChangeLog 2022-03-11 14:17:13 UTC (rev 291161) +++ trunk/Source/WebCore/ChangeLog 2022-03-11 14:19:05 UTC (rev 291162) @@ -1,3 +1,42 @@ +2022-03-11 Rob Buis + +Rename invalidation methods in SVGElement +https://bugs.webkit.org/show_bug.cgi?id=237716 + +Reviewed by Martin Robinson. + +Rename invalidation methods in SVGElement to be more specific. This in fact +uses the naming in the underlying ElementData. + +* svg/SVGCircleElement.cpp: +(WebCore::SVGCircleElement::svgAttributeChanged): +* svg/SVGElement.cpp: +(WebCore::SVGElement::commitPropertyChange): +* svg/SVGElement.h: +* svg/SVGElementInlines.h: +(WebCore::SVGElement::setAnimatedSVGAttributesAreDirty): +(WebCore::SVGElement::setPresentationalHintStyleIsDirty): +(WebCore::SVGElement::invalidateSVGAttributes): Deleted. +(WebCore::SVGElement::invalidateSVGPresentationalHintStyle): Deleted. +* svg/SVGEllipseElement.cpp: +(WebCore::SVGEllipseElement::svgAttributeChanged): +* svg/SVGFilterElement.cpp: +(WebCore::SVGFilterElement::svgAttributeChanged): +* svg/SVGForeignObjectElement.cpp: +(WebCore::SVGForeignObjectElement::svgAttributeChanged): +* svg/SVGImageElement.cpp: +(WebCore::SVGImageElement::svgAttributeChanged): +* svg/SVGMaskElement.cpp: +(WebCore::SVGMaskElement::svgAttributeChanged): +* svg/SVGPatternElement.cpp: +(WebCore::SVGPatternElement::svgAttributeChanged): +* svg/SVGRectElement.cpp: +(WebCore::SVGRectElement::svgAttributeChanged): +* svg/SVGSVGElement.cpp: +(WebCore::SVGSVGElement::svgAttributeChanged): +* svg/properties/SVGAttributeAnimator.cpp: +(WebCore::SVGAttributeAnimator::invalidateStyle): + 2022-03-11 Antoine Quint [web-animations] mask-repeat should support discrete animation Modified: trunk/Source/WebCore/svg/SVGCircleElement.cpp (291161 => 291162) --- trunk/Source/WebCore/svg/SVGCircleElement.cpp 2022-03-11 14:17:13 UTC (rev 291161) +++ trunk/Source/WebCore/svg/SVGCircleElement.cpp 2022-03-11 14:19:05 UTC (rev 291162) @@ -69,7 +69,7 @@ { if (PropertyRegistry::isKnownAttribute(attrName)) { InstanceInvalidationGuard guard(*this); -invalidateSVGPresentationalHintStyle(); +setPresentationalHintStyleIsDirty(); return; } Modified: trunk/Source/WebCore/svg/SVGElement.cpp (291161 => 291162) --- trunk/Source/WebCore/svg/SVGElement.cpp 2022-03-11 14:17:13 UTC (rev 291161) +++ trunk/Source/WebCore/svg/SVGElement.cpp
[webkit-changes] [291161] trunk
Title: [291161] trunk Revision 291161 Author grao...@webkit.org Date 2022-03-11 06:17:13 -0800 (Fri, 11 Mar 2022) Log Message [web-animations] mask-repeat should support discrete animation https://bugs.webkit.org/show_bug.cgi?id=237771 Reviewed by Antti Koivisto. LayoutTests/imported/w3c: * web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt: * web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt: * web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt: Source/WebCore: * animation/CSSPropertyAnimation.cpp: (WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap): * rendering/style/RenderStyle.h: (WebCore::RenderStyle::setMaskRepeatX): (WebCore::RenderStyle::setMaskRepeatY): Modified Paths trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/animation/CSSPropertyAnimation.cpp trunk/Source/WebCore/rendering/style/RenderStyle.h Diff Modified: trunk/LayoutTests/imported/w3c/ChangeLog (291160 => 291161) --- trunk/LayoutTests/imported/w3c/ChangeLog 2022-03-11 14:08:29 UTC (rev 291160) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2022-03-11 14:17:13 UTC (rev 291161) @@ -1,5 +1,16 @@ 2022-03-11 Antoine Quint +[web-animations] mask-repeat should support discrete animation +https://bugs.webkit.org/show_bug.cgi?id=237771 + +Reviewed by Antti Koivisto. + +* web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt: +* web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt: +* web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt: + +2022-03-11 Antoine Quint + [web-animations] mask-mode should support discrete animation https://bugs.webkit.org/show_bug.cgi?id=237770 Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt (291160 => 291161) --- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt 2022-03-11 14:08:29 UTC (rev 291160) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt 2022-03-11 14:17:13 UTC (rev 291161) @@ -49,6 +49,9 @@ PASS mask-origin (type: discrete) has testAccumulation function PASS mask-origin: "border-box" onto "content-box" PASS mask-origin: "content-box" onto "border-box" +PASS mask-repeat (type: discrete) has testAccumulation function +PASS mask-repeat: "round" onto "space" +PASS mask-repeat: "space" onto "round" PASS mask-type (type: discrete) has testAccumulation function PASS mask-type: "luminance" onto "alpha" PASS mask-type: "alpha" onto "luminance" Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt (291160 => 291161) --- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt 2022-03-11 14:08:29 UTC (rev 291160) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt 2022-03-11 14:17:13 UTC (rev 291161) @@ -49,6 +49,9 @@ PASS mask-origin (type: discrete) has testAddition function PASS mask-origin: "border-box" onto "content-box" PASS mask-origin: "content-box" onto "border-box" +PASS mask-repeat (type: discrete) has testAddition function +PASS mask-repeat: "round" onto "space" +PASS mask-repeat: "space" onto "round" PASS mask-type (type: discrete) has testAddition function PASS mask-type: "luminance" onto "alpha" PASS mask-type: "alpha" onto "luminance" Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt (291160 => 291161) --- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt 2022-03-11 14:08:29 UTC (rev 291160) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt 2022-03-11 14:17:13 UTC
[webkit-changes] [291160] trunk
Title: [291160] trunk Revision 291160 Author grao...@webkit.org Date 2022-03-11 06:08:29 -0800 (Fri, 11 Mar 2022) Log Message [web-animations] mask-mode should support discrete animation https://bugs.webkit.org/show_bug.cgi?id=237770 Reviewed by Antti Koivisto. LayoutTests/imported/w3c: * web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt: * web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt: * web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt: Source/WebCore: * animation/CSSPropertyAnimation.cpp: (WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap): Modified Paths trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/animation/CSSPropertyAnimation.cpp Diff Modified: trunk/LayoutTests/imported/w3c/ChangeLog (291159 => 291160) --- trunk/LayoutTests/imported/w3c/ChangeLog 2022-03-11 14:05:02 UTC (rev 291159) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2022-03-11 14:08:29 UTC (rev 291160) @@ -1,5 +1,16 @@ 2022-03-11 Antoine Quint +[web-animations] mask-mode should support discrete animation +https://bugs.webkit.org/show_bug.cgi?id=237770 + +Reviewed by Antti Koivisto. + +* web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt: +* web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt: +* web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt: + +2022-03-11 Antoine Quint + [web-animations] mask-composite should support discrete animation https://bugs.webkit.org/show_bug.cgi?id=237769 Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt (291159 => 291160) --- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt 2022-03-11 14:05:02 UTC (rev 291159) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt 2022-03-11 14:08:29 UTC (rev 291160) @@ -43,6 +43,9 @@ PASS mask-image (type: discrete) has testAccumulation function PASS mask-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" PASS mask-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" +PASS mask-mode (type: discrete) has testAccumulation function +PASS mask-mode: "luminance" onto "alpha" +PASS mask-mode: "alpha" onto "luminance" PASS mask-origin (type: discrete) has testAccumulation function PASS mask-origin: "border-box" onto "content-box" PASS mask-origin: "content-box" onto "border-box" Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt (291159 => 291160) --- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt 2022-03-11 14:05:02 UTC (rev 291159) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt 2022-03-11 14:08:29 UTC (rev 291160) @@ -43,6 +43,9 @@ PASS mask-image (type: discrete) has testAddition function PASS mask-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" PASS mask-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" +PASS mask-mode (type: discrete) has testAddition function +PASS mask-mode: "luminance" onto "alpha" +PASS mask-mode: "alpha" onto "luminance" PASS mask-origin (type: discrete) has testAddition function PASS mask-origin: "border-box" onto "content-box" PASS mask-origin: "content-box" onto "border-box" Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt (291159 => 291160) --- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt 2022-03-11 14:05:02 UTC (rev 291159) +++
[webkit-changes] [291159] trunk
Title: [291159] trunk Revision 291159 Author grao...@webkit.org Date 2022-03-11 06:05:02 -0800 (Fri, 11 Mar 2022) Log Message [web-animations] mask-composite should support discrete animation https://bugs.webkit.org/show_bug.cgi?id=237769 Reviewed by Antti Koivisto. LayoutTests/imported/w3c: * web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt: * web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt: * web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt: Source/WebCore: Refactor FillLayerFillBoxPropertyWrapper to a templatized DiscreteFillLayerPropertyWrapper which allows us to support other enum types like CompositeOperator. * animation/CSSPropertyAnimation.cpp: (WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap): Modified Paths trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/animation/CSSPropertyAnimation.cpp Diff Modified: trunk/LayoutTests/imported/w3c/ChangeLog (291158 => 291159) --- trunk/LayoutTests/imported/w3c/ChangeLog 2022-03-11 14:01:39 UTC (rev 291158) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2022-03-11 14:05:02 UTC (rev 291159) @@ -1,5 +1,16 @@ 2022-03-11 Antoine Quint +[web-animations] mask-composite should support discrete animation +https://bugs.webkit.org/show_bug.cgi?id=237769 + +Reviewed by Antti Koivisto. + +* web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt: +* web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt: +* web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt: + +2022-03-11 Antoine Quint + [web-animations] mask-type should support discrete animation https://bugs.webkit.org/show_bug.cgi?id=237768 Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt (291158 => 291159) --- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt 2022-03-11 14:01:39 UTC (rev 291158) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt 2022-03-11 14:05:02 UTC (rev 291159) @@ -37,6 +37,9 @@ PASS mask-clip (type: discrete) has testAccumulation function PASS mask-clip: "border-box" onto "content-box" PASS mask-clip: "content-box" onto "border-box" +PASS mask-composite (type: discrete) has testAccumulation function +PASS mask-composite: "subtract" onto "add" +PASS mask-composite: "add" onto "subtract" PASS mask-image (type: discrete) has testAccumulation function PASS mask-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" PASS mask-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt (291158 => 291159) --- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt 2022-03-11 14:01:39 UTC (rev 291158) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt 2022-03-11 14:05:02 UTC (rev 291159) @@ -37,6 +37,9 @@ PASS mask-clip (type: discrete) has testAddition function PASS mask-clip: "border-box" onto "content-box" PASS mask-clip: "content-box" onto "border-box" +PASS mask-composite (type: discrete) has testAddition function +PASS mask-composite: "subtract" onto "add" +PASS mask-composite: "add" onto "subtract" PASS mask-image (type: discrete) has testAddition function PASS mask-image: "url("http://localhost/test-2")" onto "url("http://localhost/test-1")" PASS mask-image: "url("http://localhost/test-1")" onto "url("http://localhost/test-2")" Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt (291158 => 291159) --- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt
[webkit-changes] [291158] trunk
Title: [291158] trunk Revision 291158 Author grao...@webkit.org Date 2022-03-11 06:01:39 -0800 (Fri, 11 Mar 2022) Log Message [web-animations] mask-type should support discrete animation https://bugs.webkit.org/show_bug.cgi?id=237768 Reviewed by Antti Koivisto. LayoutTests/imported/w3c: * web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt: * web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt: * web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt: Source/WebCore: * animation/CSSPropertyAnimation.cpp: (WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap): Modified Paths trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/animation/CSSPropertyAnimation.cpp Diff Modified: trunk/LayoutTests/imported/w3c/ChangeLog (291157 => 291158) --- trunk/LayoutTests/imported/w3c/ChangeLog 2022-03-11 13:48:53 UTC (rev 291157) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2022-03-11 14:01:39 UTC (rev 291158) @@ -1,5 +1,16 @@ 2022-03-11 Antoine Quint +[web-animations] mask-type should support discrete animation +https://bugs.webkit.org/show_bug.cgi?id=237768 + +Reviewed by Antti Koivisto. + +* web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt: +* web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt: +* web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt: + +2022-03-11 Antoine Quint + [web-animations] text-rendering should support discrete animation https://bugs.webkit.org/show_bug.cgi?id=23 Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt (291157 => 291158) --- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt 2022-03-11 13:48:53 UTC (rev 291157) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt 2022-03-11 14:01:39 UTC (rev 291158) @@ -43,6 +43,9 @@ PASS mask-origin (type: discrete) has testAccumulation function PASS mask-origin: "border-box" onto "content-box" PASS mask-origin: "content-box" onto "border-box" +PASS mask-type (type: discrete) has testAccumulation function +PASS mask-type: "luminance" onto "alpha" +PASS mask-type: "alpha" onto "luminance" PASS mix-blend-mode (type: discrete) has testAccumulation function PASS mix-blend-mode: "screen" onto "multiply" PASS mix-blend-mode: "multiply" onto "screen" Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt (291157 => 291158) --- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt 2022-03-11 13:48:53 UTC (rev 291157) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt 2022-03-11 14:01:39 UTC (rev 291158) @@ -43,6 +43,9 @@ PASS mask-origin (type: discrete) has testAddition function PASS mask-origin: "border-box" onto "content-box" PASS mask-origin: "content-box" onto "border-box" +PASS mask-type (type: discrete) has testAddition function +PASS mask-type: "luminance" onto "alpha" +PASS mask-type: "alpha" onto "luminance" PASS mix-blend-mode (type: discrete) has testAddition function PASS mix-blend-mode: "screen" onto "multiply" PASS mix-blend-mode: "multiply" onto "screen" Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt (291157 => 291158) --- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt 2022-03-11 13:48:53 UTC (rev 291157) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt 2022-03-11 14:01:39 UTC (rev 291158) @@ -54,6 +54,10 @@ PASS mask-origin uses discrete animation when animating between "content-box" and "border-box"
[webkit-changes] [291157] trunk
Title: [291157] trunk Revision 291157 Author grao...@webkit.org Date 2022-03-11 05:48:53 -0800 (Fri, 11 Mar 2022) Log Message [web-animations] text-rendering should support discrete animation https://bugs.webkit.org/show_bug.cgi?id=23 Reviewed by Antti Koivisto. LayoutTests/imported/w3c: * web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt: * web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt: * web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt: Source/WebCore: * animation/CSSPropertyAnimation.cpp: (WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap): Modified Paths trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/animation/CSSPropertyAnimation.cpp Diff Modified: trunk/LayoutTests/imported/w3c/ChangeLog (291156 => 291157) --- trunk/LayoutTests/imported/w3c/ChangeLog 2022-03-11 13:45:25 UTC (rev 291156) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2022-03-11 13:48:53 UTC (rev 291157) @@ -1,3 +1,14 @@ +2022-03-11 Antoine Quint + +[web-animations] text-rendering should support discrete animation +https://bugs.webkit.org/show_bug.cgi?id=23 + +Reviewed by Antti Koivisto. + +* web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt: +* web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt: +* web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt: + 2022-03-11 Antti Koivisto [CSS Container Queries] Only apply inline-size containment when it is allowed Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt (291156 => 291157) --- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt 2022-03-11 13:45:25 UTC (rev 291156) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-002-expected.txt 2022-03-11 13:48:53 UTC (rev 291157) @@ -180,6 +180,9 @@ PASS text-overflow (type: discrete) has testAccumulation function PASS text-overflow: "ellipsis" onto "clip" PASS text-overflow: "clip" onto "ellipsis" +PASS text-rendering (type: discrete) has testAccumulation function +PASS text-rendering: "optimizeLegibility" onto "optimizeSpeed" +PASS text-rendering: "optimizeSpeed" onto "optimizeLegibility" PASS text-shadow (type: textShadowList) has testAccumulation function PASS text-shadow: shadow PASS text-transform (type: discrete) has testAccumulation function Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt (291156 => 291157) --- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt 2022-03-11 13:45:25 UTC (rev 291156) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-002-expected.txt 2022-03-11 13:48:53 UTC (rev 291157) @@ -180,6 +180,9 @@ PASS text-overflow (type: discrete) has testAddition function PASS text-overflow: "ellipsis" onto "clip" PASS text-overflow: "clip" onto "ellipsis" +PASS text-rendering (type: discrete) has testAddition function +PASS text-rendering: "optimizeLegibility" onto "optimizeSpeed" +PASS text-rendering: "optimizeSpeed" onto "optimizeLegibility" PASS text-shadow (type: textShadowList) has testAddition function PASS text-shadow: shadow PASS text-transform (type: discrete) has testAddition function Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt (291156 => 291157) --- trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt 2022-03-11 13:45:25 UTC (rev 291156) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-002-expected.txt 2022-03-11 13:48:53 UTC (rev 291157) @@ -213,6 +213,10 @@ PASS text-overflow uses discrete animation when
[webkit-changes] [291156] trunk/Source/WebCore
Title: [291156] trunk/Source/WebCore Revision 291156 Author grao...@webkit.org Date 2022-03-11 05:45:25 -0800 (Fri, 11 Mar 2022) Log Message [web-animations] refactor discrete FontCascadeDescription to use dedicated animation wrappers https://bugs.webkit.org/show_bug.cgi?id=237776 Reviewed by Antti Koivisto. We added getters and setters on RenderStyle for properties exposed on FontCascadeDescription solely for the purpose of animation support. Instead, we add a couple of dedicated animation wrapper that removes the methods from RenderStyle and do all the work in CSSPropertyAnimation.cpp. The base class DiscreteFontDescriptionWrapper and is used for CSS properties backed by several FontCascadeDescription methods. The subclass DiscreteFontDescriptionTypedWrapper is used for CSS properties backed by a single FontCascadeDescrption method dealing with a simple type. * animation/CSSPropertyAnimation.cpp: (WebCore::DiscreteFontDescriptionWrapper::DiscreteFontDescriptionWrapper): (WebCore::DiscreteFontDescriptionWrapper::propertiesInFontDescriptionAreEqual const): (WebCore::DiscreteFontDescriptionWrapper::setPropertiesInFontDescription const): (WebCore::DiscreteFontDescriptionTypedWrapper::DiscreteFontDescriptionTypedWrapper): (WebCore::DiscreteFontDescriptionTypedWrapper::value const): (WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap): * rendering/style/RenderStyle.cpp: (WebCore::RenderStyle::setFontPalette): (WebCore::RenderStyle::setFontKerning): Deleted. (WebCore::RenderStyle::setFontFeatureSettings): Deleted. (WebCore::RenderStyle::setFontFamilies): Deleted. (WebCore::RenderStyle::setFontSynthesis): Deleted. (WebCore::RenderStyle::setFontVariantAlternates): Deleted. (WebCore::RenderStyle::setFontVariantPosition): Deleted. (WebCore::RenderStyle::setFontVariantCaps): Deleted. * rendering/style/RenderStyle.h: (WebCore::RenderStyle::fontPalette const): (WebCore::RenderStyle::fontKerning const): Deleted. (WebCore::RenderStyle::fontFeatureSettings const): Deleted. (WebCore::RenderStyle::fontFamilies const): Deleted. (WebCore::RenderStyle::fontSynthesis const): Deleted. (WebCore::RenderStyle::fontVariantAlternates const): Deleted. (WebCore::RenderStyle::fontVariantPosition const): Deleted. (WebCore::RenderStyle::fontVariantCaps const): Deleted. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/animation/CSSPropertyAnimation.cpp trunk/Source/WebCore/rendering/style/RenderStyle.cpp trunk/Source/WebCore/rendering/style/RenderStyle.h Diff Modified: trunk/Source/WebCore/ChangeLog (291155 => 291156) --- trunk/Source/WebCore/ChangeLog 2022-03-11 12:59:22 UTC (rev 291155) +++ trunk/Source/WebCore/ChangeLog 2022-03-11 13:45:25 UTC (rev 291156) @@ -1,3 +1,47 @@ +2022-03-11 Antoine Quint + +[web-animations] refactor discrete FontCascadeDescription to use dedicated animation wrappers +https://bugs.webkit.org/show_bug.cgi?id=237776 + +Reviewed by Antti Koivisto. + +We added getters and setters on RenderStyle for properties exposed on FontCascadeDescription +solely for the purpose of animation support. Instead, we add a couple of dedicated animation +wrapper that removes the methods from RenderStyle and do all the work in +CSSPropertyAnimation.cpp. + +The base class DiscreteFontDescriptionWrapper and is used for CSS properties backed by several +FontCascadeDescription methods. + +The subclass DiscreteFontDescriptionTypedWrapper is used for CSS properties backed by a single +FontCascadeDescrption method dealing with a simple type. + +* animation/CSSPropertyAnimation.cpp: +(WebCore::DiscreteFontDescriptionWrapper::DiscreteFontDescriptionWrapper): +(WebCore::DiscreteFontDescriptionWrapper::propertiesInFontDescriptionAreEqual const): +(WebCore::DiscreteFontDescriptionWrapper::setPropertiesInFontDescription const): +(WebCore::DiscreteFontDescriptionTypedWrapper::DiscreteFontDescriptionTypedWrapper): +(WebCore::DiscreteFontDescriptionTypedWrapper::value const): +(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap): +* rendering/style/RenderStyle.cpp: +(WebCore::RenderStyle::setFontPalette): +(WebCore::RenderStyle::setFontKerning): Deleted. +(WebCore::RenderStyle::setFontFeatureSettings): Deleted. +(WebCore::RenderStyle::setFontFamilies): Deleted. +(WebCore::RenderStyle::setFontSynthesis): Deleted. +(WebCore::RenderStyle::setFontVariantAlternates): Deleted. +(WebCore::RenderStyle::setFontVariantPosition): Deleted. +(WebCore::RenderStyle::setFontVariantCaps): Deleted. +* rendering/style/RenderStyle.h: +(WebCore::RenderStyle::fontPalette const): +(WebCore::RenderStyle::fontKerning const): Deleted. +(WebCore::RenderStyle::fontFeatureSettings const): Deleted. +(WebCore::RenderStyle::fontFamilies
[webkit-changes] [291154] trunk
Title: [291154] trunk Revision 291154 Author an...@apple.com Date 2022-03-11 03:51:29 -0800 (Fri, 11 Mar 2022) Log Message [CSS Container Queries] Only apply inline-size containment when it is allowed https://bugs.webkit.org/show_bug.cgi?id=237761 Reviewed by Antoine Quint. LayoutTests/imported/w3c: * web-platform-tests/css/css-contain/container-queries/ineligible-containment-expected.txt: Source/WebCore: "Giving an element inline-size containment has no effect if any of the following are true: if the element does not generate a principal box (as is the case with display: contents or display: none) if its inner display type is table if its principal box is an internal table box if its principal box is an internal ruby box or a non-atomic inline-level box" https://drafts.csswg.org/css-contain-3/#containment-inline-size * rendering/RenderBlockFlow.cpp: (WebCore::RenderBlockFlow::computeInlinePreferredLogicalWidths const): Check for valid inline-size containment. * rendering/RenderObject.cpp: (WebCore::shouldApplyInlineSizeContainment): * rendering/RenderObject.h: * style/ContainerQueryEvaluator.cpp: (WebCore::Style::ContainerQueryEvaluator::selectContainer const): Cleanups. (WebCore::Style::ContainerQueryEvaluator::evaluateSizeFeature const): Check for valid size containment for the type, evaluate to unknown if it doesn't exist. Also check layout containment. Modified Paths trunk/LayoutTests/imported/w3c/ChangeLog trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/ineligible-containment-expected.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/rendering/RenderBlockFlow.cpp trunk/Source/WebCore/rendering/RenderObject.cpp trunk/Source/WebCore/rendering/RenderObject.h trunk/Source/WebCore/style/ContainerQueryEvaluator.cpp Diff Modified: trunk/LayoutTests/imported/w3c/ChangeLog (291153 => 291154) --- trunk/LayoutTests/imported/w3c/ChangeLog 2022-03-11 11:17:29 UTC (rev 291153) +++ trunk/LayoutTests/imported/w3c/ChangeLog 2022-03-11 11:51:29 UTC (rev 291154) @@ -1,3 +1,12 @@ +2022-03-11 Antti Koivisto + +[CSS Container Queries] Only apply inline-size containment when it is allowed +https://bugs.webkit.org/show_bug.cgi?id=237761 + +Reviewed by Antoine Quint. + +* web-platform-tests/css/css-contain/container-queries/ineligible-containment-expected.txt: + 2022-03-10 Antoine Quint [web-animations] mask-origin should support discrete animation Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/ineligible-containment-expected.txt (291153 => 291154) --- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/ineligible-containment-expected.txt 2022-03-11 11:17:29 UTC (rev 291153) +++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-contain/container-queries/ineligible-containment-expected.txt 2022-03-11 11:51:29 UTC (rev 291154) @@ -3,6 +3,6 @@ Test1 -FAIL Container ineligible for containment assert_equals: expected "rgb(0, 128, 0)" but got "rgb(255, 0, 0)" -FAIL Changing containment eligibility invalidates style assert_equals: expected "rgb(0, 128, 0)" but got "rgb(255, 0, 0)" +PASS Container ineligible for containment +PASS Changing containment eligibility invalidates style Modified: trunk/Source/WebCore/ChangeLog (291153 => 291154) --- trunk/Source/WebCore/ChangeLog 2022-03-11 11:17:29 UTC (rev 291153) +++ trunk/Source/WebCore/ChangeLog 2022-03-11 11:51:29 UTC (rev 291154) @@ -1,3 +1,37 @@ +2022-03-11 Antti Koivisto + +[CSS Container Queries] Only apply inline-size containment when it is allowed +https://bugs.webkit.org/show_bug.cgi?id=237761 + +Reviewed by Antoine Quint. + +"Giving an element inline-size containment has no effect if any of the following are true: + +if the element does not generate a principal box (as is the case with display: contents or display: none) +if its inner display type is table +if its principal box is an internal table box +if its principal box is an internal ruby box or a non-atomic inline-level box" + +https://drafts.csswg.org/css-contain-3/#containment-inline-size + +* rendering/RenderBlockFlow.cpp: +(WebCore::RenderBlockFlow::computeInlinePreferredLogicalWidths const): + +Check for valid inline-size containment. + +* rendering/RenderObject.cpp: +(WebCore::shouldApplyInlineSizeContainment): +* rendering/RenderObject.h: +* style/ContainerQueryEvaluator.cpp: +(WebCore::Style::ContainerQueryEvaluator::selectContainer const): + +Cleanups. + +(WebCore::Style::ContainerQueryEvaluator::evaluateSizeFeature const): + +Check for valid size containment for the type, evaluate to unknown if it doesn't exist. +Also check layout containment. + 2022-03-11 Zan Dobersek Unreviewed isInGPUProcess() fix after
[webkit-changes] [291153] trunk/Source/WebCore
Title: [291153] trunk/Source/WebCore Revision 291153 Author commit-qu...@webkit.org Date 2022-03-11 03:17:29 -0800 (Fri, 11 Mar 2022) Log Message Unreviewed isInGPUProcess() fix after 248209@main https://bugs.webkit.org/show_bug.cgi?id=237762 Patch by Zan Dobersek on 2022-03-11 * platform/RuntimeApplicationChecks.h: (WebCore::isInGPUProcess): Define isInGPUProcess() in all cases but return false if ENABLE_GPU_PROCESS is disabled. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/RuntimeApplicationChecks.h Diff Modified: trunk/Source/WebCore/ChangeLog (291152 => 291153) --- trunk/Source/WebCore/ChangeLog 2022-03-11 10:36:36 UTC (rev 291152) +++ trunk/Source/WebCore/ChangeLog 2022-03-11 11:17:29 UTC (rev 291153) @@ -1,3 +1,12 @@ +2022-03-11 Zan Dobersek + +Unreviewed isInGPUProcess() fix after 248209@main +https://bugs.webkit.org/show_bug.cgi?id=237762 + +* platform/RuntimeApplicationChecks.h: +(WebCore::isInGPUProcess): Define isInGPUProcess() in all cases but +return false if ENABLE_GPU_PROCESS is disabled. + 2022-03-11 Antoine Quint [web-animations] refactor discrete SVG properties to use a dedicated animation wrapper Modified: trunk/Source/WebCore/platform/RuntimeApplicationChecks.h (291152 => 291153) --- trunk/Source/WebCore/platform/RuntimeApplicationChecks.h 2022-03-11 10:36:36 UTC (rev 291152) +++ trunk/Source/WebCore/platform/RuntimeApplicationChecks.h 2022-03-11 11:17:29 UTC (rev 291153) @@ -54,9 +54,14 @@ bool isInAuxiliaryProcess(); inline bool isInWebProcess() { return checkAuxiliaryProcessType(AuxiliaryProcessType::WebContent); } inline bool isInNetworkProcess() { return checkAuxiliaryProcessType(AuxiliaryProcessType::Network); } +inline bool isInGPUProcess() +{ #if ENABLE(GPU_PROCESS) -inline bool isInGPUProcess() { return checkAuxiliaryProcessType(AuxiliaryProcessType::GPU); } +return checkAuxiliaryProcessType(AuxiliaryProcessType::GPU); +#else +return false; #endif +} #if PLATFORM(COCOA) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [291151] trunk/Source/WebCore
Title: [291151] trunk/Source/WebCore Revision 291151 Author grao...@webkit.org Date 2022-03-11 01:27:16 -0800 (Fri, 11 Mar 2022) Log Message [web-animations] refactor discrete SVG properties to use a dedicated animation wrapper https://bugs.webkit.org/show_bug.cgi?id=237760 Reviewed by Antti Koivisto. We added getters and setters on RenderStyle for properties exposed on SVGRenderStyle solely for the purpose of animation support. Instead, we add a dedicated animation wrapper that removes the methods from RenderStyle and do all the work in CSSPropertyAnimation.cpp. This will be beneficial for future SVG properties with discrete animation support that are yet to be added. * animation/CSSPropertyAnimation.cpp: (WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap): * rendering/style/RenderStyle.h: (WebCore::RenderStyle::clipRule const): Deleted. (WebCore::RenderStyle::setClipRule): Deleted. (WebCore::RenderStyle::colorInterpolation const): Deleted. (WebCore::RenderStyle::setColorInterpolation): Deleted. (WebCore::RenderStyle::colorInterpolationFilters const): Deleted. (WebCore::RenderStyle::setColorInterpolationFilters): Deleted. (WebCore::RenderStyle::dominantBaseline const): Deleted. (WebCore::RenderStyle::setDominantBaseline): Deleted. (WebCore::RenderStyle::fillRule const): Deleted. (WebCore::RenderStyle::setFillRule): Deleted. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/animation/CSSPropertyAnimation.cpp trunk/Source/WebCore/rendering/style/RenderStyle.h Diff Modified: trunk/Source/WebCore/ChangeLog (291150 => 291151) --- trunk/Source/WebCore/ChangeLog 2022-03-11 09:20:28 UTC (rev 291150) +++ trunk/Source/WebCore/ChangeLog 2022-03-11 09:27:16 UTC (rev 291151) @@ -1,3 +1,30 @@ +2022-03-11 Antoine Quint + +[web-animations] refactor discrete SVG properties to use a dedicated animation wrapper +https://bugs.webkit.org/show_bug.cgi?id=237760 + +Reviewed by Antti Koivisto. + +We added getters and setters on RenderStyle for properties exposed on SVGRenderStyle +solely for the purpose of animation support. Instead, we add a dedicated animation +wrapper that removes the methods from RenderStyle and do all the work in +CSSPropertyAnimation.cpp. This will be beneficial for future SVG properties +with discrete animation support that are yet to be added. + +* animation/CSSPropertyAnimation.cpp: +(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap): +* rendering/style/RenderStyle.h: +(WebCore::RenderStyle::clipRule const): Deleted. +(WebCore::RenderStyle::setClipRule): Deleted. +(WebCore::RenderStyle::colorInterpolation const): Deleted. +(WebCore::RenderStyle::setColorInterpolation): Deleted. +(WebCore::RenderStyle::colorInterpolationFilters const): Deleted. +(WebCore::RenderStyle::setColorInterpolationFilters): Deleted. +(WebCore::RenderStyle::dominantBaseline const): Deleted. +(WebCore::RenderStyle::setDominantBaseline): Deleted. +(WebCore::RenderStyle::fillRule const): Deleted. +(WebCore::RenderStyle::setFillRule): Deleted. + 2022-03-10 Antoine Quint [web-animations] mask-origin should support discrete animation Modified: trunk/Source/WebCore/animation/CSSPropertyAnimation.cpp (291150 => 291151) --- trunk/Source/WebCore/animation/CSSPropertyAnimation.cpp 2022-03-11 09:20:28 UTC (rev 291150) +++ trunk/Source/WebCore/animation/CSSPropertyAnimation.cpp 2022-03-11 09:27:16 UTC (rev 291151) @@ -2832,6 +2832,46 @@ #endif }; +template +class DiscreteSVGPropertyWrapper final : public AnimationPropertyWrapperBase { +WTF_MAKE_FAST_ALLOCATED; +public: +DiscreteSVGPropertyWrapper(CSSPropertyID property, T (SVGRenderStyle::*getter)() const, void (SVGRenderStyle::*setter)(T)) +: AnimationPropertyWrapperBase(property) +, m_getter(getter) +, m_setter(setter) +{ +} + +private: +bool canInterpolate(const RenderStyle&, const RenderStyle&, CompositeOperation) const final { return false; } + +bool equals(const RenderStyle& a, const RenderStyle& b) const override +{ +return this->value(a) == this->value(b); +} + +void blend(RenderStyle& destination, const RenderStyle& from, const RenderStyle& to, const CSSPropertyBlendingContext& context) const override +{ +ASSERT(!context.progress || context.progress == 1.0); +(destination.accessSVGStyle().*this->m_setter)(this->value(context.progress ? to : from)); +} + +#if !LOG_DISABLED +void logBlend(const RenderStyle&, const RenderStyle&, const RenderStyle&, double) const override +{ +} +#endif + +T value(const RenderStyle& style) const +{ +return (style.svgStyle().*this->m_getter)(); +} + +T (SVGRenderStyle::*m_getter)() const; +void (SVGRenderStyle::*m_setter)(T); +}; + class
[webkit-changes] [291150] trunk/Source/WebKit
Title: [291150] trunk/Source/WebKit Revision 291150 Author dp...@igalia.com Date 2022-03-11 01:20:28 -0800 (Fri, 11 Mar 2022) Log Message [GLIB] Debian Stable & Ubuntu LTS build is failing after r291093 https://bugs.webkit.org/show_bug.cgi?id=237756 Reviewed by Carlos Garcia Campos. Use `soup_websocket_connection_send_message` when SOUP < 2.67.3. * UIProcess/Inspector/glib/RemoteInspectorHTTPServer.cpp: Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/UIProcess/Inspector/glib/RemoteInspectorHTTPServer.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (291149 => 291150) --- trunk/Source/WebKit/ChangeLog 2022-03-11 08:40:16 UTC (rev 291149) +++ trunk/Source/WebKit/ChangeLog 2022-03-11 09:20:28 UTC (rev 291150) @@ -1,3 +1,14 @@ +2022-03-11 Diego Pino Garcia + +[GLIB] Debian Stable & Ubuntu LTS build is failing after r291093 +https://bugs.webkit.org/show_bug.cgi?id=237756 + +Reviewed by Carlos Garcia Campos. + +Use `soup_websocket_connection_send_message` when SOUP < 2.67.3. + +* UIProcess/Inspector/glib/RemoteInspectorHTTPServer.cpp: + 2022-03-11 Tim Horton Disable WebGL and DOM GPU process when some dependencies are unavailable Modified: trunk/Source/WebKit/UIProcess/Inspector/glib/RemoteInspectorHTTPServer.cpp (291149 => 291150) --- trunk/Source/WebKit/UIProcess/Inspector/glib/RemoteInspectorHTTPServer.cpp 2022-03-11 08:40:16 UTC (rev 291149) +++ trunk/Source/WebKit/UIProcess/Inspector/glib/RemoteInspectorHTTPServer.cpp 2022-03-11 09:20:28 UTC (rev 291150) @@ -144,8 +144,12 @@ auto utf8 = message.utf8(); // Soup is going to copy the data immediately, so we can use g_bytes_new_static() here to avoid more data copies. +#if SOUP_CHECK_VERSION(2, 67, 3) GRefPtr bytes = adoptGRef(g_bytes_new_static(utf8.data(), utf8.length())); soup_websocket_connection_send_message(webSocketConnection, SOUP_WEBSOCKET_DATA_TEXT, bytes.get()); +#else +soup_websocket_connection_send_text(webSocketConnection, CString(reinterpret_cast(utf8.data()), utf8.length()).data()); +#endif } void RemoteInspectorHTTPServer::targetDidClose(uint64_t connectionID, uint64_t targetID) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [291149] trunk/Source/WebKit
Title: [291149] trunk/Source/WebKit Revision 291149 Author timothy_hor...@apple.com Date 2022-03-11 00:40:16 -0800 (Fri, 11 Mar 2022) Log Message Disable WebGL and DOM GPU process when some dependencies are unavailable https://bugs.webkit.org/show_bug.cgi?id=237700 Reviewed by Eric Carlson. * Shared/WebPreferencesDefaultValues.cpp: (WebKit::defaultUseGPUProcessForDOMRenderingEnabled): (WebKit::defaultUseGPUProcessForWebGLEnabled): Modified Paths trunk/Source/WebKit/ChangeLog trunk/Source/WebKit/Shared/WebPreferencesDefaultValues.cpp Diff Modified: trunk/Source/WebKit/ChangeLog (291148 => 291149) --- trunk/Source/WebKit/ChangeLog 2022-03-11 07:37:50 UTC (rev 291148) +++ trunk/Source/WebKit/ChangeLog 2022-03-11 08:40:16 UTC (rev 291149) @@ -1,3 +1,15 @@ +2022-03-11 Tim Horton + +Disable WebGL and DOM GPU process when some dependencies are unavailable +https://bugs.webkit.org/show_bug.cgi?id=237700 + + +Reviewed by Eric Carlson. + +* Shared/WebPreferencesDefaultValues.cpp: +(WebKit::defaultUseGPUProcessForDOMRenderingEnabled): +(WebKit::defaultUseGPUProcessForWebGLEnabled): + 2022-03-10 Sihui Liu Abandoned memory in NetworkStorageManager::m_temporaryBlobPathsByConnection Modified: trunk/Source/WebKit/Shared/WebPreferencesDefaultValues.cpp (291148 => 291149) --- trunk/Source/WebKit/Shared/WebPreferencesDefaultValues.cpp 2022-03-11 07:37:50 UTC (rev 291148) +++ trunk/Source/WebKit/Shared/WebPreferencesDefaultValues.cpp 2022-03-11 08:40:16 UTC (rev 291149) @@ -172,7 +172,11 @@ bool defaultUseGPUProcessForDOMRenderingEnabled() { +#if HAVE(UIKIT_WEBKIT_INTERNALS) +return false; +#else return isFeatureFlagEnabled("gpu_process_dom_rendering", false); +#endif } bool defaultUseGPUProcessForMediaEnabled() @@ -188,6 +192,9 @@ bool defaultUseGPUProcessForWebGLEnabled() { +#if HAVE(UIKIT_WEBKIT_INTERNALS) +return false; +#else #if (ENABLE(GPU_PROCESS_BY_DEFAULT) && PLATFORM(IOS_FAMILY)) || PLATFORM(WIN) bool defaultValue = true; #else @@ -194,6 +201,7 @@ bool defaultValue = false; #endif return isFeatureFlagEnabled("gpu_process_webgl", defaultValue); +#endif } #endif // ENABLE(GPU_PROCESS) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes