[webkit-changes] [WebKit/WebKit] 1eebbb: [JSC] Inline Date.prototype.setTime

2023-06-29 Thread Yusuke Suzuki
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 1eebbbcabad19d431ea7f7a15a14a2edd59846af
  
https://github.com/WebKit/WebKit/commit/1eebbbcabad19d431ea7f7a15a14a2edd59846af
  Author: Yusuke Suzuki 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
A JSTests/stress/date-set-time.js
M Source/JavaScriptCore/dfg/DFGAbstractInterpreterInlines.h
M Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp
M Source/JavaScriptCore/dfg/DFGClobberize.h
M Source/JavaScriptCore/dfg/DFGDoesGC.cpp
M Source/JavaScriptCore/dfg/DFGFixupPhase.cpp
M Source/JavaScriptCore/dfg/DFGNodeType.h
M Source/JavaScriptCore/dfg/DFGPredictionPropagationPhase.cpp
M Source/JavaScriptCore/dfg/DFGSafeToExecute.h
M Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h
M Source/JavaScriptCore/dfg/DFGSpeculativeJIT32_64.cpp
M Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp
M Source/JavaScriptCore/ftl/FTLCapabilities.cpp
M Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp
M Source/JavaScriptCore/runtime/DatePrototype.cpp
M Source/JavaScriptCore/runtime/Intrinsic.h

  Log Message:
  ---
  [JSC] Inline Date.prototype.setTime
https://bugs.webkit.org/show_bug.cgi?id=258709
rdar://problem/111549361

Reviewed by Mark Lam.

This patch inlines Date.prototype.setTime in DFG and FTL to accelerate the 
performance of this.

* JSTests/stress/date-set-time.js: Added.
(shouldBe):
(addSet):
* Source/JavaScriptCore/dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter::executeEffects):
* Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handleIntrinsicCall):
* Source/JavaScriptCore/dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
* Source/JavaScriptCore/dfg/DFGDoesGC.cpp:
(JSC::DFG::doesGC):
* Source/JavaScriptCore/dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
* Source/JavaScriptCore/dfg/DFGNodeType.h:
* Source/JavaScriptCore/dfg/DFGOperations.cpp:
(JSC::DFG::JSC_DEFINE_JIT_OPERATION):
* Source/JavaScriptCore/dfg/DFGOperations.h:
* Source/JavaScriptCore/dfg/DFGPredictionPropagationPhase.cpp:
* Source/JavaScriptCore/dfg/DFGSafeToExecute.h:
(JSC::DFG::safeToExecute):
* Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h:
* Source/JavaScriptCore/dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::compileDateSet):
* Source/JavaScriptCore/ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
* Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileNode):
(JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq):
* Source/JavaScriptCore/runtime/DatePrototype.cpp:
* Source/JavaScriptCore/runtime/Intrinsic.h:

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


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


[webkit-changes] [WebKit/WebKit] 4be71d: REGRESSION(262616@main): wpt/permissions-policy/pa...

2023-06-29 Thread Chris Dumez
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 4be71d55e77b3a3c6216e19dc23db4504ad93bbc
  
https://github.com/WebKit/WebKit/commit/4be71d55e77b3a3c6216e19dc23db4504ad93bbc
  Author: Chris Dumez 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
A 
LayoutTests/imported/w3c/web-platform-tests/permissions-policy/payment-allowed-by-permissions-policy-attribute-redirect-on-load.https.sub-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/permissions-policy/payment-allowed-by-permissions-policy-attribute-redirect-on-load.https.sub.html
A 
LayoutTests/imported/w3c/web-platform-tests/permissions-policy/resources/permissions-policy-payment.html
M 
LayoutTests/imported/w3c/web-platform-tests/permissions-policy/resources/permissions-policy.js
A 
LayoutTests/imported/w3c/web-platform-tests/permissions/resources/redirect-on-load.html
M 
LayoutTests/imported/w3c/web-platform-tests/screen-wake-lock/wakelock-enabled-by-feature-policy-attribute-redirect-on-load.https.sub-expected.txt
M LayoutTests/platform/glib/TestExpectations
A 
LayoutTests/platform/glib/imported/w3c/web-platform-tests/screen-wake-lock/wakelock-enabled-by-feature-policy-attribute-redirect-on-load.https.sub-expected.txt
M LayoutTests/platform/mac-wk1/TestExpectations
M Source/WebCore/html/FeaturePolicy.cpp

  Log Message:
  ---
  REGRESSION(262616@main): 
wpt/permissions-policy/payment-allowed-by-permissions-policy-attribute-redirect-on-load.https.sub.html
https://bugs.webkit.org/show_bug.cgi?id=258217
rdar://110907826

Reviewed by Ryosuke Niwa.

According to the specification [1]:
```
The allowlist for the features named in the attribute may be empty; in that
case, the default value for the allowlist is 'src', which represents the origin
of the URL in the iframe’s src attribute.
```

However, in FeaturePolicy's updateList(), we would set the AllowRule's type
to Type::All, which would be equivalent to having an allowlist of '*'.

To address the issue, we now get the iframe's src URL and compute its origin,
we then add this origin to the allowed list of origins. This implements
allowlist 'src' behavior.

[1] https://www.w3.org/TR/permissions-policy/#iframe-allow-attribute

* 
LayoutTests/imported/w3c/web-platform-tests/permissions-policy/payment-allowed-by-permissions-policy-attribute-redirect-on-load.https.sub-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/permissions-policy/payment-allowed-by-permissions-policy-attribute-redirect-on-load.https.sub.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/permissions-policy/resources/permissions-policy-payment.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/permissions-policy/resources/permissions-policy.js:
(expectFeatureAvailable):
(test_feature_availability):
(test_feature_availability_with_post_message_result):
(run_all_fp_tests_allow_self):
* 
LayoutTests/imported/w3c/web-platform-tests/permissions/resources/redirect-on-load.html:
 Added.
Import WPT test coverage.

* Source/WebCore/html/FeaturePolicy.cpp:
(WebCore::updateList):
(WebCore::FeaturePolicy::parse):

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


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


[webkit-changes] [WebKit/WebKit] 30ebff: Change LGPL version 2, 1 -> 2.1

2023-06-29 Thread Michael Catanzaro
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 30ebff67c85a94f5f94f1de3e8750bc786dc8a43
  
https://github.com/WebKit/WebKit/commit/30ebff67c85a94f5f94f1de3e8750bc786dc8a43
  Author: Michael Catanzaro 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
