[webkit-changes] [WebKit/WebKit] 3b443f: [UI-side compositing] Banners on reddit.com flicker

2023-03-28 Thread Richard Robinson
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 3b443fc4dfc0c82fdfc5b03256ee52bc5360259d
  
https://github.com/WebKit/WebKit/commit/3b443fc4dfc0c82fdfc5b03256ee52bc5360259d
  Author: Richard Robinson 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M 
Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp

  Log Message:
  ---
  [UI-side compositing] Banners on reddit.com flicker
https://bugs.webkit.org/show_bug.cgi?id=254644
rdar://104192825

Reviewed by Simon Fraser.

With UI-side compositing enabled, the `m_needsApplyLayerPositionsAfterCommit` 
flag has yet to be
properly hooked up, causing it to always be `false`. As a result, 
`ScrollingTree::applyLayerPositionsAfterCommit`
did not actually do anything.

The flickering is because the `fixed` element's layer position is never 
properly updated, since the
function that would have done that, `ScrollingTree::applyLayerPositions`, is 
never actually called
from within `ScrollingTree::applyLayerPositionsAfterCommit` due to the reasons 
mentioned above.

This PR fixes this temporarily by making sure the flag is always set so that 
`ScrollingTree::applyLayerPositions`
is called properly. Once UI-side compositing scrolling synchronization is 
implemented, the flag
will be set in a more appropriate place.

* Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp:
(WebKit::RemoteScrollingCoordinatorProxy::applyScrollingTreeLayerPositionsAfterCommit):

Canonical link: https://commits.webkit.org/262261@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] dd5da1: Only CPU(X86_64) should do constant blinding.

2023-03-28 Thread Commit Queue
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: dd5da1dca9b6eb959a008827c4fbad61c694652e
  
https://github.com/WebKit/WebKit/commit/dd5da1dca9b6eb959a008827c4fbad61c694652e
  Author: Mark Lam 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/JavaScriptCore/assembler/MacroAssembler.h

  Log Message:
  ---
  Only CPU(X86_64) should do constant blinding.
https://bugs.webkit.org/show_bug.cgi?id=254634


Reviewed by Justin Michaud and Yusuke Suzuki.

It is not relevant for CPUs with fixed alignment instruction sets.

* Source/JavaScriptCore/assembler/MacroAssembler.h:
(JSC::MacroAssembler::shouldBlind):

Canonical link: https://commits.webkit.org/262260@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] efb63c: [ iOS, macOS ] imported/w3c/web-platform-tests/mat...

2023-03-28 Thread Alan Baradlay
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: efb63c883136d42cc27a74a44ffe62bebf4c0e99
  
https://github.com/WebKit/WebKit/commit/efb63c883136d42cc27a74a44ffe62bebf4c0e99
  Author: Alan Baradlay 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M 
LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-002-expected.txt
M 
LayoutTests/platform/mac-ventura/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-002-expected.txt
M 
LayoutTests/platform/mac-wk1/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-002-expected.txt
M 
LayoutTests/platform/mac-wk2/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-002-expected.txt

  Log Message:
  ---
  [ iOS, macOS ] 
imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-002.html
 is a constant text failure.
https://bugs.webkit.org/show_bug.cgi?id=254621

Unreviewed rebaselining.

* 
LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-002-expected.txt:
* 
LayoutTests/platform/mac-ventura/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-002-expected.txt:
* 
LayoutTests/platform/mac-wk1/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-002-expected.txt:
* 
LayoutTests/platform/mac-wk2/imported/w3c/web-platform-tests/mathml/relations/html5-tree/dynamic-childlist-002-expected.txt:

Canonical link: https://commits.webkit.org/262259@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] d4f1d3: [UI-side compositing] Add logging for painting new...

2023-03-28 Thread Nikos Mouchtaris
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: d4f1d3db3f612fc1283129792b44882a657f7fa5
  
https://github.com/WebKit/WebKit/commit/d4f1d3db3f612fc1283129792b44882a657f7fa5
  Author: Nikolaos Mouchtaris 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebCore/platform/graphics/ca/TileController.cpp
M Source/WebCore/platform/graphics/ca/TileController.h
M Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeHost.h
M Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeNode.h
M 
Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeScrollingPerformanceData.h
M 
Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeScrollingPerformanceData.mm
M 
Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp
M Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.h
M 
Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteLayerTreeDrawingAreaProxyMac.mm
M Source/WebKit/UIProcess/WebPageProxy.cpp
M Source/WebKit/UIProcess/WebPageProxy.h
M 
Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemoteTiledBacking.cpp

  Log Message:
  ---
  [UI-side compositing] Add logging for painting new tile for ScrollPerf
https://bugs.webkit.org/show_bug.cgi?id=254050
rdar://106775893

Reviewed by Simon Fraser.

Use iOS's RemoteLayerTreeScrollingPerformanceData to calculate blank tiles
for new tile creation and scrolling. Log all of the accumulated log events
when the WebPageProxy is closed. Also, disable the logging on TileController
to prevent double logging new tile events in the web process by having
PlatformCALayerRemoteTiledBacking set a bool.

* Source/WebCore/page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::mainFrameScrollPosition const):
* Source/WebCore/platform/graphics/ca/TileController.cpp:
(WebCore::TileController::TileController):
(WebCore::TileController::logFilledVisibleFreshTile):
* Source/WebCore/platform/graphics/ca/TileController.h:
* Source/WebCore/platform/graphics/ca/TileGrid.cpp:
(WebCore::TileGrid::platformCALayerPaintContents):
* Source/WebKit/Shared/RemoteLayerTree/RemoteLayerTreePropertyApplier.mm:
(WebKit::gatherPlatformLayerList):
(WebKit::RemoteLayerTreePropertyApplier::applyPropertiesToLayer):
* Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeDrawingAreaProxy.h:
(WebKit::RemoteLayerTreeDrawingAreaProxy::lastViewportRect const):
* Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeDrawingAreaProxy.mm:
(WebKit::RemoteLayerTreeDrawingAreaProxy::willCommitLayerTree):
(WebKit::RemoteLayerTreeDrawingAreaProxy::setViewportRect):
(WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree):
* Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeNode.h:
(WebKit::RemoteLayerTreeNode::hadFirstPaint):
* Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp:
(WebKit::RemoteScrollingCoordinatorProxy::reportFilledVisibleFreshTile):
(WebKit::RemoteScrollingCoordinatorProxy::setScrollingPerformanceTestingEnabled 
const):
(WebKit::RemoteScrollingCoordinatorProxy::scrollingPerformanceTestingEnabled 
const):
* Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.h:

Canonical link: https://commits.webkit.org/262258@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] b70307: [Windows] Fix loading modules from JSC shell

2023-03-28 Thread Stephan Szabo
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b7030754b74c7c062b2d1a176c05900bbf7ecaa5
  
https://github.com/WebKit/WebKit/commit/b7030754b74c7c062b2d1a176c05900bbf7ecaa5
  Author: Stephan Szabo 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/JavaScriptCore/jsc.cpp

  Log Message:
  ---
  [Windows] Fix loading modules from JSC shell
https://bugs.webkit.org/show_bug.cgi?id=254606

Reviewed by Ross Kirsling.

We try to use a \\?\ path for loading modules in
the shell, but this doesn't seem to work with
forward slash directory separators.

\\?\D:\foo\bar can work but \\?\D:/foo/bar
appears to not do so. The docs imply that using
the prefix prevents any of the normal string
manipulation that would go on.

* Source/JavaScriptCore/jsc.cpp:
(fetchModuleFromLocalFileSystem):

Canonical link: https://commits.webkit.org/262257@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 613982: Disconnect WKView from its WebViewImpl

2023-03-28 Thread Alex Christensen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 613982b34447b24cb85747efbf2427a320838f12
  
https://github.com/WebKit/WebKit/commit/613982b34447b24cb85747efbf2427a320838f12
  Author: Alex Christensen 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebKit/UIProcess/API/Cocoa/WKView.h
M Source/WebKit/UIProcess/API/mac/WKView.mm

  Log Message:
  ---
  Disconnect WKView from its WebViewImpl
https://bugs.webkit.org/show_bug.cgi?id=254570
rdar://10720

Reviewed by Tim Horton.

WKView.h is proving difficult to remove.
It's included by several internal projects that don't use it any more.
The ObjC class's existence is necessary for performance testing on Ventura.
We don't need to completely remove it.  Just disconnect it from its
WebViewImpl as a first step, while keeping all the ObjC selectors existing
right where they are.  Nothing uses it any more, and this should minimize
other breakage.

* Source/WebKit/UIProcess/API/Cocoa/WKView.h:
* Source/WebKit/UIProcess/API/mac/WKView.mm:
(-[WKView initWithFrame:processGroup:browsingContextGroup:]):
(-[WKView initWithFrame:processGroup:browsingContextGroup:relatedToView:]):
(-[WKView dealloc]):
(-[WKView browsingContextController]):
(-[WKView setDrawsBackground:]):
(-[WKView drawsBackground]):
(-[WKView _backgroundColor]):
(-[WKView _setBackgroundColor:]):
(-[WKView setDrawsTransparentBackground:]):
(-[WKView drawsTransparentBackground]):
(-[WKView acceptsFirstResponder]):
(-[WKView becomeFirstResponder]):
(-[WKView resignFirstResponder]):
(-[WKView viewWillStartLiveResize]):
(-[WKView viewDidEndLiveResize]):
(-[WKView intrinsicContentSize]):
(-[WKView prepareContentInRect:]):
(-[WKView setFrameSize:]):
(-[WKView _setSemanticContext:]):
(-[WKView ALLOW_DEPRECATED_IMPLEMENTATIONS_END]):
(-[WKView writeSelectionToPasteboard:types:]):
(-[WKView centerSelectionInVisibleArea:]):
(-[WKView validRequestorForSendType:returnType:]):
(-[WKView readSelectionFromPasteboard:]):
(-[WKView changeFont:]):
(-[WKView validateUserInterfaceItem:]):
(-[WKView startSpeaking:]):
(-[WKView stopSpeaking:]):
(-[WKView showGuessPanel:]):
(-[WKView checkSpelling:]):
(-[WKView changeSpelling:]):
(-[WKView toggleContinuousSpellChecking:]):
(-[WKView isGrammarCheckingEnabled]):
(-[WKView setGrammarCheckingEnabled:]):
(-[WKView toggleGrammarChecking:]):
(-[WKView toggleAutomaticSpellingCorrection:]):
(-[WKView orderFrontSubstitutionsPanel:]):
(-[WKView toggleSmartInsertDelete:]):
(-[WKView isAutomaticQuoteSubstitutionEnabled]):
(-[WKView setAutomaticQuoteSubstitutionEnabled:]):
(-[WKView toggleAutomaticQuoteSubstitution:]):
(-[WKView isAutomaticDashSubstitutionEnabled]):
(-[WKView setAutomaticDashSubstitutionEnabled:]):
(-[WKView toggleAutomaticDashSubstitution:]):
(-[WKView isAutomaticLinkDetectionEnabled]):
(-[WKView setAutomaticLinkDetectionEnabled:]):
(-[WKView toggleAutomaticLinkDetection:]):
(-[WKView isAutomaticTextReplacementEnabled]):
(-[WKView setAutomaticTextReplacementEnabled:]):
(-[WKView toggleAutomaticTextReplacement:]):
(-[WKView uppercaseWord:]):
(-[WKView lowercaseWord:]):
(-[WKView capitalizeWord:]):
(-[WKView _wantsKeyDownForEvent:]):
(-[WKView scrollWheel:]):
(-[WKView swipeWithEvent:]):
(-[WKView mouseDown:]):
(-[WKView mouseUp:]):
(-[WKView mouseDragged:]):
(-[WKView otherMouseDown:]):
(-[WKView otherMouseDragged:]):
(-[WKView otherMouseUp:]):
(-[WKView rightMouseDown:]):
(-[WKView rightMouseDragged:]):
(-[WKView rightMouseUp:]):
(-[WKView pressureChangeWithEvent:]):
(-[WKView acceptsFirstMouse:]):
(-[WKView shouldDelayWindowOrderingForEvent:]):
(-[WKView doCommandBySelector:]):
(-[WKView insertText:]):
(-[WKView insertText:replacementRange:]):
(-[WKView inputContext]):
(-[WKView performKeyEquivalent:]):
(-[WKView keyUp:]):
(-[WKView keyDown:]):
(-[WKView flagsChanged:]):
(-[WKView setMarkedText:selectedRange:replacementRange:]):
(-[WKView unmarkText]):
(-[WKView selectedRange]):
(-[WKView hasMarkedText]):
(-[WKView markedRange]):
(-[WKView attributedSubstringForProposedRange:actualRange:]):
(-[WKView characterIndexForPoint:]):
(-[WKView firstRectForCharacterRange:actualRange:]):
(-[WKView selectedRangeWithCompletionHandler:]):
(-[WKView markedRangeWithCompletionHandler:]):
(-[WKView hasMarkedTextWithCompletionHandler:]):
(-[WKView attributedSubstringForProposedRange:completionHandler:]):
(-[WKView firstRectForCharacterRange:completionHandler:]):
(-[WKView characterIndexForPoint:completionHandler:]):
(-[WKView validAttributesForMarkedText]):
(-[WKView draggedImage:endedAt:operation:]):
(-[WKView draggingEntered:]):
(-[WKView draggingUpdated:]):
(-[WKView draggingExited:]):
(-[WKView prepareForDragOperation:]):
(-[WKView performDragOperation:]):
(-[WKView _hitTest:dragTypes:]):
(-[WKView _windowResizeMouseLocationIsInVisibleScrollerThumb:]):
(-[WKView viewWillMoveToWindow:]):
(-[WKView viewDidMoveToWindow]):
(-[WKView drawRect:]):
(-[WKView isOpaque]):
(-[WKView mouseDownCanMoveWindow]):
(-[WKView viewDidH

[webkit-changes] [WebKit/WebKit] 77c2d1: [UI side compositing] fast/attachment/mac/wide-att...

2023-03-28 Thread Ryosuke Niwa
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 77c2d193bed0131013e3d08e2c07cf8db662e613
  
https://github.com/WebKit/WebKit/commit/77c2d193bed0131013e3d08e2c07cf8db662e613
  Author: Ryosuke Niwa 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M LayoutTests/fast/attachment/mac/wide-attachment-element-gpu-process.html

  Log Message:
  ---
  [UI side compositing] 
fast/attachment/mac/wide-attachment-element-gpu-process.html fails
https://bugs.webkit.org/show_bug.cgi?id=254629

Reviewed by Wenson Hsieh.

Add a pixel tolerance to allow anti-aliasing difference in the attachment 
images.

* LayoutTests/fast/attachment/mac/wide-attachment-element-gpu-process.html:

Canonical link: https://commits.webkit.org/262255@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] b25f01: [UI side compositing] attachment-element-gpu-proce...

2023-03-28 Thread Ryosuke Niwa
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b25f010caa3bd54b0bc43dec41059ac40e21db48
  
https://github.com/WebKit/WebKit/commit/b25f010caa3bd54b0bc43dec41059ac40e21db48
  Author: Ryosuke Niwa 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M LayoutTests/fast/attachment/mac/attachment-element-gpu-process.html

  Log Message:
  ---
  [UI side compositing] attachment-element-gpu-process.html fails
https://bugs.webkit.org/show_bug.cgi?id=254628

Reviewed by Wenson Hsieh.

Add a pixel tolerance to allow anti-aliasing difference in the attachment 
images.

* LayoutTests/fast/attachment/mac/attachment-element-gpu-process.html:

Canonical link: https://commits.webkit.org/262254@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] f0a92c: [UI-side compositing] Have ScrollerPairMac::setScr...

2023-03-28 Thread Nikos Mouchtaris
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f0a92ce4e218659f9faaa992bd2b72fdbc9fb8b1
  
https://github.com/WebKit/WebKit/commit/f0a92ce4e218659f9faaa992bd2b72fdbc9fb8b1
  Author: Nikolaos Mouchtaris 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebCore/page/scrolling/mac/ScrollerMac.h
M Source/WebCore/page/scrolling/mac/ScrollerMac.mm
M Source/WebCore/page/scrolling/mac/ScrollerPairMac.mm

  Log Message:
  ---
  [UI-side compositing] Have ScrollerPairMac::setScrollbarStyle update the 
NSScrollerImp style
https://bugs.webkit.org/show_bug.cgi?id=254619
rdar://107334257

Reviewed by Simon Fraser.

Have ScrollerPairMac::setScrollbarStyle update the NSScrollerImps on the 
individual
scroller classes.

* Source/WebCore/page/scrolling/mac/ScrollerMac.h:
* Source/WebCore/page/scrolling/mac/ScrollerMac.mm:
(WebCore::ScrollerMac::updateScrollbarStyle):
* Source/WebCore/page/scrolling/mac/ScrollerPairMac.mm:
(WebCore::ScrollerPairMac::setScrollbarStyle):

Canonical link: https://commits.webkit.org/262253@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] e233ab: Use smart pointers for ScriptExecutionContext and ...

2023-03-28 Thread Chirag Shah
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e233ab4568b25c084d63488de1ea116928aadc13
  
https://github.com/WebKit/WebKit/commit/e233ab4568b25c084d63488de1ea116928aadc13
  Author: Chirag M Shah 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WTF/wtf/CheckedRef.h
M Source/WTF/wtf/Ref.h
M Source/WTF/wtf/RefPtr.h
M Source/WTF/wtf/WeakPtr.h
M 
Source/WebCore/Modules/websockets/ThreadableWebSocketChannelClientWrapper.cpp
M 
Source/WebCore/Modules/websockets/ThreadableWebSocketChannelClientWrapper.h
M Source/WebCore/bindings/js/ScriptModuleLoader.cpp
M Source/WebCore/bindings/js/ScriptModuleLoader.h
M Source/WebCore/dom/RejectedPromiseTracker.cpp
M Source/WebCore/dom/RejectedPromiseTracker.h
M Source/WebCore/dom/ScriptExecutionContext.h
M Source/WebCore/html/canvas/CanvasRenderingContext.h
M Source/WebCore/inspector/InspectorCanvas.cpp
M Source/WebCore/inspector/InspectorCanvas.h
M Source/WebCore/page/DOMTimer.cpp
M Source/WebCore/page/DOMTimer.h

  Log Message:
  ---
  Use smart pointers for ScriptExecutionContext and CanvasRenderingContext 
(m_context)
https://bugs.webkit.org/show_bug.cgi?id=254347
rdar://107142041

Reviewed by Chris Dumez and Ryosuke Niwa.

This change adopts Ref's for m_context member variable to align with the
smart pointer usage guidelines.

* Source/WTF/wtf/CheckedRef.h:
(WTF::downcast):
* Source/WTF/wtf/Ref.h:
(WTF::downcast):
* Source/WTF/wtf/RefPtr.h:
(WTF::downcast):
* Source/WTF/wtf/WeakPtr.h:
(WTF::downcast):
* Source/WebCore/Modules/websockets/ThreadableWebSocketChannelClientWrapper.cpp:
(WebCore::ThreadableWebSocketChannelClientWrapper::processPendingTasks):
* Source/WebCore/Modules/websockets/ThreadableWebSocketChannelClientWrapper.h:
* Source/WebCore/bindings/js/ScriptModuleLoader.cpp:
(WebCore::ScriptModuleLoader::shadowRealmLoader const):
(WebCore::ScriptModuleLoader::resolve):
(WebCore::ScriptModuleLoader::fetch):
(WebCore::ScriptModuleLoader::moduleURL):
(WebCore::ScriptModuleLoader::responseURLFromRequestURL):
(WebCore::ScriptModuleLoader::evaluate):
(WebCore::ScriptModuleLoader::importModule):
(WebCore::ScriptModuleLoader::notifyFinished):
* Source/WebCore/bindings/js/ScriptModuleLoader.h:
* Source/WebCore/dom/RejectedPromiseTracker.cpp:
(WebCore::RejectedPromiseTracker::promiseHandled):
(WebCore::RejectedPromiseTracker::processQueueSoon):
(WebCore::RejectedPromiseTracker::reportUnhandledRejections):
(WebCore::RejectedPromiseTracker::reportRejectionHandled):
* Source/WebCore/dom/RejectedPromiseTracker.h:
* Source/WebCore/dom/ScriptExecutionContext.h:
* Source/WebCore/html/canvas/CanvasRenderingContext.h:
* Source/WebCore/inspector/InspectorCanvas.cpp:
(WebCore::InspectorCanvas::InspectorCanvas):
(WebCore::InspectorCanvas::canvasElement const):
(WebCore::InspectorCanvas::scriptExecutionContext const):
(WebCore::InspectorCanvas::resolveContext const):
(WebCore:: const):
(WebCore::InspectorCanvas::canvasChanged):
(WebCore::InspectorCanvas::resetRecordingData):
(WebCore::InspectorCanvas::buildObjectForCanvas):
(WebCore::InspectorCanvas::buildInitialState):
* Source/WebCore/inspector/InspectorCanvas.h:
* Source/WebCore/page/DOMTimer.cpp:
(WebCore::DOMTimerFireState::DOMTimerFireState):
(WebCore::DOMTimerFireState::~DOMTimerFireState):

Canonical link: https://commits.webkit.org/262252@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] d6c454: Remove redundant quirk on ignoring centered text w...

2023-03-28 Thread Alan Baradlay
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: d6c4544acc9602b763d2fc0ffdacea5730bcfab1
  
https://github.com/WebKit/WebKit/commit/d6c4544acc9602b763d2fc0ffdacea5730bcfab1
  Author: Alan Baradlay 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
R LayoutTests/fast/block/legacy-text-align-position-quirk-expected.html
R LayoutTests/fast/block/legacy-text-align-position-quirk.html
M Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml
M Source/WebCore/rendering/RenderBlockFlow.cpp
M Source/WebKit/UIProcess/API/C/WKPreferences.cpp
M Source/WebKit/UIProcess/API/C/WKPreferencesRefPrivate.h
M Source/WebKitLegacy/mac/WebView/WebPreferenceKeysPrivate.h
M Source/WebKitLegacy/mac/WebView/WebPreferences.mm
M Source/WebKitLegacy/mac/WebView/WebPreferencesPrivate.h

  Log Message:
  ---
  Remove redundant quirk on ignoring centered text when positioning
https://bugs.webkit.org/show_bug.cgi?id=254608

Reviewed by Simon Fraser.

This quirk was originally introduced to support a non-standard text-align 
behavior on out-of-flow positioned boxes (essentially ignoring 'text-align' on 
'position: absolute/fixed').
It was exercised by some old book content but it is not used anymore (see 
 and webkit.org/b/124522 for the original use case).

* LayoutTests/fast/block/legacy-text-align-position-quirk-expected.html: 
Removed.
* LayoutTests/fast/block/legacy-text-align-position-quirk.html: Removed.
* Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml:
* Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.cpp:
(WebCore::LayoutIntegration::LineLayout::outputLineTree const):
* Source/WebCore/rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::startAlignedOffsetForLine):
* Source/WebKit/UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesUseLegacyTextAlignPositionedElementBehavior): Deleted.
(WKPreferencesSetUseLegacyTextAlignPositionedElementBehavior): Deleted.
* Source/WebKit/UIProcess/API/C/WKPreferencesRefPrivate.h:
* Source/WebKitLegacy/mac/WebView/WebPreferenceKeysPrivate.h:
* Source/WebKitLegacy/mac/WebView/WebPreferences.mm:
(-[WebPreferences useLegacyTextAlignPositionedElementBehavior]): Deleted.
(-[WebPreferences setUseLegacyTextAlignPositionedElementBehavior:]): Deleted.
* Source/WebKitLegacy/mac/WebView/WebPreferencesPrivate.h:

