[webkit-changes] [291206] trunk/Source/WebKit

2022-03-11 Thread commit-queue
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

2022-03-11 Thread simon . fraser
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

2022-03-11 Thread pvollan
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

2022-03-11 Thread cdumez
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

2022-03-11 Thread simon . fraser
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

2022-03-11 Thread wenson_hsieh
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

2022-03-11 Thread commit-queue
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

2022-03-11 Thread ysuzuki
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

2022-03-11 Thread nmouchtaris
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

2022-03-11 Thread j_pascoe
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/

2022-03-11 Thread kocsen_chung
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

2022-03-11 Thread aperez
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

2022-03-11 Thread jbedard
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

2022-03-11 Thread emw
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

2022-03-11 Thread simon . fraser
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

2022-03-11 Thread pvollan
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

2022-03-11 Thread kocsen_chung
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

2022-03-11 Thread kocsen_chung
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

2022-03-11 Thread jbedard
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

2022-03-11 Thread jond
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

2022-03-11 Thread msaboff
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

2022-03-11 Thread zalan
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

2022-03-11 Thread cdumez
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

2022-03-11 Thread emw
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/

2022-03-11 Thread repstein
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

2022-03-11 Thread simon . fraser
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

2022-03-11 Thread j_pascoe
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

2022-03-11 Thread j_pascoe
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

2022-03-11 Thread nham
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

2022-03-11 Thread Hironori . Fujii
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

2022-03-11 Thread don . olmstead
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

2022-03-11 Thread brandonstewart
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

2022-03-11 Thread graouts
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

2022-03-11 Thread graouts
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

2022-03-11 Thread zalan
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

2022-03-11 Thread pvollan
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

2022-03-11 Thread youenn
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

2022-03-11 Thread graouts
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

2022-03-11 Thread mikhail
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

2022-03-11 Thread graouts
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

2022-03-11 Thread commit-queue
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

2022-03-11 Thread graouts
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

2022-03-11 Thread graouts
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

2022-03-11 Thread graouts
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

2022-03-11 Thread graouts
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

2022-03-11 Thread graouts
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

2022-03-11 Thread graouts
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

2022-03-11 Thread antti
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

2022-03-11 Thread commit-queue
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

2022-03-11 Thread graouts
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

2022-03-11 Thread dpino
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

2022-03-11 Thread timothy_horton
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