M Source/WebKit/UIProcess/API/glib/WebKitCookieManager.cpp
M Source/WebKit/UIProcess/API/glib/WebKitCookieManager.h.in
M Source/WebKit/UIProcess/API/glib/WebKitFaviconDatabase.cpp
M Source/WebKit/UIProcess/API/glib/WebKitFaviconDatabase.h.in
M Source/WebKit/UIProcess/API/glib/WebKitFindController.cpp
M Source/WebKit/UIProcess/API/glib/WebKitFindController.h.in
M Source/WebKit/UIProcess/API/glib/WebKitNetworkSession.cpp
M Source/WebKit/UIProcess/API/glib/WebKitNetworkSession.h.in
M Source/WebKit/UIProcess/API/glib/WebKitProtocolHandler.cpp
M Source/WebKit/UIProcess/API/glib/WebKitProtocolHandler.h
M Source/WebKit/UIProcess/API/glib/WebKitSecurityManager.cpp
M Source/WebKit/UIProcess/API/glib/WebKitSecurityManager.h.in
M Source/WebKit/UIProcess/API/glib/WebKitWebsiteDataManager.cpp
M Source/WebKit/UIProcess/API/glib/WebKitWebsiteDataManager.h.in
M Source/WebKit/UIProcess/API/glib/WebKitWebsitePolicies.cpp
M Source/WebKit/UIProcess/API/glib/WebKitWebsitePolicies.h.in
M Source/WebKit/UIProcess/API/gtk/WebKitRemoteInspectorProtocolHandler.cpp
M Source/WebKit/UIProcess/API/gtk/WebKitRemoteInspectorProtocolHandler.h
M Source/WebKit/UIProcess/API/gtk/WebKitWebInspector.cpp
M Source/WebKit/UIProcess/API/gtk/WebKitWebInspector.h.in
M Source/WebKit/WebProcess/InjectedBundle/API/glib/WebKitFrame.cpp
M Source/WebKit/WebProcess/InjectedBundle/API/glib/WebKitFrame.h.in
M Source/WebKit/WebProcess/InjectedBundle/API/glib/WebKitScriptWorld.cpp
M Source/WebKit/WebProcess/InjectedBundle/API/glib/WebKitScriptWorld.h.in
M Source/WebKit/WebProcess/InjectedBundle/API/glib/WebKitWebEditor.cpp
M Source/WebKit/WebProcess/InjectedBundle/API/glib/WebKitWebEditor.h.in
M Source/WebKit/WebProcess/InjectedBundle/API/glib/WebKitWebExtension.cpp
M Source/WebKit/WebProcess/InjectedBundle/API/glib/WebKitWebExtension.h.in
M Source/WebKit/WebProcess/InjectedBundle/API/glib/WebKitWebFormManager.cpp
M Source/WebKit/WebProcess/InjectedBundle/API/glib/WebKitWebFormManager.h.in
M 
Source/WebKit/WebProcess/InjectedBundle/API/glib/WebKitWebFormManagerPrivate.h
M 
Source/WebKit/WebProcess/InjectedBundle/API/glib/WebKitWebHitTestResult.cpp
M 
Source/WebKit/WebProcess/InjectedBundle/API/glib/WebKitWebHitTestResult.h.in
M Source/WebKit/WebProcess/InjectedBundle/API/glib/WebKitWebPage.cpp
M Source/WebKit/WebProcess/InjectedBundle/API/glib/WebKitWebPage.h.in
M 
Source/WebKit/WebProcess/InjectedBundle/API/glib/WebKitWebProcessExtension.cpp
M 
Source/WebKit/WebProcess/InjectedBundle/API/glib/WebKitWebProcessExtension.h.in
M 
Source/WebKit/WebProcess/InjectedBundle/API/glib/webkit-web-process-extension.h.in
M Tools/TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp
M Tools/TestWebKitAPI/Tests/WPEQt/TestLoad.cpp
M Tools/TestWebKitAPI/Tests/WPEQt/TestLoadHtml.cpp
M Tools/TestWebKitAPI/Tests/WPEQt/TestLoadRequest.cpp
M Tools/TestWebKitAPI/Tests/WPEQt/TestRunJavaScript.cpp
M Tools/TestWebKitAPI/Tests/WPEQt/WPEQtTest.cpp
M Tools/TestWebKitAPI/Tests/WPEQt/WPEQtTest.h
M Tools/TestWebKitAPI/Tests/WebKitGLib/TestAuthentication.cpp
M Tools/TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp
M Tools/TestWebKitAPI/Tests/WebKitGLib/TestConsoleMessage.cpp
M Tools/TestWebKitAPI/Tests/WebKitGLib/TestDOMElement.cpp
M Tools/TestWebKitAPI/Tests/WebKitGLib/TestEditor.cpp
M Tools/TestWebKitAPI/Tests/WebKitGLib/TestFrame.cpp
M Tools/TestWebKitAPI/Tests/WebKitGLib/TestGeolocationManager.cpp
M Tools/TestWebKitAPI/Tests/WebKitGLib/TestInputMethodContext.cpp
M Tools/TestWebKitAPI/Tests/WebKitGLib/TestMultiprocess.cpp
M Tools/TestWebKitAPI/Tests/WebKitGLib/TestOptionMenu.cpp
M Tools/TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp
M Tools/TestWebKitAPI/Tests/WebKitGLib/TestWebKitFaviconDatabase.cpp
M Tools/TestWebKitAPI/Tests/WebKitGLib/TestWebKitFindController.cpp
M Tools/TestWebKitAPI/Tests/WebKitGLib/TestWebKitNetworkSession.cpp
M Tools/TestWebKitAPI/Tests/WebKitGLib/TestWebKitSecurityOrigin.cpp
M Tools/TestWebKitAPI/Tests/WebKitGLib/TestWebKitUserContentFilterStore.cpp
M Tools/TestWebKitAPI/Tests/WebKitGLib/TestWebKitUserContentManager.cpp
M Tools/TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp
M Tools/TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp
M Tools/TestWebKitAPI/Tests/WebKitGLib/TestWebProcessExtensions.cpp
M Tools/TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp
M Tools/TestWebKitAPI/Tests/WebKitGtk/TestContextMenu.cpp
M Tools/TestWebKitAPI/Tests/WebKitGtk/TestDOMClientRect.cpp
M 

[webkit-changes] [WebKit/WebKit] 9a3acb: Add back the "schedule rendering update" trace poi...

2023-06-29 Thread Simon Fraser
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9a3acbde3c4b30bb2bfa0d73aac20479fb568229
  
https://github.com/WebKit/WebKit/commit/9a3acbde3c4b30bb2bfa0d73aac20479fb568229
  Author: Simon Fraser 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
M Source/WTF/wtf/SystemTracing.h
M Source/WebKit/Resources/Signposts/SystemTracePoints.plist
M 
Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm

  Log Message:
  ---
  Add back the "schedule rendering update" trace point after 264920@main
https://bugs.webkit.org/show_bug.cgi?id=258699
rdar://111538471

Reviewed by Ryosuke Niwa.

Now that RemoteLayerTreeDrawingArea schedules its own rendering updates, add 
back a
tracepoint for "schedule rendering update" to assist with investigations.

* Source/WTF/wtf/SystemTracing.h:
* Source/WebKit/Resources/Signposts/SystemTracePoints.plist:
* 
Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::scheduleRenderingUpdate):

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


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


[webkit-changes] [WebKit/WebKit] 7c0eef: [test262] update expectations after 265632@main

2023-06-29 Thread Devin Rousso
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 7c0eefae0099c18cb11af94de94a2a771ba09a8d
  
https://github.com/WebKit/WebKit/commit/7c0eefae0099c18cb11af94de94a2a771ba09a8d
  Author: Devin Rousso 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
M JSTests/test262/expectations.yaml

  Log Message:
  ---
  [test262] update expectations after 265632@main
https://bugs.webkit.org/show_bug.cgi?id=258700

Reviewed by Yusuke Suzuki.

* JSTests/test262/expectations.yaml:

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


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


[webkit-changes] [WebKit/WebKit] 73b582: [JSC] Relax Int32 arith condition while having NaN

2023-06-29 Thread Yusuke Suzuki
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 73b58272b44dbb9c6edfec221839210a04d7f92c
  
https://github.com/WebKit/WebKit/commit/73b58272b44dbb9c6edfec221839210a04d7f92c
  Author: Yusuke Suzuki 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
M Source/JavaScriptCore/dfg/DFGGraph.h
M Source/JavaScriptCore/dfg/DFGNode.h

  Log Message:
  ---
  [JSC] Relax Int32 arith condition while having NaN
https://bugs.webkit.org/show_bug.cgi?id=258691
rdar://111529018

Reviewed by Mark Lam.

Sometimes NaN is used as a default value (e.g. parseInt's failure case), and it 
can pollute the graph
with Doubles. But when considering about Int32 speculation, if ArithProfile 
said "we didn't see double result",
then it is very unlikely that this NaN is coming to this site since arithmetic 
ops with NaN is always NaN.

* Source/JavaScriptCore/dfg/DFGGraph.h:
* Source/JavaScriptCore/dfg/DFGNode.h:
(JSC::DFG::Node::shouldSpeculateInt32OrBooleanExpectingDefined):

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


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


[webkit-changes] [WebKit/WebKit] 725639: [JSC] Use MakeRope for StrCat(ToPrimitive(x), ...)

2023-06-29 Thread Yusuke Suzuki
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 72563917d14964eb3146a7dbe32ef0448d1fac98
  
https://github.com/WebKit/WebKit/commit/72563917d14964eb3146a7dbe32ef0448d1fac98
  Author: Yusuke Suzuki 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
A JSTests/microbenchmarks/array-string-concat.js
M Source/JavaScriptCore/dfg/DFGAbstractInterpreterInlines.h
M Source/JavaScriptCore/dfg/DFGClobberize.h
M Source/JavaScriptCore/dfg/DFGFixupPhase.cpp
M Source/JavaScriptCore/dfg/DFGMayExit.cpp
M Source/JavaScriptCore/dfg/DFGSpeculativeJIT.cpp
M Source/JavaScriptCore/dfg/DFGStrengthReductionPhase.cpp
M Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp

  Log Message:
  ---
  [JSC] Use MakeRope for StrCat(ToPrimitive(x), ...)
https://bugs.webkit.org/show_bug.cgi?id=258656
rdar://111491662

Reviewed by Keith Miller.

Let's convert StrCat(ToPrimitive(@x), ...) to 
MakeRope(ToString(KnownPrimitiveUse:ToPrimitive(@x), ...))
to leverage MakeRope instead of StrCat since it is much faster.

ToT Patched

array-string-concat   55.2465+-0.1687 ^ 49.8739+-0.2824^ 
definitely 1.1077x faster

* JSTests/microbenchmarks/array-string-concat.js: Added.
(shouldBe):
(test):
* Source/JavaScriptCore/dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter::executeEffects):
* Source/JavaScriptCore/dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
* Source/JavaScriptCore/dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::attemptToMakeFastStringAdd):
* Source/JavaScriptCore/dfg/DFGSpeculativeJIT.cpp:
* Source/JavaScriptCore/dfg/DFGStrengthReductionPhase.cpp:
(JSC::DFG::StrengthReductionPhase::handleNode):
* Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileToStringOrCallStringConstructorOrStringValueOf):

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


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