Canonical link: https://commits.webkit.org/262251@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 6a3bc9: Cherry-pick 252432.1031@safari-7614-branch (9f7e40...

2023-03-28 Thread Commit Queue
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 6a3bc9e418ddb694dee46c4e42a9f2884296bbaa
  
https://github.com/WebKit/WebKit/commit/6a3bc9e418ddb694dee46c4e42a9f2884296bbaa
  Author: David Degazio 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
A JSTests/stress/cell-speculated-array-indexof.js
M Source/JavaScriptCore/dfg/DFGFixupPhase.cpp

  Log Message:
  ---
  Cherry-pick 252432.1031@safari-7614-branch (9f7e401c42a8). rdar://107335776

Fix use-after-free in DFGFixupPhase for array indexOf
https://bugs.webkit.org/show_bug.cgi?id=250429
rdar://103852510

Reviewed by Jonathan Bedard and Michael Saboff.

During DFG fixup, array indexOf nodes are folded to -1 when the search 
element is speculated
to be a different type than the array element (for instance, JSCell instead 
of Int32). When
this happens, a speculation check is inserted, which can cause the DFG 
graph's varArgChildren
array to reallocate. This invalidates the searchElement Edge reference, 
which we use
immediately after the check insertion in the fixup phase. This patch fixes 
this potential
use-after-free by grabbing the searchElement's associated node before 
inserting any checks,
giving us a persistent pointer to a DFG node rather than a reference into a 
vector.

* JSTests/stress/cell-speculated-array-indexof.js: Added.
* Source/JavaScriptCore/dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupArrayIndexOf):

Canonical link: https://commits.webkit.org/252432.1031@safari-7614-branch

Canonical link: https://commits.webkit.org/262250@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 31a8c5: PDF disappears during live-ish resize

2023-03-28 Thread Tim Horton
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 31a8c572cfb857b5debc12bf63912a7041649ec4
  
https://github.com/WebKit/WebKit/commit/31a8c572cfb857b5debc12bf63912a7041649ec4
  Author: Tim Horton 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebKit/UIProcess/API/ios/WKWebViewIOS.mm

  Log Message:
  ---
  PDF disappears during live-ish resize
https://bugs.webkit.org/show_bug.cgi?id=254623
rdar://105852767

Reviewed by Megan Gardner.

* Source/WebKit/UIProcess/API/ios/WKWebViewIOS.mm:
(-[WKWebView _beginAutomaticLiveResizeIfNeeded]):
Disable live-ish resize for custom content views, which expect to get
full-fidelity updates during resize.

Canonical link: https://commits.webkit.org/262249@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 621cea: Hulu.com video doesn't play

2023-03-28 Thread Jer Noble
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 621cea8475c6fd1e080e42afab04cb857c815407
  
https://github.com/WebKit/WebKit/commit/621cea8475c6fd1e080e42afab04cb857c815407
  Author: Jer Noble 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebCore/html/HTMLMediaElement.cpp
M Source/WebCore/page/Quirks.cpp
M Source/WebCore/page/Quirks.h

  Log Message:
  ---
  Hulu.com video doesn't play
https://bugs.webkit.org/show_bug.cgi?id=254605
rdar://106667631

Reviewed by Eric Carlson.

Recent changes in the AVFoundation framework have caused canPlayType() queries 
for
`application/vnd.apple.mpegurl; codecs="stpp.ttml.im1t"` and
`application/vnd.apple.mpegurl; codecs="wvtt"` to fail. These were never 
well-formed
queries in the first place, as `application/vnd.apple.mpegurl` does not take a 
codecs
parameter. However, Hulu.com appears to depend upon those queries returning 
"probably"
in order to vend a working HLS stream.

Add a quirk for hulu.com only which hard codes the answer to those two 
canPlayType()
queries to "probably".

* Source/WebCore/html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::canPlayType const):
* Source/WebCore/page/Quirks.cpp:
(WebCore::Quirks::shouldAdvertiseSupportForHLSSubtitleTypes const):
* Source/WebCore/page/Quirks.h:

Canonical link: https://commits.webkit.org/262248@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 60f12d: Cherry-pick 252432.1030@safari-7614-branch (433db4...

2023-03-28 Thread Chris Dumez
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 60f12d4262f763634991e8c45652c55420be304d
  
https://github.com/WebKit/WebKit/commit/60f12d4262f763634991e8c45652c55420be304d
  Author: Chris Dumez 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebCore/bindings/js/JSErrorHandler.cpp
M Source/WebCore/bindings/js/JSEventListener.cpp
M Source/WebCore/bindings/js/JSEventListener.h
M Source/WebCore/bindings/js/JSLazyEventListener.cpp
M Source/WebCore/bindings/js/WebCoreJSClientData.cpp
M Source/WebCore/bindings/js/WebCoreJSClientData.h
M Source/WebCore/dom/EventTarget.cpp
M Source/WebCore/inspector/CommandLineAPIHost.cpp
M Source/WebCore/inspector/WebInjectedScriptHost.cpp
M Source/WebCore/inspector/agents/InspectorDOMAgent.cpp

  Log Message:
  ---
  Cherry-pick 252432.1030@safari-7614-branch (433db4f29219). 
rdar://problem/107335960

Heap use-after-free in DOMWrapperWorld::~DOMWrapperWorld
https://bugs.webkit.org/show_bug.cgi?id=246022
rdar://100763856

Reviewed by Jonathan Bedard and Ryosuke Niwa.

Right before a worker terminates, it destroys its 
WorkerOrWorkletScriptController,
which destroys the JS VM. Certain objects like DOMWrapperWorld cannot 
outlive
the VM since they keep a `VM&' as data member. However, DOMWrapperWorld is
refcounted and JSEventListeners hold a strong ref to their DOMWrapperWorld. 
If
JSEventListeners outlive the VM, then it would lead to a use-after free in 
the
DOMWrapperWorld destructor when destroying those JSEventListeners later on.

We have previously made several attempts to try and unregister all event
listeners before destroying the VM. However, those attempts were either
incomplete or led to other crashes. I am therefore trying a different 
approach
this time.

JSEventListeners now register themselves as client of the JSVMClientData 
(which
is owned by the VM) and the client gets a `willDestroyVM()` call before the
VM gets destroyed. This allows JSEventListeners to clear out their data 
members
which rely on the VM (DOMWrapperWorld and JSC::Weak data members).

* Source/WebCore/bindings/js/JSErrorHandler.cpp:
(WebCore::JSErrorHandler::handleEvent):
* Source/WebCore/bindings/js/JSEventListener.cpp:
(WebCore::JSEventListener::JSEventListener):
(WebCore::JSEventListener::handleEvent):
(WebCore::JSEventListener::functionName const):
(WebCore::JSEventListener::willDestroyVM):
* Source/WebCore/bindings/js/JSEventListener.h:
(WebCore::JSEventListener::isolatedWorld const):
(WebCore::JSEventListener::ensureJSFunction const):
* Source/WebCore/bindings/js/JSLazyEventListener.cpp:
(WebCore::JSLazyEventListener::initializeJSFunction const):
* Source/WebCore/bindings/js/WebCoreJSClientData.cpp:
(WebCore::JSVMClientData::~JSVMClientData):
* Source/WebCore/bindings/js/WebCoreJSClientData.h:
(WebCore::JSVMClientData::addClient):
* Source/WebCore/dom/EventTarget.cpp:
(WebCore::EventTarget::attributeEventListener):
* Source/WebCore/inspector/CommandLineAPIHost.cpp:
(WebCore::CommandLineAPIHost::getEventListeners):
* Source/WebCore/inspector/WebInjectedScriptHost.cpp:
(WebCore::objectForEventTargetListeners):
* Source/WebCore/inspector/agents/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::buildObjectForEventListener):

Canonical link: https://commits.webkit.org/252432.1030@safari-7614-branch

Canonical link: https://commits.webkit.org/262247@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 9ca2fd: [UI-side compositing] Add helper function to ui-he...

2023-03-28 Thread Nikos Mouchtaris
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9ca2fd55c2269f40ef8d1f2b37c8b15cf1cdd434
  
https://github.com/WebKit/WebKit/commit/9ca2fd55c2269f40ef8d1f2b37c8b15cf1cdd434
  Author: Nikolaos Mouchtaris 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M LayoutTests/resources/ui-helper.js

  Log Message:
  ---
  [UI-side compositing] Add helper function to ui-helper.js to get scrollbar 
state
https://bugs.webkit.org/show_bug.cgi?id=254615
rdar://107332737

Reviewed by Wenson Hsieh and Simon Fraser.

Add helper function to ui-helper.js to get scrollbar state.

* LayoutTests/resources/ui-helper.js:
(window.UIHelper.scrollbarState.return.new.Promise.):
(window.UIHelper.scrollbarState.return.new.Promise):
(window.UIHelper.scrollbarState):
(window.UIHelper.verticalScrollbarState):
(window.UIHelper.horizontalScrollbarState):

Canonical link: https://commits.webkit.org/262246@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 1bb6a5: Cherry-pick 259548.8@safari-7615-branch (5a0f792b0...

2023-03-28 Thread JC Alvarado
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 1bb6a599c3aef0843ff171cb156f008ae1c634a0
  
https://github.com/WebKit/WebKit/commit/1bb6a599c3aef0843ff171cb156f008ae1c634a0
  Author: JC Alvarado 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
A LayoutTests/fast/backgrounds/background-color-lch-crash-expected.txt
A LayoutTests/fast/backgrounds/background-color-lch-crash.html
M Source/WebCore/platform/graphics/ColorBlending.cpp

  Log Message:
  ---
  Cherry-pick 259548.8@safari-7615-branch (5a0f792b008f). rdar://10795

Check color opacity after lossy conversion when blending
https://bugs.webkit.org/show_bug.cgi?id=251158
rdar://104553839

Reviewed by Dean Jackson.

We check opacity to determine if we should forgo blending,
however after performing a lossy conversion we can end
up with alpha values that result in a division by zero.
Add an additional check after conversion to prevent this
case.

* LayoutTests/fast/backgrounds/background-color-lch-crash-expected.txt: 
Added.
* LayoutTests/fast/backgrounds/background-color-lch-crash.html: Added.
* Source/WebCore/platform/graphics/ColorBlending.cpp:
(WebCore::blendSourceOver):

Canonical link: https://commits.webkit.org/259548.8@safari-7615-branch

Canonical link: https://commits.webkit.org/262245@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] ee9e30: [UI-side compositing] Two RTL scrolling tests fail

2023-03-28 Thread Ryosuke Niwa
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: ee9e3014c93a5302d2d32370ab1b0a8565483cd4
  
https://github.com/WebKit/WebKit/commit/ee9e3014c93a5302d2d32370ab1b0a8565483cd4
  Author: Ryosuke Niwa 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteScrollingTreeMac.mm

  Log Message:
  ---
  [UI-side compositing] Two RTL scrolling tests fail
https://bugs.webkit.org/show_bug.cgi?id=254618

Reviewed by Simon Fraser.

The bug was caused by the confusion of scroll position vs. offset.
Here, we're converting to offset so we need to subtract the scroll origin,
which we accomplish by not moving by scroll origin in the first place.

* Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteScrollingTreeMac.mm:
(WebKit::RemoteScrollingTreeMac::scrollingNodeForPoint):

Canonical link: https://commits.webkit.org/262244@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 563327: [UI-side compositing] RenderListBox scrollbars do ...

2023-03-28 Thread Wenson Hsieh
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 563327c0f1c402dee399680de8da20c23de89356
  
https://github.com/WebKit/WebKit/commit/563327c0f1c402dee399680de8da20c23de89356
  Author: Wenson Hsieh 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
A 
LayoutTests/fast/forms/select/mac-wk2/listbox-scrollbar-painting-expected-mismatch.html
A LayoutTests/fast/forms/select/mac-wk2/listbox-scrollbar-painting.html
M Source/WebCore/platform/Scrollbar.cpp
M Source/WebCore/platform/Scrollbar.h
M Source/WebCore/platform/mac/ScrollbarThemeMac.mm

  Log Message:
  ---
  [UI-side compositing] RenderListBox scrollbars do not show
https://bugs.webkit.org/show_bug.cgi?id=253750
rdar://106382552

Reviewed by Aditya Keerthi.

With UI-side compositing on the painting context does not have a platform CG 
context so painting the
scrollbars does not work. To get around this, draw the scrollbars into a local 
buffer then draw that
buffer into the painting context.

Based on a patch by Nikos Mouchtaris.

* 
LayoutTests/fast/forms/select/mac-wk2/listbox-scrollbar-painting-expected-mismatch.html:
 Added.
* LayoutTests/fast/forms/select/mac-wk2/listbox-scrollbar-painting.html: Added.

Add a regression test to verify that system scrollbars show up in list boxes, 
with always-on
scrollbars enabled.

* Source/WebCore/platform/Scrollbar.cpp:
(WebCore::Scrollbar::deviceScaleFactor const):
* Source/WebCore/platform/Scrollbar.h:
* Source/WebCore/platform/mac/ScrollbarThemeMac.mm:
(WebCore::ScrollbarThemeMac::paint):
(WebCore::scrollerImpPaint): Deleted.

Canonical link: https://commits.webkit.org/262243@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] f51974: Change InteracitonRegion to hold an IntRect instea...

2023-03-28 Thread megangardner
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f51974aa4007bbd070c94d507d472bddd1e95745
  
https://github.com/WebKit/WebKit/commit/f51974aa4007bbd070c94d507d472bddd1e95745
  Author: Megan Gardner 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M LayoutTests/interaction-region/aria-roles-expected.txt
M 
LayoutTests/interaction-region/click-handler-dynamically-added-expected.txt
M LayoutTests/interaction-region/click-handler-expected.txt
M 
LayoutTests/interaction-region/click-handler-in-shadowed-layer-expected.txt
M LayoutTests/interaction-region/consolidated-nested-regions-expected.txt
M LayoutTests/interaction-region/event-region-overflow-expected.txt
M LayoutTests/interaction-region/full-page-overlay-expected.txt
M 
LayoutTests/interaction-region/icon-inside-button-single-region-expected.txt
M LayoutTests/interaction-region/inline-link-dark-background-expected.txt
M LayoutTests/interaction-region/inline-link-expected.txt
M 
LayoutTests/interaction-region/inline-link-in-composited-iframe-expected.txt
M LayoutTests/interaction-region/inline-link-in-layer-expected.txt
M 
LayoutTests/interaction-region/inline-link-in-non-composited-iframe-expected.txt
M 
LayoutTests/interaction-region/inline-link-with-pointer-events-none-content-expected.txt
M LayoutTests/interaction-region/input-type-file-region-expected.txt
M LayoutTests/interaction-region/input-type-range-region-expected.txt
M LayoutTests/interaction-region/nested-composited-text-painter-expected.txt
M LayoutTests/interaction-region/overlap-expected.txt
M LayoutTests/interaction-region/overlap-same-group-expected.txt
M LayoutTests/interaction-region/overlay-expected.txt
M LayoutTests/interaction-region/paused-video-regions-expected.txt
M LayoutTests/interaction-region/pseudo-element-expected.txt
M LayoutTests/interaction-region/split-inline-link-expected.txt
M LayoutTests/interaction-region/wrapped-inline-link-expected.txt
M Source/WebCore/page/DebugPageOverlays.cpp
M Source/WebCore/page/InteractionRegion.cpp
M Source/WebCore/page/InteractionRegion.h
M Source/WebCore/rendering/EventRegion.cpp
M Source/WebCore/rendering/EventRegion.h
M Source/WebCore/rendering/RenderLayerBacking.cpp
M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in
M 
Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeInteractionRegionLayers.mm

  Log Message:
  ---
  Change InteracitonRegion to hold an IntRect instead of a Region
https://bugs.webkit.org/show_bug.cgi?id=254456
rdar://107216144

Reviewed by Tim Horton.

InteractionRegion currently has a Region as the way that it holds
the data about the interaction. However, Region is a large
data structure, and we only ever put a single Rect into it,
so to save space and performance, we should switch to just using a
Rect instead of a Region.

* LayoutTests/interaction-region/aria-roles-expected.txt:
* LayoutTests/interaction-region/click-handler-dynamically-added-expected.txt:
* LayoutTests/interaction-region/click-handler-expected.txt:
* LayoutTests/interaction-region/click-handler-in-shadowed-layer-expected.txt:
* LayoutTests/interaction-region/consolidated-nested-regions-expected.txt:
* LayoutTests/interaction-region/event-region-overflow-expected.txt:
* LayoutTests/interaction-region/full-page-overlay-expected.txt:
* LayoutTests/interaction-region/icon-inside-button-single-region-expected.txt:
* LayoutTests/interaction-region/inline-link-dark-background-expected.txt:
* LayoutTests/interaction-region/inline-link-expected.txt:
* LayoutTests/interaction-region/inline-link-in-composited-iframe-expected.txt:
* LayoutTests/interaction-region/inline-link-in-layer-expected.txt:
* 
LayoutTests/interaction-region/inline-link-in-non-composited-iframe-expected.txt:
* 
LayoutTests/interaction-region/inline-link-with-pointer-events-none-content-expected.txt:
* LayoutTests/interaction-region/input-type-file-region-expected.txt:
* LayoutTests/interaction-region/input-type-range-region-expected.txt:
* LayoutTests/interaction-region/nested-composited-text-painter-expected.txt:
* LayoutTests/interaction-region/overlap-expected.txt:
* LayoutTests/interaction-region/overlay-expected.txt:
* LayoutTests/interaction-region/paused-video-regions-expected.txt:
* LayoutTests/interaction-region/pseudo-element-expected.txt:
* LayoutTests/interaction-region/split-inline-link-expected.txt:
* LayoutTests/interaction-region/wrapped-inline-link-expected.txt:
* Source/WebCore/page/DebugPageOverlays.cpp:
(WebCore::pathsForRect):
(WebCore::InteractionRegionOverlay::activeRegion const):
(WebCore::InteractionRegionOverlay::drawRect):
(WebCore::pathsForRegion): Deleted.
* Source/WebCore/page/InteractionRegion.cpp:
(WebCore::interactionRegionForRenderedRegion):
(WebCore::operator<<):
* Source/WebCore/page/InteractionRegion.h:
(WebCore::operator==):
* Source/WebCore/rendering/EventR

[webkit-changes] [WebKit/WebKit] 5bcdab: Cherry-pick 252432.1029@safari-7614-branch (9dda7b...

2023-03-28 Thread Ryan Reno
  Branch: refs/heads/webkitglib/2.40
  Home:   https://github.com/WebKit/WebKit
  Commit: 5bcdabb358df7868634b33d3d48f6a270e80c157
  
https://github.com/WebKit/WebKit/commit/5bcdabb358df7868634b33d3d48f6a270e80c157
  Author: Yijia Huang 
  Date:   2023-03-29 (Wed, 29 Mar 2023)

  Changed paths:
A JSTests/wasm/stress/wasm-tuple-return.js
M Source/JavaScriptCore/wasm/WasmLLIntGenerator.cpp

  Log Message:
  ---
  Cherry-pick 252432.1029@safari-7614-branch (9dda7bfe768d). 
https://bugs.webkit.org/show_bug.cgi?id=250482

LLInt WASM argument locals must be read before return values are written
https://bugs.webkit.org/show_bug.cgi?id=250482
rdar://103551585

Reviewed by Justin Michaud.

Given the wasm code which exports a wasm function `intFuncRef2` as a js 
function.
```
(func (export "intFuncRef2") (param $p0 f32) (param $p1 funcref) (result 
i32 funcref)
(i32.const 42)
(local.get $p1)
(return)
)
```
The corresponding dumped bytecodes show
```
[   0] enter
[   1] mov dst:loc2, src:42(const0)
[   4] mov dst:loc3, src:loc2   // loc2 contains the funcref but 
now replaced with 42
[   7] ret  // return [loc2, loc3]
```
which is wrong. Instead we should do
```
[   0] enter
[   1] mov dst:loc18, src:42(const0)
[   4] mov dst:loc19, src:loc2
[   7] mov dst:loc2, src:loc18
[  10] mov dst:loc3, src:loc19
[  13] ret
```
Note that loc2 is both parameter and return lot.

Locals usually need to be materialized on wasm stack when they are about to 
be or could
be clobbered, usually before a control entry, a branch, or redefinition. 
Previously,
Return writes only one value to the result slot that clobber one argument 
slot which
is fine. Since now wasm function can return tuple that might bring us to 
the situation
as shown in above example. We should materialize expression stack when 
return more than
one values.

* JSTests/wasm/stress/tuple-return.js: Added.
(async test):
* Source/JavaScriptCore/wasm/WasmLLIntGenerator.cpp:
(JSC::Wasm::LLIntGenerator::addReturn):

Canonical link: https://commits.webkit.org/252432.1029@safari-7614-branch


  Commit: 5bad5db3251c892ca60ff6f06d28479203d63a57
  
https://github.com/WebKit/WebKit/commit/5bad5db3251c892ca60ff6f06d28479203d63a57
  Author: Chris Dumez 
  Date:   2023-03-29 (Wed, 29 Mar 2023)

  Changed paths:
M Source/WebCore/bindings/js/JSErrorHandler.cpp
M Source/WebCore/bindings/js/JSEventListener.cpp
M Source/WebCore/bindings/js/JSEventListener.h
M Source/WebCore/bindings/js/JSLazyEventListener.cpp
M Source/WebCore/bindings/js/WebCoreJSClientData.cpp
M Source/WebCore/bindings/js/WebCoreJSClientData.h
M Source/WebCore/dom/EventTarget.cpp
M Source/WebCore/inspector/CommandLineAPIHost.cpp
M Source/WebCore/inspector/WebInjectedScriptHost.cpp
M Source/WebCore/inspector/agents/InspectorDOMAgent.cpp

  Log Message:
  ---
  Cherry-pick 252432.1030@safari-7614-branch (433db4f29219). 
https://bugs.webkit.org/show_bug.cgi?id=246022

Heap use-after-free in DOMWrapperWorld::~DOMWrapperWorld
https://bugs.webkit.org/show_bug.cgi?id=246022
rdar://100763856

Reviewed by Jonathan Bedard and Ryosuke Niwa.

Right before a worker terminates, it destroys its 
WorkerOrWorkletScriptController,
which destroys the JS VM. Certain objects like DOMWrapperWorld cannot 
outlive
the VM since they keep a `VM&' as data member. However, DOMWrapperWorld is
refcounted and JSEventListeners hold a strong ref to their DOMWrapperWorld. 
If
JSEventListeners outlive the VM, then it would lead to a use-after free in 
the
DOMWrapperWorld destructor when destroying those JSEventListeners later on.

We have previously made several attempts to try and unregister all event
listeners before destroying the VM. However, those attempts were either
incomplete or led to other crashes. I am therefore trying a different 
approach
this time.

JSEventListeners now register themselves as client of the JSVMClientData 
(which
is owned by the VM) and the client gets a `willDestroyVM()` call before the
VM gets destroyed. This allows JSEventListeners to clear out their data 
members
which rely on the VM (DOMWrapperWorld and JSC::Weak data members).

* Source/WebCore/bindings/js/JSErrorHandler.cpp:
(WebCore::JSErrorHandler::handleEvent):
* Source/WebCore/bindings/js/JSEventListener.cpp:
(WebCore::JSEventListener::JSEventListener):
(WebCore::JSEventListener::handleEvent):
(WebCore::JSEventListener::functionName const):
(WebCore::JSEventListener::willDestroyVM):
* Source/WebCore/bindings/js/JSEventListener.h:
(WebCore::JSEventListener::isolatedWorld const):
(WebCore::JSEventListener::ensureJSFunction const):
* Source/WebCore/bindings/j

[webkit-changes] [WebKit/WebKit] f3713b: web manifest: implement orientation member parsing

2023-03-28 Thread Marcos Cáceres
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f3713b3399174f5ce5a32b1e0b8b99a5f9956c7d
  
https://github.com/WebKit/WebKit/commit/f3713b3399174f5ce5a32b1e0b8b99a5f9956c7d
  Author: Marcos Caceres 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebCore/Modules/applicationmanifest/ApplicationManifest.h
M Source/WebCore/Modules/applicationmanifest/ApplicationManifestParser.cpp
M Source/WebCore/Modules/applicationmanifest/ApplicationManifestParser.h
M Source/WebCore/page/ScreenOrientationLockType.h
M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in
M Source/WebKit/UIProcess/API/Cocoa/_WKApplicationManifest.h
M Source/WebKit/UIProcess/API/Cocoa/_WKApplicationManifest.mm
M Tools/TestWebKitAPI/Tests/WebCore/ApplicationManifestParser.cpp

  Log Message:
  ---
  web manifest: implement orientation member parsing
https://bugs.webkit.org/show_bug.cgi?id=247275
rdar://101770484

Reviewed by Chris Dumez.

* Source/WebCore/Modules/applicationmanifest/ApplicationManifest.h:
* Source/WebCore/Modules/applicationmanifest/ApplicationManifestParser.cpp:
(WebCore::ApplicationManifestParser::parseManifest):
(WebCore::ApplicationManifestParser::parseOrientation):
* Source/WebCore/Modules/applicationmanifest/ApplicationManifestParser.h:
* Source/WebCore/page/ScreenOrientationLockType.h:
* Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in:
* Source/WebKit/UIProcess/API/Cocoa/_WKApplicationManifest.h:
* Source/WebKit/UIProcess/API/Cocoa/_WKApplicationManifest.mm:
(-[_WKApplicationManifest initWithCoder:]):
(-[_WKApplicationManifest encodeWithCoder:]):
(-[_WKApplicationManifest orientation]):
* Tools/TestWebKitAPI/Tests/WebCore/ApplicationManifestParser.cpp:
(WebCore::operator<<):
(ApplicationManifestParserTest::testOrientation):
(TEST_F):

Canonical link: https://commits.webkit.org/262241@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 9f5775: Remove smart pointer violation in NetworkContentRu...

2023-03-28 Thread Arunsundar Kannan
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9f577500830e979799eb12ab38c9a88a2322d0bf
  
https://github.com/WebKit/WebKit/commit/9f577500830e979799eb12ab38c9a88a2322d0bf
  Author: Arunsundar Kannan 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M 
Source/WebKit/NetworkProcess/CustomProtocols/LegacyCustomProtocolManager.cpp
M Source/WebKit/NetworkProcess/CustomProtocols/LegacyCustomProtocolManager.h
M Source/WebKit/NetworkProcess/NetworkContentRuleListManager.cpp
M Source/WebKit/NetworkProcess/NetworkContentRuleListManager.h
M Source/WebKit/NetworkProcess/NetworkProcess.h

  Log Message:
  ---
  Remove smart pointer violation in NetworkContentRuleListManager, 
LegacyCustomProtocolManager.
https://bugs.webkit.org/show_bug.cgi?id=254500.
rdar://107255403.

Reviewed by Chris Dumez.

m_process is using raw references, this changes uses WTF:: Ref.

* Source/WebKit/NetworkProcess/CustomProtocols/LegacyCustomProtocolManager.cpp:
(WebKit::LegacyCustomProtocolManager::LegacyCustomProtocolManager):
(WebKit::LegacyCustomProtocolManager::startLoading):
(WebKit::LegacyCustomProtocolManager::stopLoading):
* Source/WebKit/NetworkProcess/CustomProtocols/LegacyCustomProtocolManager.h:
* Source/WebKit/NetworkProcess/NetworkContentRuleListManager.cpp:
(WebKit::NetworkContentRuleListManager::contentExtensionsBackend):
* Source/WebKit/NetworkProcess/NetworkContentRuleListManager.h:

Canonical link: https://commits.webkit.org/262240@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 126b01: [JSC] Fix Paren Context allocation and use with Du...

2023-03-28 Thread Michael Saboff
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 126b01e1d8ac27d37bf0dd8bf5c16423587b2c82
  
https://github.com/WebKit/WebKit/commit/126b01e1d8ac27d37bf0dd8bf5c16423587b2c82
  Author: Michael Saboff 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M JSTests/stress/regexp-duplicate-named-captures.js
M Source/JavaScriptCore/yarr/YarrJIT.cpp

  Log Message:
  ---
  [JSC] Fix Paren Context allocation and use with Duplicate Named Capture groups
https://bugs.webkit.org/show_bug.cgi?id=254600
rdar://107180725

Reviewed by Yusuke Suzuki.

Fixed two issues in the YARR JIT with Paren contextes and duplicate named 
capture IDs.

The first is that we weren't including the space needed for 
duplicateNamedCaptures in ParenContext::sizeFor().
This could cause us to reuse frame slots.

The second issue is that we were restoring the non-existent 0 duplicate named 
capture in YarrGenerator::restoreParenContext().
Duplicate named capture IDs start at 1.

* JSTests/stress/regexp-duplicate-named-captures.js:
* Source/JavaScriptCore/yarr/YarrJIT.cpp:

Canonical link: https://commits.webkit.org/262239@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] ad9f18: Remove use of raw pointers in cachedResourceLoader...

2023-03-28 Thread Arunsundar Kannan
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: ad9f1876e28f6497dfe297d81d3f396efef6b7dc
  
https://github.com/WebKit/WebKit/commit/ad9f1876e28f6497dfe297d81d3f396efef6b7dc
  Author: Arunsundar Kannan 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebCore/loader/ApplicationManifestLoader.cpp