[webkit-changes] [WebKit/WebKit] c1fddb: Add jhertz-apple to contributors.json

2023-06-29 Thread Commit Queue
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: c1fddb7a259967298a9f14f2f2ef4893ad5d1f4e
  
https://github.com/WebKit/WebKit/commit/c1fddb7a259967298a9f14f2f2ef4893ad5d1f4e
  Author: Jesse Hertz 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
M metadata/contributors.json

  Log Message:
  ---
  Add jhertz-apple to contributors.json

Reviewed by Jonathan Bedard.

* metadata/contributors.json:

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


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


[webkit-changes] [WebKit/WebKit] dc361d: [contain-intrinsic-size] Use CSSValuePair for comp...

2023-06-29 Thread Tim Nguyen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: dc361dd85a3531fbf05b96c2ee7e2ed6cfd3937b
  
https://github.com/WebKit/WebKit/commit/dc361dd85a3531fbf05b96c2ee7e2ed6cfd3937b
  Author: Tim Nguyen 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
M Source/WebCore/css/ComputedStyleExtractor.cpp
M Source/WebCore/style/StyleBuilderCustom.h

  Log Message:
  ---
  [contain-intrinsic-size] Use CSSValuePair for computed style
https://bugs.webkit.org/show_bug.cgi?id=258695
rdar://111533680

Reviewed by Simon Fraser.

Since 265617@main, parsing uses CSSValuePair instead of CSSValueList, change 
the computed style extractor code to be consistent.

* Source/WebCore/css/ComputedStyleExtractor.cpp:
(WebCore::valueForContainIntrinsicSize):
* Source/WebCore/style/StyleBuilderCustom.h:
(WebCore::Style::BuilderCustom::applyValueContainIntrinsicWidth):
(WebCore::Style::BuilderCustom::applyValueContainIntrinsicHeight):

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


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


[webkit-changes] [WebKit/WebKit] 0a2e45: REGRESSION(264918@main): GB18030 encoding isn't ho...

2023-06-29 Thread Alex Christensen
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 0a2e4563bda07006e0ca65e395f90ce20a615afe
  
https://github.com/WebKit/WebKit/commit/0a2e4563bda07006e0ca65e395f90ce20a615afe
  Author: Alex Christensen 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
M 
LayoutTests/imported/w3c/web-platform-tests/encoding/legacy-mb-schinese/gb18030/gb18030-decoder.any-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/encoding/legacy-mb-schinese/gb18030/gb18030-decoder.any.js
M 
LayoutTests/imported/w3c/web-platform-tests/encoding/legacy-mb-schinese/gb18030/gb18030-decoder.any.worker-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/encoding/legacy-mb-schinese/gb18030/gb18030-encoder-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/encoding/legacy-mb-schinese/gb18030/gb18030-encoder.html
M Source/WebCore/PAL/pal/text/TextCodecCJK.cpp

  Log Message:
  ---
  REGRESSION(264918@main): GB18030 encoding isn't hooked up correctly
https://bugs.webkit.org/show_bug.cgi?id=258251
rdar://110952885

Reviewed by Myles C. Maxfield.

The 2022 changes to GB-180030 make 36 code points' encoding and decoding 
asymmetric, so we can't use the the same index lookup for both directions.
I add and update tests for encoding and decoding all 36 code points.

* 
LayoutTests/imported/w3c/web-platform-tests/encoding/legacy-mb-schinese/gb18030/gb18030-decoder.any-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/encoding/legacy-mb-schinese/gb18030/gb18030-decoder.any.js:
* 
LayoutTests/imported/w3c/web-platform-tests/encoding/legacy-mb-schinese/gb18030/gb18030-decoder.any.worker-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/encoding/legacy-mb-schinese/gb18030/gb18030-encoder.html:
* Source/WebCore/PAL/pal/text/TextCodecCJK.cpp:
(PAL::gb18030AsymmetricEncode):
(PAL::gbEncodeShared):

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


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


[webkit-changes] [WebKit/WebKit] 8f5c35: [JSC] rename Array#group/Array#groupByToMap to Obj...

2023-06-29 Thread Devin Rousso
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 8f5c359bbaeb0eb87946cea9ccdb8c52a2c1f143
  
https://github.com/WebKit/WebKit/commit/8f5c359bbaeb0eb87946cea9ccdb8c52a2c1f143
  Author: Devin Rousso 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
R JSTests/stress/array-group-by-null-or-undefined.js
R JSTests/stress/array-groupBy.js
R JSTests/stress/array-groupByToMap.js
A JSTests/stress/map-groupBy.js
A JSTests/stress/object-groupBy.js
M Source/JavaScriptCore/CMakeLists.txt
M Source/JavaScriptCore/DerivedSources-input.xcfilelist
M Source/JavaScriptCore/DerivedSources-output.xcfilelist
M Source/JavaScriptCore/DerivedSources.make
M Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
M Source/JavaScriptCore/builtins/ArrayPrototype.js
A Source/JavaScriptCore/builtins/MapConstructor.js
M Source/JavaScriptCore/builtins/ObjectConstructor.js
M Source/JavaScriptCore/runtime/ArrayPrototype.cpp
M Source/JavaScriptCore/runtime/MapConstructor.cpp
M Source/JavaScriptCore/runtime/ObjectConstructor.cpp
M Source/JavaScriptCore/runtime/OptionsList.h

  Log Message:
  ---
  [JSC] rename Array#group/Array#groupByToMap to Object.groupBy/Map.groupBy
https://bugs.webkit.org/show_bug.cgi?id=258680

Reviewed by Yusuke Suzuki.

Match the latest changes to the "array grouping" spec[1] (proposal[2]).

1. https://tc39.es/proposal-array-grouping/
2. https://github.com/tc39/proposal-array-grouping/

* Source/JavaScriptCore/builtins/ArrayPrototype.js:
(group): Deleted.
(groupToMap): Deleted.
* Source/JavaScriptCore/builtins/MapConstructor.js: Added.
(groupBy):
* Source/JavaScriptCore/builtins/ObjectConstructor.js:
(groupBy): Added.
* Source/JavaScriptCore/runtime/ArrayPrototype.cpp:
(JSC::ArrayPrototype::finishCreation):
* Source/JavaScriptCore/runtime/MapConstructor.cpp:
(JSC::MapConstructor::finishCreation):
* Source/JavaScriptCore/runtime/ObjectConstructor.cpp:
(JSC::ObjectConstructor::finishCreation):
* Source/JavaScriptCore/runtime/OptionsList.h:

* JSTests/stress/array-group-by-null-or-undefined.js: Removed.
* JSTests/stress/map-groupBy.js: Renamed from array-groupBy.js.
* JSTests/stress/object-groupBy.js: Renamed from array-groupByToMap.js.

* Source/JavaScriptCore/CMakeLists.txt:
* Source/JavaScriptCore/DerivedSources.make:
* Source/JavaScriptCore/DerivedSources-input.xcfilelist:
* Source/JavaScriptCore/DerivedSources-output.xcfilelist:
* Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj:

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


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


[webkit-changes] [WebKit/WebKit] 72ba23: REGRESSION(264840@main) ASSERTION FAILED: CGRectIs...

2023-06-29 Thread Simon Fraser
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 72ba23e6beb5f4855c3abc4271d4161f1a27a2bf
  
https://github.com/WebKit/WebKit/commit/72ba23e6beb5f4855c3abc4271d4161f1a27a2bf
  Author: Simon Fraser 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

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

  Log Message:
  ---
  REGRESSION(264840@main) ASSERTION FAILED: 
CGRectIsNull(layer.contentsDirtyRect)
https://bugs.webkit.org/show_bug.cgi?id=258652
rdar://111229068

Reviewed by Brent Fulgham.

On platforms where -[CALayer contentsDirtyRect] is supported, TestWebKitAPI 
tests on iOS, and sometimes apps
on macOS would hit an assertion in 
RemoteLayerBackingStoreProperties::applyBackingStoreToLayer() that
the contentsDirtyRect was not the null rect. This happens when there has been 
no CA transaction since the last call to
applyBackingStoreToLayer() which has committed this layer.

This happens in TestWebKitAPI on iOS because the app is not a real UIKit app, 
so no layer commits happen. In other
scenarios it appears that it's possible to hit 
RemoteLayerBackingStoreProperties::applyBackingStoreToLayer() twice
without a layer being committed in between. When that happens, we need to 
accumulate into `contentsDirtyRect`,
and we should never clear it ourselves.

* Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStoreProperties::applyBackingStoreToLayer):

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


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