M Source/WebCore/loader/ApplicationManifestLoader.h
M Source/WebCore/loader/cache/CachedResourceLoader.cpp
M Source/WebCore/loader/cache/CachedResourceLoader.h
M Source/WebCore/loader/icon/IconLoader.cpp
M Source/WebCore/loader/icon/IconLoader.h

  Log Message:
  ---
  Remove use of raw pointers in cachedResourceLoader class, IconLoader, 
ApplicationManifestLoader.
https://bugs.webkit.org/show_bug.cgi?id=254437.
rdar://107196321.

Reviewed by Chris Dumez.

Changed m_documentLoader ivar to CheckedPtr/CheckedRef instead of raw pointer..

* Source/WebCore/loader/cache/CachedResourceLoader.cpp:
(WebCore::CachedResourceLoader::requestResource):
(WebCore::CachedResourceLoader::clearDocumentLoader):
(WebCore::CachedResourceLoader::loadDone):
* Source/WebCore/loader/cache/CachedResourceLoader.h:
(WebCore::CachedResourceLoader::clearDocumentLoader): Deleted.

Canonical link: https://commits.webkit.org/262238@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 978cca: Improve error handling for badging API

2023-03-28 Thread Marcos Cáceres
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 978ccadf6e0baf1d12fb5d43a1b515ffb45b20e6
  
https://github.com/WebKit/WebKit/commit/978ccadf6e0baf1d12fb5d43a1b515ffb45b20e6
  Author: Marcos Caceres 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
A LayoutTests/imported/w3c/web-platform-tests/badging/META.yml
A 
LayoutTests/imported/w3c/web-platform-tests/badging/badge-error.https-expected.txt
A LayoutTests/imported/w3c/web-platform-tests/badging/badge-error.https.html
A 
LayoutTests/imported/w3c/web-platform-tests/badging/badge-success.https-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/badging/badge-success.https.html
A 
LayoutTests/imported/w3c/web-platform-tests/badging/idlharness.https.any-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/badging/idlharness.https.any.html
A 
LayoutTests/imported/w3c/web-platform-tests/badging/idlharness.https.any.js
A 
LayoutTests/imported/w3c/web-platform-tests/badging/idlharness.https.any.worker-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/badging/idlharness.https.any.worker.html
A 
LayoutTests/imported/w3c/web-platform-tests/badging/non-fully-active.https-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/badging/non-fully-active.https.html
A LayoutTests/imported/w3c/web-platform-tests/badging/w3c-import.log
M 
LayoutTests/imported/w3c/web-platform-tests/workers/interfaces/WorkerUtils/navigator/007.js
M LayoutTests/platform/gtk/fast/dom/navigator-detached-no-crash-expected.txt
M LayoutTests/platform/mac-wk1/TestExpectations
M 
LayoutTests/platform/mac-wk2/fast/dom/navigator-detached-no-crash-expected.txt
M LayoutTests/platform/wpe/fast/dom/navigator-detached-no-crash-expected.txt
M Source/WebCore/page/Navigator.cpp
M Source/WebCore/page/WorkerNavigator.cpp
M Tools/WebKitTestRunner/TestOptions.cpp

  Log Message:
  ---
  Improve error handling for badging API
https://bugs.webkit.org/show_bug.cgi?id=254193
rdar://106969959

Reviewed by Brady Eidson.

Adds InvalidStateErrors for promise rejections.
Now checks if the document is fully active before setting the badge, and 
rejects if it's not.

* LayoutTests/imported/w3c/web-platform-tests/badging/META.yml: Added.
* 
LayoutTests/imported/w3c/web-platform-tests/badging/badge-error.https-expected.txt:
 Added.
* LayoutTests/imported/w3c/web-platform-tests/badging/badge-error.https.html: 
Added.
* 
LayoutTests/imported/w3c/web-platform-tests/badging/badge-success.https-expected.txt:
 Added.
* LayoutTests/imported/w3c/web-platform-tests/badging/badge-success.https.html: 
Added.
* 
LayoutTests/imported/w3c/web-platform-tests/badging/idlharness.https.any-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/badging/idlharness.https.any.html: 
Added.
* LayoutTests/imported/w3c/web-platform-tests/badging/idlharness.https.any.js: 
Added.
(idl_array.self.GLOBAL.isWorker):
* 
LayoutTests/imported/w3c/web-platform-tests/badging/idlharness.https.any.worker-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/badging/idlharness.https.any.worker.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/badging/non-fully-active.https-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/badging/non-fully-active.https.html:
 Added.
* LayoutTests/imported/w3c/web-platform-tests/badging/w3c-import.log: Added.
* 
LayoutTests/imported/w3c/web-platform-tests/workers/interfaces/WorkerUtils/navigator/007.js:
* LayoutTests/platform/gtk/fast/dom/navigator-detached-no-crash-expected.txt:
* LayoutTests/platform/mac-wk1/TestExpectations:
* 
LayoutTests/platform/mac-wk2/fast/dom/navigator-detached-no-crash-expected.txt:
* LayoutTests/platform/wpe/fast/dom/navigator-detached-no-crash-expected.txt:
* Source/WebCore/page/Navigator.cpp:
(WebCore::Navigator::setAppBadge):
* Source/WebCore/page/WorkerNavigator.cpp:
(WebCore::WorkerNavigator::setAppBadge):
* Tools/WebKitTestRunner/TestOptions.cpp:
(WTR::TestOptions::defaults):

Canonical link: https://commits.webkit.org/262237@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 927cb4: [Wasm-GC] Avoid stack consistency checking in LLIn...

2023-03-28 Thread Tim Chevalier
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 927cb4227a3673e681c36659637e1f5a78cd8f56
  
https://github.com/WebKit/WebKit/commit/927cb4227a3673e681c36659637e1f5a78cd8f56
  Author: Tim Chevalier 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
A JSTests/wasm/gc/bug254226.js
M Source/JavaScriptCore/wasm/WasmLLIntGenerator.cpp

  Log Message:
  ---
  [Wasm-GC] Avoid stack consistency checking in LLIntGenerator::addStructNew()
https://bugs.webkit.org/show_bug.cgi?id=254226

Reviewed by Justin Michaud.

`addStructNew()` was failing in debug mode if called with a non-empty parser
stack, because pushing the arguments results in LLInt's view of the stack
getting out of sync with the parser's stack. Changed it to use
`walkExpressionStack()`, similarly to `addThrow()`.

* JSTests/wasm/gc/bug254226.js: Added.
(module):
(testNestedStruct):
* Source/JavaScriptCore/wasm/WasmLLIntGenerator.cpp:
(JSC::Wasm::LLIntGenerator::addStructNew):

Canonical link: https://commits.webkit.org/262236@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 06dae3: Mark HTMLFastPathParser::processAttribute() as static

2023-03-28 Thread Chris Dumez
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 06dae3ac143d70f6308c7d3c0d71a15a37c209a9
  
https://github.com/WebKit/WebKit/commit/06dae3ac143d70f6308c7d3c0d71a15a37c209a9
  Author: Chris Dumez 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebCore/html/parser/HTMLDocumentParserFastPath.cpp

  Log Message:
  ---
  Mark HTMLFastPathParser::processAttribute() as static
https://bugs.webkit.org/show_bug.cgi?id=254611

Reviewed by Ryosuke Niwa.

Mark HTMLFastPathParser::processAttribute() as static since it does not use any
data members.

* Source/WebCore/html/parser/HTMLDocumentParserFastPath.cpp:
(WebCore::HTMLFastPathParser::processAttribute):

Canonical link: https://commits.webkit.org/262235@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] e1f872: Cherry-pick 259548.3@safari-7615-branch (e8f723331...

2023-03-28 Thread Ryosuke Niwa
  Branch: refs/heads/webkitglib/2.40
  Home:   https://github.com/WebKit/WebKit
  Commit: e1f8721fd722f0f6f037b1eeeabd0a7ee79383fd
  
https://github.com/WebKit/WebKit/commit/e1f8721fd722f0f6f037b1eeeabd0a7ee79383fd
  Author: David Li 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
A LayoutTests/animations/animation-set-effect-expected.txt
A LayoutTests/animations/animation-set-effect.html
M Source/WebCore/animation/CSSAnimation.cpp

  Log Message:
  ---
  Cherry-pick 259548.3@safari-7615-branch (e8f7233310fd). 

Cherry-pick 252432.1013@safari-7614-branch (1d545c7ebfef). rdar://104831379

[Web Animations] CSSAnimation::setBindingsEffect should also add 
KeyFrames to overriddenProperties
rdar://102137788

Reviewed by Jonathan Bedard and Antoine Quint.

* LayoutTests/animations/animation-set-effect-expected.txt: Added.
* LayoutTests/animations/animation-set-effect.html: Added.
* Source/WebCore/animation/CSSAnimation.cpp:
(WebCore::CSSAnimation::setBindingsEffect):

Canonical link: 
https://commits.webkit.org/252432.1013@safari-7614-branch

Canonical link: https://commits.webkit.org/259548.3@safari-7615-branch


  Commit: 0972ae7e98ea650024cd118d6f4603e2891ad744
  
https://github.com/WebKit/WebKit/commit/0972ae7e98ea650024cd118d6f4603e2891ad744
  Author: Youenn Fablet 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
A LayoutTests/streams/blob-and-then-expected.txt
A LayoutTests/streams/blob-and-then.html
M Source/WebCore/Modules/fetch/FetchBodyConsumer.cpp
M Source/WebCore/Modules/streams/ReadableStreamSink.cpp

  Log Message:
  ---
  Cherry-pick 259548.6@safari-7615-branch (1b17df7c2063). 

Cherry-pick 252432.1018@safari-7614-branch (792c09f18dc7). rdar://103649054

Use-after-free in FetchBodyConsumer::resolve
https://bugs.webkit.org/show_bug.cgi?id=249996
rdar://103649054

Reviewed by Jonathan Bedard and Alex Christensen.

Make sure in FetchBodyConsumer that refed promise/source remain 
protected.

We also revert part of an unnecessary and wrong change from 
https://trac.webkit.org/changeset/227760.
This makes sure ReadableStreamToSharedBufferSink callback remains valid 
until completely executed in close case, as was the case in error case.
We use std::exchange instead of move as it is more semantically correct.

Covered by added test.

* LayoutTests/streams/blob-and-then-expected.txt: Added.
* LayoutTests/streams/blob-and-then.html: Added.
* Source/WebCore/Modules/fetch/FetchBodyConsumer.cpp:
(WebCore::FetchBodyConsumer::resolveWithFormData):
(WebCore::FetchBodyConsumer::consumeFormDataAsStream):
(WebCore::FetchBodyConsumer::resolve):
* Source/WebCore/Modules/streams/ReadableStreamSink.cpp:
(WebCore::ReadableStreamToSharedBufferSink::close):
(WebCore::ReadableStreamToSharedBufferSink::error):

Canonical link: 
https://commits.webkit.org/252432.1018@safari-7614-branch

Canonical link: https://commits.webkit.org/259548.6@safari-7615-branch


  Commit: 19fc5d5eee74f299e3b1fa214facc2d4d578d368
  
https://github.com/WebKit/WebKit/commit/19fc5d5eee74f299e3b1fa214facc2d4d578d368
  Author: David Li 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
A LayoutTests/editing/async-clipboard/clipboard-clear-expected.txt
A LayoutTests/editing/async-clipboard/clipboard-clear.html
M Source/WebCore/Modules/async-clipboard/ClipboardItemBindingsDataSource.cpp
M Source/WebCore/Modules/async-clipboard/ClipboardItemBindingsDataSource.h

  Log Message:
  ---
  Cherry-pick 259548.7@safari-7615-branch (83422ec49be9). 

Cherry-pick 252432.1019@safari-7614-branch (1988807a5229). rdar://103307563

[Clipboard] Explicitly call completion on clearing 
ClipboardItemTypeLoader
rdar://103307563

Reviewed by Jonathan Bedard and Wenson Hsieh.

In m_itemTypeLoaders.clear(), 
ClipboardItemBindingsDataSource::invokeCompletionHandler() is called after all 
m_itemTypeLoaders released
and traverses the itemTypeLoaders after itemTypeLoaders is clear but 
before the size is updated, causing nullptr accessment.
So we should explicitly call completion before itemTypeLoader is 
released.

* LayoutTests/editing/async-clipboard/clipboard-clear-expected.txt: 
Added.
* LayoutTests/editing/async-clipboard/clipboard-clear.html: Added.
* 
Source/WebCore/Modules/async-clipboard/ClipboardItemBindingsDataSource.cpp:
(WebCore::ClipboardItemBindingsDataSource::clearItemTypeLoaders):
(WebCore::ClipboardItemBindingsDataSource::collectDataForWriting):

(WebCore::ClipboardItemBindingsDataSource::ClipboardItemTypeLoader::~ClipboardItemTypeLoader):
* 
Source/WebCore/Modules/async-clipboard/ClipboardItemBindingsDataSource.h:

 

[webkit-changes] [WebKit/WebKit] f8e263: Fix build failure from 262184@main

2023-03-28 Thread Commit Queue
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f8e263dc172cc53fd017d2da5bca6cbfd71016f8
  
https://github.com/WebKit/WebKit/commit/f8e263dc172cc53fd017d2da5bca6cbfd71016f8
  Author: Etienne Segonzac 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.h
M Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.mm

  Log Message:
  ---
  Fix build failure from 262184@main
https://bugs.webkit.org/show_bug.cgi?id=254613


Reviewed by Megan Gardner and Tim Horton.

Finish rebasing on top of 261552@main.

* Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.h:
* Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStore::encode const):
(WebKit::RemoteLayerBackingStoreProperties::decode):
Encode / decode the backing store's type.
(WebKit::RemoteLayerBackingStoreProperties::applyBackingStoreToLayer):

Canonical link: https://commits.webkit.org/262234@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 3d1454: Unreviewed crash fix for Windows Debug

2023-03-28 Thread Fujii Hironori
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 3d14545676fe78a6e2e8067347f226f03ac78712
  
https://github.com/WebKit/WebKit/commit/3d14545676fe78a6e2e8067347f226f03ac78712
  Author: Fujii Hironori 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/JavaScriptCore/jit/CCallHelpers.h

  Log Message:
  ---
  Unreviewed crash fix for Windows Debug
https://bugs.webkit.org/show_bug.cgi?id=254573

The following assertion were failing for Windows Debug.

> ASSERTION FAILED: currentGPRArgument >= GPRInfo::numberOfArgumentRegisters || 
> currentFPRArgument >= FPRInfo::numberOfArgumentRegisters
> Source\JavaScriptCore\jit\CCallHelpers.h(371) : 
> JSC::CCallHelpers::calculatePokeOffset

This assertion isn't valid for Windows. Conditioned out the assertion
for Windows.

* Source/JavaScriptCore/jit/CCallHelpers.h:
(JSC::CCallHelpers::calculatePokeOffset):

Canonical link: https://commits.webkit.org/262233@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] ae8a0c: [Wasm-GC] Implement `array.new_canon_elem`

2023-03-28 Thread Tim Chevalier
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: ae8a0c58784a39fadc317595352e30e7e998449a
  
https://github.com/WebKit/WebKit/commit/ae8a0c58784a39fadc317595352e30e7e998449a
  Author: Tim Chevalier 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
A JSTests/wasm/gc/array_new_elem.js
M JSTests/wasm/wasm.json
M Source/JavaScriptCore/wasm/WasmAirIRGeneratorBase.h
M Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp
M Source/JavaScriptCore/wasm/WasmBBQJIT.cpp
M Source/JavaScriptCore/wasm/WasmExceptionType.h
M Source/JavaScriptCore/wasm/WasmFunctionParser.h
M Source/JavaScriptCore/wasm/WasmInstance.cpp
M Source/JavaScriptCore/wasm/WasmInstance.h
M Source/JavaScriptCore/wasm/WasmLLIntBuiltin.h
M Source/JavaScriptCore/wasm/WasmLLIntGenerator.cpp
M Source/JavaScriptCore/wasm/WasmOperations.cpp
M Source/JavaScriptCore/wasm/WasmOperations.h
M Source/JavaScriptCore/wasm/WasmOperationsInlines.h
M Source/JavaScriptCore/wasm/WasmSectionParser.cpp
M Source/JavaScriptCore/wasm/WasmSlowPaths.cpp
M Source/JavaScriptCore/wasm/WasmTypeDefinition.cpp
M Source/JavaScriptCore/wasm/wasm.json

  Log Message:
  ---
  [Wasm-GC] Implement `array.new_canon_elem`
https://bugs.webkit.org/show_bug.cgi?id=251338

Reviewed by Justin Michaud.

Implement the `array.new_canon_elem` instruction, which creates a
new array initialized from an element segment (as specified in the GC
proposal MVP). Also add a modified version of the array spec tests
with references to bugs for all the remaining features that aren't
implemented.

* JSTests/wasm/gc/array_new_elem.js: Added.
(module):
(check):
(checkDataSegmentIndex):
(testArrayNewCanonElem):
(testArrayNewCanonElemExternref):
(testBadTypeIndex):
(testNonArrayType):
(testImmutableArrayType):
(testWrongTypeOffset):
(testWrongTypeSize):
(testNoElementSegments):
(testOutOfBoundsElementSegmentIndex):
(testTypeMismatch):
(testWrongNumberOfArguments):
(testInt32Overflow):
(testRefCallNullary):
(testRefCall):
(testIndirectCallNullary):
(testIndirectCall):
(testAllElementSegmentKinds):
(testNullFunctionIndex):
(testImportFunctions):
(testJSFunctions.imports.string_appeared_here.string_appeared_here):
(testJSFunctions):
* JSTests/wasm/wasm.json:
* Source/JavaScriptCore/wasm/WasmAirIRGeneratorBase.h:
(JSC::Wasm::ExpressionType>::addArrayNewElem):
* Source/JavaScriptCore/wasm/WasmB3IRGenerator.cpp:
(JSC::Wasm::B3IRGenerator::addArrayNewElem):
* Source/JavaScriptCore/wasm/WasmBBQJIT.cpp:
* Source/JavaScriptCore/wasm/WasmCallingConvention.h:
(JSC::Wasm::WasmCallingConvention::numberOfStackResults const):
* Source/JavaScriptCore/wasm/WasmExceptionType.h:
(JSC::Wasm::isTypeErrorExceptionType):
* Source/JavaScriptCore/wasm/WasmFunctionParser.h:
(JSC::Wasm::FunctionParser::addReferencedFunctions):
(JSC::Wasm::FunctionParser::parseExpression):
* Source/JavaScriptCore/wasm/WasmInstance.cpp:
(JSC::Wasm::Instance::copyElementSegment):
* Source/JavaScriptCore/wasm/WasmInstance.h:
* Source/JavaScriptCore/wasm/WasmLLIntBuiltin.h:
* Source/JavaScriptCore/wasm/WasmLLIntGenerator.cpp:
(JSC::Wasm::LLIntGenerator::callInformationForCaller):
(JSC::Wasm::LLIntGenerator::addArrayNewElem):
* Source/JavaScriptCore/wasm/WasmOperations.cpp:
(JSC::Wasm::JSC_DEFINE_JIT_OPERATION):
* Source/JavaScriptCore/wasm/WasmOperations.h:
* Source/JavaScriptCore/wasm/WasmOperationsInlines.h:
(JSC::Wasm::createArrayFromElementSegment):
(JSC::Wasm::arrayNewElem):
* Source/JavaScriptCore/wasm/WasmSectionParser.cpp:
(JSC::Wasm::SectionParser::parseElement):
* Source/JavaScriptCore/wasm/WasmSlowPaths.cpp:
(JSC::LLInt::WASM_SLOW_PATH_DECL):
* Source/JavaScriptCore/wasm/WasmTypeDefinition.cpp:
(JSC::Wasm::TypeInformation::signatureForLLIntBuiltin):
(JSC::Wasm::TypeInformation::TypeInformation):
* Source/JavaScriptCore/wasm/WasmTypeDefinition.h:
* Source/JavaScriptCore/wasm/wasm.json:

Canonical link: https://commits.webkit.org/262232@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] f3a498: Avoid doing event-related work for CSS animation e...

2023-03-28 Thread Chris Dumez
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f3a4982bb1a712a260572205d199b16147ce6797
  
https://github.com/WebKit/WebKit/commit/f3a4982bb1a712a260572205d199b16147ce6797
  Author: Chris Dumez 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebCore/animation/DeclarativeAnimation.cpp
M Source/WebCore/dom/Document.cpp
M Source/WebCore/dom/Document.h
M Source/WebCore/dom/EventNames.h

  Log Message:
  ---
  Avoid doing event-related work for CSS animation events when no event 
listener is registered
https://bugs.webkit.org/show_bug.cgi?id=254546

Reviewed by Antoine Quint.

* Source/WebCore/animation/DeclarativeAnimation.cpp:
(WebCore::DeclarativeAnimation::invalidateDOMEvents):
* Source/WebCore/dom/Document.cpp:
(WebCore::Document::addListenerTypeIfNeeded):
* Source/WebCore/dom/Document.h:
* Source/WebCore/dom/EventNames.h:
(WebCore::EventNames::isCSSAnimationEventType const):

Canonical link: https://commits.webkit.org/262231@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 661f8e: Revert [261851@main] Add a debug mode for adjustin...

2023-03-28 Thread Charlie Wolfe
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 661f8ec450bf0f7e667ca106cc955e8230bddc45
  
https://github.com/WebKit/WebKit/commit/661f8ec450bf0f7e667ca106cc955e8230bddc45
  Author: Charlie Wolfe 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml
M Source/WebCore/dom/Document.cpp

  Log Message:
  ---
  Revert [261851@main] Add a debug mode for adjusting URL for bindings
https://bugs.webkit.org/show_bug.cgi?id=254100
rdar://106885457

Unreviewed revert.

* Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml:
* Source/WebCore/dom/Document.cpp:
(WebCore::Document::urlForBindings const):

Canonical link: https://commits.webkit.org/262230@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] abafb8: Cherry-pick 252432.1018@safari-7614-branch (792c09...

2023-03-28 Thread youennf
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: abafb86e06cff4ef87143bef6ce7f56e4f6f6415
  
https://github.com/WebKit/WebKit/commit/abafb86e06cff4ef87143bef6ce7f56e4f6f6415
  Author: Youenn Fablet 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
A LayoutTests/streams/blob-and-then-expected.txt
A LayoutTests/streams/blob-and-then.html
M Source/WebCore/Modules/fetch/FetchBodyConsumer.cpp
M Source/WebCore/Modules/streams/ReadableStreamSink.cpp

  Log Message:
  ---
  Cherry-pick 252432.1018@safari-7614-branch (792c09f18dc7). rdar://107315556

Use-after-free in FetchBodyConsumer::resolve
https://bugs.webkit.org/show_bug.cgi?id=249996
rdar://103649054

Reviewed by Jonathan Bedard and Alex Christensen.

Make sure in FetchBodyConsumer that refed promise/source remain protected.

We also revert part of an unnecessary and wrong change from 
https://trac.webkit.org/changeset/227760.
This makes sure ReadableStreamToSharedBufferSink callback remains valid 
until completely executed in close case, as was the case in error case.
We use std::exchange instead of move as it is more semantically correct.

Covered by added test.

* LayoutTests/streams/blob-and-then-expected.txt: Added.
* LayoutTests/streams/blob-and-then.html: Added.
* Source/WebCore/Modules/fetch/FetchBodyConsumer.cpp:
(WebCore::FetchBodyConsumer::resolveWithFormData):
(WebCore::FetchBodyConsumer::consumeFormDataAsStream):
(WebCore::FetchBodyConsumer::resolve):
* Source/WebCore/Modules/streams/ReadableStreamSink.cpp:
(WebCore::ReadableStreamToSharedBufferSink::close):
(WebCore::ReadableStreamToSharedBufferSink::error):

Canonical link: https://commits.webkit.org/252432.1018@safari-7614-branch

Canonical link: https://commits.webkit.org/262229@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 72ed5e: Avoid some string allocations in JSStringJoiner::j...

2023-03-28 Thread Chris Dumez
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 72ed5e715480a97da6c55be10cd6c058287df888
  
https://github.com/WebKit/WebKit/commit/72ed5e715480a97da6c55be10cd6c058287df888
  Author: Chris Dumez 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/JavaScriptCore/runtime/JSStringJoiner.h
M Source/WTF/wtf/text/StringView.h

  Log Message:
  ---
  Avoid some string allocations in JSStringJoiner::join()
https://bugs.webkit.org/show_bug.cgi?id=254594

Reviewed by Yusuke Suzuki.

Avoid some string allocations in JSStringJoiner::join(), in the common case
where the StringViewWithUnderlyingString's view covers the whole underlying
string.

* Source/JavaScriptCore/runtime/JSStringJoiner.h:
(JSC::JSStringJoiner::join):
* Source/WTF/wtf/text/StringView.h:
(WTF::StringViewWithUnderlyingString::toString const):

Canonical link: https://commits.webkit.org/262228@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 494321: Cherry-pick 252432.1019@safari-7614-branch (198880...

2023-03-28 Thread David-Li-Jy
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 4943210909a2aeabf7c1e4c8be389b48761078c9
  
https://github.com/WebKit/WebKit/commit/4943210909a2aeabf7c1e4c8be389b48761078c9
  Author: David Li 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
A LayoutTests/editing/async-clipboard/clipboard-clear-expected.txt
A LayoutTests/editing/async-clipboard/clipboard-clear.html
M Source/WebCore/Modules/async-clipboard/ClipboardItemBindingsDataSource.cpp
M Source/WebCore/Modules/async-clipboard/ClipboardItemBindingsDataSource.h

  Log Message:
  ---
  Cherry-pick 252432.1019@safari-7614-branch (1988807a5229). rdar://107319167

[Clipboard] Explicitly call completion on clearing ClipboardItemTypeLoader
rdar://103307563

Reviewed by Jonathan Bedard and Wenson Hsieh.

In m_itemTypeLoaders.clear(), 
ClipboardItemBindingsDataSource::invokeCompletionHandler() is called after all 
m_itemTypeLoaders released
and traverses the itemTypeLoaders after itemTypeLoaders is clear but before 
the size is updated, causing nullptr accessment.
So we should explicitly call completion before itemTypeLoader is released.

* LayoutTests/editing/async-clipboard/clipboard-clear-expected.txt: Added.
* LayoutTests/editing/async-clipboard/clipboard-clear.html: Added.
* 
Source/WebCore/Modules/async-clipboard/ClipboardItemBindingsDataSource.cpp:
(WebCore::ClipboardItemBindingsDataSource::clearItemTypeLoaders):
(WebCore::ClipboardItemBindingsDataSource::collectDataForWriting):

(WebCore::ClipboardItemBindingsDataSource::ClipboardItemTypeLoader::~ClipboardItemTypeLoader):
* Source/WebCore/Modules/async-clipboard/ClipboardItemBindingsDataSource.h:

Canonical link: https://commits.webkit.org/252432.1019@safari-7614-branch

Canonical link: https://commits.webkit.org/262227@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] d9f105: REGRESSION (262146@main): TestWGSL.WGSLASTDumperTe...

2023-03-28 Thread Tadeu Zagallo
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: d9f105bb73af2ccf3a0a3d5325913aba08347cbd
  
https://github.com/WebKit/WebKit/commit/d9f105bb73af2ccf3a0a3d5325913aba08347cbd
  Author: Tadeu Zagallo 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Tools/TestWebKitAPI/Tests/WGSL/ASTStringDumperTests.cpp

  Log Message:
  ---
  REGRESSION (262146@main): TestWGSL.WGSLASTDumperTests.dumpTriangleVert is 
failing
https://bugs.webkit.org/show_bug.cgi?id=254596
rdar://107320480

Unreviewed, simple test fix.

The test relies on the serialization of the AST, and I changed the 
serialization of
vector types from `VecN` to `vecN`. Just update the test to reflect the change.

* Tools/TestWebKitAPI/Tests/WGSL/ASTStringDumperTests.cpp:
(TestWGSLAPI::TEST):

Canonical link: https://commits.webkit.org/262226@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] d25d5b: [UI-side compositing] imported/w3c/web-platform-te...

2023-03-28 Thread youennf
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: d25d5bb70da246cd792fdffbbd1561c2a4bc0759
  
https://github.com/WebKit/WebKit/commit/d25d5bb70da246cd792fdffbbd1561c2a4bc0759
  Author: Youenn Fablet 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp

  Log Message:
  ---
  [UI-side compositing] 
imported/w3c/web-platform-tests/webcodecs/videoFrame-texImage.any.html fails
https://bugs.webkit.org/show_bug.cgi?id=254581
rdar://106116371

Reviewed by Eric Carlson.

Disable the fast path until we are able to do ARGB/BGRA to YUV conversion in 
GPUProcess via pixel conformer API.

* Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp:
(WebCore::isVideoFrameFormatEligibleToCopy):

Canonical link: https://commits.webkit.org/262225@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 2b9589: [IFC] Fix fast/repaint/block-layout-inline-childre...

2023-03-28 Thread Alan Baradlay
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 2b9589e4e698907f82728d4f07a32b50721568d7
  
https://github.com/WebKit/WebKit/commit/2b9589e4e698907f82728d4f07a32b50721568d7
  Author: Alan Baradlay 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
A 
LayoutTests/fast/inline/out-of-flow-inline-with-float-and-text-align-on-last-line-expected.html
A 
LayoutTests/fast/inline/out-of-flow-inline-with-float-and-text-align-on-last-line.html
M 
Source/WebCore/layout/formattingContexts/inline/InlineFormattingGeometry.cpp

  Log Message:
  ---
  [IFC] Fix fast/repaint/block-layout-inline-children-float-positioned.html
https://bugs.webkit.org/show_bug.cgi?id=254565

Reviewed by Antti Koivisto.

1. floats not only move line boxes but they also shrink them
2. text-align offset logic is based on the line box's width (adjusted by the 
potentially intrusive floats)

* 
LayoutTests/fast/inline/out-of-flow-inline-with-float-and-text-align-on-last-line-expected.html:
 Added.
* 
LayoutTests/fast/inline/out-of-flow-inline-with-float-and-text-align-on-last-line.html:
 Added.
* Source/WebCore/layout/formattingContexts/inline/InlineFormattingGeometry.cpp:
(WebCore::Layout::InlineFormattingGeometry::contentLeftAfterLastLine const):

Canonical link: https://commits.webkit.org/262224@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 1c3218: WebSWServerConnection::scheduleJobInServer should ...

2023-03-28 Thread youennf
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 1c3218b592f05af0ec5be48a2f69635e6974d5cb
  
https://github.com/WebKit/WebKit/commit/1c3218b592f05af0ec5be48a2f69635e6974d5cb
  Author: Youenn Fablet 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebKit/NetworkProcess/ServiceWorker/WebSWServerConnection.cpp

  Log Message:
  ---
  WebSWServerConnection::scheduleJobInServer should check that the job data's 
top level origin is valid
https://bugs.webkit.org/show_bug.cgi?id=254572
rdar://107063897

Reviewed by Alex Christensen.

Adding a connection check that it is fine for this WebProcess to access the top 
level origin.

* Source/WebKit/NetworkProcess/ServiceWorker/WebSWServerConnection.cpp:
(WebKit::WebSWServerConnection::scheduleJobInServer):

Canonical link: https://commits.webkit.org/262223@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 4dc62c: HTML Comments after are placed at the bott...

2023-03-28 Thread Anne van Kesteren
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 4dc62c7c9b46afea3f1ebda36f85d13dcd158ee8
  
https://github.com/WebKit/WebKit/commit/4dc62c7c9b46afea3f1ebda36f85d13dcd158ee8
  Author: Anne van Kesteren 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M LayoutTests/editing/selection/doubleclick-crash-expected.txt
M LayoutTests/html5lib/resources/webkit01.dat
M LayoutTests/platform/gtk/editing/selection/doubleclick-crash-expected.txt
M Source/WebCore/html/parser/HTMLTreeBuilder.cpp
M Source/WebCore/html/parser/HTMLTreeBuilder.h

  Log Message:
  ---
  HTML Comments after  are placed at the bottom of the  contents
https://bugs.webkit.org/show_bug.cgi?id=79273
rdar://95557786

Reviewed by Ryosuke Niwa.

Consume whitespace in the "after body" and "after after body" modes so 
following comments get inserted after the body element.

Tests are from 
https://chromium.googlesource.com/chromium/src/+/9a75bc03766976f883731f08d52ae70204f94caa%5E%21/
 and contrary to the assertion there do not pass in WebKit today.

* LayoutTests/editing/selection/doubleclick-crash-expected.txt:
* LayoutTests/html5lib/resources/webkit01.dat:
* LayoutTests/platform/gtk/editing/selection/doubleclick-crash-expected.txt:
* Source/WebCore/html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::consumeAndInsertWhitespace):

Abstracts a common operation.

(WebCore::HTMLTreeBuilder::processCharacterBuffer):
(WebCore::HTMLTreeBuilder::processTokenInForeignContent):
* Source/WebCore/html/parser/HTMLTreeBuilder.h:

Canonical link: https://commits.webkit.org/26@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 53f231: [GStreamer][WebCodec] Gardening after 262208@main

2023-03-28 Thread Philippe Normand
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 53f231e103d66aac687d2e8831c1e1a288f72970
  
https://github.com/WebKit/WebKit/commit/53f231e103d66aac687d2e8831c1e1a288f72970
  Author: Philippe Normand 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M LayoutTests/platform/glib/TestExpectations
A 
LayoutTests/platform/glib/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any.worker_vp9_p2-expected.txt
A 
LayoutTests/platform/glib/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any_vp9_p2-expected.txt
A 
LayoutTests/platform/glib/imported/w3c/web-platform-tests/webcodecs/reconfiguring-encoder.https.any.worker_vp9_p2-expected.txt
A 
LayoutTests/platform/glib/imported/w3c/web-platform-tests/webcodecs/reconfiguring-encoder.https.any_vp9_p2-expected.txt
A 
LayoutTests/platform/glib/imported/w3c/web-platform-tests/webcodecs/videoFrame-construction.any-expected.txt

  Log Message:
  ---
  [GStreamer][WebCodec] Gardening after 262208@main
https://bugs.webkit.org/show_bug.cgi?id=254593

Unreviewed.

full-cycle tests fail slightly differently than on the Apple ports. 
reconfiguring-encoder pass on
GStreamer but not on Apple ports. videoFrame-construction still fails, but 
doesn't time out as on
Apple ports.

* LayoutTests/platform/glib/TestExpectations:
* 
LayoutTests/platform/glib/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any.worker_vp9_p2-expected.txt:
 Added.
* 
LayoutTests/platform/glib/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any_vp9_p2-expected.txt:
 Added.
* 
LayoutTests/platform/glib/imported/w3c/web-platform-tests/webcodecs/reconfiguring-encoder.https.any.worker_vp9_p2-expected.txt:
 Added.
* 
LayoutTests/platform/glib/imported/w3c/web-platform-tests/webcodecs/reconfiguring-encoder.https.any_vp9_p2-expected.txt:
 Added.
* 
LayoutTests/platform/glib/imported/w3c/web-platform-tests/webcodecs/videoFrame-construction.any-expected.txt:
 Added.

Canonical link: https://commits.webkit.org/262221@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 2ccbd2: REGRESSION (262120@main): [UI-side compositing] co...

2023-03-28 Thread Simon Fraser
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 2ccbd299a0e00fd319ff707903b287c637db81b2
  