[webkit-changes] [WebKit/WebKit] b78da6: Update color-span-inside-editable tests for redesi...

2023-06-29 Thread Vitor Roriz
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b78da69ee5d73ce851b17712af9f3a74aa786a18
  
https://github.com/WebKit/WebKit/commit/b78da69ee5d73ce851b17712af9f3a74aa786a18
  Author: Vitor Roriz 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
M 
LayoutTests/editing/caret/color-span-inside-editable-background-expected.html
M LayoutTests/editing/caret/color-span-inside-editable-background.html
M LayoutTests/editing/caret/color-span-inside-editable-expected.html
M LayoutTests/editing/caret/color-span-inside-editable.html

  Log Message:
  ---
  Update color-span-inside-editable tests for redesigned text cursor
https://bugs.webkit.org/show_bug.cgi?id=258679
rdar://111079967

Reviewed by Tim Nguyen.

This is a preparation for the redesigned cursor update. For now the tests are 
just updating the description.

* LayoutTests/editing/caret/color-span-inside-editable-background-expected.html:
* LayoutTests/editing/caret/color-span-inside-editable-background.html:
* LayoutTests/editing/caret/color-span-inside-editable-expected.html:
* LayoutTests/editing/caret/color-span-inside-editable.html:

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


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


[webkit-changes] [WebKit/WebKit] 61d264: Remove incorrect comment in attachmentElementShado...

2023-06-29 Thread Gerald Squelart
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 61d2643b6fe6373d9546a520b31ffeb5b7f64940
  
https://github.com/WebKit/WebKit/commit/61d2643b6fe6373d9546a520b31ffeb5b7f64940
  Author: Gerald Squelart 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
M Source/WebCore/html/shadow/attachmentElementShadow.css

  Log Message:
  ---
  Remove incorrect comment in attachmentElementShadow.css
https://bugs.webkit.org/show_bug.cgi?id=258437
rdar://105252742

Reviewed by Tim Nguyen.

Follow-up to https://github.com/WebKit/WebKit/pull/15228, where I forgot to 
remove a comment
related to a previous version of the patch.

* Source/WebCore/html/shadow/attachmentElementShadow.css:
(img#attachment-icon):

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


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


[webkit-changes] [WebKit/WebKit] 6bd11f: Canvas context allocation fails because "Total can...

2023-06-29 Thread Dean Jackson
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 6bd11f3792f05b4e58e5647bf173212879fa62cc
  
https://github.com/WebKit/WebKit/commit/6bd11f3792f05b4e58e5647bf173212879fa62cc
  Author: Dean Jackson 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
M LayoutTests/fast/canvas/canvas-crash.html
M LayoutTests/fast/canvas/canvas-skia-excessive-size.html
R LayoutTests/fast/canvas/canvas-too-large-to-draw-expected.txt
R LayoutTests/fast/canvas/canvas-too-large-to-draw.html
M LayoutTests/fast/canvas/large-getImageData.html
M LayoutTests/platform/wincairo/TestExpectations
R LayoutTests/webgl/webgl-oom-paint-document-no-crash-expected.html
R LayoutTests/webgl/webgl-oom-paint-document-no-crash.html
M Source/WebCore/html/CanvasBase.cpp
M Source/WebCore/html/CanvasBase.h
M Source/WebCore/html/HTMLCanvasElement.cpp
M Source/WebCore/testing/Internals.cpp
M Source/WebCore/testing/Internals.idl
M Source/WebKit/GPUProcess/graphics/RemoteRenderingBackend.cpp

  Log Message:
  ---
  Canvas context allocation fails because "Total canvas memory use exceeds the 
maximum limit"
https://bugs.webkit.org/show_bug.cgi?id=195325
rdar://48609162

Reviewed by Geoff Garen.

Some pages that use a lot of transient canvas memory can hit our
artificial limits even when they are no longer referencing canvases.
This happens because we don't instantly reclaim memory when we
drop the reference, and instead have to wait for garbage collection.
This problem can also continue between page refreshes.

The limit was introduced many many releases ago when devices had
less memory, and it was more common to accidentally jetsam a page
if you used too much canvas memory. After some internal and external
discussion we've decided to remove the canvas limit and just let the page
follow the same memory restrictions as all other Web features.

This might mean more pages crash (jetsam) than break.

* LayoutTests/fast/canvas/canvas-too-large-to-draw-expected.txt: Removed.
* LayoutTests/fast/canvas/canvas-too-large-to-draw.html: Removed.
* Source/WebCore/html/CanvasBase.cpp:
(WebCore::CanvasBase::allocateImageBuffer const):
(WebCore::CanvasBase::maxActivePixelMemory): Deleted.
(WebCore::CanvasBase::setMaxPixelMemoryForTesting): Deleted.
* Source/WebCore/html/CanvasBase.h:
* Source/WebCore/html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::createContext2d):
* Source/WebCore/testing/Internals.cpp:
(WebCore::Internals::resetToConsistentState):
(WebCore::Internals::avoidIOSurfaceSizeCheckInWebProcess):
(WebCore::Internals::setMaxCanvasPixelMemory): Deleted.
* Source/WebCore/testing/Internals.idl:
* Source/WebKit/GPUProcess/graphics/RemoteRenderingBackend.cpp:
(WebKit::RemoteRenderingBackend::getPixelBufferForImageBufferWithNewMemory):

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


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


[webkit-changes] [WebKit/WebKit] 3f9ec4: GraphicsContextState returns it has inline changes...

2023-06-29 Thread Said Abou-Hallawa
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 3f9ec4370045aee58faa071ae21fa8dc6429ac3a
  
https://github.com/WebKit/WebKit/commit/3f9ec4370045aee58faa071ae21fa8dc6429ac3a
  Author: Said Abou-Hallawa 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
M Source/WebCore/platform/graphics/GraphicsContextState.cpp

  Log Message:
  ---
  GraphicsContextState returns it has inline changes when it does not have any 
change
https://bugs.webkit.org/show_bug.cgi?id=258673
rdar://111513820

Reviewed by Wenson Hsieh.

containsOnlyInlineChanges() and containsOnlyInlineStrokeChanges() should return
false when the m_changeFlags is empty.

The condition `if (m_changeFlags != (m_changeFlags & basicChangeFlags))` is
evaluated to false when m_changeFlags is empty.

* Source/WebCore/platform/graphics/GraphicsContextState.cpp:
(WebCore::GraphicsContextState::containsOnlyInlineChanges const):
(WebCore::GraphicsContextState::containsOnlyInlineStrokeChanges const):

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


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


[webkit-changes] [WebKit/WebKit] fe288f: [JSC] Should validate cell's structure's structure...

2023-06-29 Thread Commit Queue
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: fe288f3807b64cfbbad6eacddb8742f6ace05bb2
  
https://github.com/WebKit/WebKit/commit/fe288f3807b64cfbbad6eacddb8742f6ace05bb2
  Author: Yijia Huang 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
M Source/JavaScriptCore/tools/HeapVerifier.cpp

  Log Message:
  ---
  [JSC] Should validate cell's structure's structure in 
HeapVerifier::validateJSCell
https://bugs.webkit.org/show_bug.cgi?id=258685
rdar://111522906

Reviewed by Yusuke Suzuki.

* Source/JavaScriptCore/tools/HeapVerifier.cpp:
(JSC::HeapVerifier::validateJSCell):

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


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


[webkit-changes] [WebKit/WebKit] c09328: Occasional crashes under WebWheelEventCoalescer::t...

2023-06-29 Thread Simon Fraser
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: c09328b452c7f838fe5e15bf1137c34d69c93e2a
  
https://github.com/WebKit/WebKit/commit/c09328b452c7f838fe5e15bf1137c34d69c93e2a
  Author: Simon Fraser 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
M Source/WebKit/Shared/WebWheelEventCoalescer.cpp
M Source/WebKit/Shared/WebWheelEventCoalescer.h
M Source/WebKit/UIProcess/WebPageProxy.cpp

  Log Message:
  ---
  Occasional crashes under 
WebWheelEventCoalescer::takeOldestEventBeingProcessed()
https://bugs.webkit.org/show_bug.cgi?id=258653
rdar://111271905

Reviewed by Jer Noble.

Crash data suggest that we can reach 
WebWheelEventCoalescer::takeOldestEventBeingProcessed() with
m_eventsBeingProcessed being empty. We get here after one or more trips to the 
web process for wheel
event handling, so it's possible there's some code path where we can get here 
with an empty m_eventsBeingProcessed,
but I have not figured out how, so do a defensive fix of returning a 
std::optional.

* Source/WebKit/Shared/WebWheelEventCoalescer.cpp:
(WebKit::WebWheelEventCoalescer::takeOldestEventBeingProcessed):
* Source/WebKit/Shared/WebWheelEventCoalescer.h:
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::wheelEventHandlingCompleted):

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


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


[webkit-changes] [WebKit/WebKit] ac10da: REGRESSION (263722@main): Unable to scroll languag...

2023-06-29 Thread Wenson Hsieh
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: ac10daa79e26b4f062cb2c1842b4787698574899
  
https://github.com/WebKit/WebKit/commit/ac10daa79e26b4f062cb2c1842b4787698574899
  Author: Wenson Hsieh 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
A 
LayoutTests/fast/scrolling/ios/overflow-scroll-after-visibility-change-expected.txt
A 
LayoutTests/fast/scrolling/ios/overflow-scroll-after-visibility-change.html
M Source/WebCore/rendering/RenderLayer.cpp

  Log Message:
  ---
  REGRESSION (263722@main): Unable to scroll language picker on etrade.com
https://bugs.webkit.org/show_bug.cgi?id=258433
rdar://109613133

Reviewed by Simon Fraser.

After the changes in 263722@main, certain overflow scrolling containers on 
etrade.com are no longer
scrollable via pan gesture or mouse wheel on iOS; this is because we fail to 
create corresponding
native child scroll views corresponding to these regions in the view hierarchy, 
which in turn is
because we never end up setting `m_hasCompositedScrollableOverflow` to `true` 
inside of
`RenderLayerScrollableArea::computeHasCompositedScrollableOverflow()`, despite 
the fact that we have
vertical scrollable overflow and we can use composited scrolling.

The overflow scrolling container in question is shown by removing `visibility: 
hidden;` on an
ancestor of these containers, which currently triggers only a style update 
(calling into the above
method with `LayoutUpToDate::No`) with no subsequent layout update, causing
`m_hasCompositedScrollableOverflow` to remain `false`.

To address this, we make an adjustment in `RenderLayer::styleChanged` to pass 
`LayoutUpToDate::Yes`
into `computeHasCompositedScrollableOverflow`, in the case where the style 
difference only triggers
at most a layer repaint (or recomposite). In the case where we're only issuing 
a repaint as a result
of the style change (e.g. when toggling visibility), the overflow amount isn't 
going to change, so
it's safe to compute `m_hasCompositedScrollableOverflow` then and there. 
However, in the case where
the style difference is going to trigger layout, it's safe to just run the 
computation using
`LayoutUpToDate::No`, since we'll eventually recompute it with 
`LayoutUpToDate::Yes` after we finish
performing layout.

* 
LayoutTests/fast/scrolling/ios/overflow-scroll-after-visibility-change-expected.txt:
 Added.
* LayoutTests/fast/scrolling/ios/overflow-scroll-after-visibility-change.html: 
Added.

Add a layout test to verify that we propagate overflow scrolling regions via 
scrolling state tree to
the UI process in this scenario, after toggling `visibility` to `visible`.

* Source/WebCore/rendering/RenderLayer.cpp:
(WebCore::RenderLayer::calculateClipRects const):

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


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


[webkit-changes] [WebKit/WebKit] 3db4e6: Don't IdleExit the GPU Process if DOM Rendering is...

2023-06-29 Thread Chris Dumez
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 3db4e668e80eab852778350c423b9ed2f1b4ea06
  
https://github.com/WebKit/WebKit/commit/3db4e668e80eab852778350c423b9ed2f1b4ea06
  Author: Chris Dumez 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
M Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp
M Source/WebKit/GPUProcess/GPUConnectionToWebProcess.h
M Source/WebKit/GPUProcess/GPUProcess.cpp
M Source/WebKit/GPUProcess/GPUProcess.h
M Source/WebKit/GPUProcess/GPUProcess.messages.in
M Source/WebKit/Shared/GPUProcessConnectionParameters.h
M Source/WebKit/Shared/GPUProcessConnectionParameters.serialization.in
M Source/WebKit/UIProcess/GPU/GPUProcessProxy.cpp
M Source/WebKit/UIProcess/GPU/GPUProcessProxy.h
M Source/WebKit/UIProcess/WebProcessPool.cpp
M Source/WebKit/UIProcess/WebProcessProxy.cpp
M Source/WebKit/UIProcess/WebProcessProxy.h

  Log Message:
  ---
  Don't IdleExit the GPU Process if DOM Rendering is enabled and there is a 
client WebContent process
https://bugs.webkit.org/show_bug.cgi?id=258487
rdar://110742027

Reviewed by Wenson Hsieh.

Pass `useGPUProcessForDOMRenderingEnabled` in GPUProcessConnectionParameters, 
and keep
this flag up to date whenever pages are added or removed from the 
WebProcessProxy.
When this flag is true, return false from 
GPUConnectionToWebProcess::allowsExitUnderMemoryPressure().

* Source/WebKit/GPUProcess/GPUConnectionToWebProcess.cpp:
(WebKit::GPUConnectionToWebProcess::allowsExitUnderMemoryPressure const):
* Source/WebKit/GPUProcess/GPUConnectionToWebProcess.h:
* Source/WebKit/Shared/GPUProcessConnectionParameters.h:
* Source/WebKit/Shared/GPUProcessConnectionParameters.serialization.in:
* Source/WebKit/UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::createGPUProcessConnection):

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


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


[webkit-changes] [WebKit/WebKit] 696d5a: Regression: User-friendly name for the GPUProcess ...

2023-06-29 Thread Chris Dumez
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 696d5ab56e5cb4a5a32408698deb2a9e63ff0cb4
  
https://github.com/WebKit/WebKit/commit/696d5ab56e5cb4a5a32408698deb2a9e63ff0cb4
  Author: Chris Dumez 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
M Source/WebKit/GPUProcess/GPUProcess.cpp
M Source/WebKit/GPUProcess/GPUProcess.h
M Source/WebKit/GPUProcess/GPUProcessCreationParameters.cpp
M Source/WebKit/GPUProcess/GPUProcessCreationParameters.h
M Source/WebKit/GPUProcess/cocoa/GPUProcessCocoa.mm
M Source/WebKit/GPUProcess/mac/GPUProcessMac.mm
M Source/WebKit/GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in
M Source/WebKit/UIProcess/Cocoa/GPUProcessProxyCocoa.mm

  Log Message:
  ---
  Regression: User-friendly name for the GPUProcess no longer gets set
https://bugs.webkit.org/show_bug.cgi?id=258600

Reviewed by Per Arne Vollan and Brent Fulgham.

Access to launch services has been blocked by the GPUProcess' sandbox. As a
result, the GPUProcess no longer gets a user-friendly name in Activity Monitor.

To address the issue, we now:
1. Have the UIProcess create a sandbox extension for launch services and send it
   to the GPUProcess to temporarily consume it during initialization
2. The GPUProcess, on initialization now consumes this extension
3. The GPUProcess checks in with Launch Services and sets the process name
4. The GPUProcess closes connections to launch services
5. The GPUProcess revokes the sandbox extension

* Source/WebKit/GPUProcess/GPUProcess.cpp:
(WebKit::GPUProcess::initializeGPUProcess):
* Source/WebKit/GPUProcess/GPUProcess.h:
* Source/WebKit/GPUProcess/GPUProcessCreationParameters.cpp:
(WebKit::GPUProcessCreationParameters::encode const):
(WebKit::GPUProcessCreationParameters::decode):
* Source/WebKit/GPUProcess/GPUProcessCreationParameters.h:
* Source/WebKit/GPUProcess/cocoa/GPUProcessCocoa.mm:
(WebKit::GPUProcess::platformInitializeGPUProcess):
* Source/WebKit/GPUProcess/mac/GPUProcessMac.mm:
(WebKit::GPUProcess::initializeProcessName):
(WebKit::GPUProcess::updateProcessName):
* Source/WebKit/GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in:
* Source/WebKit/UIProcess/Cocoa/GPUProcessProxyCocoa.mm:
(WebKit::GPUProcessProxy::platformInitializeGPUProcessParameters):

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


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


[webkit-changes] [WebKit/WebKit] 3f1250: Silence Window resize events while backgrounding Z...

2023-06-29 Thread Sammy Gill
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 3f1250c62c35f53e033bc6c7965bd864c852f089
  
https://github.com/WebKit/WebKit/commit/3f1250c62c35f53e033bc6c7965bd864c852f089
  Author: Sammy Gill 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

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

  Log Message:
  ---
  Silence Window resize events while backgrounding Zillow on iOS
https://bugs.webkit.org/show_bug.cgi?id=258648
rdar://109480544

Reviewed by Brent Fulgham.

There is currently a bug on Zillow that will cause the map to reset
to its initial location if the window is sized to a small size (enough
to make the map disappear) and resized back to its original size. This is
caused when window resize events are triggered and cause unusual
behavior on iPad due to the background snapshotting behavior of Safari.