https://github.com/WebKit/WebKit/commit/2ccbd299a0e00fd319ff707903b287c637db81b2
  Author: Simon Fraser 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.mm

  Log Message:
  ---
  REGRESSION (262120@main): [UI-side compositing] 
compositing/hidpi-non-simple-compositing-layer-with-fractional-size-and-background.html
 crashes
https://bugs.webkit.org/show_bug.cgi?id=254567
rdar://107291066

Reviewed by Tim Horton.

Convert the assertion added in 262120@main to some logging, because some
layout tests with many layers hit it due to hitting the timeout in
`RemoteImageBufferProxy::ensureBackendCreated()`.

* Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStore::encode const):

This affected:
compositing/hidpi-non-simple-compositing-layer-with-fractional-size-and-background.html
fast/layers/hidpi-transform-on-child-content-is-mispositioned.html
fast/sub-pixel/compositing-layers-on-subpixel-position.html

Canonical link: https://commits.webkit.org/262220@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 4a4f09: Use DOMCacheEngine::CrossThreadRecord in CacheStor...

2023-03-28 Thread Sihui
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 4a4f090090cbb3536a67f10cdbcf0851e64f276a
  
https://github.com/WebKit/WebKit/commit/4a4f090090cbb3536a67f10cdbcf0851e64f276a
  Author: Sihui Liu 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebCore/Modules/cache/CacheStorageConnection.h
M Source/WebCore/Modules/cache/DOMCache.cpp
M Source/WebCore/Modules/cache/DOMCacheEngine.cpp
M Source/WebCore/Modules/cache/DOMCacheEngine.h
M Source/WebCore/Modules/cache/WorkerCacheStorageConnection.cpp
M Source/WebCore/Modules/cache/WorkerCacheStorageConnection.h
M Source/WebCore/page/CacheStorageProvider.h
M Source/WebKit/WebProcess/Cache/WebCacheStorageConnection.cpp
M Source/WebKit/WebProcess/Cache/WebCacheStorageConnection.h

  Log Message:
  ---
  Use DOMCacheEngine::CrossThreadRecord in CacheStorageConnection
https://bugs.webkit.org/show_bug.cgi?id=254430
rdar://107290770

Reviewed by Youenn Fablet.

This would simplify the code a bit.

* Source/WebCore/Modules/cache/CacheStorageConnection.h:
* Source/WebCore/Modules/cache/DOMCache.cpp:
(WebCore::DOMCache::queryCache):
(WebCore::DOMCache::batchPutOperation):
* Source/WebCore/Modules/cache/DOMCacheEngine.cpp:
(WebCore::DOMCacheEngine::CrossThreadRecord::isolatedCopy):
* Source/WebCore/Modules/cache/DOMCacheEngine.h:
* Source/WebCore/Modules/cache/WorkerCacheStorageConnection.cpp:
(WebCore::isolatedCopyCrossThreadRecordsOrError):
(WebCore::WorkerCacheStorageConnection::retrieveRecords):
(WebCore::WorkerCacheStorageConnection::retrieveRecordsCompleted):
(WebCore::WorkerCacheStorageConnection::batchPutOperation):
(WebCore::toCrossThreadRecordData): Deleted.
(WebCore::fromCrossThreadRecordData): Deleted.
(WebCore::recordsDataFromRecords): Deleted.
(WebCore::recordsDataOrErrorFromRecords): Deleted.
(WebCore::recordsFromRecordsData): Deleted.
(WebCore::recordsOrErrorFromRecordsData): Deleted.
* Source/WebCore/Modules/cache/WorkerCacheStorageConnection.h:
* Source/WebCore/page/CacheStorageProvider.h:
* Source/WebKit/WebProcess/Cache/WebCacheStorageConnection.cpp:
(WebKit::WebCacheStorageConnection::retrieveRecords):
(WebKit::WebCacheStorageConnection::batchPutOperation):
* Source/WebKit/WebProcess/Cache/WebCacheStorageConnection.h:

Canonical link: https://commits.webkit.org/262219@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 637780: Migrate ContentFilterUnblockHandler to new seriali...

2023-03-28 Thread Alex Christensen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 637780036cfcbe9a8a8a6927d11bcbe74061a37e
  
https://github.com/WebKit/WebKit/commit/637780036cfcbe9a8a8a6927d11bcbe74061a37e
  Author: Alex Christensen 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebCore/PAL/PAL.xcodeproj/project.pbxproj
A Source/WebCore/PAL/pal/spi/cocoa/NSKeyedUnarchiverSPI.h
M Source/WebCore/platform/ContentFilterUnblockHandler.h
M Source/WebCore/platform/cocoa/ContentFilterUnblockHandlerCocoa.mm
M Source/WebKit/Shared/Cocoa/WebCoreArgumentCodersCocoa.serialization.in
M Source/WebKit/Shared/WebCoreArgumentCoders.h
M Source/WebKit/Shared/mac/WebCoreArgumentCodersMac.mm

  Log Message:
  ---
  Migrate ContentFilterUnblockHandler to new serialization format
https://bugs.webkit.org/show_bug.cgi?id=254568

Reviewed by Per Arne Vollan and Andy Estes.

*.serialization.in generated serialization exposes metadata to the IPC test API.

* Source/WebCore/PAL/PAL.xcodeproj/project.pbxproj:
* Source/WebCore/PAL/pal/spi/cocoa/NSKeyedUnarchiverSPI.h: Added.
* Source/WebCore/platform/ContentFilterUnblockHandler.h:
(WebCore::ContentFilterUnblockHandler::unblockedAfterRequest const):
* Source/WebCore/platform/cocoa/ContentFilterUnblockHandlerCocoa.mm:
(WebCore::ContentFilterUnblockHandler::ContentFilterUnblockHandler):
(WebCore::ContentFilterUnblockHandler::webFilterEvaluatorData const):
(WebCore::ContentFilterUnblockHandler::unpackWebFilterEvaluatorData):
(WebCore::ContentFilterUnblockHandler::requestUnblockAsync const):
(WebCore::ContentFilterUnblockHandler::setUnblockedAfterRequest):
(WebCore::ContentFilterUnblockHandler::encode const): Deleted.
(WebCore::ContentFilterUnblockHandler::decode): Deleted.
* Source/WebKit/Shared/Cocoa/WebCoreArgumentCodersCocoa.serialization.in:
* Source/WebKit/Shared/WebCoreArgumentCoders.h:
* Source/WebKit/Shared/mac/WebCoreArgumentCodersMac.mm:
(IPC::ArgumentCoder::encode): Deleted.
(IPC::ArgumentCoder::decode): Deleted.

Canonical link: https://commits.webkit.org/262218@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] f73dcb: hasTrimmedMargin should return false for out of fl...

2023-03-28 Thread Sammy Gill
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f73dcb9ce6b70f402f0eaf7202a6d682cd68b011
  
https://github.com/WebKit/WebKit/commit/f73dcb9ce6b70f402f0eaf7202a6d682cd68b011
  Author: Sammy Gill 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebCore/rendering/RenderBox.cpp

  Log Message:
  ---
  hasTrimmedMargin should return false for out of flow boxes
https://bugs.webkit.org/show_bug.cgi?id=254540
rdar://107277206

Reviewed by Alan Baradlay.

The margin-trim spec says that the property only applies to
in-flow boxes and floats, so the hasTrimmedMargin functions should
return false if the call to isInFlow returns false.

Without this test cases may trigger an assert in the code that guards
the rest of the logic in the functions. css3/flexbox/insert-text-crash
is an example of a test case that would trigger the assert due to the
absolutely positioned box.

* Source/WebCore/rendering/RenderBox.cpp:
(WebCore::RenderBox::hasTrimmedMargin const):

Canonical link: https://commits.webkit.org/262217@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] afadc0: Document Quirks.cpp with original bugs

2023-03-28 Thread Karl Dubost
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: afadc0ae8b648d26066c9e5481fb5ec3bed40e33
  
https://github.com/WebKit/WebKit/commit/afadc0ae8b648d26066c9e5481fb5ec3bed40e33
  Author: Karl Dubost 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebCore/page/Quirks.cpp

  Log Message:
  ---
  Document Quirks.cpp with original bugs
https://bugs.webkit.org/show_bug.cgi?id=254389
rdar://107167633

Reviewed by Ryosuke Niwa and Alexey Proskuryakov.

Quirks.cpp has a lot of history. Code rewriting makes it hard
to find the origin of a quirks and understand how to properly
test it again. By documenting with the appropriate bugzilla bug
or radar issue number, it makes it easier for engineers to find
again the steps to reproduce and understand if the quirk is
still needed.

* Source/WebCore/page/Quirks.cpp:

Canonical link: https://commits.webkit.org/262216@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 7df0ac: REGRESSION(261943@main) [iOS] media/video-object-f...

2023-03-28 Thread Jer Noble
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 7df0acc2c3c3436563b3e80fa6e102be458927fc
  
https://github.com/WebKit/WebKit/commit/7df0acc2c3c3436563b3e80fa6e102be458927fc
  Author: Jer Noble 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemote.cpp
M 
Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemoteCustom.h
M 
Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemoteCustom.mm

  Log Message:
  ---
  REGRESSION(261943@main) [iOS] media/video-object-fit.html failing
https://bugs.webkit.org/show_bug.cgi?id=254560
rdar://107290418

Reviewed by Eric Carlson.

Revert more parts of 260575@main. In 260575@main, a call to didCommit() in
PlatformCALayerRemote::recursiveBuildTransaction() was removed to force the 
compositor to
send the new properties up to the UIProcess (rather than just apply them 
locally). And this
worked as intended so long as "no remote hosting from the WebContent process" 
was enabled.
However, as soon as an off-by-default runtime check was added in 261943@main, 
the removal
of didCommit() caused all layer properties to be applied _both_ in the 
UIProcess _and_ the
WebContent process, which for videos whose contents' aspect ratio did not match 
their own,
caused them to be pushed partially or completely out of frame.

It also broke the media/video-object-fit.html test.

Add a parallel runtime check that only calls didCommit() when we are on the 
legacy
path for video content.

* Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemote.cpp:
(WebKit::PlatformCALayerRemote::recursiveBuildTransaction):
* 
Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemoteCustom.h:
* 
Source/WebKit/WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemoteCustom.mm:
(WebKit::PlatformCALayerRemoteCustom::PlatformCALayerRemoteCustom):

Canonical link: https://commits.webkit.org/262215@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 9b7000: [IFC] Issue repaint on newly positioned float boxes

2023-03-28 Thread Alan Baradlay
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9b70002cb7e5a4eb6d6b032d368da579add9c2e8
  
https://github.com/WebKit/WebKit/commit/9b70002cb7e5a4eb6d6b032d368da579add9c2e8
  Author: Alan Baradlay 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
A 
LayoutTests/fast/repaint/float-box-appears-and-no-inline-content-expected.txt
A LayoutTests/fast/repaint/float-box-appears-and-no-inline-content.html
M Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.cpp

  Log Message:
  ---
  [IFC] Issue repaint on newly positioned float boxes
https://bugs.webkit.org/show_bug.cgi?id=254569

Reviewed by Antti Koivisto.

Floats are not part of the repaintTop/bottom pair returned by inline layout.

* 
LayoutTests/fast/repaint/float-box-appears-and-no-inline-content-expected.txt: 
Added.
* LayoutTests/fast/repaint/float-box-appears-and-no-inline-content.html: Added.
* Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.cpp:
(WebCore::LayoutIntegration::LineLayout::updateRenderTreePositions):

Canonical link: https://commits.webkit.org/262214@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] d7569a: LayoutTests/imported/w3c/web-platform-tests/stream...

2023-03-28 Thread youennf
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: d7569a3a43f8c3222628f8d3494afecc4d902f5f
  
https://github.com/WebKit/WebKit/commit/d7569a3a43f8c3222628f8d3494afecc4d902f5f
  Author: Youenn Fablet 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
R 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/general-expected.txt

  Log Message:
  ---
  
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/general-expected.txt
 is no longer needed
https://bugs.webkit.org/show_bug.cgi?id=254584
rdar://problem/107314616

Unreviewed.

* 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/general-expected.txt:
 Removed.

Canonical link: https://commits.webkit.org/262213@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 3c19d4: Optimize createJSHTMLWrapper()

2023-03-28 Thread Chris Dumez
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 3c19d495573e7ad837bd534108d28ea4e7a1eef1
  
https://github.com/WebKit/WebKit/commit/3c19d495573e7ad837bd534108d28ea4e7a1eef1
  Author: Chris Dumez 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebCore/dom/make_names.pl

  Log Message:
  ---
  Optimize createJSHTMLWrapper()
https://bugs.webkit.org/show_bug.cgi?id=254564

Reviewed by Yusuke Suzuki.

Optimize createJSHTMLWrapper() by using a switch statement and leveraging the
fairly recently added ElementName enumeration.

The previous code was relying on a HashMap which has some extra cost associated
with hashing and dealing with hash collisions. It also relied on function
pointers which made inlining harder.

* Source/WebCore/dom/make_names.pl:
(printFactoryCppFile):
(printWrapperFactoryCppFile):

Canonical link: https://commits.webkit.org/262212@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] eda7c8: [IFC] Fix imported/w3c/web-platform-tests/css/css-...

2023-03-28 Thread Alan Baradlay
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: eda7c8257fb440133f32a650021c22baffd4869f
  
https://github.com/WebKit/WebKit/commit/eda7c8257fb440133f32a650021c22baffd4869f
  Author: Alan Baradlay 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M 
Source/WebCore/layout/formattingContexts/inline/InlineFormattingGeometry.cpp
M Source/WebCore/layout/formattingContexts/inline/InlineFormattingGeometry.h

  Log Message:
  ---
  [IFC] Fix 
imported/w3c/web-platform-tests/css/css-text/text-indent/text-indent-with-absolute-pos-child.html
https://bugs.webkit.org/show_bug.cgi?id=254561

Reviewed by Antti Koivisto.

This is in preparation for supporting out-of-flow/float content only. In such 
cases text-indent needs to know that there's no line at all in this block 
container.

* Source/WebCore/layout/formattingContexts/inline/InlineFormattingGeometry.cpp:
(WebCore::Layout::InlineFormattingGeometry::contentLeftAfterLastLine const):
(WebCore::Layout::InlineFormattingGeometry::staticPositionForOutOfFlowInlineLevelBox
 const):
* Source/WebCore/layout/formattingContexts/inline/InlineFormattingGeometry.h:

Canonical link: https://commits.webkit.org/262211@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] d2424c: [GTK] Use DMABuf and WebKit IPC for rendering inst...

2023-03-28 Thread Carlos Garcia Campos
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: d2424c0fc67f6a46921edb52874720bb99c0c699
  
https://github.com/WebKit/WebKit/commit/d2424c0fc67f6a46921edb52874720bb99c0c699
  Author: Carlos Garcia Campos 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebCore/PlatformGTK.cmake
M Source/WebCore/SourcesGTK.txt
M Source/WebCore/platform/graphics/PlatformDisplay.cpp
M Source/WebCore/platform/graphics/PlatformDisplay.h
M Source/WebCore/platform/graphics/egl/GLContext.cpp
M Source/WebCore/platform/graphics/egl/GLContext.h
M Source/WebCore/platform/graphics/egl/GLContextLibWPE.cpp
M Source/WebCore/platform/graphics/egl/GLContextWayland.cpp
M Source/WebCore/platform/graphics/egl/GLContextX11.cpp
A Source/WebCore/platform/graphics/egl/PlatformDisplayHeadless.cpp
A Source/WebCore/platform/graphics/egl/PlatformDisplayHeadless.h
M Source/WebKit/PlatformGTK.cmake
M Source/WebKit/Scripts/webkit/messages.py
M 
Source/WebKit/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp
M 
Source/WebKit/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h
M Source/WebKit/Shared/WebProcessCreationParameters.cpp
M Source/WebKit/Shared/WebProcessCreationParameters.h
M Source/WebKit/SourcesGTK.txt
M Source/WebKit/UIProcess/API/glib/WebKitProtocolHandler.cpp
M Source/WebKit/UIProcess/glib/WebProcessPoolGLib.cpp
M Source/WebKit/UIProcess/gtk/AcceleratedBackingStore.cpp
A Source/WebKit/UIProcess/gtk/AcceleratedBackingStoreDMABuf.cpp
A Source/WebKit/UIProcess/gtk/AcceleratedBackingStoreDMABuf.h
A Source/WebKit/UIProcess/gtk/AcceleratedBackingStoreDMABuf.messages.in
M Source/WebKit/WebProcess/WebPage/AcceleratedSurface.cpp
M Source/WebKit/WebProcess/WebPage/AcceleratedSurface.h
M Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.cpp
M Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.h
A Source/WebKit/WebProcess/WebPage/gtk/AcceleratedSurfaceDMABuf.cpp
A Source/WebKit/WebProcess/WebPage/gtk/AcceleratedSurfaceDMABuf.h
M Source/WebKit/WebProcess/WebProcess.h
M Source/WebKit/WebProcess/glib/WebProcessGLib.cpp

  Log Message:
  ---
  [GTK] Use DMABuf and WebKit IPC for rendering instead of wpe/x11
https://bugs.webkit.org/show_bug.cgi?id=252988

Reviewed by Žan Doberšek.

Instead of the wpe rendered, which uses a nested wayland compositor, and
x11, which uses a redirected xcomposite window, we can make the web
process render always into a pbuffer using mesa surfaceless platform and
export the rendered texture using DMAbuf to be consumed by the UI
process. This way the rendering is independent from the platform
(wayland/x11), and in the UI process we just import the DMABuf into a
texture that we pass to GTK for rendering into the web view widget. If
under X11 GTK uses GLX instead of EGL we manually import the DMABuf
using libgbm to create a cairo surface that we can pass to GTK without
using GL.