Since this process does not happen to other browsers, because they
do not participate in this snapshotting process, it results in a bad
experience to those using Safari. To bring the behavior that occurs in
Safari in line with other browsers we can add a quirk that disables
window resize events from triggering while backgrounding. This should
be removed when the bug is fixed on Zillow's end.

We will also start logging this behavior to console whenever it gets
triggered.

* Source/WebCore/page/LocalFrameView.cpp:
(WebCore::LocalFrameView::scheduleResizeEventIfNeeded):
* Source/WebCore/page/Quirks.cpp:
(WebCore::Quirks::shouldSilenceWindowResizeEvents const):

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


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


[webkit-changes] [WebKit/WebKit] af2081: [WPE] Implement `PlatformWebView` key press and bu...

2023-06-29 Thread Vitaly Dyachkov
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: af208143c8139503872785ff9385e75ad0ed5411
  
https://github.com/WebKit/WebKit/commit/af208143c8139503872785ff9385e75ad0ed5411
  Author: Vitaly Dyachkov 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
A Source/WebKit/Shared/API/c/wpe/WKEventWPE.cpp
A Source/WebKit/Shared/API/c/wpe/WKEventWPE.h
M Source/WebKit/SourcesWPE.txt
A Source/WebKit/UIProcess/API/C/wpe/WKPagePrivateWPE.cpp
A Source/WebKit/UIProcess/API/C/wpe/WKPagePrivateWPE.h
M Tools/TestWebKitAPI/PlatformWebView.h
M Tools/TestWebKitAPI/glib/TestExpectations.json
M Tools/TestWebKitAPI/wpe/PlatformWebViewWPE.cpp

  Log Message:
  ---
  [WPE] Implement `PlatformWebView` key press and button clicks simulation 
methods
https://bugs.webkit.org/show_bug.cgi?id=258665

Reviewed by Miguel Gomez.

In fact, this is a copy of the Playstation port implementation with
some minor changes.

We are extending the `WKPage` API with a couple of functions that can
handle keyboard and mouse events.

These API events are then converted to `NativeWebKeyboardEvent` and
`NativeWebMouseEvent` respectively and sent to `WebPageProxy' for handling.

* Source/WebKit/Shared/API/c/wpe/WKEventWPE.cpp: Added.
(WKKeyboardEventMake):
(WKMouseEventMake):
(WKWheelEventMake):
* Source/WebKit/Shared/API/c/wpe/WKEventWPE.h: Added.
* Source/WebKit/SourcesWPE.txt:
* Source/WebKit/UIProcess/API/C/wpe/WKPagePrivateWPE.cpp: Added.
(WKPageHandleKeyboardEvent):
(WKPageHandleMouseEvent):
* Source/WebKit/UIProcess/API/C/wpe/WKPagePrivateWPE.h: Added.
* Tools/TestWebKitAPI/PlatformWebView.h:
* Tools/TestWebKitAPI/glib/TestExpectations.json:
* Tools/TestWebKitAPI/wpe/PlatformWebViewWPE.cpp:
(TestWebKitAPI::PlatformWebView::simulateSpacebarKeyPress):
(TestWebKitAPI::PlatformWebView::simulateAltKeyPress):
(TestWebKitAPI::PlatformWebView::simulateRightClick):
(TestWebKitAPI::PlatformWebView::simulateButtonClick):
(TestWebKitAPI::PlatformWebView::simulateMouseMove):

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


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


[webkit-changes] [WebKit/WebKit] d42ba8: Revert [265610@main] Regression: User-friendly nam...

2023-06-29 Thread Karl Rackler
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: d42ba8c64e46430dacf3c77d4e3ae1ea840d44c4
  
https://github.com/WebKit/WebKit/commit/d42ba8c64e46430dacf3c77d4e3ae1ea840d44c4
  Author: Karl Rackler 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
M Source/WebKit/GPUProcess/GPUProcess.cpp
M Source/WebKit/GPUProcess/GPUProcess.h
M Source/WebKit/GPUProcess/GPUProcessCreationParameters.cpp
M Source/WebKit/GPUProcess/GPUProcessCreationParameters.h
M Source/WebKit/GPUProcess/cocoa/GPUProcessCocoa.mm
M Source/WebKit/GPUProcess/mac/GPUProcessMac.mm
M Source/WebKit/GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in
M Source/WebKit/UIProcess/Cocoa/GPUProcessProxyCocoa.mm

  Log Message:
  ---
  Revert [265610@main] Regression: User-friendly name for the GPUProcess no 
longer gets set
https://bugs.webkit.org/show_bug.cgi?id=258600
Unreviewed revert
This reverts because it broke the build for the bots.

* Source/WebKit/GPUProcess/GPUProcess.cpp:
(WebKit::GPUProcess::initializeGPUProcess):
* Source/WebKit/GPUProcess/GPUProcess.h:
* Source/WebKit/GPUProcess/GPUProcessCreationParameters.cpp:
(WebKit::GPUProcessCreationParameters::encode const):
(WebKit::GPUProcessCreationParameters::decode):
* Source/WebKit/GPUProcess/GPUProcessCreationParameters.h:
* Source/WebKit/GPUProcess/cocoa/GPUProcessCocoa.mm:
(WebKit::GPUProcess::platformInitializeGPUProcess): Deleted.
* Source/WebKit/GPUProcess/mac/GPUProcessMac.mm:
(WebKit::GPUProcess::initializeProcessName):
(WebKit::GPUProcess::updateProcessName): Deleted.
* Source/WebKit/GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in:
* Source/WebKit/UIProcess/Cocoa/GPUProcessProxyCocoa.mm:
(WebKit::GPUProcessProxy::platformInitializeGPUProcessParameters):

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


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


[webkit-changes] [WebKit/WebKit] 42bd7f: Nullptr crash in Layout::InlineItemsBuilder::colle...

2023-06-29 Thread Antti Koivisto
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 42bd7f4d00792d04c77557feed044658f516b149
  
https://github.com/WebKit/WebKit/commit/42bd7f4d00792d04c77557feed044658f516b149
  Author: Antti Koivisto 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
M Source/WTF/wtf/CheckedRef.h
M Source/WebCore/layout/formattingContexts/inline/InlineItemsBuilder.cpp

  Log Message:
  ---
  Nullptr crash in Layout::InlineItemsBuilder::collectInlineItems
https://bugs.webkit.org/show_bug.cgi?id=258664
rdar://111272076

Reviewed by Alan Baradlay.

Looks like a null item in LayoutQueue.

* Source/WTF/wtf/CheckedRef.h:
(WTF::downcast):

Add CheckedRef version of downcast<>.

* Source/WebCore/layout/formattingContexts/inline/InlineItemsBuilder.cpp:
(WebCore::Layout::traverseUntilDamaged):

Make LayoutQueue use CheckedRef.

(WebCore::Layout::initializeLayoutQueue):

Test for null formattingContextRoot.firstChild() first so we don't add a 
nullptr to LayoutQueue.

(WebCore::Layout::InlineItemsBuilder::collectInlineItems):

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


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


[webkit-changes] [WebKit/WebKit] 242f3a: [contain-intrinsic-size] Support "auto none"

2023-06-29 Thread Rob Buis
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 242f3ae3216ce12c84cdf938b072227b5da42cc3
  
https://github.com/WebKit/WebKit/commit/242f3ae3216ce12c84cdf938b072227b5da42cc3
  Author: Rob Buis 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/contain-intrinsic-size/auto-014-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/contain-intrinsic-size/auto-014.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/contain-intrinsic-size/parsing/contain-intrinsic-size-computed-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/contain-intrinsic-size/parsing/contain-intrinsic-size-computed.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/contain-intrinsic-size/parsing/contain-intrinsic-size-invalid-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/contain-intrinsic-size/parsing/contain-intrinsic-size-invalid.html
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/contain-intrinsic-size/parsing/contain-intrinsic-size-valid-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/contain-intrinsic-size/parsing/contain-intrinsic-size-valid.html
M Source/WebCore/css/CSSProperties.json
M Source/WebCore/css/ComputedStyleExtractor.cpp
M Source/WebCore/css/parser/CSSPropertyParserHelpers.cpp
M Source/WebCore/dom/Document.cpp
M Source/WebCore/rendering/RenderBox.cpp
M Source/WebCore/rendering/style/RenderStyle.h
M Source/WebCore/rendering/style/RenderStyleConstants.cpp
M Source/WebCore/rendering/style/RenderStyleConstants.h
M Source/WebCore/rendering/style/RenderStyleInlines.h
M Source/WebCore/rendering/updating/RenderTreeUpdater.cpp
M Source/WebCore/style/StyleBuilderCustom.h

  Log Message:
  ---
  [contain-intrinsic-size] Support "auto none"
https://bugs.webkit.org/show_bug.cgi?id=258618

Reviewed by Tim Nguyen.

See:
https://github.com/w3c/csswg-drafts/pull/8989

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/contain-intrinsic-size/auto-014-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/contain-intrinsic-size/auto-014.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/contain-intrinsic-size/parsing/contain-intrinsic-size-computed-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/contain-intrinsic-size/parsing/contain-intrinsic-size-computed.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/contain-intrinsic-size/parsing/contain-intrinsic-size-invalid-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/contain-intrinsic-size/parsing/contain-intrinsic-size-invalid.html:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/contain-intrinsic-size/parsing/contain-intrinsic-size-valid-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/contain-intrinsic-size/parsing/contain-intrinsic-size-valid.html:
* Source/WebCore/css/CSSProperties.json:
* Source/WebCore/css/ComputedStyleExtractor.cpp:
(WebCore::valueForContainIntrinsicSize):
* Source/WebCore/css/parser/CSSPropertyParserHelpers.cpp:
(WebCore::CSSPropertyParserHelpers::consumeContainIntrinsicSize):
* Source/WebCore/dom/Document.cpp:
(WebCore::CallbackForContainIntrinsicSize):
* Source/WebCore/rendering/RenderBox.cpp:
(WebCore::RenderBox::explicitIntrinsicInnerWidth const):
(WebCore::RenderBox::explicitIntrinsicInnerHeight const):
* Source/WebCore/rendering/style/RenderStyle.h:
* Source/WebCore/rendering/style/RenderStyleConstants.cpp:
(WebCore::operator<<):
* Source/WebCore/rendering/style/RenderStyleConstants.h:
* Source/WebCore/rendering/style/RenderStyleInlines.h:
(WebCore::RenderStyle::containIntrinsicHeightHasAuto const):
(WebCore::RenderStyle::containIntrinsicWidthHasAuto const):
(WebCore::RenderStyle::hasAutoLengthContainIntrinsicSize const):
* Source/WebCore/rendering/updating/RenderTreeUpdater.cpp:
(WebCore::RenderTreeUpdater::updateElementRenderer):
* Source/WebCore/style/StyleBuilderCustom.h:
(WebCore::Style::BuilderCustom::applyValueContainIntrinsicWidth):
(WebCore::Style::BuilderCustom::applyValueContainIntrinsicHeight):

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


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


[webkit-changes] [WebKit/WebKit] aec46a: Resync WPT webcodecs tests up to 4c14ced

2023-06-29 Thread youennf
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: aec46acb2936291b4bfda85b4134cc09dc350a83
  
https://github.com/WebKit/WebKit/commit/aec46acb2936291b4bfda85b4134cc09dc350a83
  Author: Youenn Fablet 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
A 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/audio-encoder-codec-specific.https.any-expected.txt
A 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/audio-encoder-codec-specific.https.any.html
A 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/audio-encoder-codec-specific.https.any.js
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/video-encoder-config.https.any-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/video-encoder-config.https.any.js
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/video-encoder-config.https.any.worker-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/video-encoder.https.any-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/video-encoder.https.any.js
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/video-encoder.https.any.worker-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/videoDecoder-codec-specific.https.any.js
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/videoFrame-construction.any-expected.txt
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/videoFrame-construction.any.js
M 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/videoFrame-serialization.crossAgentCluster.https.html
M LayoutTests/imported/w3c/web-platform-tests/webcodecs/w3c-import.log
M LayoutTests/platform/glib/TestExpectations
A 
LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/webcodecs/videoFrame-construction.any-expected.txt

  Log Message:
  ---
  Resync WPT webcodecs tests up to 4c14ced
https://bugs.webkit.org/show_bug.cgi?id=258614
rdar://111440403

Reviewed by Tim Nguyen.

* 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/audio-encoder-codec-specific.https.any-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/audio-encoder-codec-specific.https.any.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/audio-encoder-codec-specific.https.any.js:
 Added.
(make_silent_audio_data):
(promise_test.async t):
* 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/video-encoder-config.https.any-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/video-encoder-config.https.any.js:
* 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/video-encoder-config.https.any.worker-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/video-encoder.https.any-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/video-encoder.https.any.js:
(promise_test.async t):
* 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/video-encoder.https.any.worker-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/videoDecoder-codec-specific.https.any.js:
* 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/videoFrame-construction.any-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/videoFrame-construction.any.js:
(promise_test.async t):
* 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/videoFrame-serialization.crossAgentCluster.https.html:
* LayoutTests/imported/w3c/web-platform-tests/webcodecs/w3c-import.log:
* LayoutTests/platform/glib/TestExpectations:
* 
LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/webcodecs/videoFrame-construction.any-expected.txt:
 Copied from 
LayoutTests/imported/w3c/web-platform-tests/webcodecs/videoFrame-construction.any-expected.txt.

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


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


[webkit-changes] [WebKit/WebKit] b0e7ef: Attachment: Use image element to show icon/thumbnail

2023-06-29 Thread Gerald Squelart
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b0e7ef7b0420de70a7ec57e74412a2202718b9ca
  
https://github.com/WebKit/WebKit/commit/b0e7ef7b0420de70a7ec57e74412a2202718b9ca
  Author: Gerald Squelart 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
M 
LayoutTests/fast/attachment/mac/wide-attachment-image-controls-basic-expected.txt
M 
LayoutTests/platform/ios-wk2/fast/attachment/cocoa/wide-attachment-rendering-expected.txt
M 
LayoutTests/platform/mac-wk2/fast/attachment/cocoa/wide-attachment-rendering-expected.txt
M Source/WebCore/editing/Editor.cpp
M Source/WebCore/html/HTMLAttachmentElement.cpp
M Source/WebCore/html/HTMLAttachmentElement.h
M Source/WebCore/html/shadow/attachmentElementShadow.css
M Source/WebCore/rendering/AttachmentLayout.mm
M Source/WebCore/rendering/RenderAttachment.cpp
M Source/WebCore/rendering/RenderThemeIOS.mm
M Source/WebCore/rendering/RenderThemeMac.mm
M Source/WebKit/WebProcess/WebPage/WebPage.cpp

  Log Message:
  ---
  Attachment: Use image element to show icon/thumbnail
https://bugs.webkit.org/show_bug.cgi?id=258437
rdar://105252742

Reviewed by Tim Nguyen.

Instead of using an inner attachment with legacy rendering, use a standard img 
element with a data URL
pointing at a blob that contains the image data.

Widespread changes:
- Removed m_innerLegacyAttachment and all related code.
- Removed image-only code.
- Consistently using "wide-layout" instead of "modern", and "narrow" instead of 
"legacy".

* 
LayoutTests/fast/attachment/mac/wide-attachment-image-controls-basic-expected.txt:
* 
LayoutTests/platform/ios-wk2/fast/attachment/cocoa/wide-attachment-rendering-expected.txt:
* 
LayoutTests/platform/mac-wk2/fast/attachment/cocoa/wide-attachment-rendering-expected.txt:
* Source/WebCore/editing/Editor.cpp:
(WebCore::Editor::didInsertAttachmentElement):
* Source/WebCore/html/HTMLAttachmentElement.cpp:
(WebCore::HTMLAttachmentElement::create):
(WebCore::HTMLAttachmentElement::didAddUserAgentShadowRoot):
(WebCore::attachmentPlaceholderIdentifier):
(WebCore::attachmentIconIdentifier):
(WebCore::HTMLAttachmentElement::ensureWideLayoutShadowTree):
(WebCore::HTMLAttachmentElement::updateProgress):
(WebCore::HTMLAttachmentElement::setFile):
(WebCore::HTMLAttachmentElement::attributeChanged):
(WebCore::HTMLAttachmentElement::attachmentActionForDisplay const):
(WebCore::HTMLAttachmentElement::attachmentTitleForDisplay const):
(WebCore::HTMLAttachmentElement::attachmentSubtitleForDisplay const):
(WebCore::HTMLAttachmentElement::updateAttributes):

(WebCore::HTMLAttachmentElement::updateImage):
This sets the img element with the correct "src" data contents (thumbnail or 
icon or nothing).

(WebCore::HTMLAttachmentElement::updateThumbnailForNarrowLayout):
(WebCore::HTMLAttachmentElement::updateThumbnailForWideLayout):
(WebCore::HTMLAttachmentElement::updateIconForNarrowLayout):
(WebCore::HTMLAttachmentElement::updateIconForWideLayout):
(WebCore::HTMLAttachmentElement::setNeedsWideLayoutIconRequest):
(WebCore::HTMLAttachmentElement::requestWideLayoutIconIfNeeded):
(WebCore::HTMLAttachmentElement::requestIconWithSize const):
(WebCore::attachmentPreviewIdentifier): Deleted.
(WebCore::HTMLAttachmentElement::ensureModernShadowTree): Deleted.
(WebCore::HTMLAttachmentElement::updateThumbnail): Deleted.
(WebCore::HTMLAttachmentElement::updateIcon): Deleted.
* Source/WebCore/html/HTMLAttachmentElement.h:
* Source/WebCore/html/shadow/attachmentElementShadow.css:
(div#attachment-preview-area):
(img#attachment-icon):
(attachment#attachment-preview): Deleted.
* Source/WebCore/rendering/AttachmentLayout.mm:
(WebCore::AttachmentLayout::AttachmentLayout):
* Source/WebCore/rendering/RenderAttachment.cpp:

(WebCore::RenderAttachment::paintWideLayoutAttachmentOnly const):
Call requestWideLayoutIconIfNeeded when painting the shadow tree.

* Source/WebCore/rendering/RenderThemeIOS.mm:
(WebCore::RenderThemeIOS::attachmentIntrinsicSize const):
(WebCore::RenderThemeIOS::paintAttachment):
* Source/WebCore/rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::paintAttachment):

* Source/WebKit/WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updateAttachmentThumbnail):
(WebKit::WebPage::updateAttachmentIcon):
Provide data blobs to wide-layout attachments.

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


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


[webkit-changes] [WebKit/WebKit] d0d057: [JSC] Align duplicate declaration checks in EvalDe...

2023-06-29 Thread Commit Queue
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: d0d05739899c9a8d76d166bbc1afbd116fa5eaf8
  
https://github.com/WebKit/WebKit/commit/d0d05739899c9a8d76d166bbc1afbd116fa5eaf8
  Author: Alexey Shvayka 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
M JSTests/ChakraCore/test/Closures/bug_OS_2299723.baseline-jsc
M JSTests/stress/const-not-strict-mode.js
M JSTests/stress/eval-func-decl-in-eval-within-catch-scope.js
M JSTests/stress/eval-func-decl-in-global-of-eval.js
M JSTests/stress/eval-func-decl-within-eval-with-reassign-to-var.js
A JSTests/stress/eval-let-const-redeclararion.js
M JSTests/stress/global-lexical-var-injection.js
M JSTests/stress/lexical-let-not-strict-mode.js
M JSTests/test262/expectations.yaml
M Source/JavaScriptCore/bytecompiler/BytecodeGenerator.cpp
M Source/JavaScriptCore/bytecompiler/BytecodeGenerator.h
M Source/JavaScriptCore/interpreter/Interpreter.cpp
M Source/JavaScriptCore/runtime/JSScope.cpp

  Log Message:
  ---
  [JSC] Align duplicate declaration checks in EvalDeclarationInstantiation with 
the spec
https://bugs.webkit.org/show_bug.cgi?id=167837


Reviewed by Yusuke Suzuki.

For the sloppy-mode eval(), this change:

1. Removes slowish TypeError-throwing logic from executeEval() that also wasn't 
spec-compliant
   (SyntaxError should be raised instead), harmonizing error messages.

2. Expands resolveScopeForHoistingFuncDeclInEval() to be called for all 
declared variables, which
   currently includes function declarations as well, ensuring SyntaxError is 
thrown for duplicates
   with upper yet non-top lexical scopes [1], all while skipping 
CatchScopeWithSimpleParameter [2].

3. Introduces emitPutToScopeDynamic(), which circumvents default ResolveType 
resolution that isn't
   correct wrt skipping CatchScopeWithSimpleParameter as 
resolveScopeForHoistingFuncDeclInEval() does.

   We can't possibly tweak BytecodeGenerator::resolveType() to account for 
eval().

   This fixes both top-level and block-level function declarations to be 
hoisted correctly from eval()
   within simple parameter catch block by the same name.

4. Removes isExtensible() check from resolveScopeForHoistingFuncDeclInEval() 
because for declared
   variables, CanDeclareGlobalVar [3] is already implemented, while for Annex B 
hoisted functions,
   the implementation doesn't appear correct to unconditionally rely on 
isExtensible() even if the
   property is already present.

   Furthermore, performing CanDeclareGlobalVar in 
resolveScopeForHoistingFuncDeclInEval() is kinda
   superfluous given we put jsUndefined() variables in executeEval(), and 
results in incorrect
   error being thrown (SyntaxError instead of TypeError) if global object is 
non-extensible.

[1]: https://tc39.es/ecma262/#sec-evaldeclarationinstantiation (step 
3.d.i.2.a.i)
[2]: https://tc39.es/ecma262/#sec-variablestatements-in-catch-blocks
[3]: https://tc39.es/ecma262/#sec-candeclareglobalvar

All JSTests changes were proven to align JSC with V8 and SpiderMonkey.

* JSTests/ChakraCore/test/Closures/bug_OS_2299723.baseline-jsc:
* JSTests/stress/const-not-strict-mode.js:
* JSTests/stress/eval-func-decl-in-eval-within-catch-scope.js:
* JSTests/stress/eval-func-decl-in-global-of-eval.js:
* JSTests/stress/eval-func-decl-within-eval-with-reassign-to-var.js:
* JSTests/stress/eval-let-const-redeclararion.js: Added.
* JSTests/stress/global-lexical-var-injection.js:
* JSTests/stress/lexical-let-not-strict-mode.js:
* JSTests/test262/expectations.yaml: Mark 160 tests as passing.
* Source/JavaScriptCore/bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::generate):
(JSC::BytecodeGenerator::hoistSloppyModeFunctionIfNecessary):
(JSC::BytecodeGenerator::emitPutToScopeDynamic):
* Source/JavaScriptCore/bytecompiler/BytecodeGenerator.h:
* Source/JavaScriptCore/interpreter/Interpreter.cpp:
(JSC::Interpreter::executeEval):
* Source/JavaScriptCore/runtime/JSScope.cpp:
(JSC::JSScope::resolveScopeForHoistingFuncDeclInEval):

Co-authored-by: Oleksandr Skachkov 
Canonical link: https://commits.webkit.org/265614@main


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


[webkit-changes] [WebKit/WebKit] f16cf5: Unreviewed. Update OptionsWPE.cmake and NEWS for t...

2023-06-29 Thread Carlos Garcia Campos
  Branch: refs/heads/webkitglib/2.40
  Home:   https://github.com/WebKit/WebKit
  Commit: f16cf5a1b1db6c2a44d772062d23f80db48ecf56
  
https://github.com/WebKit/WebKit/commit/f16cf5a1b1db6c2a44d772062d23f80db48ecf56
  Author: Carlos Garcia Campos 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
M Source/WebKit/wpe/NEWS
M Source/cmake/OptionsWPE.cmake

  Log Message:
  ---
  Unreviewed. Update OptionsWPE.cmake and NEWS for the 2.40.3 release

* Source/WebKit/wpe/NEWS: Add release notes.
* Source/cmake/OptionsWPE.cmake: Bump version numbers.


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


[webkit-changes] [WebKit/WebKit] 1dd4e8: [JSC] Fold GetArrayLength(String) in DFG

2023-06-29 Thread Yusuke Suzuki
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 1dd4e87c56d58f0d85546b40e933a0c1699cb748
  
https://github.com/WebKit/WebKit/commit/1dd4e87c56d58f0d85546b40e933a0c1699cb748
  Author: Yusuke Suzuki 
  Date:   2023-06-29 (Thu, 29 Jun 2023)

  Changed paths:
M Source/JavaScriptCore/dfg/DFGAbstractInterpreterInlines.h

  Log Message:
  ---
  [JSC] Fold GetArrayLength(String) in DFG
https://bugs.webkit.org/show_bug.cgi?id=258657
rdar://111492563

Reviewed by Michael Saboff.

Add DFG AI rule which folds GetArrayLength(constant-string) to constant number 
since String's length is immutable.

* Source/JavaScriptCore/dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter::executeEffects):

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


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


[webkit-changes] [WebKit/WebKit] 3f0a2a: Crash in TextManipulationController::observeParagr...

2023-06-29 Thread Ryosuke Niwa
  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 3f0a2a47e444af1496dbaea11874c7a848a04e12
  
https://github.com/WebKit/WebKit/commit/3f0a2a47e444af1496dbaea11874c7a848a04e12
  Author: Ryosuke Niwa 
  Date:   2023-06-28 (Wed, 28 Jun 2023)

  Changed paths:
M Source/WebCore/editing/TextManipulationController.cpp

  Log Message:
  ---
  Crash in TextManipulationController::observeParagraphs on macrumors.com
https://bugs.webkit.org/show_bug.cgi?id=258649

Reviewed by Wenson Hsieh.

In some cases, we can reach the end of shadow root without TextIterator hitting 
the end.
We need to stop the iteration in such cases to avoid dereferencing nullptr.

Unfortunately no new tests since I cannot create a reduction.

* Source/WebCore/editing/TextManipulationController.cpp:
(WebCore::ParagraphContentIterator::atEnd const):

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


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