* Source/WebCore/PlatformGTK.cmake:
* Source/WebCore/SourcesGTK.txt:
* Source/WebCore/platform/graphics/PlatformDisplay.cpp:
(WebCore::PlatformDisplay::initializeEGLDisplay):
* Source/WebCore/platform/graphics/PlatformDisplay.h:
* Source/WebCore/platform/graphics/egl/GLContextEGL.cpp:
(WebCore::GLContextEGL::getEGLConfig):
(WebCore::GLContextEGL::createWindowContext):
(WebCore::GLContextEGL::createPbufferContext):
(WebCore::GLContextEGL::createSurfacelessContext):
(WebCore::GLContextEGL::createContext):
(WebCore::GLContextEGL::createSharingContext):
* Source/WebCore/platform/graphics/egl/GLContextEGL.h:
* Source/WebCore/platform/graphics/egl/GLContextEGLLibWPE.cpp:
(WebCore::GLContextEGL::createWPEContext):
* Source/WebCore/platform/graphics/egl/GLContextEGLWayland.cpp:
(WebCore::GLContextEGL::createWaylandContext):
* Source/WebCore/platform/graphics/egl/GLContextEGLX11.cpp:
(WebCore::GLContextEGL::createPixmapContext):
* Source/WebCore/platform/graphics/egl/PlatformDisplayHeadless.cpp: Added.
(WebCore::PlatformDisplayHeadless::create):
(WebCore::PlatformDisplayHeadless::PlatformDisplayHeadless):
(WebCore::PlatformDisplayHeadless::~PlatformDisplayHeadless):
* Source/WebCore/platform/graphics/egl/PlatformDisplayHeadless.h: Added.
* Source/WebKit/PlatformGTK.cmake:
* Source/WebKit/Scripts/webkit/messages.py:
(headers_for_type):
* 
Source/WebKit/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:
(WebKit::ThreadedCompositor::createGLContext):
(WebKit::ThreadedCompositor::invalidate):
* 
Source/WebKit/Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h:
* Source/WebKit/Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::encode const):
(WebKit::WebProcessCreationParameters::decode):
* Source/WebKit/Shared/WebProcessCreationParameters.h:
* Source/WebKit/SourcesGTK.txt:
* Source/WebKit/UIProcess/API/glib/WebKitProtocolHandler.cpp:
(WebKit::WebKitProto

[webkit-changes] [WebKit/WebKit] 20c777: [IFC] Decouple in- and out-of-flow type of layout ...

2023-03-28 Thread Alan Baradlay
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 20c7771a586d5b278920935986b21867bd6988bb
  
https://github.com/WebKit/WebKit/commit/20c7771a586d5b278920935986b21867bd6988bb
  Author: Alan Baradlay 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M 
Source/WebCore/layout/formattingContexts/inline/InlineFormattingContext.cpp
M Source/WebCore/layout/formattingContexts/inline/InlineFormattingContext.h
M Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.cpp

  Log Message:
  ---
  [IFC] Decouple in- and out-of-flow type of layout (static position for 
out-of-flow)
https://bugs.webkit.org/show_bug.cgi?id=254550

Reviewed by Antti Koivisto.

This is in preparation for being able to layout content when only float and 
out-of-flow boxes are present (strictly speaking we should only initiate IFC 
layout when there's at least one out-of-flow box with display inline).

* Source/WebCore/layout/formattingContexts/inline/InlineFormattingContext.cpp:
(WebCore::Layout::InlineFormattingContext::layoutInFlowAndFloatContentForIntegration):
(WebCore::Layout::InlineFormattingContext::layoutOutOfFlowContentForIntegration):
(WebCore::Layout::InlineFormattingContext::layoutFloatContentOnly):
(WebCore::Layout::InlineFormattingContext::layoutInFlowContentForIntegration): 
Deleted.
* Source/WebCore/layout/formattingContexts/inline/InlineFormattingContext.h:
* Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.cpp:
(WebCore::LayoutIntegration::LineLayout::layout):

Canonical link: https://commits.webkit.org/262209@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 5e2242: Resync WPT webcodecs tests up to 7c9c76e

2023-03-28 Thread youennf
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 5e2242acde16dba1fb0944798b0c000615a5d74b
  
https://github.com/WebKit/WebKit/commit/5e2242acde16dba1fb0944798b0c000615a5d74b
  Author: Youenn Fablet 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M LayoutTests/TestExpectations
M LayoutTests/imported/w3c/resources/resource-files.json
M LayoutTests/imported/w3c/web-platform-tests/webcodecs/README.md
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/audio-decoder.crossOriginIsolated.https.any.js
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/audio-encoder-config.https.any-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/audio-encoder-config.https.any.js
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/audio-encoder-config.https.any.worker-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/audio-encoder.https.any.js
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/audioDecoder-codec-specific.https.any.js
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/audioDecoder-codec-specific.https.any.worker_adts_aac-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/audioDecoder-codec-specific.https.any.worker_mp3-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/audioDecoder-codec-specific.https.any.worker_mp4_aac-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/audioDecoder-codec-specific.https.any.worker_opus-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/audioDecoder-codec-specific.https.any.worker_pcm_alaw-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/audioDecoder-codec-specific.https.any.worker_pcm_mulaw-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/audioDecoder-codec-specific.https.any_adts_aac-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/audioDecoder-codec-specific.https.any_mp3-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/audioDecoder-codec-specific.https.any_mp4_aac-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/audioDecoder-codec-specific.https.any_opus-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/audioDecoder-codec-specific.https.any_pcm_alaw-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/audioDecoder-codec-specific.https.any_pcm_mulaw-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/four-colors-flip.avif
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any.js
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any.worker_av1-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any.worker_h264_annexb-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any.worker_h264_avc-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any.worker_vp8-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any.worker_vp9_p0-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any.worker_vp9_p2-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any_av1-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any_h264_annexb-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any_h264_avc-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any_vp8-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any_vp9_p0-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/full-cycle-test.https.any_vp9_p2-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/idlharness.https.any-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/idlharness.https.any.html
A 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/idlharness.https.any.js
A 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/idlharness.https.any.worker-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/idlharness.https.any.worker.html
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/image-decoder.https.any.js
A 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/per-frame-qp-encoding.https.any.html
A 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/per-frame-qp-encoding.https.any.js
A 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/per-frame-qp-encoding.https.any.worker.html
A 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/per-frame-qp-encoding.https.any.worker_av1-e

[webkit-changes] [WebKit/WebKit] f8ae40: ReadableStreamDefaultReader.releaseLock is now rej...

2023-03-28 Thread youennf
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f8ae40c2a74e011f18e55e4164be9fa90949d4aa
  
https://github.com/WebKit/WebKit/commit/f8ae40c2a74e011f18e55e4164be9fa90949d4aa
  Author: Youenn Fablet 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-byte-streams/general.any-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-byte-streams/general.any.sharedworker-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/default-reader.any-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/default-reader.any.serviceworker-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/default-reader.any.sharedworker-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/default-reader.any.worker-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/templated.any-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/templated.any.serviceworker-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/templated.any.sharedworker-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/templated.any.worker-expected.txt
M Source/WebCore/Modules/streams/ReadableStreamDefaultReader.js
M Source/WebCore/Modules/streams/ReadableStreamInternals.js

  Log Message:
  ---
  ReadableStreamDefaultReader.releaseLock is now rejecting pending read promises
https://bugs.webkit.org/show_bug.cgi?id=254511
rdar://problem/107263837

Reviewed by Alex Christensen.

Update ReadableStreamDefaultReader.releaseLock accoding latest specification,
https://streams.spec.whatwg.org/#default-reader-release-lock.

* 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-byte-streams/general.any-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-byte-streams/general.any.sharedworker-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/default-reader.any-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/default-reader.any.serviceworker-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/default-reader.any.sharedworker-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/default-reader.any.worker-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/templated.any-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/templated.any.serviceworker-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/templated.any.sharedworker-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/streams/readable-streams/templated.any.worker-expected.txt:
* Source/WebCore/Modules/streams/ReadableStreamDefaultReader.js:
(releaseLock):
* Source/WebCore/Modules/streams/ReadableStreamInternals.js:
(readableStreamError):
(readableStreamDefaultReaderRelease):
(readableStreamReaderGenericRelease):
(readableStreamDefaultReaderErrorReadRequests):

Canonical link: https://commits.webkit.org/262207@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 1ab895: [WGSL] Add code generation for textureSample and vecN

2023-03-28 Thread Tadeu Zagallo
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 1ab895ba0e34293c52f4600f84a96ba7802fba8d
  
https://github.com/WebKit/WebKit/commit/1ab895ba0e34293c52f4600f84a96ba7802fba8d
  Author: Tadeu Zagallo 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebGPU/WGSL/Metal/MetalFunctionWriter.cpp

  Log Message:
  ---
  [WGSL] Add code generation for textureSample and vecN
https://bugs.webkit.org/show_bug.cgi?id=254433
rdar://107193052

Reviewed by Myles C. Maxfield.

Add code in MetalFunctionWriter to rewrite `sampleTexture(t, s, ...)` into 
`t.sample(s, ...)`
and alias `vecN` to `floatN`. Eventually we might want to perform these 
manipulations in a
separate phase, but for now this should work.

* Source/WebGPU/WGSL/Metal/MetalFunctionWriter.cpp:
(WGSL::Metal::visitArguments):
(WGSL::Metal::FunctionDefinitionWriter::visit):

Canonical link: https://commits.webkit.org/262206@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] c102c8: Unreviewed, reverting r262134@main.

2023-03-28 Thread Commit Queue
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: c102c839d3d9da2e0c6406593d9f939171d73e83
  
https://github.com/WebKit/WebKit/commit/c102c839d3d9da2e0c6406593d9f939171d73e83
  Author: Commit Queue 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/cmake/WebKitFeatures.cmake

  Log Message:
  ---
  Unreviewed, reverting r262134@main.
https://bugs.webkit.org/show_bug.cgi?id=254577

Win DFG has been restabilized

Reverted changeset:

"JSC: Disable JIT for Windows"
https://bugs.webkit.org/show_bug.cgi?id=254478
https://commits.webkit.org/262134@main

Canonical link: https://commits.webkit.org/262205@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 9b4dfe: [WGSL] Add overloads for textureSample

2023-03-28 Thread Tadeu Zagallo
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9b4dfecb36d9c7e97ca6dc7b489425889d37254b
  
https://github.com/WebKit/WebKit/commit/9b4dfecb36d9c7e97ca6dc7b489425889d37254b
  Author: Tadeu Zagallo 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebGPU/WGSL/Overload.h
M Source/WebGPU/WGSL/TypeDeclarations.rb
M Source/WebGPU/WGSL/generator/main.rb
M Source/WebGPU/WGSL/tests/valid/overload.wgsl

  Log Message:
  ---
  [WGSL] Add overloads for textureSample
https://bugs.webkit.org/show_bug.cgi?id=254431
rdar://107190590

Reviewed by Myles C. Maxfield.

Add the definitions for the overloads of textureSample that operate on non-depth
textures. This requires minor modifications to the DSL to support concrete 
instances
of types that can also be abstract (i.e. Vector and Matrix). The definitions 
are a
little hard to read, and I might revisit it soon, but for now it matches the 
existing
definitions.

* Source/WebGPU/WGSL/Overload.h:
* Source/WebGPU/WGSL/TypeDeclarations.rb:
* Source/WebGPU/WGSL/generator/main.rb:

Canonical link: https://commits.webkit.org/262204@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 3fa329: Fix @counter-style CSSOM update

2023-03-28 Thread Vitor Roriz
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 3fa329db6badd1d45b3c3769182fa41059aded67
  
https://github.com/WebKit/WebKit/commit/3fa329db6badd1d45b3c3769182fa41059aded67
  Author: Vitor Roriz 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M LayoutTests/TestExpectations
M Source/WebCore/css/CSSCounterStyleDescriptors.cpp
M Source/WebCore/css/CSSCounterStyleDescriptors.h
M Source/WebCore/css/CSSCounterStyleRegistry.cpp
M Source/WebCore/css/CSSCounterStyleRegistry.h
M Source/WebCore/css/CSSCounterStyleRule.cpp
M Source/WebCore/css/CSSCounterStyleRule.h
M Source/WebCore/style/RuleSetBuilder.cpp
M Source/WebCore/style/StyleScope.cpp

  Log Message:
  ---
  Fix @counter-style CSSOM update
https://bugs.webkit.org/show_bug.cgi?id=254411
rdar://107184142

Reviewed by Antti Koivisto.

We were not updating the CounterStyles descriptors when
the related CSSOM descriptor was updated.

Now, we define setters for each descriptor of CSSCounterStyleDescriptors.
The setters at CSSCounterStyleRule still use setterInternal()
to set the associated property at StyleProperties. The function
setterInternal() was modified to return true if it did set a new value.

The function newValueInvalidOrEqual() had a small bug in which
it would return symbolsValidForSystem(...). The right thing to do is
return !symbolsValidForSystem(...), since it should true for a invalid
value.

Each setter at CSSCounterStyleRule now returns early if setterInternal()
didn't set a value. If it did set a value we proceed to set the associated
descriptor stored at the rule with the newly created setters.

Ideally, storing only the descriptors
would be enough and we could stop storing StyleProperties. This would
require definining a serializer for each descriptor and modifying the
the CSSCounterStyleRule setters to set the descriptor directly,
without modifying the property first. This improvement should come in
a separated PR and it was was reported at
https://bugs.webkit.org/show_bug.cgi?id=254524
which is tracked by rdar://107267784.

Minor change:
We are also renaming hasUnresolvedReferences to m_hasUnresolvedReferences,
for following webkit's style.

* LayoutTests/TestExpectations:
* Source/WebCore/css/CSSCounterStyleDescriptors.cpp:
(WebCore::translateRangeFromStyleProperties):
(WebCore::translateAdditiveSymbolsFromStyleProperties):
(WebCore::translatePadFromStyleProperties):
(WebCore::translateNegativeSymbolsFromStyleProperties):
(WebCore::translateSymbolsFromStyleProperties):
(WebCore::translateFallbackNameFromStyleProperties):
(WebCore::translatePrefixFromStyleProperties):
(WebCore::translateSuffixFromStyleProperties):
(WebCore::extractDataFromSystemDescriptor):
(WebCore::CSSCounterStyleDescriptors::setNegative):
(WebCore::CSSCounterStyleDescriptors::setPrefix):
(WebCore::CSSCounterStyleDescriptors::setSuffix):
(WebCore::CSSCounterStyleDescriptors::setRanges):
(WebCore::CSSCounterStyleDescriptors::setPad):
(WebCore::CSSCounterStyleDescriptors::setFallbackName):
(WebCore::CSSCounterStyleDescriptors::setSymbols):
(WebCore::CSSCounterStyleDescriptors::setAdditiveSymbols):
* Source/WebCore/css/CSSCounterStyleDescriptors.h:
(WebCore::CSSCounterStyleDescriptors::setName):
* Source/WebCore/css/CSSCounterStyleRegistry.cpp:
(WebCore::CSSCounterStyleRegistry::resolveReferencesIfNeeded):
(WebCore::CSSCounterStyleRegistry::addCounterStyle):
(WebCore::CSSCounterStyleRegistry::clearAuthorCounterStyles):
(WebCore::CSSCounterStyleRegistry::invalidate):
* Source/WebCore/css/CSSCounterStyleRegistry.h:
* Source/WebCore/css/CSSCounterStyleRule.cpp:
(WebCore::StyleRuleCounterStyle::newValueInvalidOrEqual const):
(WebCore::CSSCounterStyleRule::setName):
(WebCore::CSSCounterStyleRule::setterInternal):
(WebCore::CSSCounterStyleRule::setSystem):
(WebCore::CSSCounterStyleRule::setNegative):
(WebCore::CSSCounterStyleRule::setPrefix):
(WebCore::CSSCounterStyleRule::setSuffix):
(WebCore::CSSCounterStyleRule::setRange):
(WebCore::CSSCounterStyleRule::setPad):
(WebCore::CSSCounterStyleRule::setFallback):
(WebCore::CSSCounterStyleRule::setSymbols):
(WebCore::CSSCounterStyleRule::setAdditiveSymbols):
* Source/WebCore/css/CSSCounterStyleRule.h:
* Source/WebCore/style/RuleSetBuilder.cpp:
(WebCore::Style::RuleSetBuilder::addMutatingRulesToResolver):
* Source/WebCore/style/StyleScope.cpp:
(WebCore::Style::Scope::clearResolver):
(WebCore::Style::Scope::updateResolver):

Canonical link: https://commits.webkit.org/262203@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 2ec3bf: [GTK] Add WebKitClipboardPermissionRequest to hand...

2023-03-28 Thread Carlos Garcia Campos
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 2ec3bfdc8377ed6d94254d62ccd5f53f33e47d58
  
https://github.com/WebKit/WebKit/commit/2ec3bfdc8377ed6d94254d62ccd5f53f33e47d58
  Author: Carlos Garcia Campos 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebKit/PlatformGTK.cmake
M Source/WebKit/SourcesGTK.txt
A Source/WebKit/UIProcess/API/glib/WebKitClipboardPermissionRequest.cpp
A Source/WebKit/UIProcess/API/glib/WebKitClipboardPermissionRequest.h.in
A Source/WebKit/UIProcess/API/glib/WebKitClipboardPermissionRequestPrivate.h
M Source/WebKit/UIProcess/API/glib/webkit.h.in
M Source/WebKit/UIProcess/API/gtk/PageClientImpl.cpp
M Tools/MiniBrowser/gtk/BrowserTab.c
M Tools/TestWebKitAPI/Tests/WebKitGtk/TestWebViewEditor.cpp

  Log Message:
  ---
  [GTK] Add WebKitClipboardPermissionRequest to handle DOM paste access requests
https://bugs.webkit.org/show_bug.cgi?id=254510

Reviewed by Michael Catanzaro and Adrian Perez de Castro.

* Source/WebKit/PlatformGTK.cmake:
* Source/WebKit/SourcesGTK.txt:
* Source/WebKit/UIProcess/API/glib/WebKitClipboardPermissionRequest.cpp: Added.
(webkitClipboardPermissionRequestAllow):
(webkitClipboardPermissionRequestDeny):
(webkit_permission_request_interface_init):
(webkitClipboardPermissionRequestDispose):
(webkit_clipboard_permission_request_class_init):
(webkitClipboardPermissionRequestCreate):
* Source/WebKit/UIProcess/API/glib/WebKitClipboardPermissionRequest.h.in: Added.
* Source/WebKit/UIProcess/API/glib/WebKitClipboardPermissionRequestPrivate.h: 
Added.
* Source/WebKit/UIProcess/API/glib/webkit.h.in:
* Source/WebKit/UIProcess/API/gtk/PageClientImpl.cpp:
(WebKit::PageClientImpl::requestDOMPasteAccess):
* Tools/MiniBrowser/gtk/BrowserTab.c:
(permissionRequestDialogResponse):
(decidePermissionRequest):
(browser_tab_class_init):
* Tools/TestWebKitAPI/Tests/WebKitGtk/TestWebViewEditor.cpp:
(Clipboard::writeText):
(testWebViewClipboardPermissionRequest):
(beforeAll):

Canonical link: https://commits.webkit.org/262202@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 3823da: [JSC] Fix Windows x64 calling convention

2023-03-28 Thread Yusuke Suzuki
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 3823da2aaaea23aa24cf344e09f7f4f89118ebc5
  
https://github.com/WebKit/WebKit/commit/3823da2aaaea23aa24cf344e09f7f4f89118ebc5
  Author: Yusuke Suzuki 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/JavaScriptCore/CMakeLists.txt
M Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
M Source/JavaScriptCore/assembler/MacroAssemblerX86_64.h
M Source/JavaScriptCore/bytecode/RepatchInlines.h
M Source/JavaScriptCore/dfg/DFGJITCompiler.h
M Source/JavaScriptCore/dfg/DFGOperations.h
M Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h
M Source/JavaScriptCore/jit/CCallHelpers.h
M Source/JavaScriptCore/jit/JIT.h
M Source/JavaScriptCore/jit/JITOpcodes.cpp
M Source/JavaScriptCore/jit/JITOperations.cpp
M Source/JavaScriptCore/jit/JITOperations.h
M Source/JavaScriptCore/jit/SlowPathCall.cpp
M Source/JavaScriptCore/jit/ThunkGenerators.cpp
M Source/JavaScriptCore/llint/LLIntSlowPaths.cpp
M Source/JavaScriptCore/llint/LLIntSlowPaths.h
M Source/JavaScriptCore/llint/LowLevelInterpreter.cpp
M Source/JavaScriptCore/offlineasm/cloop.rb
M Source/JavaScriptCore/runtime/CommonSlowPaths.cpp
M Source/JavaScriptCore/runtime/CommonSlowPaths.h
M Source/JavaScriptCore/runtime/MatchResult.h
M Source/JavaScriptCore/runtime/SlowPathFunction.h
R Source/JavaScriptCore/runtime/SlowPathReturnType.h
A Source/JavaScriptCore/runtime/UGPRPair.h
M Source/JavaScriptCore/wasm/WasmSlowPaths.cpp
M Source/JavaScriptCore/wasm/WasmSlowPaths.h
M Source/JavaScriptCore/yarr/YarrJIT.h

  Log Message:
  ---
  [JSC] Fix Windows x64 calling convention
https://bugs.webkit.org/show_bug.cgi?id=254573
rdar://107303745

Reviewed by Ross Kirsling.

This patch fixes many bugs in CCallHelpers for Windows x64 to make calling 
convention code work with paired results.

1. Remove SlowPathReturnType and consistently use UGPRPair instead for all code.
2. Fix many issues in Windows CCallHelpers related to placement of arguments on 
the stack.
3. Clean up MacroAssemblerX86_64::callWithUGPRPair (Windows only) code. It is 
handling many calling convention things but
   it should be done in CCallHelpers instead.

* Source/JavaScriptCore/CMakeLists.txt:
* Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj:
* Source/JavaScriptCore/assembler/MacroAssemblerX86_64.h:
(JSC::MacroAssemblerX86_64::callWithUGPRPair):
(JSC::MacroAssemblerX86_64::callWithSlowPathReturnType): Deleted.
* Source/JavaScriptCore/bytecode/RepatchInlines.h:
(JSC::handleHostCall):
(JSC::linkFor):
(JSC::virtualForWithFunction):
* Source/JavaScriptCore/dfg/DFGJITCompiler.h:
(JSC::DFG::JITCompiler::appendCallWithUGPRPair):
* Source/JavaScriptCore/dfg/DFGOperations.h:
(JSC::DFG::makeUGPRPair): Deleted.
* Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::appendCallWithUGPRPair):
(JSC::DFG::SpeculativeJIT::appendCallSetResult):
* Source/JavaScriptCore/jit/CCallHelpers.h:
(JSC::CCallHelpers::marshallArgumentRegister):
(JSC::CCallHelpers::setupArgumentsImpl):
* Source/JavaScriptCore/jit/JIT.h:
* Source/JavaScriptCore/jit/JITOpcodes.cpp:
(JSC::JIT::op_enter_handlerGenerator):
* Source/JavaScriptCore/jit/JITOperations.cpp:
(JSC::JSC_DEFINE_JIT_OPERATION):
* Source/JavaScriptCore/jit/JITOperations.h:
* Source/JavaScriptCore/jit/SlowPathCall.cpp:
(JSC::JITSlowPathCall::generateThunk):
* Source/JavaScriptCore/jit/ThunkGenerators.cpp:
(JSC::remoteFunctionCallGenerator):
* Source/JavaScriptCore/llint/LLIntSlowPaths.cpp:
(JSC::LLInt::llint_trace_operand):
(JSC::LLInt::llint_trace_value):
(JSC::LLInt::entryOSR):
(JSC::LLInt::llint_link_call):
(JSC::LLInt::llint_virtual_call):
(JSC::LLInt::handleHostCall):
(JSC::LLInt::setUpCall):
(JSC::LLInt::varargsSetup):
(JSC::LLInt::commonCallDirectEval):
(JSC::LLInt::dispatchToNextInstructionDuringExit):
(JSC::LLInt::llint_slow_path_checkpoint_osr_exit_from_inlined_call):
(JSC::LLInt::llint_slow_path_checkpoint_osr_exit):
(JSC::LLInt::llint_throw_stack_overflow_error):
(JSC::LLInt::llint_stack_check_at_vm_entry):
(JSC::LLInt::llint_check_vm_entry_permission):
* Source/JavaScriptCore/llint/LLIntSlowPaths.h:
* Source/JavaScriptCore/llint/LowLevelInterpreter.cpp:
(JSC::LLInt::decodeResult):
* Source/JavaScriptCore/offlineasm/cloop.rb:
* Source/JavaScriptCore/runtime/CommonSlowPaths.cpp:
(JSC::iteratorOpenTryFastImpl):
(JSC::iteratorNextTryFastImpl):
* Source/JavaScriptCore/runtime/CommonSlowPaths.h:
* Source/JavaScriptCore/runtime/MatchResult.h:
(JSC::MatchResult::MatchResult):
* Source/JavaScriptCore/runtime/SlowPathFunction.h:
* Source/JavaScriptCore/runtime/SlowPathReturnType.h:
(JSC::makeUGPRPair):
(JSC::encodeResult):
(JSC::decodeResult):
* Source/JavaScriptCore/runtime/UGPRPair.h: Copied from 
Source/JavaScriptCore/runtime/SlowPathReturnType.h.
(JSC::makeUGPRPair):
(JSC::encodeResult):
(JSC::decodeResult):
* Source/JavaScriptCore/wasm/Wa

[webkit-changes] [WebKit/WebKit] 889edf: [WGSL] Textures and samplers shouldn't be references

2023-03-28 Thread Tadeu Zagallo
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 889edf206f1a3946daf6664d6b2e5870c5c9cc28
  
https://github.com/WebKit/WebKit/commit/889edf206f1a3946daf6664d6b2e5870c5c9cc28
  Author: Tadeu Zagallo 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebGPU/WGSL/GlobalVariableRewriter.cpp

  Log Message:
  ---
  [WGSL] Textures and samplers shouldn't be references
https://bugs.webkit.org/show_bug.cgi?id=254425
rdar://107188253

Reviewed by Myles C. Maxfield.

When converting globals to argument buffers, most values become references, but
that doesn't apply to textures and samplers. Add logic to check the type of the
global instead of unconditionally converting it to a reference.

* Source/WebGPU/WGSL/GlobalVariableRewriter.cpp:
(WGSL::RewriteGlobalVariables::insertStructs):

Canonical link: https://commits.webkit.org/262200@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 47c9e4: [WGSL] Add overload resolution for (non-parameteri...

2023-03-28 Thread Tadeu Zagallo
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 47c9e4a9f264797e16760164e913cf7c6aef8abd
  
https://github.com/WebKit/WebKit/commit/47c9e4a9f264797e16760164e913cf7c6aef8abd
  Author: Tadeu Zagallo 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebGPU/WGSL/TypeCheck.cpp

  Log Message:
  ---
  [WGSL] Add overload resolution for (non-parameterized) value constructors
https://bugs.webkit.org/show_bug.cgi?id=254419
rdar://107185949

Reviewed by Myles C. Maxfield.

This will be used to add support to e.g. vec4(...)

* Source/WebGPU/WGSL/TypeCheck.cpp:
(WGSL::TypeChecker::visit):

Canonical link: https://commits.webkit.org/262199@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] 1c684c: [WGSL] Add overload resolution tests

2023-03-28 Thread Tadeu Zagallo
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 1c684c63e7ce6c72bf6edc54f24c50ef6085d355
  
https://github.com/WebKit/WebKit/commit/1c684c63e7ce6c72bf6edc54f24c50ef6085d355
  Author: Tadeu Zagallo 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
A Source/WebGPU/WGSL/tests/valid/overload.wgsl

  Log Message:
  ---
  [WGSL] Add overload resolution tests
https://bugs.webkit.org/show_bug.cgi?id=254530
rdar://107270787

Reviewed by Myles C. Maxfield.

Add tests to verify that we correctly handle the few overload declarations we
currently have. NOTE: this depends on PR #11995 in order for us to run the
test, and (for now) the tests must be run manually.

* Source/WebGPU/WGSL/tests/valid/overload.wgsl: Added.

Canonical link: https://commits.webkit.org/262198@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] d463a8: [WGSL] CompoundStatement should introduce a new scope

2023-03-28 Thread Tadeu Zagallo
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: d463a81e081d8d8662cb740b7a8c7d04ab34767d
  
https://github.com/WebKit/WebKit/commit/d463a81e081d8d8662cb740b7a8c7d04ab34767d
  Author: Tadeu Zagallo 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebGPU/WGSL/MangleNames.cpp
M Source/WebGPU/WGSL/TypeCheck.cpp
A Source/WebGPU/WGSL/tests/valid/scope.wgsl

  Log Message:
  ---
  [WGSL] CompoundStatement should introduce a new scope
https://bugs.webkit.org/show_bug.cgi?id=254523
rdar://107267001

Reviewed by Myles C. Maxfield.

Two sibling CompooundStatements (blocks) should have their own scopes, and 
therefore
be able to introduce variables with the same name.
This patch also includes a test file, which depends on PR #11995 to be executed,
and for now can only be executed manually.

* Source/WebGPU/WGSL/MangleNames.cpp:
(WGSL::NameManglerVisitor::visit):
* Source/WebGPU/WGSL/TypeCheck.cpp:
(WGSL::TypeChecker::visitFunctionBody):
(WGSL::TypeChecker::visit):
* Source/WebGPU/WGSL/tests/valid/scope.wgsl: Added.

Canonical link: https://commits.webkit.org/262197@main


___
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes


[webkit-changes] [WebKit/WebKit] e9a1f7: Allow setting a storage limit for all origins

2023-03-28 Thread Sihui
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e9a1f73b15efbe97e1d3a5ea7a5d211c616215a9
  
https://github.com/WebKit/WebKit/commit/e9a1f73b15efbe97e1d3a5ea7a5d211c616215a9
  Author: Sihui Liu 
  Date:   2023-03-28 (Tue, 28 Mar 2023)

  Changed paths:
M Source/WebKit/NetworkProcess/NetworkSession.cpp
M Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.cpp
M Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.h
A Source/WebKit/NetworkProcess/storage/NetworkQuotaManager.cpp
A Source/WebKit/NetworkProcess/storage/NetworkQuotaManager.h
M Source/WebKit/NetworkProcess/storage/NetworkStorageManager.cpp
M Source/WebKit/NetworkProcess/storage/NetworkStorageManager.h
A Source/WebKit/NetworkProcess/storage/OriginQuotaManager.cpp
A Source/WebKit/NetworkProcess/storage/OriginQuotaManager.h
M Source/WebKit/NetworkProcess/storage/OriginStorageManager.cpp
M Source/WebKit/NetworkProcess/storage/OriginStorageManager.h
R Source/WebKit/NetworkProcess/storage/QuotaManager.cpp
R Source/WebKit/NetworkProcess/storage/QuotaManager.h
M Source/WebKit/Platform/IPC/WorkQueueMessageReceiver.h
M Source/WebKit/Sources.txt
M Source/WebKit/UIProcess/API/Cocoa/_WKWebsiteDataStoreConfiguration.h
M Source/WebKit/UIProcess/API/Cocoa/_WKWebsiteDataStoreConfiguration.mm
M Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp
M Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp
M Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreConfiguration.h
M Source/WebKit/WebKit.xcodeproj/project.pbxproj
M Tools/TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm

  Log Message:
  ---
  Allow setting a storage limit for all origins
https://bugs.webkit.org/show_bug.cgi?id=254011
rdar://106792298

Reviewed by Youenn Fablet.

Make it possible to set a total quota of all origins based on disk space. This 
is implemented by adding a setting
totalQuotaRatio to WebsiteDataStoreConfiguration. The overall quota of a data 
store is calculated by:
totalDiskSpace * totalQuotaRatio. When this quota is exceeded, network process 
will evict data (only for data types that
are managed by NetworkStorageManager) based on LRU policy.

Test: WKWebsiteDataStoreConfiguration.TotalQuotaRatio

* Source/WebKit/NetworkProcess/NetworkSession.cpp:
(WebKit::createNetworkStorageManager):
* Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.cpp:
(WebKit::NetworkSessionCreationParameters::encode const):
(WebKit::NetworkSessionCreationParameters::decode):
* Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.h:
* Source/WebKit/NetworkProcess/storage/NetworkQuotaManager.cpp: Added.
(WebKit::NetworkQuotaManager::NetworkQuotaManager):
(WebKit::NetworkQuotaManager::originUsageUpdated):
(WebKit::NetworkQuotaManager::performEvictionIfNeeded):
(WebKit::NetworkQuotaManager::originVisited):
* Source/WebKit/NetworkProcess/storage/NetworkQuotaManager.h: Copied from 
Source/WebKit/Platform/IPC/WorkQueueMessageReceiver.h.
* Source/WebKit/NetworkProcess/storage/NetworkStorageManager.cpp:
(WebKit::NetworkStorageManager::create):
(WebKit::NetworkStorageManager::NetworkStorageManager):
(WebKit::NetworkStorageManager::canHandleTypes):
(WebKit::NetworkStorageManager::allManagedTypes):
(WebKit::NetworkStorageManager::stopReceivingMessageFromConnection):
(WebKit::NetworkStorageManager::writeOriginToFileIfNecessary):
(WebKit::NetworkStorageManager::quotaManager):
(WebKit::NetworkStorageManager::originStorageManager):
(WebKit::NetworkStorageManager::removeOriginStorageManagerIfPossible):
(WebKit::NetworkStorageManager::updateOriginModificationTime):
(WebKit::NetworkStorageManager::evictDataByTopOrigin):
(WebKit::NetworkStorageManager::getOriginDirectory):
(WebKit::NetworkStorageManager::requestSpace):
* Source/WebKit/NetworkProcess/storage/NetworkStorageManager.h:
* Source/WebKit/NetworkProcess/storage/OriginQuotaManager.cpp: Renamed from 
Source/WebKit/NetworkProcess/storage/QuotaManager.cpp.
(WebKit::OriginQuotaManager::create):
(WebKit::OriginQuotaManager::OriginQuotaManager):
(WebKit::OriginQuotaManager::usage):
(WebKit::OriginQuotaManager::requestSpace):
(WebKit::OriginQuotaManager::handleRequests):
(WebKit::OriginQuotaManager::grantWithCurrentQuota):
(WebKit::OriginQuotaManager::usageUpdated):
(WebKit::OriginQuotaManager::grantFastPath):
(WebKit::OriginQuotaManager::didIncreaseQuota):
(WebKit::OriginQuotaManager::resetQuotaUpdatedBasedOnUsageForTesting):
(WebKit::OriginQuotaManager::resetQuotaForTesting):
(WebKit::OriginQuotaManager::reportedQuota const):
* Source/WebKit/NetworkProcess/storage/OriginQuotaManager.h: Renamed from 
Source/WebKit/NetworkProcess/storage/QuotaManager.h.
(WebKit::OriginQuotaManager::create):
* Source/WebKit/NetworkProcess/storage/OriginStorageManager.cpp:
(WebKit::OriginStorageManager::StorageBucket::isActive const):
(WebKit::OriginStorageManager::StorageBucket::hasDataInMemory const):