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

2021-12-09 Thread simon . fraser
Title: [286834] trunk/Source/WebKit








Revision 286834
Author simon.fra...@apple.com
Date 2021-12-09 22:55:24 -0800 (Thu, 09 Dec 2021)


Log Message
Inspector "composite" events are all very short
https://bugs.webkit.org/show_bug.cgi?id=234114


Reviewed by Tim Horton.

The kCATransactionPhasePreCommit callbacks fire after painting, but we want the composite
time to include painting so use kCATransactionPhasePreLayout.

* WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::addCommitHandlers):
* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::addCommitHandlers):

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm
trunk/Source/WebKit/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm




Diff

Modified: trunk/Source/WebKit/ChangeLog (286833 => 286834)

--- trunk/Source/WebKit/ChangeLog	2021-12-10 06:24:31 UTC (rev 286833)
+++ trunk/Source/WebKit/ChangeLog	2021-12-10 06:55:24 UTC (rev 286834)
@@ -1,3 +1,19 @@
+2021-12-09  Simon Fraser  
+
+Inspector "composite" events are all very short
+https://bugs.webkit.org/show_bug.cgi?id=234114
+
+
+Reviewed by Tim Horton.
+
+The kCATransactionPhasePreCommit callbacks fire after painting, but we want the composite
+time to include painting so use kCATransactionPhasePreLayout.
+
+* WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm:
+(WebKit::RemoteLayerTreeDrawingArea::addCommitHandlers):
+* WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
+(WebKit::TiledCoreAnimationDrawingArea::addCommitHandlers):
+
 2021-12-09  Aditya Keerthi  
 
 Fix the tvOS and watchOS builds after r286641


Modified: trunk/Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm (286833 => 286834)

--- trunk/Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm	2021-12-10 06:24:31 UTC (rev 286833)
+++ trunk/Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm	2021-12-10 06:55:24 UTC (rev 286834)
@@ -293,7 +293,7 @@
 if (Frame* coreFrame = retainedPage->mainFrame())
 corePage->inspectorController().willComposite(*coreFrame);
 }
-} forPhase:kCATransactionPhasePreCommit];
+} forPhase:kCATransactionPhasePreLayout];
 
 [CATransaction addCommitHandler:[retainedPage = Ref { m_webPage }] {
 if (Page* corePage = retainedPage->corePage()) {


Modified: trunk/Source/WebKit/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm (286833 => 286834)

--- trunk/Source/WebKit/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm	2021-12-10 06:24:31 UTC (rev 286833)
+++ trunk/Source/WebKit/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm	2021-12-10 06:55:24 UTC (rev 286834)
@@ -418,7 +418,7 @@
 if (Frame* coreFrame = retainedPage->mainFrame())
 corePage->inspectorController().willComposite(*coreFrame);
 }
-} forPhase:kCATransactionPhasePreCommit];
+} forPhase:kCATransactionPhasePreLayout];
 
 [CATransaction addCommitHandler:[retainedPage = Ref { m_webPage }] {
 if (Page* corePage = retainedPage->corePage()) {






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


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

2021-12-09 Thread akeerthi
Title: [286833] trunk/Source/WebKit








Revision 286833
Author akeer...@apple.com
Date 2021-12-09 22:24:31 -0800 (Thu, 09 Dec 2021)


Log Message
Fix the tvOS and watchOS builds after r286641
https://bugs.webkit.org/show_bug.cgi?id=234124

Unreviewed build fix.


* UIProcess/API/Cocoa/WKWebViewPrivate.h:

WKWebView does not conform to the protocol on watchOS/tvOS.

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivate.h




Diff

Modified: trunk/Source/WebKit/ChangeLog (286832 => 286833)

--- trunk/Source/WebKit/ChangeLog	2021-12-10 05:42:28 UTC (rev 286832)
+++ trunk/Source/WebKit/ChangeLog	2021-12-10 06:24:31 UTC (rev 286833)
@@ -1,3 +1,14 @@
+2021-12-09  Aditya Keerthi  
+
+Fix the tvOS and watchOS builds after r286641
+https://bugs.webkit.org/show_bug.cgi?id=234124
+
+Unreviewed build fix.
+
+* UIProcess/API/Cocoa/WKWebViewPrivate.h:
+
+WKWebView does not conform to the protocol on watchOS/tvOS.
+
 2021-12-09  Ryan Haddad  
 
 Add ability to inject messages into webpushd


Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivate.h (286832 => 286833)

--- trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivate.h	2021-12-10 05:42:28 UTC (rev 286832)
+++ trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivate.h	2021-12-10 06:24:31 UTC (rev 286833)
@@ -431,7 +431,7 @@
 
 #if TARGET_OS_IPHONE
 
-#if __has_include()
+#if !TARGET_OS_TV && !TARGET_OS_WATCH && __has_include()
 @interface WKWebView (WKPrivateIOS) <_UITextSearching>
 #else
 @interface WKWebView (WKPrivateIOS)






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


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

2021-12-09 Thread ryanhaddad
Title: [286832] trunk/Source/WebKit








Revision 286832
Author ryanhad...@apple.com
Date 2021-12-09 21:42:28 -0800 (Thu, 09 Dec 2021)


Log Message
Add ability to inject messages into webpushd
https://bugs.webkit.org/show_bug.cgi?id=233988

Unreviewed attempt to fix some builds.

* Configurations/webpushtool.xcconfig:

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/Configurations/webpushtool.xcconfig




Diff

Modified: trunk/Source/WebKit/ChangeLog (286831 => 286832)

--- trunk/Source/WebKit/ChangeLog	2021-12-10 05:05:27 UTC (rev 286831)
+++ trunk/Source/WebKit/ChangeLog	2021-12-10 05:42:28 UTC (rev 286832)
@@ -1,3 +1,12 @@
+2021-12-09  Ryan Haddad  
+
+Add ability to inject messages into webpushd
+https://bugs.webkit.org/show_bug.cgi?id=233988
+
+Unreviewed attempt to fix some builds.
+
+* Configurations/webpushtool.xcconfig:
+
 2021-12-09  Wenson Hsieh  
 
 Add a new WKWebpagePreferences SPI for modal container observation policies


Modified: trunk/Source/WebKit/Configurations/webpushtool.xcconfig (286831 => 286832)

--- trunk/Source/WebKit/Configurations/webpushtool.xcconfig	2021-12-10 05:05:27 UTC (rev 286831)
+++ trunk/Source/WebKit/Configurations/webpushtool.xcconfig	2021-12-10 05:42:28 UTC (rev 286832)
@@ -29,7 +29,7 @@
 EXCLUDED_SOURCE_FILE_NAMES[sdk=appletv*] = *;
 EXCLUDED_SOURCE_FILE_NAMES[sdk=watch*] = *;
 
-OTHER_LDFLAGS = -framework WebKit -framework _javascript_Core
+OTHER_LDFLAGS = -framework Foundation -framework CoreFoundation -framework WebKit -framework _javascript_Core
 LIBRARY_SEARCH_PATHS = $(BUILT_PRODUCTS_DIR);
 
 CODE_SIGN_ENTITLEMENTS = Resources/webpushtool.entitlements;






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


[webkit-changes] [286831] trunk/Source

2021-12-09 Thread wenson_hsieh
Title: [286831] trunk/Source








Revision 286831
Author wenson_hs...@apple.com
Date 2021-12-09 21:05:27 -0800 (Thu, 09 Dec 2021)


Log Message
Add a new WKWebpagePreferences SPI for modal container observation policies
https://bugs.webkit.org/show_bug.cgi?id=234013
rdar://86219613

Reviewed by Brent Fulgham.

Source/WebCore:

Add a new website policy flag `ModalContainerObservationPolicy`. Refer to rdar://86219613 for more info.

* loader/DocumentLoader.h:
(WebCore::DocumentLoader::modalContainerObservationPolicy const):
(WebCore::DocumentLoader::setModalContainerObservationPolicy):

Source/WebKit:

Add a new website policy flag `ModalContainerObservationPolicy`, and expose it as SPI on WKWebpagePreferences.
Refer to rdar://86219613 for additional details.

* Shared/WebsitePoliciesData.cpp:
(WebKit::WebsitePoliciesData::encode const):
(WebKit::WebsitePoliciesData::decode):
(WebKit::WebsitePoliciesData::applyToDocumentLoader):
* Shared/WebsitePoliciesData.h:
* UIProcess/API/APIWebsitePolicies.cpp:
(API::WebsitePolicies::copy const):
(API::WebsitePolicies::data):
* UIProcess/API/APIWebsitePolicies.h:
* UIProcess/API/Cocoa/WKWebpagePreferences.mm:
(WebKit::modalContainerObservationPolicy):
(WebKit::coreModalContainerObservationPolicy):
(-[WKWebpagePreferences _setModalContainerObservationPolicy:]):
(-[WKWebpagePreferences _modalContainerObservationPolicy]):
* UIProcess/API/Cocoa/WKWebpagePreferencesPrivate.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/loader/DocumentLoader.h
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/Shared/WebsitePoliciesData.cpp
trunk/Source/WebKit/Shared/WebsitePoliciesData.h
trunk/Source/WebKit/UIProcess/API/APIWebsitePolicies.cpp
trunk/Source/WebKit/UIProcess/API/APIWebsitePolicies.h
trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebpagePreferences.mm
trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebpagePreferencesPrivate.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (286830 => 286831)

--- trunk/Source/WebCore/ChangeLog	2021-12-10 04:48:45 UTC (rev 286830)
+++ trunk/Source/WebCore/ChangeLog	2021-12-10 05:05:27 UTC (rev 286831)
@@ -1,3 +1,17 @@
+2021-12-09  Wenson Hsieh  
+
+Add a new WKWebpagePreferences SPI for modal container observation policies
+https://bugs.webkit.org/show_bug.cgi?id=234013
+rdar://86219613
+
+Reviewed by Brent Fulgham.
+
+Add a new website policy flag `ModalContainerObservationPolicy`. Refer to rdar://86219613 for more info.
+
+* loader/DocumentLoader.h:
+(WebCore::DocumentLoader::modalContainerObservationPolicy const):
+(WebCore::DocumentLoader::setModalContainerObservationPolicy):
+
 2021-12-09  Cathie Chen  
 
 Stack-overflow crash in WebCore::RenderBox::computeLogicalHeight()


Modified: trunk/Source/WebCore/loader/DocumentLoader.h (286830 => 286831)

--- trunk/Source/WebCore/loader/DocumentLoader.h	2021-12-10 04:48:45 UTC (rev 286830)
+++ trunk/Source/WebCore/loader/DocumentLoader.h	2021-12-10 05:05:27 UTC (rev 286831)
@@ -144,6 +144,13 @@
 #endif
 };
 
+enum class ModalContainerObservationPolicy : uint8_t {
+Disabled,
+Prompt,
+Allow,
+Disallow,
+};
+
 DECLARE_ALLOCATOR_WITH_HEAP_IDENTIFIER(DocumentLoader);
 class DocumentLoader
 : public RefCounted
@@ -343,6 +350,9 @@
 WEBCORE_EXPORT MouseEventPolicy mouseEventPolicy() const;
 void setMouseEventPolicy(MouseEventPolicy policy) { m_mouseEventPolicy = policy; }
 
+ModalContainerObservationPolicy modalContainerObservationPolicy() const { return m_modalContainerObservationPolicy; }
+void setModalContainerObservationPolicy(ModalContainerObservationPolicy policy) { m_modalContainerObservationPolicy = policy; }
+
 void addSubresourceLoader(ResourceLoader&);
 void removeSubresourceLoader(LoadCompletionType, ResourceLoader*);
 void addPlugInStreamLoader(ResourceLoader&);
@@ -667,6 +677,7 @@
 SimulatedMouseEventsDispatchPolicy m_simulatedMouseEventsDispatchPolicy { SimulatedMouseEventsDispatchPolicy::Default };
 LegacyOverflowScrollingTouchPolicy m_legacyOverflowScrollingTouchPolicy { LegacyOverflowScrollingTouchPolicy::Default };
 MouseEventPolicy m_mouseEventPolicy { MouseEventPolicy::Default };
+ModalContainerObservationPolicy m_modalContainerObservationPolicy { ModalContainerObservationPolicy::Disabled };
 
 #if ENABLE(SERVICE_WORKER)
 std::optional m_serviceWorkerRegistrationData;
@@ -782,4 +793,14 @@
 >;
 };
 
+template<> struct EnumTraits {
+using values = EnumValues<
+WebCore::ModalContainerObservationPolicy,
+WebCore::ModalContainerObservationPolicy::Disabled,
+WebCore::ModalContainerObservationPolicy::Prompt,
+WebCore::ModalContainerObservationPolicy::Allow,
+WebCore::ModalContainerObservationPolicy::Disallow
+>;
+};
+
 } // namespace WTF


Modified: trunk/Source/WebKit/ChangeLog (286830 => 286831)

--- trunk/Source/WebKit/ChangeLog	2021-12-10 04:48:45 UTC (rev 286830)
+++ 

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

2021-12-09 Thread commit-queue
Title: [286830] trunk/Source/WebKit








Revision 286830
Author commit-qu...@webkit.org
Date 2021-12-09 20:48:45 -0800 (Thu, 09 Dec 2021)


Log Message
[Playstation] Fix build break after r286751 with INTELLIGENT_TRACKING_PREVENTION enabled
https://bugs.webkit.org/show_bug.cgi?id=234095

Patch by Jigen Zhou  on 2021-12-09
Reviewed by Darin Adler.

Added a forward declaration of class ResourceError to NetworkSession.h to resolve
a compiling error. No new test is need since no behavior change is expected.

* NetworkProcess/NetworkSession.h:

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/NetworkProcess/NetworkSession.h




Diff

Modified: trunk/Source/WebKit/ChangeLog (286829 => 286830)

--- trunk/Source/WebKit/ChangeLog	2021-12-10 04:46:48 UTC (rev 286829)
+++ trunk/Source/WebKit/ChangeLog	2021-12-10 04:48:45 UTC (rev 286830)
@@ -1,3 +1,15 @@
+2021-12-09  Jigen Zhou  
+
+[Playstation] Fix build break after r286751 with INTELLIGENT_TRACKING_PREVENTION enabled
+https://bugs.webkit.org/show_bug.cgi?id=234095
+
+Reviewed by Darin Adler.
+
+Added a forward declaration of class ResourceError to NetworkSession.h to resolve
+a compiling error. No new test is need since no behavior change is expected.
+
+* NetworkProcess/NetworkSession.h:
+
 2021-12-09  Devin Rousso  
 
 Add a `DOMPasteAccessCategory` to control which pasteboard the WebProcess is granted access to when pasting


Modified: trunk/Source/WebKit/NetworkProcess/NetworkSession.h (286829 => 286830)

--- trunk/Source/WebKit/NetworkProcess/NetworkSession.h	2021-12-10 04:46:48 UTC (rev 286829)
+++ trunk/Source/WebKit/NetworkProcess/NetworkSession.h	2021-12-10 04:48:45 UTC (rev 286830)
@@ -54,6 +54,7 @@
 class CertificateInfo;
 class NetworkStorageSession;
 class ResourceRequest;
+class ResourceError;
 enum class IncludeHttpOnlyCookies : bool;
 enum class ShouldSample : bool;
 struct SecurityOriginData;






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


[webkit-changes] [286828] trunk/Source/WTF

2021-12-09 Thread zalan
Title: [286828] trunk/Source/WTF








Revision 286828
Author za...@apple.com
Date 2021-12-09 20:31:45 -0800 (Thu, 09 Dec 2021)


Log Message
Enable the CSS Contain property by default
https://bugs.webkit.org/show_bug.cgi?id=234020


Reviewed by Brent Fulgham.

* Scripts/Preferences/WebPreferencesExperimental.yaml:

Modified Paths

trunk/Source/WTF/ChangeLog
trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml




Diff

Modified: trunk/Source/WTF/ChangeLog (286827 => 286828)

--- trunk/Source/WTF/ChangeLog	2021-12-10 03:37:04 UTC (rev 286827)
+++ trunk/Source/WTF/ChangeLog	2021-12-10 04:31:45 UTC (rev 286828)
@@ -1,3 +1,13 @@
+2021-12-09  Alan Bujtas  
+
+Enable the CSS Contain property by default
+https://bugs.webkit.org/show_bug.cgi?id=234020
+
+
+Reviewed by Brent Fulgham.
+
+* Scripts/Preferences/WebPreferencesExperimental.yaml:
+
 2021-12-09  Ryan Haddad  
 
 Unreviewed, reverting r286804.


Modified: trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml (286827 => 286828)

--- trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml	2021-12-10 03:37:04 UTC (rev 286827)
+++ trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml	2021-12-10 04:31:45 UTC (rev 286828)
@@ -230,11 +230,11 @@
   humanReadableDescription: "Enable contain CSS property"
   defaultValue:
 WebKitLegacy:
-  default: false
+  default: true
 WebKit:
-  default: false
+  default: true
 WebCore:
-  default: false
+  default: true
 
 CSSCounterStyleAtRuleImageSymbolsEnabled:
   type: bool






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


[webkit-changes] [286827] trunk

2021-12-09 Thread cathiechen
Title: [286827] trunk








Revision 286827
Author cathiec...@igalia.com
Date 2021-12-09 19:37:04 -0800 (Thu, 09 Dec 2021)


Log Message
Stack-overflow crash in WebCore::RenderBox::computeLogicalHeight()
https://bugs.webkit.org/show_bug.cgi?id=233460

Reviewed by Sergio Villar Senin and Darin Adler.

Source/WebCore:

Like flexibleBox item, deprecatedFlexibleBox item should call clearOverridingContentSize if
it is positioned. Otherwise, RenderReplaced::computeAspectRatioInformationForRenderBox might call
itself recursively.

Test: fast/css/deprecated-flex-box-with-min-content-crashes.html

* rendering/RenderBox.cpp:
(WebCore::RenderBox::styleDidChange):
* rendering/style/RenderStyle.h:
(WebCore::RenderStyle::isDisplayFlexibleOrGridBoxIncludingDeprecated const):
(WebCore::RenderStyle::isDisplayDeprecatedFlexibleBox):

LayoutTests:

* fast/css/deprecated-flex-box-with-min-content-crashes-expected.txt: Added.
* fast/css/deprecated-flex-box-with-min-content-crashes.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/rendering/RenderBox.cpp
trunk/Source/WebCore/rendering/style/RenderStyle.h


Added Paths

trunk/LayoutTests/fast/css/deprecated-flex-box-with-min-content-crashes-expected.txt
trunk/LayoutTests/fast/css/deprecated-flex-box-with-min-content-crashes.html




Diff

Modified: trunk/LayoutTests/ChangeLog (286826 => 286827)

--- trunk/LayoutTests/ChangeLog	2021-12-10 03:16:01 UTC (rev 286826)
+++ trunk/LayoutTests/ChangeLog	2021-12-10 03:37:04 UTC (rev 286827)
@@ -1,3 +1,13 @@
+2021-12-09  Cathie Chen  
+
+Stack-overflow crash in WebCore::RenderBox::computeLogicalHeight()
+https://bugs.webkit.org/show_bug.cgi?id=233460
+
+Reviewed by Sergio Villar Senin and Darin Adler.
+
+* fast/css/deprecated-flex-box-with-min-content-crashes-expected.txt: Added.
+* fast/css/deprecated-flex-box-with-min-content-crashes.html: Added.
+
 2021-12-09  Chris Dumez  
 
 Add basic support for launching a SharedWorker


Added: trunk/LayoutTests/fast/css/deprecated-flex-box-with-min-content-crashes-expected.txt (0 => 286827)

--- trunk/LayoutTests/fast/css/deprecated-flex-box-with-min-content-crashes-expected.txt	(rev 0)
+++ trunk/LayoutTests/fast/css/deprecated-flex-box-with-min-content-crashes-expected.txt	2021-12-10 03:37:04 UTC (rev 286827)
@@ -0,0 +1 @@
+This test PASS if it doesn't CRASH.


Added: trunk/LayoutTests/fast/css/deprecated-flex-box-with-min-content-crashes.html (0 => 286827)

--- trunk/LayoutTests/fast/css/deprecated-flex-box-with-min-content-crashes.html	(rev 0)
+++ trunk/LayoutTests/fast/css/deprecated-flex-box-with-min-content-crashes.html	2021-12-10 03:37:04 UTC (rev 286827)
@@ -0,0 +1,32 @@
+
+
+body,
+iframe {
+aspect-ratio: 1;
+}
+
+body {
+display: -webkit-box;
+-webkit-box-orient: block-axis;
+}
+
+iframe {
+display: block;
+-webkit-box-flex: 1;
+max-inline-size: min-content;
+}
+
+
+if (window.testRunner)
+testRunner.dumpAsText();
+
+_onload_ = () => {
+let iframe0 = document.createElement('iframe');
+document.body.append(iframe0);
+document.body.getBoundingClientRect();
+iframe0.style.position = 'fixed';
+document.body.getBoundingClientRect();
+document.body.innerHTML = "This test PASS if it doesn't CRASH.";
+};
+
+


Modified: trunk/Source/WebCore/ChangeLog (286826 => 286827)

--- trunk/Source/WebCore/ChangeLog	2021-12-10 03:16:01 UTC (rev 286826)
+++ trunk/Source/WebCore/ChangeLog	2021-12-10 03:37:04 UTC (rev 286827)
@@ -1,3 +1,22 @@
+2021-12-09  Cathie Chen  
+
+Stack-overflow crash in WebCore::RenderBox::computeLogicalHeight()
+https://bugs.webkit.org/show_bug.cgi?id=233460
+
+Reviewed by Sergio Villar Senin and Darin Adler.
+
+Like flexibleBox item, deprecatedFlexibleBox item should call clearOverridingContentSize if
+it is positioned. Otherwise, RenderReplaced::computeAspectRatioInformationForRenderBox might call
+itself recursively.
+
+Test: fast/css/deprecated-flex-box-with-min-content-crashes.html
+
+* rendering/RenderBox.cpp:
+(WebCore::RenderBox::styleDidChange):
+* rendering/style/RenderStyle.h:
+(WebCore::RenderStyle::isDisplayFlexibleOrGridBoxIncludingDeprecated const):
+(WebCore::RenderStyle::isDisplayDeprecatedFlexibleBox):
+
 2021-12-09  Devin Rousso  
 
 Add a `DOMPasteAccessCategory` to control which pasteboard the WebProcess is granted access to when pasting


Modified: trunk/Source/WebCore/rendering/RenderBox.cpp (286826 => 286827)

--- trunk/Source/WebCore/rendering/RenderBox.cpp	2021-12-10 03:16:01 UTC (rev 286826)
+++ trunk/Source/WebCore/rendering/RenderBox.cpp	2021-12-10 03:37:04 UTC (rev 286827)
@@ -417,7 +417,7 @@
 // Changing the position from/to absolute can potentially create/remove flex/grid items, as absolutely positioned
 // children of a flex/grid box 

[webkit-changes] [286826] branches/safari-612-branch/LayoutTests

2021-12-09 Thread jenner
Title: [286826] branches/safari-612-branch/LayoutTests








Revision 286826
Author jen...@apple.com
Date 2021-12-09 19:16:01 -0800 (Thu, 09 Dec 2021)


Log Message
REGRESSION(r285452-r285595):[ Monterey Release ] 2 accessibility (layout-tests) are constant text failures


Unreviewed test gardening.

* platform/mac-wk2/TestExpectations:

Modified Paths

branches/safari-612-branch/LayoutTests/ChangeLog
branches/safari-612-branch/LayoutTests/platform/mac-wk2/TestExpectations




Diff

Modified: branches/safari-612-branch/LayoutTests/ChangeLog (286825 => 286826)

--- branches/safari-612-branch/LayoutTests/ChangeLog	2021-12-10 03:08:53 UTC (rev 286825)
+++ branches/safari-612-branch/LayoutTests/ChangeLog	2021-12-10 03:16:01 UTC (rev 286826)
@@ -1,3 +1,12 @@
+2021-12-09  Robert Jenner  
+
+REGRESSION(r285452-r285595):[ Monterey Release ] 2 accessibility (layout-tests) are constant text failures
+
+
+Unreviewed test gardening.
+
+* platform/mac-wk2/TestExpectations:
+
 2021-12-02  Alan Coon  
 
 Revert r286394. rdar://problem/83070565


Modified: branches/safari-612-branch/LayoutTests/platform/mac-wk2/TestExpectations (286825 => 286826)

--- branches/safari-612-branch/LayoutTests/platform/mac-wk2/TestExpectations	2021-12-10 03:08:53 UTC (rev 286825)
+++ branches/safari-612-branch/LayoutTests/platform/mac-wk2/TestExpectations	2021-12-10 03:16:01 UTC (rev 286826)
@@ -1603,3 +1603,8 @@
 
 # rdar://82002352 ([ Monterey wk2 Release ] css3/blending/background-blend-mode-background-clip-content-box.html is flaky image failing)
 [ Monterey Release ] css3/blending/background-blend-mode-background-clip-content-box.html [ Pass ImageOnlyFailure ]
+
+
+# rdar://86302643 REGRESSION(r285452-r285595):[ Monterey Release ] 2 accessibility (layout-tests) are constant text failures
+[ Monterey Release ] accessibility/lists.html [ Failure ]
+[ Monterey Release ] accessibility/plugin.html [ Failure ]
\ No newline at end of file






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


[webkit-changes] [286825] trunk/Source

2021-12-09 Thread drousso
Title: [286825] trunk/Source








Revision 286825
Author drou...@apple.com
Date 2021-12-09 19:08:53 -0800 (Thu, 09 Dec 2021)


Log Message
Add a `DOMPasteAccessCategory` to control which pasteboard the WebProcess is granted access to when pasting
https://bugs.webkit.org/show_bug.cgi?id=233939

Reviewed by Wenson Hsieh.

Implementing `-pasteFont:`  requires that we read from the font
pasteboard instead of the general pasteboard. In order to allow web content to trigger this
(e.g. `document.execCommand("PasteFont"))`) we must have a way for the WebProcess to signal
that it wishes to read from the font pasteboard instead of the general pasteboard. As such,
create and pass along a `DOMPasteAccessCategory` to `requestDOMPasteAccess`.

No change in behavior.

Source/WebCore:

* dom/DOMPasteAccess.h:
Create `DOMPasteAccessCategory`.

* page/EditorClient.h:
* page/Frame.h:
* page/Frame.cpp:
(WebCore::Frame::requestDOMPasteAccess):
* loader/EmptyClients.cpp:
(WebCore::EmptyEditorClient::requestDOMPasteAccess):
Pass along the `DOMPasteAccessCategory`.

Source/WebKit:

* Scripts/webkit/messages.py:
(headers_for_type):
Indicate which header is associated with `DOMPasteAccessCategory`.

* UIProcess/Cocoa/WebViewImpl.h:
* UIProcess/Cocoa/WebViewImpl.mm:
(-[WKDOMPasteMenuDelegate initWithWebViewImpl:pasteAccessCategory:]): Added.
(-[WKDOMPasteMenuDelegate menuDidClose:]):
(-[WKDOMPasteMenuDelegate _web_grantDOMPasteAccess]): Added.
(WebKit::WebViewImpl::handleProcessSwapOrExit):
(WebKit::pasteboardNameForAccessCategory): Added.
(WebKit::pasteboardForAccessCategory): Added.
(WebKit::WebViewImpl::requestDOMPasteAccess):
(WebKit::WebViewImpl::handleDOMPasteRequestForCategoryWithResult):
(WebKit::WebViewImpl::hideDOMPasteMenuWithResult): Added.
(-[WKDOMPasteMenuDelegate initWithWebViewImpl:]): Deleted.
(WebKit::WebViewImpl::handleDOMPasteRequestWithResult): Deleted.
* UIProcess/API/mac/WKView.mm:
(-[WKView _web_grantDOMPasteAccess]): Deleted.
* UIProcess/API/mac/WKWebViewMac.mm:
(-[WKWebView _web_grantDOMPasteAccess]): Deleted.
Pass the `DOMPasteAccessCategory` to the `WKDOMPasteMenuDelegate` and use it as the `target`
of the `NSMenuItem` so that we can pass along the `DOMPasteAccessCategory` in the `action`.

* UIProcess/ios/WKContentViewInteraction.h:
* UIProcess/ios/WKContentViewInteraction.mm:
(pasteboardNameForAccessCategory): Added.
(pasteboardForAccessCategory): Added.
(-[WKContentView _handleDOMPasteRequestWithResult:]):
(-[WKContentView _requestDOMPasteAccessForCategory:elementRect:originIdentifier:completionHandler:]): Added.
(-[WKContentView _requestDOMPasteAccessWithElementRect:originIdentifier:completionHandler:]): Deleted.
* UIProcess/PageClient.h:
* UIProcess/API/gtk/PageClientImpl.h:
* UIProcess/API/gtk/PageClientImpl.cpp:
(WebKit::PageClientImpl::requestDOMPasteAccess):
* UIProcess/API/wpe/PageClientImpl.h:
* UIProcess/API/wpe/PageClientImpl.cpp:
(WebKit::PageClientImpl::requestDOMPasteAccess):
* UIProcess/ios/PageClientImplIOS.h:
* UIProcess/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::requestDOMPasteAccess):
* UIProcess/mac/PageClientImplMac.h:
* UIProcess/mac/PageClientImplMac.mm:
(WebKit::PageClientImpl::requestDOMPasteAccess):
* UIProcess/playstation/PageClientImpl.h:
* UIProcess/playstation/PageClientImpl.cpp:
(WebKit::PageClientImpl::requestDOMPasteAccess):
* UIProcess/win/PageClientImpl.h:
* UIProcess/win/PageClientImpl.cpp:
(WebKit::PageClientImpl::requestDOMPasteAccess):
* WebProcess/WebCoreSupport/WebEditorClient.h:
* WebProcess/WebCoreSupport/WebEditorClient.cpp:
(WebKit::WebEditorClient::requestDOMPasteAccess):
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::requestDOMPasteAccess):
Pass along the `DOMPasteAccessCategory`.

* UIProcess/WebPageProxy.messages.in:
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::pasteAccessCategoryForCommand): Added.
(WebKit::WebPageProxy::executeEditCommand):
(WebKit::WebPageProxy::requestDOMPasteAccess):
(WebKit::WebPageProxy::willPerformPasteCommand):
(WebKit::isPasteCommandName): Deleted.
* UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::willPerformPasteCommand):
* UIProcess/mac/WebPageProxyMac.mm:
(WebKit::WebPageProxy::willPerformPasteCommand)
Create a mapping between paste command name and `DOMPasteAccessCategory`.

Source/WebKitLegacy/mac:

* WebCoreSupport/WebEditorClient.h:
(WebEditorClient::requestDOMPasteAccess):

Source/WebKitLegacy/win:

* WebCoreSupport/WebEditorClient.h:
(WebEditorClient::requestDOMPasteAccess):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/dom/DOMPasteAccess.h
trunk/Source/WebCore/loader/EmptyClients.cpp
trunk/Source/WebCore/page/EditorClient.h
trunk/Source/WebCore/page/Frame.cpp
trunk/Source/WebCore/page/Frame.h
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/Scripts/webkit/messages.py
trunk/Source/WebKit/UIProcess/API/gtk/PageClientImpl.cpp
trunk/Source/WebKit/UIProcess/API/gtk/PageClientImpl.h

[webkit-changes] [286824] trunk/Source

2021-12-09 Thread said
Title: [286824] trunk/Source








Revision 286824
Author s...@apple.com
Date 2021-12-09 18:38:54 -0800 (Thu, 09 Dec 2021)


Log Message
[GPU Process] [Filters] Add the encoding and decoding for FEImage
https://bugs.webkit.org/show_bug.cgi?id=234099

Reviewed by Wenson Hsieh.

Source/WebCore:

FEImage needs to encode and decode the RenderingResourceIdentifier of the
Image or the ImageBuffer of its SourceImage.

A new type 'RenderingResourceIdentifier' is added to FEImage::SourceImage
variant. This going to be used while transferring the FEImage from
WebProcess to GPUProcess.

Record-using the Image or ImageBuffer of FEImage::SourceImage has to
happen in Recorder::drawFilteredImageBuffer() since this is the place we
can send messages to GPUProcess.

Resolving RenderingResourceIdentifier of FEImage::SourceImage back to an
Image or an ImageBuffer has to happen in RemoteDisplayListRecorder::
drawFilteredImageBuffer before handling the item DrawFilteredImageBuffer.

Because of the two restrictions above we have to provide the virtual
function Filter::effectsOfType() which is overridden by CSSFilter and
SVGFilter.

* Headers.cmake:
* WebCore.xcodeproj/project.pbxproj:
* platform/graphics/displaylists/DisplayListRecorder.cpp:
(WebCore::DisplayList::Recorder::drawFilteredImageBuffer):
* platform/graphics/filters/Filter.h:
* rendering/CSSFilter.cpp:
(WebCore::CSSFilter::effectsOfType const):
* rendering/CSSFilter.h:
* svg/SVGPreserveAspectRatioValue.cpp:
(WebCore::SVGPreserveAspectRatioValue::SVGPreserveAspectRatioValue):
* svg/SVGPreserveAspectRatioValue.h:
(WebCore::SVGPreserveAspectRatioValue::encode const):
(WebCore::SVGPreserveAspectRatioValue::decode):
* svg/graphics/filters/SVGFEImage.cpp:
(WebCore::FEImage::calculateImageRect const):
(WebCore::FEImageSoftwareApplier::apply const):
* svg/graphics/filters/SVGFEImage.h:
(WebCore::FEImage::encode const):
(WebCore::FEImage::decode):
* svg/graphics/filters/SVGFilter.cpp:
(WebCore::SVGFilter::effectsOfType const):
* svg/graphics/filters/SVGFilter.h:

Source/WebKit:

Add the support to encode and decode the FEImage through FilterReference.
The RenderingResourceIdentifier of the Image or the ImageBuffer will be
used while encoding and decoding the FEImage. Resolving the decoded
RenderingResourceIdentifier back to an Image or ImageBuffer will happen
in RemoteDisplayListRecorder::drawFilteredImageBuffer).

* GPUProcess/graphics/RemoteDisplayListRecorder.cpp:
(WebKit::RemoteDisplayListRecorder::drawFilteredImageBuffer):
* Platform/IPC/FilterReference.h:
(IPC::FilterReference::encodeFilterEffect):
(IPC::FilterReference::decodeFilterEffect):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Headers.cmake
trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj
trunk/Source/WebCore/platform/graphics/displaylists/DisplayListRecorder.cpp
trunk/Source/WebCore/platform/graphics/filters/Filter.h
trunk/Source/WebCore/rendering/CSSFilter.cpp
trunk/Source/WebCore/rendering/CSSFilter.h
trunk/Source/WebCore/svg/SVGPreserveAspectRatioValue.cpp
trunk/Source/WebCore/svg/SVGPreserveAspectRatioValue.h
trunk/Source/WebCore/svg/graphics/filters/SVGFEImage.cpp
trunk/Source/WebCore/svg/graphics/filters/SVGFEImage.h
trunk/Source/WebCore/svg/graphics/filters/SVGFilter.cpp
trunk/Source/WebCore/svg/graphics/filters/SVGFilter.h
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/GPUProcess/graphics/RemoteDisplayListRecorder.cpp
trunk/Source/WebKit/Platform/IPC/FilterReference.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (286823 => 286824)

--- trunk/Source/WebCore/ChangeLog	2021-12-10 02:16:28 UTC (rev 286823)
+++ trunk/Source/WebCore/ChangeLog	2021-12-10 02:38:54 UTC (rev 286824)
@@ -1,3 +1,52 @@
+2021-12-09  Said Abou-Hallawa  
+
+[GPU Process] [Filters] Add the encoding and decoding for FEImage
+https://bugs.webkit.org/show_bug.cgi?id=234099
+
+Reviewed by Wenson Hsieh.
+
+FEImage needs to encode and decode the RenderingResourceIdentifier of the
+Image or the ImageBuffer of its SourceImage.
+
+A new type 'RenderingResourceIdentifier' is added to FEImage::SourceImage
+variant. This going to be used while transferring the FEImage from 
+WebProcess to GPUProcess. 
+
+Record-using the Image or ImageBuffer of FEImage::SourceImage has to
+happen in Recorder::drawFilteredImageBuffer() since this is the place we
+can send messages to GPUProcess.
+
+Resolving RenderingResourceIdentifier of FEImage::SourceImage back to an
+Image or an ImageBuffer has to happen in RemoteDisplayListRecorder::
+drawFilteredImageBuffer before handling the item DrawFilteredImageBuffer.
+
+Because of the two restrictions above we have to provide the virtual
+function Filter::effectsOfType() which is overridden by CSSFilter and 
+SVGFilter.
+
+* Headers.cmake:
+* WebCore.xcodeproj/project.pbxproj:
+* 

[webkit-changes] [286823] trunk

2021-12-09 Thread akeerthi
Title: [286823] trunk








Revision 286823
Author akeer...@apple.com
Date 2021-12-09 18:16:28 -0800 (Thu, 09 Dec 2021)


Log Message
[iOS] Add SPI to enable find interactions on WKWebView
https://bugs.webkit.org/show_bug.cgi?id=234017
rdar://86140542

Reviewed by Wenson Hsieh.

Source/WebKit:

* Platform/spi/ios/UIKitSPI.h:
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _initializeWithConfiguration:]):
* UIProcess/API/Cocoa/WKWebViewInternal.h:
* UIProcess/API/Cocoa/WKWebViewPrivate.h:
* UIProcess/API/ios/WKWebViewIOS.mm:
(-[WKWebView _findInteractionEnabled]):
(-[WKWebView _setFindInteractionEnabled:]):

Make the contentView the searchableObject, rather than self (the WKWebView)
to avoid a retain cycle.

(-[WKWebView _findInteraction]):
(-[WKWebView offsetFromPosition:toPosition:inDocument:]):
(-[WKWebView decorateFoundTextRange:inDocument:usingStyle:]):
* UIProcess/ios/WKContentViewInteraction.h:

Make WKContentView conform to _UITextSearching so that it can be set as
the interaction's searchableObject.

* UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView decorateFoundTextRange:inDocument:usingStyle:]):
(-[WKContentView offsetFromPosition:toPosition:inDocument:]):
(-[WKContentView decorateFoundTextRange:usingStyle:]): Deleted.

Tools:

* TestWebKitAPI/Tests/WebKitCocoa/FindInPage.mm:
(TEST):

Test that the new SPI installs a _UIFindInteraction on the web view.

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/Platform/spi/ios/UIKitSPI.h
trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm
trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewInternal.h
trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivate.h
trunk/Source/WebKit/UIProcess/API/ios/WKWebViewIOS.mm
trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.h
trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/FindInPage.mm




Diff

Modified: trunk/Source/WebKit/ChangeLog (286822 => 286823)

--- trunk/Source/WebKit/ChangeLog	2021-12-10 02:07:11 UTC (rev 286822)
+++ trunk/Source/WebKit/ChangeLog	2021-12-10 02:16:28 UTC (rev 286823)
@@ -1,3 +1,36 @@
+2021-12-09  Aditya Keerthi  
+
+[iOS] Add SPI to enable find interactions on WKWebView
+https://bugs.webkit.org/show_bug.cgi?id=234017
+rdar://86140542
+
+Reviewed by Wenson Hsieh.
+
+* Platform/spi/ios/UIKitSPI.h:
+* UIProcess/API/Cocoa/WKWebView.mm:
+(-[WKWebView _initializeWithConfiguration:]):
+* UIProcess/API/Cocoa/WKWebViewInternal.h:
+* UIProcess/API/Cocoa/WKWebViewPrivate.h:
+* UIProcess/API/ios/WKWebViewIOS.mm:
+(-[WKWebView _findInteractionEnabled]):
+(-[WKWebView _setFindInteractionEnabled:]):
+
+Make the contentView the searchableObject, rather than self (the WKWebView)
+to avoid a retain cycle.
+
+(-[WKWebView _findInteraction]):
+(-[WKWebView offsetFromPosition:toPosition:inDocument:]):
+(-[WKWebView decorateFoundTextRange:inDocument:usingStyle:]):
+* UIProcess/ios/WKContentViewInteraction.h:
+
+Make WKContentView conform to _UITextSearching so that it can be set as
+the interaction's searchableObject.
+
+* UIProcess/ios/WKContentViewInteraction.mm:
+(-[WKContentView decorateFoundTextRange:inDocument:usingStyle:]):
+(-[WKContentView offsetFromPosition:toPosition:inDocument:]):
+(-[WKContentView decorateFoundTextRange:usingStyle:]): Deleted.
+
 2021-12-09  Alex Christensen  
 
 Prepare for transition to C++20


Modified: trunk/Source/WebKit/Platform/spi/ios/UIKitSPI.h (286822 => 286823)

--- trunk/Source/WebKit/Platform/spi/ios/UIKitSPI.h	2021-12-10 02:07:11 UTC (rev 286822)
+++ trunk/Source/WebKit/Platform/spi/ios/UIKitSPI.h	2021-12-10 02:16:28 UTC (rev 286823)
@@ -131,6 +131,7 @@
 #endif
 
 #if HAVE(UIFINDINTERACTION)
+#import 
 #import 
 #endif
 
@@ -328,6 +329,10 @@
 
 @end
 
+@interface _UIFindInteraction : NSObject 
+@property (nonatomic, strong) id<_UITextSearching> searchableObject;
+@end
+
 #endif // HAVE(UIFINDINTERACTION)
 
 typedef enum {


Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm (286822 => 286823)

--- trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm	2021-12-10 02:07:11 UTC (rev 286822)
+++ trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm	2021-12-10 02:16:28 UTC (rev 286823)
@@ -367,6 +367,10 @@
 _allowsViewportShrinkToFit = defaultAllowsViewportShrinkToFit;
 _allowsLinkPreview = linkedOnOrAfter(WebCore::SDKVersion::FirstWithLinkPreviewEnabledByDefault);
 
+#if HAVE(UIFINDINTERACTION)
+_findInteractionEnabled = NO;
+#endif
+
 auto fastClickingEnabled = []() {
 if (NSNumber *enabledValue = [[NSUserDefaults standardUserDefaults] objectForKey:@"WebKitFastClickingDisabled"])
 return enabledValue.boolValue;


Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebViewInternal.h (286822 => 286823)

--- 

[webkit-changes] [286822] tags/Safari-612.4.3/

2021-12-09 Thread alancoon
Title: [286822] tags/Safari-612.4.3/








Revision 286822
Author alanc...@apple.com
Date 2021-12-09 18:07:11 -0800 (Thu, 09 Dec 2021)


Log Message
Tag Safari-612.4.3.

Added Paths

tags/Safari-612.4.3/




Diff




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


[webkit-changes] [286820] trunk/Source/WebCore

2021-12-09 Thread zalan
Title: [286820] trunk/Source/WebCore








Revision 286820
Author za...@apple.com
Date 2021-12-09 17:02:59 -0800 (Thu, 09 Dec 2021)


Log Message
[LFC][IFC] Stop using the last-bidi value for opaque inline items
https://bugs.webkit.org/show_bug.cgi?id=234043

Reviewed by Antti Koivisto.

Now that we only need to guess the bidi level for empty inline boxes, let's stop applying the "keep tracking
the last bidi level from the end" logic. It may work for non-empty inline boxes (when the last bidi value
comes from an actual content run), but it is somewhat incorrect for empty inline boxes.

  e.g. END OF CONTENT

The "visually-first" inline box's "guessed" bidi level comes from the root direction (since it's the very list run)
making it LTR while the RTL override character () makes it RTL. It produces incorrect visual ordering for
these inline boxes.

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

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/layout/formattingContexts/inline/InlineItemsBuilder.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (286819 => 286820)

--- trunk/Source/WebCore/ChangeLog	2021-12-10 00:58:22 UTC (rev 286819)
+++ trunk/Source/WebCore/ChangeLog	2021-12-10 01:02:59 UTC (rev 286820)
@@ -1,3 +1,23 @@
+2021-12-09  Alan Bujtas  
+
+[LFC][IFC] Stop using the last-bidi value for opaque inline items
+https://bugs.webkit.org/show_bug.cgi?id=234043
+
+Reviewed by Antti Koivisto.
+
+Now that we only need to guess the bidi level for empty inline boxes, let's stop applying the "keep tracking
+the last bidi level from the end" logic. It may work for non-empty inline boxes (when the last bidi value
+comes from an actual content run), but it is somewhat incorrect for empty inline boxes.
+
+  e.g. END OF CONTENT
+
+The "visually-first" inline box's "guessed" bidi level comes from the root direction (since it's the very list run)
+making it LTR while the RTL override character () makes it RTL. It produces incorrect visual ordering for
+these inline boxes.
+
+* layout/formattingContexts/inline/InlineItemsBuilder.cpp:
+(WebCore::Layout::InlineItemsBuilder::breakAndComputeBidiLevels):
+
 2021-12-09  Alex Christensen  
 
 Prepare for transition to C++20


Modified: trunk/Source/WebCore/layout/formattingContexts/inline/InlineItemsBuilder.cpp (286819 => 286820)

--- trunk/Source/WebCore/layout/formattingContexts/inline/InlineItemsBuilder.cpp	2021-12-10 00:58:22 UTC (rev 286819)
+++ trunk/Source/WebCore/layout/formattingContexts/inline/InlineItemsBuilder.cpp	2021-12-10 01:02:59 UTC (rev 286820)
@@ -288,9 +288,11 @@
 // Start of the range is always where we left off (bidi ranges do not have gaps).
 for (; inlineItemIndex < inlineItemOffsets.size(); ++inlineItemIndex) {
 auto offset = inlineItemOffsets[inlineItemIndex];
+auto& inlineItem = inlineItems[inlineItemIndex];
 if (!offset) {
 // This is an opaque item. Let's post-process it.
 hasSeenOpaqueItem = true;
+inlineItem.setBidiLevel(bidiLevelForRange);
 continue;
 }
 if (*offset >= bidiEnd) {
@@ -297,7 +299,6 @@
 // This inline item is outside of the bidi range.
 break;
 }
-auto& inlineItem = inlineItems[inlineItemIndex];
 inlineItem.setBidiLevel(bidiLevelForRange);
 if (!inlineItem.isText())
 continue;
@@ -324,11 +325,9 @@
 enum class InlineBoxHasContent : bool { No, Yes };
 Vector inlineBoxContentFlagStack;
 inlineBoxContentFlagStack.reserveInitialCapacity(inlineItems.size());
-auto lastBidiLevel = rootBidiLevel;
 for (auto index = inlineItems.size(); index--;) {
 auto& inlineItem = inlineItems[index];
 if (inlineItemOffsets[index]) {
-lastBidiLevel = inlineItem.bidiLevel();
 inlineBoxContentFlagStack.fill(InlineBoxHasContent::Yes);
 continue;
 }
@@ -335,7 +334,8 @@
 if (inlineItem.isInlineBoxStart()) {
 ASSERT(!inlineBoxContentFlagStack.isEmpty());
 // Inline box start (e.g ) uses its content bidi level (next inline item).
-inlineItems[index].setBidiLevel(inlineBoxContentFlagStack.takeLast() == InlineBoxHasContent::Yes ? InlineItem::opaqueBidiLevel : lastBidiLevel);
+if (inlineBoxContentFlagStack.takeLast() == InlineBoxHasContent::Yes)
+inlineItems[index].setBidiLevel(InlineItem::opaqueBidiLevel);
 continue;
 }
 if (inlineItem.isInlineBoxEnd()) {







[webkit-changes] [286819] tags/Safari-612.4.2.1.2/

2021-12-09 Thread alancoon
Title: [286819] tags/Safari-612.4.2.1.2/








Revision 286819
Author alanc...@apple.com
Date 2021-12-09 16:58:22 -0800 (Thu, 09 Dec 2021)


Log Message
Tag Safari-612.4.2.1.2.

Added Paths

tags/Safari-612.4.2.1.2/




Diff




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


[webkit-changes] [286818] trunk/Source/WTF

2021-12-09 Thread ryanhaddad
Title: [286818] trunk/Source/WTF








Revision 286818
Author ryanhad...@apple.com
Date 2021-12-09 16:47:37 -0800 (Thu, 09 Dec 2021)


Log Message
Unreviewed, reverting r286804.

Breaks internal builds.

Reverted changeset:

"Reduce maximum mmap size for Structure regions to help
placate ios"
https://bugs.webkit.org/show_bug.cgi?id=234091
https://commits.webkit.org/r286804

Modified Paths

trunk/Source/WTF/ChangeLog
trunk/Source/WTF/wtf/posix/OSAllocatorPOSIX.cpp




Diff

Modified: trunk/Source/WTF/ChangeLog (286817 => 286818)

--- trunk/Source/WTF/ChangeLog	2021-12-10 00:30:40 UTC (rev 286817)
+++ trunk/Source/WTF/ChangeLog	2021-12-10 00:47:37 UTC (rev 286818)
@@ -1,3 +1,16 @@
+2021-12-09  Ryan Haddad  
+
+Unreviewed, reverting r286804.
+
+Breaks internal builds.
+
+Reverted changeset:
+
+"Reduce maximum mmap size for Structure regions to help
+placate ios"
+https://bugs.webkit.org/show_bug.cgi?id=234091
+https://commits.webkit.org/r286804
+
 2021-12-09  Alex Christensen  
 
 Prepare for transition to C++20


Modified: trunk/Source/WTF/wtf/posix/OSAllocatorPOSIX.cpp (286817 => 286818)

--- trunk/Source/WTF/wtf/posix/OSAllocatorPOSIX.cpp	2021-12-10 00:30:40 UTC (rev 286817)
+++ trunk/Source/WTF/wtf/posix/OSAllocatorPOSIX.cpp	2021-12-10 00:47:37 UTC (rev 286818)
@@ -38,7 +38,6 @@
 #if OS(DARWIN)
 #define MAP_EXECUTABLE_FOR_JIT MAP_JIT
 #define MAP_EXECUTABLE_FOR_JIT_WITH_JIT_CAGE MAP_JIT
-#include 
 #else // OS(DARWIN)
 #define MAP_EXECUTABLE_FOR_JIT 0
 #define MAP_EXECUTABLE_FOR_JIT_WITH_JIT_CAGE 0
@@ -74,37 +73,11 @@
 return result;
 }
 
+
+// FIXME: Make a smarter version of this for Linux flavors that have aligned mmap.
 void* OSAllocator::reserveUncommittedAligned(size_t bytes, Usage usage, bool writable, bool executable, bool jitCageEnabled, bool includesGuardPages)
 {
 ASSERT(hasOneBitSet(bytes) && bytes >= pageSize());
-
-#if PLATFORM(MAC) || USE(APPLE_INTERNAL_SDK)
-UNUSED_PARAM(usage); // Not supported for mach API.
-ASSERT_UNUSED(includesGuardPages, !includesGuardPages);
-ASSERT_UNUSED(jitCageEnabled, !jitCageEnabled); // Not supported for mach API.
-vm_prot_t protections = VM_PROT_READ;
-if (writable)
-protections |= VM_PROT_WRITE;
-if (executable)
-protections |= VM_PROT_EXECUTE;
-
-const vm_inherit_t childProcessInheritance = VM_INHERIT_DEFAULT;
-
-void* aligned = nullptr;
-const bool copy = false;
-const int flags = VM_FLAGS_ANYWHERE;
-
-kern_return_t result = mach_vm_map(mach_task_self(), reinterpret_cast(), bytes, bytes - 1, flags, MEMORY_OBJECT_NULL, 0, copy, protections, protections, childProcessInheritance);
-RELEASE_ASSERT(result == KERN_SUCCESS, result, bytes);
-#if HAVE(MADV_FREE_REUSE)
-if (aligned) {
-// To support the "reserve then commit" model, we have to initially decommit.
-while (madvise(aligned, bytes, MADV_FREE_REUSABLE) == -1 && errno == EAGAIN) { }
-}
-#endif
-
-return aligned;
-#else
 // Double the size so we can ensure enough mapped memory to get an aligned start.
 size_t mappedSize = bytes * 2;
 char* mapped = reinterpret_cast(reserveUncommitted(mappedSize, usage, writable, executable, jitCageEnabled, includesGuardPages));
@@ -122,7 +95,6 @@
 releaseDecommitted(alignedEnd, rightExtra);
 
 return aligned;
-#endif
 }
 
 void* OSAllocator::reserveAndCommit(size_t bytes, Usage usage, bool writable, bool executable, bool jitCageEnabled, bool includesGuardPages)






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


[webkit-changes] [286817] trunk/Tools

2021-12-09 Thread lmoura
Title: [286817] trunk/Tools








Revision 286817
Author lmo...@igalia.com
Date 2021-12-09 16:30:40 -0800 (Thu, 09 Dec 2021)


Log Message
[webkitpy] Make check-webkit-style check WebDriverTests/TestExpectations.json
https://bugs.webkit.org/show_bug.cgi?id=213453

Reviewed by Adrian Perez de Castro.

While the WebDriver tests are imported and mostly ignored by
check-webkit-style, the script must check TestExpectations.json
to avoid commiting invalid json data and breaking the bots.

* Scripts/webkitpy/style/checker.py:
* Scripts/webkitpy/style/checker_unittest.py:
(CheckerDispatcherSkipTest._assert_should_skip_without_warning): Pass
a valid error handler so the JSONChecker can be instantiated.
(CheckerDispatcherSkipTest.test_should_skip_without_warning__false):

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/Scripts/webkitpy/style/checker.py
trunk/Tools/Scripts/webkitpy/style/checker_unittest.py




Diff

Modified: trunk/Tools/ChangeLog (286816 => 286817)

--- trunk/Tools/ChangeLog	2021-12-10 00:25:12 UTC (rev 286816)
+++ trunk/Tools/ChangeLog	2021-12-10 00:30:40 UTC (rev 286817)
@@ -1,3 +1,20 @@
+2021-12-09  Lauro Moura  
+
+[webkitpy] Make check-webkit-style check WebDriverTests/TestExpectations.json
+https://bugs.webkit.org/show_bug.cgi?id=213453
+
+Reviewed by Adrian Perez de Castro.
+
+While the WebDriver tests are imported and mostly ignored by
+check-webkit-style, the script must check TestExpectations.json
+to avoid commiting invalid json data and breaking the bots.
+
+* Scripts/webkitpy/style/checker.py:
+* Scripts/webkitpy/style/checker_unittest.py:
+(CheckerDispatcherSkipTest._assert_should_skip_without_warning): Pass
+a valid error handler so the JSONChecker can be instantiated.
+(CheckerDispatcherSkipTest.test_should_skip_without_warning__false):
+
 2021-12-09  Alex Christensen  
 
 Prepare for transition to C++20


Modified: trunk/Tools/Scripts/webkitpy/style/checker.py (286816 => 286817)

--- trunk/Tools/Scripts/webkitpy/style/checker.py	2021-12-10 00:25:12 UTC (rev 286816)
+++ trunk/Tools/Scripts/webkitpy/style/checker.py	2021-12-10 00:30:40 UTC (rev 286817)
@@ -368,6 +368,7 @@
 
 _NEVER_SKIPPED_FILES = _NEVER_SKIPPED_JS_FILES + [
 'TestExpectations',
+'TestExpectations.json',
 '.py'
 ]
 


Modified: trunk/Tools/Scripts/webkitpy/style/checker_unittest.py (286816 => 286817)

--- trunk/Tools/Scripts/webkitpy/style/checker_unittest.py	2021-12-10 00:25:12 UTC (rev 286816)
+++ trunk/Tools/Scripts/webkitpy/style/checker_unittest.py	2021-12-10 00:30:40 UTC (rev 286817)
@@ -319,7 +319,7 @@
 expected):
 # Check the file type before asserting the return value.
 checker = self._dispatcher.dispatch(file_path=path,
-handle_style_error=None,
+handle_style_error=DefaultStyleErrorHandler('', None, None, []),
 min_confidence=3,
 commit_queue=False)
 message = 'while checking: %s' % path
@@ -348,6 +348,8 @@
 paths = ['foo.txt',
  os.path.join('LayoutTests', 'ChangeLog'),
  os.path.join('LayoutTests', 'foo.py'),
+ os.path.join('WebDriverTests', 'ChangeLog'),
+ os.path.join('WebDriverTests', 'TestExpectations.json'),
 ]
 
 for path in paths:






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


[webkit-changes] [286815] trunk/Source

2021-12-09 Thread achristensen
Title: [286815] trunk/Source








Revision 286815
Author achristen...@apple.com
Date 2021-12-09 16:23:53 -0800 (Thu, 09 Dec 2021)


Log Message
Use Span for IPC::ArrayReference and DataReference
https://bugs.webkit.org/show_bug.cgi?id=233931

Reviewed by Wenson Hsieh.

Source/WebKit:

No change in behavior, just simplifying some code.

* Platform/IPC/ArgumentCoders.h:
* Platform/IPC/ArrayReference.h:
(): Deleted.
(IPC::ArrayReference::ArrayReference): Deleted.
(IPC::ArrayReference::isEmpty const): Deleted.
(IPC::ArrayReference::size const): Deleted.
(IPC::ArrayReference::data const): Deleted.
(IPC::ArrayReference::vector const): Deleted.
* Platform/IPC/DataReference.h:
* Platform/IPC/SharedBufferDataReference.cpp:
(IPC::SharedBufferDataReference::encode const):
* Shared/API/APIData.cpp:
(API::Data::create):
* Shared/Cocoa/SandboxExtensionCocoa.mm:
(WebKit::SandboxExtension::Handle::decode):
* Shared/UserData.cpp:
(WebKit::UserData::decode):
* Shared/cf/ArgumentCodersCF.cpp:
(IPC::ArgumentCoder>::decode):
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView createPDFWithConfiguration:completionHandler:]):
* UIProcess/Downloads/DownloadProxy.cpp:
(WebKit::createData):
* UIProcess/ProvisionalPageProxy.cpp:
(WebKit::ProvisionalPageProxy::registerWebProcessAccessibilityToken):
* UIProcess/UserContent/WebUserContentControllerProxy.cpp:
(WebKit::WebUserContentControllerProxy::didPostMessage):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::loadData):
(WebKit::WebPageProxy::loadSimulatedRequest):
(WebKit::WebPageProxy::runJavaScriptInFrameInScriptWorld):
(WebKit::WebPageProxy::wrapCryptoKey):
(WebKit::WebPageProxy::unwrapCryptoKey):
* UIProcess/ios/WKContentView.mm:
(-[WKContentView _wk_pageCountForPrintFormatter:]):
* UIProcess/mac/WebPageProxyMac.mm:
(WebKit::WebPageProxy::savePDFToTemporaryFolderAndOpenWithNativeApplication):
* WebProcess/GPU/graphics/RemoteGraphicsContextGLProxyFunctionsGenerated.cpp:
(WebKit::RemoteGraphicsContextGLProxy::getShaderPrecisionFormat):
* WebProcess/Network/WebSocketChannel.cpp:
(WebKit::WebSocketChannel::didReceiveBinaryData):
* WebProcess/Network/webrtc/RTCDataChannelRemoteManager.cpp:
(WebKit::RTCDataChannelRemoteManager::receiveData):
* WebProcess/UserContent/WebUserContentController.cpp:
* WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::replaceSelectionWithPasteboardData):

Source/WTF:

* wtf/Vector.h:
(WTF::Vector::Vector):
(WTF::Vector::span const):

Modified Paths

trunk/Source/WTF/ChangeLog
trunk/Source/WTF/wtf/Vector.h
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/Platform/IPC/ArgumentCoders.h
trunk/Source/WebKit/Platform/IPC/ArrayReference.h
trunk/Source/WebKit/Platform/IPC/DataReference.h
trunk/Source/WebKit/Platform/IPC/SharedBufferDataReference.cpp
trunk/Source/WebKit/Shared/API/APIData.cpp
trunk/Source/WebKit/Shared/Cocoa/SandboxExtensionCocoa.mm
trunk/Source/WebKit/Shared/UserData.cpp
trunk/Source/WebKit/Shared/cf/ArgumentCodersCF.cpp
trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm
trunk/Source/WebKit/UIProcess/Downloads/DownloadProxy.cpp
trunk/Source/WebKit/UIProcess/ProvisionalPageProxy.cpp
trunk/Source/WebKit/UIProcess/UserContent/WebUserContentControllerProxy.cpp
trunk/Source/WebKit/UIProcess/WebPageProxy.cpp
trunk/Source/WebKit/UIProcess/ios/WKContentView.mm
trunk/Source/WebKit/UIProcess/mac/WebPageProxyMac.mm
trunk/Source/WebKit/WebProcess/GPU/graphics/RemoteGraphicsContextGLProxyFunctionsGenerated.cpp
trunk/Source/WebKit/WebProcess/Network/WebSocketChannel.cpp
trunk/Source/WebKit/WebProcess/Network/webrtc/RTCDataChannelRemoteManager.cpp
trunk/Source/WebKit/WebProcess/UserContent/WebUserContentController.cpp
trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp
trunk/Source/WebKit/WebProcess/WebPage/mac/WebPageMac.mm




Diff

Modified: trunk/Source/WTF/ChangeLog (286814 => 286815)

--- trunk/Source/WTF/ChangeLog	2021-12-10 00:21:17 UTC (rev 286814)
+++ trunk/Source/WTF/ChangeLog	2021-12-10 00:23:53 UTC (rev 286815)
@@ -1,3 +1,14 @@
+2021-12-09  Alex Christensen  
+
+Use Span for IPC::ArrayReference and DataReference
+https://bugs.webkit.org/show_bug.cgi?id=233931
+
+Reviewed by Wenson Hsieh.
+
+* wtf/Vector.h:
+(WTF::Vector::Vector):
+(WTF::Vector::span const):
+
 2021-12-09  Robert Jenner  
 
 Unreviewed, reverting r286754.


Modified: trunk/Source/WTF/wtf/Vector.h (286814 => 286815)

--- trunk/Source/WTF/wtf/Vector.h	2021-12-10 00:21:17 UTC (rev 286814)
+++ trunk/Source/WTF/wtf/Vector.h	2021-12-10 00:23:53 UTC (rev 286815)
@@ -654,6 +654,9 @@
 TypeOperations::uninitializedCopy(data, data + dataSize, begin());
 }
 
+Vector(Span span)
+: Vector(span.data(), span.size()) { }
+
 Vector(std::initializer_list initializerList)
 {
 reserveInitialCapacity(initializerList.size());
@@ -707,6 +710,7 @@
 static ptrdiff_t sizeMemoryOffset() { return OBJECT_OFFSETOF(Vector, m_size); }
 size_t capacity() const { return Base::capacity(); }
 

[webkit-changes] [286814] trunk/Source/WebCore

2021-12-09 Thread drousso
Title: [286814] trunk/Source/WebCore








Revision 286814
Author drou...@apple.com
Date 2021-12-09 16:21:17 -0800 (Thu, 09 Dec 2021)


Log Message
An `` that's been autofilled with obscured content should still be editable
https://bugs.webkit.org/show_bug.cgi?id=234046


Reviewed by Wenson Hsieh.

It should be possible to delete the value in the `` even if it's been obscured.

* css/html.css:
(input:-webkit-autofill-and-obscured):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/css/html.css




Diff

Modified: trunk/Source/WebCore/ChangeLog (286813 => 286814)

--- trunk/Source/WebCore/ChangeLog	2021-12-09 23:56:36 UTC (rev 286813)
+++ trunk/Source/WebCore/ChangeLog	2021-12-10 00:21:17 UTC (rev 286814)
@@ -1,3 +1,16 @@
+2021-12-09  Devin Rousso  
+
+An `` that's been autofilled with obscured content should still be editable
+https://bugs.webkit.org/show_bug.cgi?id=234046
+
+
+Reviewed by Wenson Hsieh.
+
+It should be possible to delete the value in the `` even if it's been obscured.
+
+* css/html.css:
+(input:-webkit-autofill-and-obscured):
+
 2021-12-09  Robert Jenner  
 
 Unreviewed, reverting r286754.


Modified: trunk/Source/WebCore/css/html.css (286813 => 286814)

--- trunk/Source/WebCore/css/html.css	2021-12-09 23:56:36 UTC (rev 286813)
+++ trunk/Source/WebCore/css/html.css	2021-12-10 00:21:17 UTC (rev 286814)
@@ -774,9 +774,6 @@
 
 input:-webkit-autofill-and-obscured {
 -webkit-text-security: disc !important;
--webkit-user-select: none !important;
-pointer-events: none !important;
-cursor: default !important;
 }
 
 input:-webkit-autofill-strong-password {






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


[webkit-changes] [286812] trunk/Source

2021-12-09 Thread megan_gardner
Title: [286812] trunk/Source








Revision 286812
Author megan_gard...@apple.com
Date 2021-12-09 15:25:50 -0800 (Thu, 09 Dec 2021)


Log Message
Markup Pane not displaying.
https://bugs.webkit.org/show_bug.cgi?id=234089

Reviewed by Tim Horton.

Source/WebCore:

Vend the image location so that the Markup Pane knows where to
present from.

* dom/mac/ImageControlsMac.cpp:
(WebCore::ImageControlsMac::handleEvent):
* page/ChromeClient.h:
(WebCore::ChromeClient::handleImageServiceClick):

Source/WebKit:

An optional method on NSSharingServiceDelegate was not implemented, meaning
that the markup pane did not know where to present, and would assert and fail to
show up. Make sure this is implemented for the image controls menu and also
give it the correct location to present form.

* Shared/ContextMenuContextData.cpp:
(WebKit::ContextMenuContextData::ContextMenuContextData):
(WebKit::ContextMenuContextData::encode const):
(WebKit::ContextMenuContextData::decode):
* Shared/ContextMenuContextData.h:
(WebKit::ContextMenuContextData::controlledImageFrame const):
* UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
(-[WKWebViewConfiguration init]):
* UIProcess/mac/WKSharingServicePickerDelegate.h:
* UIProcess/mac/WKSharingServicePickerDelegate.mm:
(-[WKSharingServicePickerDelegate setSourceFrame:]):
(-[WKSharingServicePickerDelegate sharingService:sourceFrameOnScreenForShareItem:]):
* UIProcess/mac/WebContextMenuProxyMac.mm:
(WebKit::WebContextMenuProxyMac::setupServicesMenu):
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::handleImageServiceClick):
* WebProcess/WebCoreSupport/WebChromeClient.h:
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::handleImageServiceClick):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/dom/mac/ImageControlsMac.cpp
trunk/Source/WebCore/page/ChromeClient.h
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/Shared/ContextMenuContextData.cpp
trunk/Source/WebKit/Shared/ContextMenuContextData.h
trunk/Source/WebKit/UIProcess/mac/WKSharingServicePickerDelegate.h
trunk/Source/WebKit/UIProcess/mac/WKSharingServicePickerDelegate.mm
trunk/Source/WebKit/UIProcess/mac/WebContextMenuProxyMac.mm
trunk/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp
trunk/Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h
trunk/Source/WebKit/WebProcess/WebPage/WebPage.h
trunk/Source/WebKit/WebProcess/WebPage/mac/WebPageMac.mm




Diff

Modified: trunk/Source/WebCore/ChangeLog (286811 => 286812)

--- trunk/Source/WebCore/ChangeLog	2021-12-09 23:20:39 UTC (rev 286811)
+++ trunk/Source/WebCore/ChangeLog	2021-12-09 23:25:50 UTC (rev 286812)
@@ -1,3 +1,18 @@
+2021-12-09  Megan Gardner  
+
+Markup Pane not displaying.
+https://bugs.webkit.org/show_bug.cgi?id=234089
+
+Reviewed by Tim Horton.
+
+Vend the image location so that the Markup Pane knows where to
+present from.
+
+* dom/mac/ImageControlsMac.cpp:
+(WebCore::ImageControlsMac::handleEvent):
+* page/ChromeClient.h:
+(WebCore::ChromeClient::handleImageServiceClick):
+
 2021-12-09  Tyler Wilcock  
 
 AX: Improve ASSERT while processing tree appends in AXIsolatedTree::applyPendingChanges


Modified: trunk/Source/WebCore/dom/mac/ImageControlsMac.cpp (286811 => 286812)

--- trunk/Source/WebCore/dom/mac/ImageControlsMac.cpp	2021-12-09 23:20:39 UTC (rev 286811)
+++ trunk/Source/WebCore/dom/mac/ImageControlsMac.cpp	2021-12-09 23:25:50 UTC (rev 286812)
@@ -130,7 +130,7 @@
 if (!imageElement)
 return false;
 if (auto* image = imageFromImageElementNode(*imageElement)) {
-page->chrome().client().handleImageServiceClick(roundedIntPoint(mouseEvent.absoluteLocation()), *image, imageElement->isContentEditable());
+page->chrome().client().handleImageServiceClick(roundedIntPoint(mouseEvent.absoluteLocation()), *image, imageElement->isContentEditable(), imageElement->renderBox()->absoluteContentQuad().enclosingBoundingBox());
 event.setDefaultHandled();
 return true;
 }


Modified: trunk/Source/WebCore/page/ChromeClient.h (286811 => 286812)

--- trunk/Source/WebCore/page/ChromeClient.h	2021-12-09 23:20:39 UTC (rev 286811)
+++ trunk/Source/WebCore/page/ChromeClient.h	2021-12-09 23:25:50 UTC (rev 286812)
@@ -532,7 +532,7 @@
 #if ENABLE(SERVICE_CONTROLS)
 virtual void handleSelectionServiceClick(FrameSelection&, const Vector&, const IntPoint&) { }
 virtual bool hasRelevantSelectionServices(bool /*isTextOnly*/) const { return false; }
-virtual void handleImageServiceClick(const IntPoint&, Image&, bool /*isEditable*/) { }
+virtual void handleImageServiceClick(const IntPoint&, Image&, bool /*isEditable*/, const IntRect&) { }
 #endif
 
 virtual bool shouldDispatchFakeMouseMoveEvents() const { return true; }


Modified: trunk/Source/WebKit/ChangeLog (286811 => 286812)

--- trunk/Source/WebKit/ChangeLog	2021-12-09 

[webkit-changes] [286811] trunk/Source/WebCore

2021-12-09 Thread tyler_w
Title: [286811] trunk/Source/WebCore








Revision 286811
Author tyle...@apple.com
Date 2021-12-09 15:20:39 -0800 (Thu, 09 Dec 2021)


Log Message
AX: Improve ASSERT while processing tree appends in AXIsolatedTree::applyPendingChanges
https://bugs.webkit.org/show_bug.cgi?id=234085

Reviewed by Chris Fleizach.

When processing m_pendingAppends in AXIsolatedTree::applyPendingChanges,
we ASSERT to verify the refcount is what we expect:

ASSERT_UNUSED(addResult, addResult.iterator->value->refCount() == 2
|| (addResult.iterator->value.ptr() == m_rootNode.get() && m_rootNode->refCount() == 3));

But this doesn't include the actual refcount in the ASSERT message,
making it harder to debug.

This patch uses ASSERT_WITH_MESSAGE to display the actual refcount.

* accessibility/isolatedtree/AXIsolatedTree.cpp:
(WebCore::AXIsolatedTree::applyPendingChanges):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (286810 => 286811)

--- trunk/Source/WebCore/ChangeLog	2021-12-09 23:19:32 UTC (rev 286810)
+++ trunk/Source/WebCore/ChangeLog	2021-12-09 23:20:39 UTC (rev 286811)
@@ -1,3 +1,24 @@
+2021-12-09  Tyler Wilcock  
+
+AX: Improve ASSERT while processing tree appends in AXIsolatedTree::applyPendingChanges
+https://bugs.webkit.org/show_bug.cgi?id=234085
+
+Reviewed by Chris Fleizach.
+
+When processing m_pendingAppends in AXIsolatedTree::applyPendingChanges,
+we ASSERT to verify the refcount is what we expect:
+
+ASSERT_UNUSED(addResult, addResult.iterator->value->refCount() == 2
+|| (addResult.iterator->value.ptr() == m_rootNode.get() && m_rootNode->refCount() == 3));
+
+But this doesn't include the actual refcount in the ASSERT message,
+making it harder to debug.
+
+This patch uses ASSERT_WITH_MESSAGE to display the actual refcount.
+
+* accessibility/isolatedtree/AXIsolatedTree.cpp:
+(WebCore::AXIsolatedTree::applyPendingChanges):
+
 2021-12-09  Alan Bujtas  
 
 [LFC][IFC] Stop including inline box start/end inline items in the visual reordering unless they are completely empty


Modified: trunk/Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp (286810 => 286811)

--- trunk/Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp	2021-12-09 23:19:32 UTC (rev 286810)
+++ trunk/Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp	2021-12-09 23:20:39 UTC (rev 286811)
@@ -512,8 +512,10 @@
 // The reference count of the just added IsolatedObject must be 2
 // because it is referenced by m_readerThreadNodeMap and m_pendingAppends.
 // When m_pendingAppends is cleared, the object will be held only by m_readerThreadNodeMap. The exception is the root node whose reference count is 3.
-ASSERT_UNUSED(addResult, addResult.iterator->value->refCount() == 2
-|| (addResult.iterator->value.ptr() == m_rootNode.get() && m_rootNode->refCount() == 3));
+ASSERT_WITH_MESSAGE(
+addResult.iterator->value->refCount() == 2 || (addResult.iterator->value.ptr() == m_rootNode.get() && m_rootNode->refCount() == 3),
+"unexpected ref count after adding object to m_readerThreadNodeMap: %d", addResult.iterator->value->refCount()
+);
 }
 m_pendingAppends.clear();
 






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


[webkit-changes] [286809] tags/Safari-613.1.11/

2021-12-09 Thread repstein
Title: [286809] tags/Safari-613.1.11/








Revision 286809
Author repst...@apple.com
Date 2021-12-09 15:19:30 -0800 (Thu, 09 Dec 2021)


Log Message
Tag Safari-613.1.11.

Added Paths

tags/Safari-613.1.11/




Diff




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


[webkit-changes] [286810] branches/safari-612.4.2.1-branch/Source/WebKit

2021-12-09 Thread alancoon
Title: [286810] branches/safari-612.4.2.1-branch/Source/WebKit








Revision 286810
Author alanc...@apple.com
Date 2021-12-09 15:19:32 -0800 (Thu, 09 Dec 2021)


Log Message
Cherry-pick r286805. rdar://problem/86291413

Momentum Generator: Scroll tail hiccup only when scrolling up on 60Hz displays
https://bugs.webkit.org/show_bug.cgi?id=234104


Reviewed by Simon Fraser.

* WebProcess/WebPage/MomentumEventDispatcher.cpp:
(WebKit::MomentumEventDispatcher::equalizeTailGaps):
Sort in the correct direction based on the sign of the first delta...

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286805 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Modified Paths

branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog
branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp




Diff

Modified: branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog (286809 => 286810)

--- branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog	2021-12-09 23:19:30 UTC (rev 286809)
+++ branches/safari-612.4.2.1-branch/Source/WebKit/ChangeLog	2021-12-09 23:19:32 UTC (rev 286810)
@@ -1,3 +1,32 @@
+2021-12-09  Alan Coon  
+
+Cherry-pick r286805. rdar://problem/86291413
+
+Momentum Generator: Scroll tail hiccup only when scrolling up on 60Hz displays
+https://bugs.webkit.org/show_bug.cgi?id=234104
+
+
+Reviewed by Simon Fraser.
+
+* WebProcess/WebPage/MomentumEventDispatcher.cpp:
+(WebKit::MomentumEventDispatcher::equalizeTailGaps):
+Sort in the correct direction based on the sign of the first delta...
+
+
+git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286805 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+2021-12-09  Tim Horton  
+
+Momentum Generator: Scroll tail hiccup only when scrolling up on 60Hz displays
+https://bugs.webkit.org/show_bug.cgi?id=234104
+
+
+Reviewed by Simon Fraser.
+
+* WebProcess/WebPage/MomentumEventDispatcher.cpp:
+(WebKit::MomentumEventDispatcher::equalizeTailGaps):
+Sort in the correct direction based on the sign of the first delta...
+
 2021-12-08  Alan Coon  
 
 Cherry-pick r286574. rdar://problem/86224832


Modified: branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp (286809 => 286810)

--- branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp	2021-12-09 23:19:30 UTC (rev 286809)
+++ branches/safari-612.4.2.1-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp	2021-12-09 23:19:32 UTC (rev 286810)
@@ -414,6 +414,8 @@
 
 auto& table = m_currentGesture.tailDeltaTable;
 size_t initialTableSize = table.size();
+if (!initialTableSize)
+return;
 
 enum Axis { Horizontal, Vertical };
 Vector deltas[2];
@@ -429,12 +431,20 @@
 if (!firstZeroIndex[Vertical] && !table[i].height())
 firstZeroIndex[Vertical] = i;
 }
-
-if (auto index = firstZeroIndex[Horizontal])
-std::sort(deltas[Horizontal].begin(), std::next(deltas[Horizontal].begin(), index));
-if (auto index = firstZeroIndex[Vertical])
-std::sort(deltas[Vertical].begin(), std::next(deltas[Vertical].begin(), index));
 
+auto sortDeltas = [&] (Axis axis) {
+if (!firstZeroIndex[axis])
+return;
+
+if (deltas[axis][0] > 0)
+std::sort(deltas[axis].begin(), std::next(deltas[axis].begin(), firstZeroIndex[axis]), std::greater());
+else
+std::sort(deltas[axis].begin(), std::next(deltas[axis].begin(), firstZeroIndex[axis]), std::less());
+};
+
+sortDeltas(Horizontal);
+sortDeltas(Vertical);
+
 // GapSize is a count of contiguous frames with zero deltas.
 typedef unsigned GapSize[2];
 GapSize minimumGap = { 0, 0 };






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


[webkit-changes] [286808] branches/safari-612.4.2.1-branch/Source

2021-12-09 Thread alancoon
Title: [286808] branches/safari-612.4.2.1-branch/Source








Revision 286808
Author alanc...@apple.com
Date 2021-12-09 15:17:30 -0800 (Thu, 09 Dec 2021)


Log Message
Versioning.

WebKit-7612.4.2.1.2

Modified Paths

branches/safari-612.4.2.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig
branches/safari-612.4.2.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig
branches/safari-612.4.2.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
branches/safari-612.4.2.1-branch/Source/WebCore/Configurations/Version.xcconfig
branches/safari-612.4.2.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig
branches/safari-612.4.2.1-branch/Source/WebInspectorUI/Configurations/Version.xcconfig
branches/safari-612.4.2.1-branch/Source/WebKit/Configurations/Version.xcconfig
branches/safari-612.4.2.1-branch/Source/WebKitLegacy/mac/Configurations/Version.xcconfig




Diff

Modified: branches/safari-612.4.2.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig (286807 => 286808)

--- branches/safari-612.4.2.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig	2021-12-09 23:11:34 UTC (rev 286807)
+++ branches/safari-612.4.2.1-branch/Source/_javascript_Core/Configurations/Version.xcconfig	2021-12-09 23:17:30 UTC (rev 286808)
@@ -25,7 +25,7 @@
 MINOR_VERSION = 4;
 TINY_VERSION = 2;
 MICRO_VERSION = 1;
-NANO_VERSION = 1;
+NANO_VERSION = 2;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.


Modified: branches/safari-612.4.2.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig (286807 => 286808)

--- branches/safari-612.4.2.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig	2021-12-09 23:11:34 UTC (rev 286807)
+++ branches/safari-612.4.2.1-branch/Source/ThirdParty/ANGLE/Configurations/Version.xcconfig	2021-12-09 23:17:30 UTC (rev 286808)
@@ -25,7 +25,7 @@
 MINOR_VERSION = 4;
 TINY_VERSION = 2;
 MICRO_VERSION = 1;
-NANO_VERSION = 1;
+NANO_VERSION = 2;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.


Modified: branches/safari-612.4.2.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig (286807 => 286808)

--- branches/safari-612.4.2.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig	2021-12-09 23:11:34 UTC (rev 286807)
+++ branches/safari-612.4.2.1-branch/Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig	2021-12-09 23:17:30 UTC (rev 286808)
@@ -25,7 +25,7 @@
 MINOR_VERSION = 4;
 TINY_VERSION = 2;
 MICRO_VERSION = 1;
-NANO_VERSION = 1;
+NANO_VERSION = 2;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.


Modified: branches/safari-612.4.2.1-branch/Source/WebCore/Configurations/Version.xcconfig (286807 => 286808)

--- branches/safari-612.4.2.1-branch/Source/WebCore/Configurations/Version.xcconfig	2021-12-09 23:11:34 UTC (rev 286807)
+++ branches/safari-612.4.2.1-branch/Source/WebCore/Configurations/Version.xcconfig	2021-12-09 23:17:30 UTC (rev 286808)
@@ -25,7 +25,7 @@
 MINOR_VERSION = 4;
 TINY_VERSION = 2;
 MICRO_VERSION = 1;
-NANO_VERSION = 1;
+NANO_VERSION = 2;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.


Modified: branches/safari-612.4.2.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig (286807 => 286808)

--- branches/safari-612.4.2.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig	2021-12-09 23:11:34 UTC (rev 286807)
+++ branches/safari-612.4.2.1-branch/Source/WebCore/PAL/Configurations/Version.xcconfig	2021-12-09 23:17:30 UTC (rev 286808)
@@ -25,7 +25,7 @@
 MINOR_VERSION = 4;
 TINY_VERSION = 2;
 MICRO_VERSION = 1;
-NANO_VERSION = 1;
+NANO_VERSION = 2;
 FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION).$(MICRO_VERSION).$(NANO_VERSION);
 
 // The bundle version and short version string are set based on the current build configuration, see below.


Modified: branches/safari-612.4.2.1-branch/Source/WebInspectorUI/Configurations/Version.xcconfig (286807 => 286808)

--- branches/safari-612.4.2.1-branch/Source/WebInspectorUI/Configurations/Version.xcconfig	2021-12-09 23:11:34 UTC (rev 286807)
+++ branches/safari-612.4.2.1-branch/Source/WebInspectorUI/Configurations/Version.xcconfig	2021-12-09 23:17:30 UTC (rev 286808)
@@ -2,7 +2,7 @@
 MINOR_VERSION = 4;
 TINY_VERSION = 2;
 MICRO_VERSION = 1;
-NANO_VERSION = 1;
+NANO_VERSION = 2;
 FULL_VERSION = 

[webkit-changes] [286807] trunk/Source/WebCore

2021-12-09 Thread zalan
Title: [286807] trunk/Source/WebCore








Revision 286807
Author za...@apple.com
Date 2021-12-09 15:11:34 -0800 (Thu, 09 Dec 2021)


Log Message
[LFC][IFC] Stop including inline box start/end inline items in the visual reordering unless they are completely empty
https://bugs.webkit.org/show_bug.cgi?id=234035

Reviewed by Antti Koivisto.

When the visual order == logical order, we use the inline box start/end markers to
construct/finalize the inline box type of display boxes.
e.g content when we see the "" run, we construct the inline box type of display box
and later when we come across the "" run, we finalize its geometry.
Now with visual reordering, those explicit markers may be out of order. In such cases (bidi in general) we
switch over to relying solely on the content type of runs to create/finalize the required inline box type of display boxes (see InlineDisplayContentBuilder::ensureDisplayBoxForContainer).

This implicit way of constructing the inline box type of display boxes allows us to include only the minimum set of inline
items for visual reordering:
content
should produce only one entry for visual reordering.
It is essential to minimize the "noise" to limit the potential confusion introduced by non-content bidi runs (with their guessed levels).

* layout/formattingContexts/inline/InlineItemsBuilder.cpp:
(WebCore::Layout::InlineItemsBuilder::breakAndComputeBidiLevels): Reserve the guess bidi level for empty inline boxes only.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/layout/formattingContexts/inline/InlineItemsBuilder.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (286806 => 286807)

--- trunk/Source/WebCore/ChangeLog	2021-12-09 23:10:51 UTC (rev 286806)
+++ trunk/Source/WebCore/ChangeLog	2021-12-09 23:11:34 UTC (rev 286807)
@@ -1,3 +1,26 @@
+2021-12-09  Alan Bujtas  
+
+[LFC][IFC] Stop including inline box start/end inline items in the visual reordering unless they are completely empty
+https://bugs.webkit.org/show_bug.cgi?id=234035
+
+Reviewed by Antti Koivisto.
+
+When the visual order == logical order, we use the inline box start/end markers to
+construct/finalize the inline box type of display boxes.
+e.g content when we see the "" run, we construct the inline box type of display box
+and later when we come across the "" run, we finalize its geometry.
+Now with visual reordering, those explicit markers may be out of order. In such cases (bidi in general) we
+switch over to relying solely on the content type of runs to create/finalize the required inline box type of display boxes (see InlineDisplayContentBuilder::ensureDisplayBoxForContainer).
+
+This implicit way of constructing the inline box type of display boxes allows us to include only the minimum set of inline
+items for visual reordering:
+content
+should produce only one entry for visual reordering.
+It is essential to minimize the "noise" to limit the potential confusion introduced by non-content bidi runs (with their guessed levels).
+
+* layout/formattingContexts/inline/InlineItemsBuilder.cpp:
+(WebCore::Layout::InlineItemsBuilder::breakAndComputeBidiLevels): Reserve the guess bidi level for empty inline boxes only.
+
 2021-12-09  Brent Fulgham  
 
 Unprefix CSS value text-align: -webkit-match-parent


Modified: trunk/Source/WebCore/layout/formattingContexts/inline/InlineItemsBuilder.cpp (286806 => 286807)

--- trunk/Source/WebCore/layout/formattingContexts/inline/InlineItemsBuilder.cpp	2021-12-09 23:10:51 UTC (rev 286806)
+++ trunk/Source/WebCore/layout/formattingContexts/inline/InlineItemsBuilder.cpp	2021-12-09 23:11:34 UTC (rev 286807)
@@ -321,22 +321,33 @@
 if (!hasSeenOpaqueItem)
 return;
 // Opaque items (inline items with no paragraph content) get their bidi level values from their adjacent items.
+enum class InlineBoxHasContent : bool { No, Yes };
+Vector inlineBoxContentFlagStack;
+inlineBoxContentFlagStack.reserveInitialCapacity(inlineItems.size());
 auto lastBidiLevel = rootBidiLevel;
 for (auto index = inlineItems.size(); index--;) {
+auto& inlineItem = inlineItems[index];
 if (inlineItemOffsets[index]) {
-lastBidiLevel = inlineItems[index].bidiLevel();
+lastBidiLevel = inlineItem.bidiLevel();
+inlineBoxContentFlagStack.fill(InlineBoxHasContent::Yes);
 continue;
 }
-if (inlineItems[index].isInlineBoxStart()) {
+if (inlineItem.isInlineBoxStart()) {
+ASSERT(!inlineBoxContentFlagStack.isEmpty());
 // Inline box start (e.g ) uses its content bidi level (next inline item).
-inlineItems[index].setBidiLevel(lastBidiLevel);
+inlineItems[index].setBidiLevel(inlineBoxContentFlagStack.takeLast() == 

[webkit-changes] [286806] branches/safari-612-branch/Source/WebKit

2021-12-09 Thread alancoon
Title: [286806] branches/safari-612-branch/Source/WebKit








Revision 286806
Author alanc...@apple.com
Date 2021-12-09 15:10:51 -0800 (Thu, 09 Dec 2021)


Log Message
Cherry-pick r286805. rdar://problem/86291413

Momentum Generator: Scroll tail hiccup only when scrolling up on 60Hz displays
https://bugs.webkit.org/show_bug.cgi?id=234104


Reviewed by Simon Fraser.

* WebProcess/WebPage/MomentumEventDispatcher.cpp:
(WebKit::MomentumEventDispatcher::equalizeTailGaps):
Sort in the correct direction based on the sign of the first delta...

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286805 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Modified Paths

branches/safari-612-branch/Source/WebKit/ChangeLog
branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp




Diff

Modified: branches/safari-612-branch/Source/WebKit/ChangeLog (286805 => 286806)

--- branches/safari-612-branch/Source/WebKit/ChangeLog	2021-12-09 23:01:05 UTC (rev 286805)
+++ branches/safari-612-branch/Source/WebKit/ChangeLog	2021-12-09 23:10:51 UTC (rev 286806)
@@ -1,3 +1,32 @@
+2021-12-09  Alan Coon  
+
+Cherry-pick r286805. rdar://problem/86291413
+
+Momentum Generator: Scroll tail hiccup only when scrolling up on 60Hz displays
+https://bugs.webkit.org/show_bug.cgi?id=234104
+
+
+Reviewed by Simon Fraser.
+
+* WebProcess/WebPage/MomentumEventDispatcher.cpp:
+(WebKit::MomentumEventDispatcher::equalizeTailGaps):
+Sort in the correct direction based on the sign of the first delta...
+
+
+git-svn-id: https://svn.webkit.org/repository/webkit/trunk@286805 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+2021-12-09  Tim Horton  
+
+Momentum Generator: Scroll tail hiccup only when scrolling up on 60Hz displays
+https://bugs.webkit.org/show_bug.cgi?id=234104
+
+
+Reviewed by Simon Fraser.
+
+* WebProcess/WebPage/MomentumEventDispatcher.cpp:
+(WebKit::MomentumEventDispatcher::equalizeTailGaps):
+Sort in the correct direction based on the sign of the first delta...
+
 2021-12-08  Alan Coon  
 
 Cherry-pick r286574. rdar://problem/86224832


Modified: branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp (286805 => 286806)

--- branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp	2021-12-09 23:01:05 UTC (rev 286805)
+++ branches/safari-612-branch/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp	2021-12-09 23:10:51 UTC (rev 286806)
@@ -414,6 +414,8 @@
 
 auto& table = m_currentGesture.tailDeltaTable;
 size_t initialTableSize = table.size();
+if (!initialTableSize)
+return;
 
 enum Axis { Horizontal, Vertical };
 Vector deltas[2];
@@ -429,12 +431,20 @@
 if (!firstZeroIndex[Vertical] && !table[i].height())
 firstZeroIndex[Vertical] = i;
 }
-
-if (auto index = firstZeroIndex[Horizontal])
-std::sort(deltas[Horizontal].begin(), std::next(deltas[Horizontal].begin(), index));
-if (auto index = firstZeroIndex[Vertical])
-std::sort(deltas[Vertical].begin(), std::next(deltas[Vertical].begin(), index));
 
+auto sortDeltas = [&] (Axis axis) {
+if (!firstZeroIndex[axis])
+return;
+
+if (deltas[axis][0] > 0)
+std::sort(deltas[axis].begin(), std::next(deltas[axis].begin(), firstZeroIndex[axis]), std::greater());
+else
+std::sort(deltas[axis].begin(), std::next(deltas[axis].begin(), firstZeroIndex[axis]), std::less());
+};
+
+sortDeltas(Horizontal);
+sortDeltas(Vertical);
+
 // GapSize is a count of contiguous frames with zero deltas.
 typedef unsigned GapSize[2];
 GapSize minimumGap = { 0, 0 };






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


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

2021-12-09 Thread timothy_horton
Title: [286805] trunk/Source/WebKit








Revision 286805
Author timothy_hor...@apple.com
Date 2021-12-09 15:01:05 -0800 (Thu, 09 Dec 2021)


Log Message
Momentum Generator: Scroll tail hiccup only when scrolling up on 60Hz displays
https://bugs.webkit.org/show_bug.cgi?id=234104


Reviewed by Simon Fraser.

* WebProcess/WebPage/MomentumEventDispatcher.cpp:
(WebKit::MomentumEventDispatcher::equalizeTailGaps):
Sort in the correct direction based on the sign of the first delta...

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp




Diff

Modified: trunk/Source/WebKit/ChangeLog (286804 => 286805)

--- trunk/Source/WebKit/ChangeLog	2021-12-09 22:56:06 UTC (rev 286804)
+++ trunk/Source/WebKit/ChangeLog	2021-12-09 23:01:05 UTC (rev 286805)
@@ -1,3 +1,15 @@
+2021-12-09  Tim Horton  
+
+Momentum Generator: Scroll tail hiccup only when scrolling up on 60Hz displays
+https://bugs.webkit.org/show_bug.cgi?id=234104
+
+
+Reviewed by Simon Fraser.
+
+* WebProcess/WebPage/MomentumEventDispatcher.cpp:
+(WebKit::MomentumEventDispatcher::equalizeTailGaps):
+Sort in the correct direction based on the sign of the first delta...
+
 2021-12-09  Chris Dumez  
 
 [WPE] Crash under WebProcessProxy::setIsInProcessCache when closing web view in debug builds


Modified: trunk/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp (286804 => 286805)

--- trunk/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp	2021-12-09 22:56:06 UTC (rev 286804)
+++ trunk/Source/WebKit/WebProcess/WebPage/MomentumEventDispatcher.cpp	2021-12-09 23:01:05 UTC (rev 286805)
@@ -414,6 +414,8 @@
 
 auto& table = m_currentGesture.tailDeltaTable;
 size_t initialTableSize = table.size();
+if (!initialTableSize)
+return;
 
 enum Axis { Horizontal, Vertical };
 Vector deltas[2];
@@ -429,12 +431,20 @@
 if (!firstZeroIndex[Vertical] && !table[i].height())
 firstZeroIndex[Vertical] = i;
 }
-
-if (auto index = firstZeroIndex[Horizontal])
-std::sort(deltas[Horizontal].begin(), std::next(deltas[Horizontal].begin(), index));
-if (auto index = firstZeroIndex[Vertical])
-std::sort(deltas[Vertical].begin(), std::next(deltas[Vertical].begin(), index));
 
+auto sortDeltas = [&] (Axis axis) {
+if (!firstZeroIndex[axis])
+return;
+
+if (deltas[axis][0] > 0)
+std::sort(deltas[axis].begin(), std::next(deltas[axis].begin(), firstZeroIndex[axis]), std::greater());
+else
+std::sort(deltas[axis].begin(), std::next(deltas[axis].begin(), firstZeroIndex[axis]), std::less());
+};
+
+sortDeltas(Horizontal);
+sortDeltas(Vertical);
+
 // GapSize is a count of contiguous frames with zero deltas.
 typedef unsigned GapSize[2];
 GapSize minimumGap = { 0, 0 };






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


[webkit-changes] [286804] trunk/Source/WTF

2021-12-09 Thread keith_miller
Title: [286804] trunk/Source/WTF








Revision 286804
Author keith_mil...@apple.com
Date 2021-12-09 14:56:06 -0800 (Thu, 09 Dec 2021)


Log Message
Reduce maximum mmap size for Structure regions to help placate ios
https://bugs.webkit.org/show_bug.cgi?id=234091

Reviewed by Saam Barati.

Use mach_vm_map since that supports memory alignement so we don't have to map 2x desired address space then free then trim.

* wtf/PlatformHave.h:
* wtf/posix/OSAllocatorPOSIX.cpp:
(WTF::OSAllocator::reserveUncommittedAligned):

Modified Paths

trunk/Source/WTF/ChangeLog
trunk/Source/WTF/wtf/posix/OSAllocatorPOSIX.cpp




Diff

Modified: trunk/Source/WTF/ChangeLog (286803 => 286804)

--- trunk/Source/WTF/ChangeLog	2021-12-09 22:47:24 UTC (rev 286803)
+++ trunk/Source/WTF/ChangeLog	2021-12-09 22:56:06 UTC (rev 286804)
@@ -1,3 +1,16 @@
+2021-12-09  Keith Miller  
+
+Reduce maximum mmap size for Structure regions to help placate ios
+https://bugs.webkit.org/show_bug.cgi?id=234091
+
+Reviewed by Saam Barati.
+
+Use mach_vm_map since that supports memory alignement so we don't have to map 2x desired address space then free then trim.
+
+* wtf/PlatformHave.h:
+* wtf/posix/OSAllocatorPOSIX.cpp:
+(WTF::OSAllocator::reserveUncommittedAligned):
+
 2021-12-09  Antti Koivisto  
 
 Enable :focus-visible pseudo-class by default


Modified: trunk/Source/WTF/wtf/posix/OSAllocatorPOSIX.cpp (286803 => 286804)

--- trunk/Source/WTF/wtf/posix/OSAllocatorPOSIX.cpp	2021-12-09 22:47:24 UTC (rev 286803)
+++ trunk/Source/WTF/wtf/posix/OSAllocatorPOSIX.cpp	2021-12-09 22:56:06 UTC (rev 286804)
@@ -38,6 +38,7 @@
 #if OS(DARWIN)
 #define MAP_EXECUTABLE_FOR_JIT MAP_JIT
 #define MAP_EXECUTABLE_FOR_JIT_WITH_JIT_CAGE MAP_JIT
+#include 
 #else // OS(DARWIN)
 #define MAP_EXECUTABLE_FOR_JIT 0
 #define MAP_EXECUTABLE_FOR_JIT_WITH_JIT_CAGE 0
@@ -73,11 +74,37 @@
 return result;
 }
 
-
-// FIXME: Make a smarter version of this for Linux flavors that have aligned mmap.
 void* OSAllocator::reserveUncommittedAligned(size_t bytes, Usage usage, bool writable, bool executable, bool jitCageEnabled, bool includesGuardPages)
 {
 ASSERT(hasOneBitSet(bytes) && bytes >= pageSize());
+
+#if PLATFORM(MAC) || USE(APPLE_INTERNAL_SDK)
+UNUSED_PARAM(usage); // Not supported for mach API.
+ASSERT_UNUSED(includesGuardPages, !includesGuardPages);
+ASSERT_UNUSED(jitCageEnabled, !jitCageEnabled); // Not supported for mach API.
+vm_prot_t protections = VM_PROT_READ;
+if (writable)
+protections |= VM_PROT_WRITE;
+if (executable)
+protections |= VM_PROT_EXECUTE;
+
+const vm_inherit_t childProcessInheritance = VM_INHERIT_DEFAULT;
+
+void* aligned = nullptr;
+const bool copy = false;
+const int flags = VM_FLAGS_ANYWHERE;
+
+kern_return_t result = mach_vm_map(mach_task_self(), reinterpret_cast(), bytes, bytes - 1, flags, MEMORY_OBJECT_NULL, 0, copy, protections, protections, childProcessInheritance);
+RELEASE_ASSERT(result == KERN_SUCCESS, result, bytes);
+#if HAVE(MADV_FREE_REUSE)
+if (aligned) {
+// To support the "reserve then commit" model, we have to initially decommit.
+while (madvise(aligned, bytes, MADV_FREE_REUSABLE) == -1 && errno == EAGAIN) { }
+}
+#endif
+
+return aligned;
+#else
 // Double the size so we can ensure enough mapped memory to get an aligned start.
 size_t mappedSize = bytes * 2;
 char* mapped = reinterpret_cast(reserveUncommitted(mappedSize, usage, writable, executable, jitCageEnabled, includesGuardPages));
@@ -95,6 +122,7 @@
 releaseDecommitted(alignedEnd, rightExtra);
 
 return aligned;
+#endif
 }
 
 void* OSAllocator::reserveAndCommit(size_t bytes, Usage usage, bool writable, bool executable, bool jitCageEnabled, bool includesGuardPages)






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


[webkit-changes] [286803] trunk

2021-12-09 Thread bfulgham
Title: [286803] trunk








Revision 286803
Author bfulg...@apple.com
Date 2021-12-09 14:47:24 -0800 (Thu, 09 Dec 2021)


Log Message
Unprefix CSS value text-align: -webkit-match-parent
https://bugs.webkit.org/show_bug.cgi?id=229496


Reviewed by Darin Adler.

LayoutTests/imported/w3c:

Rebaseline to show new passing tests.

* web-platform-tests/css/css-text/parsing/text-align-computed-expected.txt:
* web-platform-tests/css/css-text/parsing/text-align-valid-expected.txt:

Source/WebCore:

Tested by web-platform-tests: css/css-text/parsing/text-align-computed.html,
css/css-text/parsing/text-align-valid.html

SSIA.

* css/CSSProperties.json: Add the unprefixed version.
* css/CSSValueKeywords.in: Ditto.
* css/html.css:
(li): Use the unprefixed version.
* style/StyleBuilderConverter.h:
(WebCore::Style::BuilderConverter::convertTextAlign): Handle the new unprefixed version.

Source/WebInspectorUI:

* UserInterface/Models/CSSKeywordCompletions.js: Add 'match-parent'

Modified Paths

trunk/LayoutTests/imported/w3c/ChangeLog
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-text/parsing/text-align-computed-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-text/parsing/text-align-valid-expected.txt
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/css/CSSProperties.json
trunk/Source/WebCore/css/CSSValueKeywords.in
trunk/Source/WebCore/css/html.css
trunk/Source/WebCore/style/StyleBuilderConverter.h
trunk/Source/WebInspectorUI/ChangeLog
trunk/Source/WebInspectorUI/UserInterface/Models/CSSKeywordCompletions.js




Diff

Modified: trunk/LayoutTests/imported/w3c/ChangeLog (286802 => 286803)

--- trunk/LayoutTests/imported/w3c/ChangeLog	2021-12-09 21:49:45 UTC (rev 286802)
+++ trunk/LayoutTests/imported/w3c/ChangeLog	2021-12-09 22:47:24 UTC (rev 286803)
@@ -1,3 +1,16 @@
+2021-12-09  Brent Fulgham  
+
+Unprefix CSS value text-align: -webkit-match-parent
+https://bugs.webkit.org/show_bug.cgi?id=229496
+
+
+Reviewed by Darin Adler.
+
+Rebaseline to show new passing tests.
+
+* web-platform-tests/css/css-text/parsing/text-align-computed-expected.txt:
+* web-platform-tests/css/css-text/parsing/text-align-valid-expected.txt:
+
 2021-12-09  Matt Woodrow  
 
 Unprefix -webkit-mask


Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-text/parsing/text-align-computed-expected.txt (286802 => 286803)

--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-text/parsing/text-align-computed-expected.txt	2021-12-09 21:49:45 UTC (rev 286802)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-text/parsing/text-align-computed-expected.txt	2021-12-09 22:47:24 UTC (rev 286803)
@@ -5,5 +5,5 @@
 PASS Property text-align value 'right'
 PASS Property text-align value 'center'
 PASS Property text-align value 'justify'
-FAIL Property text-align value 'match-parent' assert_true: 'match-parent' is a supported value for text-align. expected true got false
+PASS Property text-align value 'match-parent'
 


Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-text/parsing/text-align-valid-expected.txt (286802 => 286803)

--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-text/parsing/text-align-valid-expected.txt	2021-12-09 21:49:45 UTC (rev 286802)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-text/parsing/text-align-valid-expected.txt	2021-12-09 22:47:24 UTC (rev 286803)
@@ -5,6 +5,6 @@
 PASS e.style['text-align'] = "right" should set the property value
 PASS e.style['text-align'] = "center" should set the property value
 PASS e.style['text-align'] = "justify" should set the property value
-FAIL e.style['text-align'] = "match-parent" should set the property value assert_not_equals: property should be set got disallowed value ""
+PASS e.style['text-align'] = "match-parent" should set the property value
 FAIL e.style['text-align'] = "justify-all" should set the property value assert_not_equals: property should be set got disallowed value ""
 


Modified: trunk/Source/WebCore/ChangeLog (286802 => 286803)

--- trunk/Source/WebCore/ChangeLog	2021-12-09 21:49:45 UTC (rev 286802)
+++ trunk/Source/WebCore/ChangeLog	2021-12-09 22:47:24 UTC (rev 286803)
@@ -1,3 +1,23 @@
+2021-12-09  Brent Fulgham  
+
+Unprefix CSS value text-align: -webkit-match-parent
+https://bugs.webkit.org/show_bug.cgi?id=229496
+
+
+Reviewed by Darin Adler.
+
+Tested by web-platform-tests: css/css-text/parsing/text-align-computed.html,
+css/css-text/parsing/text-align-valid.html 
+
+SSIA.
+
+* css/CSSProperties.json: Add the unprefixed version.
+* css/CSSValueKeywords.in: Ditto.
+* css/html.css:
+(li): Use the unprefixed version.
+* style/StyleBuilderConverter.h:
+(WebCore::Style::BuilderConverter::convertTextAlign): Handle the new unprefixed version.
+
 2021-12-09  Alan Bujtas  
 
 [LFC][IFC] Try 

[webkit-changes] [286802] trunk/Source/JavaScriptCore

2021-12-09 Thread sbarati
Title: [286802] trunk/Source/_javascript_Core








Revision 286802
Author sbar...@apple.com
Date 2021-12-09 13:49:45 -0800 (Thu, 09 Dec 2021)


Log Message
Procedure::setNeedsPCToOriginMap should call Code::forcePreservationOfB3Origins
https://bugs.webkit.org/show_bug.cgi?id=234093

Reviewed by Yusuke Suzuki.

We need to do this to ensure the sampling profiler works in FTL.
The reason this was sometimes working was Air::Code's constructor
was looking at Procedure's m_needsPCToOriginMap before it was initialized,
in its constructor. This is because Procedure was constructing Code
before all its fields were initialized. This patch fixes that bug to
construct Code after Procedure has all its fields initialized.

* b3/B3Procedure.cpp:
(JSC::B3::Procedure::Procedure):
(JSC::B3::Procedure::setNeedsPCToOriginMap):
* b3/B3Procedure.h:
(JSC::B3::Procedure::setNeedsPCToOriginMap): Deleted.

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/b3/B3Procedure.cpp
trunk/Source/_javascript_Core/b3/B3Procedure.h
trunk/Source/_javascript_Core/b3/air/AirCode.cpp




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (286801 => 286802)

--- trunk/Source/_javascript_Core/ChangeLog	2021-12-09 21:28:22 UTC (rev 286801)
+++ trunk/Source/_javascript_Core/ChangeLog	2021-12-09 21:49:45 UTC (rev 286802)
@@ -1,5 +1,25 @@
 2021-12-09  Saam Barati  
 
+Procedure::setNeedsPCToOriginMap should call Code::forcePreservationOfB3Origins
+https://bugs.webkit.org/show_bug.cgi?id=234093
+
+Reviewed by Yusuke Suzuki.
+
+We need to do this to ensure the sampling profiler works in FTL.
+The reason this was sometimes working was Air::Code's constructor
+was looking at Procedure's m_needsPCToOriginMap before it was initialized,
+in its constructor. This is because Procedure was constructing Code
+before all its fields were initialized. This patch fixes that bug to
+construct Code after Procedure has all its fields initialized.
+
+* b3/B3Procedure.cpp:
+(JSC::B3::Procedure::Procedure):
+(JSC::B3::Procedure::setNeedsPCToOriginMap):
+* b3/B3Procedure.h:
+(JSC::B3::Procedure::setNeedsPCToOriginMap): Deleted.
+
+2021-12-09  Saam Barati  
+
 Add an option to dump the B3 IR for an allowlist of Wasm function indices
 https://bugs.webkit.org/show_bug.cgi?id=234028
 


Modified: trunk/Source/_javascript_Core/b3/B3Procedure.cpp (286801 => 286802)

--- trunk/Source/_javascript_Core/b3/B3Procedure.cpp	2021-12-09 21:28:22 UTC (rev 286801)
+++ trunk/Source/_javascript_Core/b3/B3Procedure.cpp	2021-12-09 21:49:45 UTC (rev 286802)
@@ -48,8 +48,10 @@
 : m_cfg(new CFG(*this))
 , m_lastPhaseName("initial")
 , m_byproducts(makeUnique())
-, m_code(new Air::Code(*this))
 {
+// Initialize all our fields before constructing Air::Code since
+// it looks into our fields.
+m_code = std::unique_ptr(new Air::Code(*this));
 m_code->setNumEntrypoints(m_numEntrypoints);
 }
 
@@ -486,6 +488,12 @@
 m_code->forcePreservationOfB3Origins();
 }
 
+void Procedure::setNeedsPCToOriginMap()
+{ 
+m_needsPCToOriginMap = true;
+m_code->forcePreservationOfB3Origins();
+}
+
 } } // namespace JSC::B3
 
 #endif // ENABLE(B3_JIT)


Modified: trunk/Source/_javascript_Core/b3/B3Procedure.h (286801 => 286802)

--- trunk/Source/_javascript_Core/b3/B3Procedure.h	2021-12-09 21:28:22 UTC (rev 286801)
+++ trunk/Source/_javascript_Core/b3/B3Procedure.h	2021-12-09 21:49:45 UTC (rev 286802)
@@ -275,7 +275,7 @@
 JS_EXPORT_PRIVATE RegisterSet mutableGPRs();
 JS_EXPORT_PRIVATE RegisterSet mutableFPRs();
 
-void setNeedsPCToOriginMap() { m_needsPCToOriginMap = true; }
+void setNeedsPCToOriginMap();
 bool needsPCToOriginMap() { return m_needsPCToOriginMap; }
 
 JS_EXPORT_PRIVATE void freeUnneededB3ValuesAfterLowering();


Modified: trunk/Source/_javascript_Core/b3/air/AirCode.cpp (286801 => 286802)

--- trunk/Source/_javascript_Core/b3/air/AirCode.cpp	2021-12-09 21:28:22 UTC (rev 286801)
+++ trunk/Source/_javascript_Core/b3/air/AirCode.cpp	2021-12-09 21:49:45 UTC (rev 286802)
@@ -56,7 +56,7 @@
 Code::Code(Procedure& proc)
 : m_proc(proc)
 , m_cfg(new CFG(*this))
-, m_preserveB3Origins(proc.needsPCToOriginMap() || Options::dumpAirGraphAtEachPhase() || Options::dumpFTLDisassembly())
+, m_preserveB3Origins(Options::dumpAirGraphAtEachPhase() || Options::dumpFTLDisassembly())
 , m_lastPhaseName("initial")
 , m_defaultPrologueGenerator(createSharedTask())
 {






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


[webkit-changes] [286801] trunk/Source/WebCore

2021-12-09 Thread zalan
Title: [286801] trunk/Source/WebCore








Revision 286801
Author za...@apple.com
Date 2021-12-09 13:28:22 -0800 (Thu, 09 Dec 2021)


Log Message
[LFC][IFC] Try not to include non-content type of inline boxes in the visual reordering
https://bugs.webkit.org/show_bug.cgi?id=234033

Reviewed by Antti Koivisto.

In InlineItemsBuilder::setBidiLevelForOpaqueInlineItems we try to figure out the bidi
level for inline box markers ( and ) mostly to be able to position
empty inline boxes (specifically with decorations). In some cases though the guessed
bidi level breaks the continuation between the content before and after the marker (e.g.  beforeafter)
In this patch we try to limit the number of items associated with this guessed bidi level.

* layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp:
(WebCore::Layout::InlineDisplayContentBuilder::processBidiContent):
* layout/formattingContexts/inline/InlineItem.h:
* layout/formattingContexts/inline/InlineItemsBuilder.cpp:
(WebCore::Layout::InlineItemsBuilder::breakAndComputeBidiLevels):
* layout/formattingContexts/inline/InlineLineBuilder.cpp:
(WebCore::Layout::LineBuilder::layoutInlineContent): we may only submit a subset of runs to the reordering
algorithm. It also means we may end up with gaps between the visual index values and the real run item indexes.
The runIndexOffsetMap ensures that the indexes are always consistent with the content in the lineRuns vector.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp
trunk/Source/WebCore/layout/formattingContexts/inline/InlineItem.h
trunk/Source/WebCore/layout/formattingContexts/inline/InlineItemsBuilder.cpp
trunk/Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (286800 => 286801)

--- trunk/Source/WebCore/ChangeLog	2021-12-09 21:14:04 UTC (rev 286800)
+++ trunk/Source/WebCore/ChangeLog	2021-12-09 21:28:22 UTC (rev 286801)
@@ -1,3 +1,26 @@
+2021-12-09  Alan Bujtas  
+
+[LFC][IFC] Try not to include non-content type of inline boxes in the visual reordering
+https://bugs.webkit.org/show_bug.cgi?id=234033
+
+Reviewed by Antti Koivisto.
+
+In InlineItemsBuilder::setBidiLevelForOpaqueInlineItems we try to figure out the bidi
+level for inline box markers ( and ) mostly to be able to position
+empty inline boxes (specifically with decorations). In some cases though the guessed
+bidi level breaks the continuation between the content before and after the marker (e.g.  beforeafter)
+In this patch we try to limit the number of items associated with this guessed bidi level.
+
+* layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp:
+(WebCore::Layout::InlineDisplayContentBuilder::processBidiContent):
+* layout/formattingContexts/inline/InlineItem.h:
+* layout/formattingContexts/inline/InlineItemsBuilder.cpp:
+(WebCore::Layout::InlineItemsBuilder::breakAndComputeBidiLevels):
+* layout/formattingContexts/inline/InlineLineBuilder.cpp:
+(WebCore::Layout::LineBuilder::layoutInlineContent): we may only submit a subset of runs to the reordering
+algorithm. It also means we may end up with gaps between the visual index values and the real run item indexes.
+The runIndexOffsetMap ensures that the indexes are always consistent with the content in the lineRuns vector.
+
 2021-12-08  BJ Burg  
 
 [Cocoa] Web Inspector: provide a way for _WKInspectorExtension clients to be to notified when an extension tab navigates


Modified: trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp (286800 => 286801)

--- trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp	2021-12-09 21:14:04 UTC (rev 286800)
+++ trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp	2021-12-09 21:28:22 UTC (rev 286801)
@@ -460,7 +460,7 @@
 
 void InlineDisplayContentBuilder::processBidiContent(const LineBuilder::LineContent& lineContent, const LineBox& lineBox, const InlineLayoutPoint& lineBoxLogicalTopLeft, DisplayBoxes& boxes)
 {
-ASSERT(lineContent.visualOrderList.size() == lineContent.runs.size());
+ASSERT(lineContent.visualOrderList.size() <= lineContent.runs.size());
 
 AncestorStack ancestorStack;
 DisplayBoxNode rootDisplayBoxNode = { };
@@ -479,12 +479,13 @@
 
 auto contentRightInVisualOrder = contentStartInVisualOrder;
 auto& runs = lineContent.runs;
-for (size_t i = 0; i < runs.size(); ++i) {
-auto visualIndex = lineContent.visualOrderList[i];
-auto& lineRun = runs[visualIndex];
+for (auto visualOrder : lineContent.visualOrderList) {
+ASSERT(runs[visualOrder].bidiLevel() != InlineItem::opaqueBidiLevel);
+
+auto& lineRun = runs[visualOrder];
 

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

2021-12-09 Thread cdumez
Title: [286800] trunk/Source/WebKit








Revision 286800
Author cdu...@apple.com
Date 2021-12-09 13:14:04 -0800 (Thu, 09 Dec 2021)


Log Message
[WPE] Crash under WebProcessProxy::setIsInProcessCache when closing web view in debug builds
https://bugs.webkit.org/show_bug.cgi?id=233933

Reviewed by Geoffrey Garen.

The crash would occur because the WebProcessPool destructor would call WebProcessCache::clear()
which would destroy WebProcessCache::CachedProcess objects, causing
WebProcessProxy::setIsInProcessCache(false) to get called. Previously, this call to
setIsInProcessCache() would convert the WeakPtr the WebProcessProxy held to its process pool
into a RefPtr, thus causing the WebProcessPool to get ref'd while in the middle of destruction.

To address the issue, the setIsInProcessCache() setter now takes a WillShutDown flag that gets
set in the CachedProcess destructor and which causes setIsInProcessCache() to return early
right after setting the m_isInProcessCache flag, without trying to send IPC to the WebProcess
or trying to ref the WebProcessPool.

* UIProcess/WebProcessCache.cpp:
(WebKit::WebProcessCache::CachedProcess::~CachedProcess):
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::setIsInProcessCache):
* UIProcess/WebProcessProxy.h:

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/WebProcessCache.cpp
trunk/Source/WebKit/UIProcess/WebProcessProxy.cpp
trunk/Source/WebKit/UIProcess/WebProcessProxy.h




Diff

Modified: trunk/Source/WebKit/ChangeLog (286799 => 286800)

--- trunk/Source/WebKit/ChangeLog	2021-12-09 20:55:16 UTC (rev 286799)
+++ trunk/Source/WebKit/ChangeLog	2021-12-09 21:14:04 UTC (rev 286800)
@@ -1,3 +1,27 @@
+2021-12-09  Chris Dumez  
+
+[WPE] Crash under WebProcessProxy::setIsInProcessCache when closing web view in debug builds
+https://bugs.webkit.org/show_bug.cgi?id=233933
+
+Reviewed by Geoffrey Garen.
+
+The crash would occur because the WebProcessPool destructor would call WebProcessCache::clear()
+which would destroy WebProcessCache::CachedProcess objects, causing
+WebProcessProxy::setIsInProcessCache(false) to get called. Previously, this call to
+setIsInProcessCache() would convert the WeakPtr the WebProcessProxy held to its process pool
+into a RefPtr, thus causing the WebProcessPool to get ref'd while in the middle of destruction.
+
+To address the issue, the setIsInProcessCache() setter now takes a WillShutDown flag that gets
+set in the CachedProcess destructor and which causes setIsInProcessCache() to return early
+right after setting the m_isInProcessCache flag, without trying to send IPC to the WebProcess
+or trying to ref the WebProcessPool.
+
+* UIProcess/WebProcessCache.cpp:
+(WebKit::WebProcessCache::CachedProcess::~CachedProcess):
+* UIProcess/WebProcessProxy.cpp:
+(WebKit::WebProcessProxy::setIsInProcessCache):
+* UIProcess/WebProcessProxy.h:
+
 2021-12-08  BJ Burg  
 
 [Cocoa] Web Inspector: provide a way for _WKInspectorExtension clients to be to notified when an extension tab navigates


Modified: trunk/Source/WebKit/UIProcess/WebProcessCache.cpp (286799 => 286800)

--- trunk/Source/WebKit/UIProcess/WebProcessCache.cpp	2021-12-09 20:55:16 UTC (rev 286799)
+++ trunk/Source/WebKit/UIProcess/WebProcessCache.cpp	2021-12-09 21:14:04 UTC (rev 286800)
@@ -294,7 +294,7 @@
 if (isSuspended())
 m_process->platformResumeProcess();
 #endif
-m_process->setIsInProcessCache(false);
+m_process->setIsInProcessCache(false, WebProcessProxy::WillShutDown::Yes);
 m_process->shutDown();
 }
 


Modified: trunk/Source/WebKit/UIProcess/WebProcessProxy.cpp (286799 => 286800)

--- trunk/Source/WebKit/UIProcess/WebProcessProxy.cpp	2021-12-09 20:55:16 UTC (rev 286799)
+++ trunk/Source/WebKit/UIProcess/WebProcessProxy.cpp	2021-12-09 21:14:04 UTC (rev 286800)
@@ -309,7 +309,7 @@
 }
 #endif
 
-void WebProcessProxy::setIsInProcessCache(bool value)
+void WebProcessProxy::setIsInProcessCache(bool value, WillShutDown willShutDown)
 {
 WEBPROCESSPROXY_RELEASE_LOG(Process, "setIsInProcessCache(%d)", value);
 if (value) {
@@ -321,6 +321,11 @@
 ASSERT(m_isInProcessCache != value);
 m_isInProcessCache = value;
 
+// No point in doing anything else if the process is about to shut down.
+ASSERT(willShutDown == WillShutDown::No || !value);
+if (willShutDown == WillShutDown::Yes)
+return;
+
 send(Messages::WebProcess::SetIsInProcessCache(m_isInProcessCache), 0);
 
 if (m_isInProcessCache) {


Modified: trunk/Source/WebKit/UIProcess/WebProcessProxy.h (286799 => 286800)

--- trunk/Source/WebKit/UIProcess/WebProcessProxy.h	2021-12-09 20:55:16 UTC (rev 286799)
+++ trunk/Source/WebKit/UIProcess/WebProcessProxy.h	2021-12-09 21:14:04 UTC (rev 286800)
@@ -156,7 +156,9 @@
 bool isMatchingRegistrableDomain(const WebCore::RegistrableDomain& domain) const { 

[webkit-changes] [286799] trunk

2021-12-09 Thread bburg
Title: [286799] trunk








Revision 286799
Author bb...@apple.com
Date 2021-12-09 12:55:16 -0800 (Thu, 09 Dec 2021)


Log Message
[Cocoa] Web Inspector: provide a way for _WKInspectorExtension clients to be to notified when an extension tab navigates
https://bugs.webkit.org/show_bug.cgi?id=233935


Reviewed by Patrick Angle.

Source/WebCore:

Add new InspectorFrontendHost hooks to notify the client about didNavigateExtensionTab().

* inspector/InspectorFrontendClient.h:
(WebCore::InspectorFrontendClient::didNavigateExtensionTab):
* inspector/InspectorFrontendHost.cpp:
(WebCore::InspectorFrontendHost::didNavigateExtensionTab):
* inspector/InspectorFrontendHost.h:
* inspector/InspectorFrontendHost.idl:

Source/WebInspectorUI:

In order instrument all loads inside the extension iframe, we cannot rely on the  attribute
to query the currently loaded page, or to change the current page. Use a helper method to query and set
the iframe location indirectly using `document.location`.

* UserInterface/Protocol/InspectorFrontendAPI.js:

* UserInterface/Controllers/WebInspectorExtensionController.js:
(WI.WebInspectorExtensionController.prototype.createTabForExtension):
(WI.WebInspectorExtensionController.prototype.showExtensionTab):
Standardize on returning {"result": value} from these methods.

* UserInterface/Views/WebInspectorExtensionTabContentView.js:
(WI.WebInspectorExtensionTabContentView):
(WI.WebInspectorExtensionTabContentView.prototype.whenPageAvailable): Added.
(WI.WebInspectorExtensionTabContentView.prototype._extensionFrameDidLoad):
Trigger a load of the actual requested page by evaluating `document.location.href = ""
in the context of the extension tab iframe. Notify clients when this non-initial load completes.

(WI.WebInspectorExtensionTabContentView.prototype.async _maybeDispatchDidNavigateExtensionTab):
Dispatch didNavigateExtensionTab with the new URL when the extension tab iframe completes a load.
Don't notify the client if the extension tab has not yet loaded.

Source/WebKit:

Add plumbing to notify clients when an extension tab loads. This is implemented similarly to
-inspectorExtension:didShowExtensionTab: and -inspectorExtension:didHideExtensionTab:.

* UIProcess/API/APIInspectorExtensionClient.h:
(API::InspectorExtensionClient::didNavigateExtensionTab):

* UIProcess/API/Cocoa/_WKInspectorExtensionDelegate.h:

* UIProcess/Inspector/Cocoa/InspectorExtensionDelegate.h:
* UIProcess/Inspector/Cocoa/InspectorExtensionDelegate.mm:
(WebKit::InspectorExtensionDelegate::InspectorExtensionDelegate):
(WebKit::InspectorExtensionDelegate::InspectorExtensionClient::didNavigateExtensionTab):

* UIProcess/Inspector/WebInspectorUIExtensionControllerProxy.messages.in:
* UIProcess/Inspector/WebInspectorUIExtensionControllerProxy.h:
* UIProcess/Inspector/WebInspectorUIExtensionControllerProxy.cpp:
(WebKit::WebInspectorUIExtensionControllerProxy::didNavigateExtensionTab):

* WebProcess/Inspector/RemoteWebInspectorUI.h:
* WebProcess/Inspector/RemoteWebInspectorUI.cpp:
(WebKit::RemoteWebInspectorUI::didNavigateExtensionTab):

* WebProcess/Inspector/WebInspectorUI.h:
* WebProcess/Inspector/WebInspectorUI.cpp:
(WebKit::WebInspectorUI::didHideExtensionTab):
(WebKit::WebInspectorUI::didNavigateExtensionTab):

* WebProcess/Inspector/WebInspectorUIExtensionController.h:
* WebProcess/Inspector/WebInspectorUIExtensionController.cpp:
(WebKit::WebInspectorUIExtensionController::createTabForExtension):
Standardize on returning {result: value} for showExtensionTab.

(WebKit::WebInspectorUIExtensionController::showExtensionTab):
Standardize on returning {result: value} for showExtensionTab.
Also, there's no need to inspect the result value if it's not an error.

(WebKit::WebInspectorUIExtensionController::didNavigateExtensionTab):
Add plumbing.

Tools:

Add API test coverage for -inspectorExtension:didNavigateTabWithIdentifier:newURL:

* TestWebKitAPI/Tests/WebKitCocoa/WKInspectorExtension.mm:
(TEST):
Drive-by, fix an outdated completion handler type signature.

* TestWebKitAPI/Tests/WebKitCocoa/WKInspectorExtensionDelegate.mm:
(-[InspectorExtensionDelegateForTesting inspectorExtension:didNavigateTabWithIdentifier:newURL:]):
(TEST):
Add a test case which exercises the new delegate method.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/inspector/InspectorFrontendClient.h
trunk/Source/WebCore/inspector/InspectorFrontendHost.cpp
trunk/Source/WebCore/inspector/InspectorFrontendHost.h
trunk/Source/WebCore/inspector/InspectorFrontendHost.idl
trunk/Source/WebInspectorUI/ChangeLog
trunk/Source/WebInspectorUI/UserInterface/Controllers/WebInspectorExtensionController.js
trunk/Source/WebInspectorUI/UserInterface/Protocol/InspectorFrontendAPI.js
trunk/Source/WebInspectorUI/UserInterface/Views/WebInspectorExtensionTabContentView.js
trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/UIProcess/API/APIInspectorExtensionClient.h
trunk/Source/WebKit/UIProcess/API/Cocoa/_WKInspectorExtensionDelegate.h

[webkit-changes] [286798] trunk

2021-12-09 Thread lmoura
Title: [286798] trunk








Revision 286798
Author lmo...@igalia.com
Date 2021-12-09 12:35:32 -0800 (Thu, 09 Dec 2021)


Log Message
Adds Lauro Moura's GitHub username to constributors.json

Unreviewed.

* metadata/contributors.json:

Modified Paths

trunk/ChangeLog
trunk/metadata/contributors.json




Diff

Modified: trunk/ChangeLog (286797 => 286798)

--- trunk/ChangeLog	2021-12-09 20:35:12 UTC (rev 286797)
+++ trunk/ChangeLog	2021-12-09 20:35:32 UTC (rev 286798)
@@ -1,3 +1,11 @@
+2021-12-09  Lauro Moura  
+
+Adds Lauro Moura's GitHub username to constributors.json
+
+Unreviewed.
+
+* metadata/contributors.json:
+
 2021-11-30  Tyler Wilcock  
 
 Move tyle...@apple.com to first entry in "emails" key


Modified: trunk/metadata/contributors.json (286797 => 286798)

--- trunk/metadata/contributors.json	2021-12-09 20:35:12 UTC (rev 286797)
+++ trunk/metadata/contributors.json	2021-12-09 20:35:32 UTC (rev 286798)
@@ -4246,6 +4246,7 @@
  "lmo...@igalia.com",
  "lauro.n...@openbossa.org"
   ],
+  "github" : "lauromoura",
   "name" : "Lauro Moura",
   "nicks" : [
  "lmoura"






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


[webkit-changes] [286797] trunk/Tools

2021-12-09 Thread lmoura
Title: [286797] trunk/Tools








Revision 286797
Author lmo...@igalia.com
Date 2021-12-09 12:35:12 -0800 (Thu, 09 Dec 2021)


Log Message
[WebXR][WPE] Build fails without openxr installed
https://bugs.webkit.org/show_bug.cgi?id=220250

Reviewed by Adrian Perez de Castro.

Based on original patch by Yury Semikhatsky. Rebased and installed
only for WPE, as GTK's module set does not declare openxr.

* wpe/dependencies/apt: Install libxcb-glx0-dev

Modified Paths

trunk/Tools/ChangeLog
trunk/Tools/wpe/dependencies/apt




Diff

Modified: trunk/Tools/ChangeLog (286796 => 286797)

--- trunk/Tools/ChangeLog	2021-12-09 20:25:11 UTC (rev 286796)
+++ trunk/Tools/ChangeLog	2021-12-09 20:35:12 UTC (rev 286797)
@@ -1,3 +1,15 @@
+2021-12-09  Lauro Moura  
+
+[WebXR][WPE] Build fails without openxr installed
+https://bugs.webkit.org/show_bug.cgi?id=220250
+
+Reviewed by Adrian Perez de Castro.
+
+Based on original patch by Yury Semikhatsky. Rebased and installed
+only for WPE, as GTK's module set does not declare openxr.
+
+* wpe/dependencies/apt: Install libxcb-glx0-dev
+
 2021-12-09  Ryan Haddad  
 
 Bring up another iOS GPU Processes tester


Modified: trunk/Tools/wpe/dependencies/apt (286796 => 286797)

--- trunk/Tools/wpe/dependencies/apt	2021-12-09 20:25:11 UTC (rev 286796)
+++ trunk/Tools/wpe/dependencies/apt	2021-12-09 20:35:12 UTC (rev 286797)
@@ -32,6 +32,7 @@
 libtheora-dev
 libvorbis-dev
 libvpx-dev
+libxcb-glx0-dev
 libxcb-xkb-dev
 libxkbcommon-dev
 libxrandr-dev






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


[webkit-changes] [286796] trunk/Source/WebCore

2021-12-09 Thread said
Title: [286796] trunk/Source/WebCore








Revision 286796
Author s...@apple.com
Date 2021-12-09 12:25:11 -0800 (Thu, 09 Dec 2021)


Log Message
[GPU Process] [Filters] Add the encoding and decoding for LightSource
https://bugs.webkit.org/show_bug.cgi?id=234086

Reviewed by Wenson Hsieh.

This will allow encoding and decoding FEDiffuseLighting and FESpecularLighting.

The create() and the constructor of the LightSource super classes have
to be non-inline to overcome a "missing vtable" linking issue.

New constructors are added to FEDiffuseLighting and FESpecularLighting
to allow creating these super classes from the combined data members of
FELighting.

m_bufferPosition of PointLightSource and SpotLightSource are used to cache
the absolute value of m_userSpacePosition relative to the result FilterImage.
So it does not need to be encoded/decoded since it is initialized by
FELightingSoftwareApplier.

* Headers.cmake:
* WebCore.xcodeproj/project.pbxproj:
* platform/graphics/filters/DistantLightSource.cpp:
(WebCore::DistantLightSource::create):
(WebCore::DistantLightSource::DistantLightSource):
* platform/graphics/filters/DistantLightSource.h:
(WebCore::DistantLightSource::encode const):
(WebCore::DistantLightSource::decode):
(WebCore::DistantLightSource::create): Deleted.
(WebCore::DistantLightSource::DistantLightSource): Deleted.
* platform/graphics/filters/FEDiffuseLighting.cpp:
(WebCore::FEDiffuseLighting::create):
* platform/graphics/filters/FEDiffuseLighting.h:
* platform/graphics/filters/FELighting.h:
(WebCore::FELighting::encode const):
(WebCore::FELighting::decode):
* platform/graphics/filters/FESpecularLighting.cpp:
(WebCore::FESpecularLighting::create):
* platform/graphics/filters/FESpecularLighting.h:
* platform/graphics/filters/LightSource.h:
* platform/graphics/filters/PointLightSource.cpp:
(WebCore::PointLightSource::create):
(WebCore::PointLightSource::PointLightSource):
* platform/graphics/filters/PointLightSource.h:
(WebCore::PointLightSource::encode const):
(WebCore::PointLightSource::decode):
(WebCore::PointLightSource::create): Deleted.
(WebCore::PointLightSource::PointLightSource): Deleted.
* platform/graphics/filters/SpotLightSource.cpp:
(WebCore::SpotLightSource::create):
(WebCore::SpotLightSource::SpotLightSource):
* platform/graphics/filters/SpotLightSource.h:
(WebCore::SpotLightSource::encode const):
(WebCore::SpotLightSource::decode):
(WebCore::SpotLightSource::create): Deleted.
(WebCore::SpotLightSource::SpotLightSource): Deleted.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/Headers.cmake
trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj
trunk/Source/WebCore/platform/graphics/filters/DistantLightSource.cpp
trunk/Source/WebCore/platform/graphics/filters/DistantLightSource.h
trunk/Source/WebCore/platform/graphics/filters/FEDiffuseLighting.cpp
trunk/Source/WebCore/platform/graphics/filters/FEDiffuseLighting.h
trunk/Source/WebCore/platform/graphics/filters/FELighting.h
trunk/Source/WebCore/platform/graphics/filters/FESpecularLighting.cpp
trunk/Source/WebCore/platform/graphics/filters/FESpecularLighting.h
trunk/Source/WebCore/platform/graphics/filters/LightSource.h
trunk/Source/WebCore/platform/graphics/filters/PointLightSource.cpp
trunk/Source/WebCore/platform/graphics/filters/PointLightSource.h
trunk/Source/WebCore/platform/graphics/filters/SpotLightSource.cpp
trunk/Source/WebCore/platform/graphics/filters/SpotLightSource.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (286795 => 286796)

--- trunk/Source/WebCore/ChangeLog	2021-12-09 20:22:34 UTC (rev 286795)
+++ trunk/Source/WebCore/ChangeLog	2021-12-09 20:25:11 UTC (rev 286796)
@@ -1,3 +1,61 @@
+2021-12-09  Said Abou-Hallawa  
+
+[GPU Process] [Filters] Add the encoding and decoding for LightSource
+https://bugs.webkit.org/show_bug.cgi?id=234086
+
+Reviewed by Wenson Hsieh.
+
+This will allow encoding and decoding FEDiffuseLighting and FESpecularLighting.
+
+The create() and the constructor of the LightSource super classes have
+to be non-inline to overcome a "missing vtable" linking issue.
+
+New constructors are added to FEDiffuseLighting and FESpecularLighting
+to allow creating these super classes from the combined data members of
+FELighting.
+
+m_bufferPosition of PointLightSource and SpotLightSource are used to cache
+the absolute value of m_userSpacePosition relative to the result FilterImage.
+So it does not need to be encoded/decoded since it is initialized by
+FELightingSoftwareApplier.
+
+* Headers.cmake:
+* WebCore.xcodeproj/project.pbxproj:
+* platform/graphics/filters/DistantLightSource.cpp:
+(WebCore::DistantLightSource::create):
+(WebCore::DistantLightSource::DistantLightSource):
+* platform/graphics/filters/DistantLightSource.h:
+(WebCore::DistantLightSource::encode const):
+(WebCore::DistantLightSource::decode):

[webkit-changes] [286794] trunk/LayoutTests

2021-12-09 Thread tyler_w
Title: [286794] trunk/LayoutTests








Revision 286794
Author tyle...@apple.com
Date 2021-12-09 12:02:20 -0800 (Thu, 09 Dec 2021)


Log Message
AX: Make 6 more layout tests async so they pass in isolated tree mode
https://bugs.webkit.org/show_bug.cgi?id=233966

Reviewed by Chris Fleizach.

* accessibility/element-haspopup-expected.txt:
* accessibility/element-haspopup.html:
Use accessibilityController.accessibleElementById to get a reference
to the link1 and link2 AX objects instead of document.getElementById()
and accessibilityController.focusedElement. The latter would work, but
would require the test to be made unnecessarily async.

* accessibility/mac/label-element-changing-children-string-value-expected.txt:
* accessibility/mac/label-element-changing-children-string-value.html:
* accessibility/mac/label-element-changing-textcontent-string-value-expected.txt:
* accessibility/mac/label-element-changing-textcontent-string-value.html:
* accessibility/mac/update-children-when-aria-role-changes-expected.txt:
* accessibility/mac/update-children-when-aria-role-changes.html:
* accessibility/tabindex-removed-expected.txt:
* accessibility/tabindex-removed.html:
Make these tests async. They dynamically change page content with JS,
so they must verify expectations asynchronously to pass in isolated
tree mode.

* accessibility/auto-fill-crash.html:
Make this test async.
* accessibility/auto-fill-crash-expected.txt:
* platform/glib/accessibility/auto-fill-crash-expected.txt:
Update expectations to reflect the test rewrite.
* platform/win/accessibility/auto-fill-crash-expected.txt:
Removed because the expectation is the same as the base
auto-fill-crash-expected.txt

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/accessibility/auto-fill-crash-expected.txt
trunk/LayoutTests/accessibility/auto-fill-crash.html
trunk/LayoutTests/accessibility/element-haspopup-expected.txt
trunk/LayoutTests/accessibility/element-haspopup.html
trunk/LayoutTests/accessibility/mac/label-element-changing-children-string-value-expected.txt
trunk/LayoutTests/accessibility/mac/label-element-changing-children-string-value.html
trunk/LayoutTests/accessibility/mac/label-element-changing-textcontent-string-value-expected.txt
trunk/LayoutTests/accessibility/mac/label-element-changing-textcontent-string-value.html
trunk/LayoutTests/accessibility/mac/update-children-when-aria-role-changes-expected.txt
trunk/LayoutTests/accessibility/mac/update-children-when-aria-role-changes.html
trunk/LayoutTests/accessibility/tabindex-removed-expected.txt
trunk/LayoutTests/accessibility/tabindex-removed.html
trunk/LayoutTests/platform/glib/accessibility/auto-fill-crash-expected.txt


Removed Paths

trunk/LayoutTests/platform/win/accessibility/auto-fill-crash-expected.txt




Diff

Modified: trunk/LayoutTests/ChangeLog (286793 => 286794)

--- trunk/LayoutTests/ChangeLog	2021-12-09 19:53:55 UTC (rev 286793)
+++ trunk/LayoutTests/ChangeLog	2021-12-09 20:02:20 UTC (rev 286794)
@@ -1,3 +1,38 @@
+2021-12-09  Tyler Wilcock  
+
+AX: Make 6 more layout tests async so they pass in isolated tree mode
+https://bugs.webkit.org/show_bug.cgi?id=233966
+
+Reviewed by Chris Fleizach.
+
+* accessibility/element-haspopup-expected.txt:
+* accessibility/element-haspopup.html:
+Use accessibilityController.accessibleElementById to get a reference
+to the link1 and link2 AX objects instead of document.getElementById()
+and accessibilityController.focusedElement. The latter would work, but
+would require the test to be made unnecessarily async.
+
+* accessibility/mac/label-element-changing-children-string-value-expected.txt:
+* accessibility/mac/label-element-changing-children-string-value.html:
+* accessibility/mac/label-element-changing-textcontent-string-value-expected.txt:
+* accessibility/mac/label-element-changing-textcontent-string-value.html:
+* accessibility/mac/update-children-when-aria-role-changes-expected.txt:
+* accessibility/mac/update-children-when-aria-role-changes.html:
+* accessibility/tabindex-removed-expected.txt:
+* accessibility/tabindex-removed.html:
+Make these tests async. They dynamically change page content with JS,
+so they must verify expectations asynchronously to pass in isolated
+tree mode.
+
+* accessibility/auto-fill-crash.html:
+Make this test async.
+* accessibility/auto-fill-crash-expected.txt:
+* platform/glib/accessibility/auto-fill-crash-expected.txt:
+Update expectations to reflect the test rewrite.
+* platform/win/accessibility/auto-fill-crash-expected.txt:
+Removed because the expectation is the same as the base
+auto-fill-crash-expected.txt
+
 2021-12-09  Robert Jenner  
 
 [ iOS EWS ]  2X media/track (layout-tests) are a constant image failure


Modified: 

[webkit-changes] [286793] branches/safari-612-branch/Source/WebCore

2021-12-09 Thread alancoon
Title: [286793] branches/safari-612-branch/Source/WebCore








Revision 286793
Author alanc...@apple.com
Date 2021-12-09 11:53:55 -0800 (Thu, 09 Dec 2021)


Log Message
Apply patch. rdar://problem/86235842

Modified Paths

branches/safari-612-branch/Source/WebCore/ChangeLog
branches/safari-612-branch/Source/WebCore/page/scrolling/ScrollingTree.h
branches/safari-612-branch/Source/WebCore/page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.h
branches/safari-612-branch/Source/WebCore/page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm




Diff

Modified: branches/safari-612-branch/Source/WebCore/ChangeLog (286792 => 286793)

--- branches/safari-612-branch/Source/WebCore/ChangeLog	2021-12-09 19:39:43 UTC (rev 286792)
+++ branches/safari-612-branch/Source/WebCore/ChangeLog	2021-12-09 19:53:55 UTC (rev 286793)
@@ -1,3 +1,29 @@
+2021-12-09  Alan Coon  
+
+Apply patch. rdar://problem/86235842
+
+2021-12-09  Simon Fraser  
+
+rdar://86235842 ([root] J316c: Rubber-banding is more stuttery with the momentum generator enabled)
+
+Reviewed by Tim Horton.
+
+Branch-only patch (this timer does not exist on trunk).
+
+To avoid raciness between displayDidRefresh callbacks and the rubberbanding timer, offset
+the timer by 1/4 frame. After the first frame, we reset its fire interval back to the
+nominal frame rate.
+
+stopAnimationCallback() sets m_isAnimationTimerInOffsetPhase to false to avoid any chance
+of restarting a stopped timer in the callback.
+
+* page/scrolling/ScrollingTree.h:
+* page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.h:
+* page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm:
+(WebCore::ScrollingTreeScrollingNodeDelegateMac::startAnimationCallback):
+(WebCore::ScrollingTreeScrollingNodeDelegateMac::stopAnimationCallback):
+(WebCore::ScrollingTreeScrollingNodeDelegateMac::scrollControllerAnimationTimerFired):
+
 2021-12-03  Alan Coon  
 
 Cherry-pick r285526. rdar://problem/85928816


Modified: branches/safari-612-branch/Source/WebCore/page/scrolling/ScrollingTree.h (286792 => 286793)

--- branches/safari-612-branch/Source/WebCore/page/scrolling/ScrollingTree.h	2021-12-09 19:39:43 UTC (rev 286792)
+++ branches/safari-612-branch/Source/WebCore/page/scrolling/ScrollingTree.h	2021-12-09 19:53:55 UTC (rev 286793)
@@ -223,7 +223,9 @@
 
 void windowScreenDidChange(PlatformDisplayID, std::optional nominalFramesPerSecond);
 PlatformDisplayID displayID();
-
+
+std::optional nominalFramesPerSecond();
+
 bool hasProcessedWheelEventsRecently();
 WEBCORE_EXPORT void willProcessWheelEvent();
 
@@ -257,8 +259,6 @@
 void setGestureState(std::optional);
 std::optional gestureState();
 
-std::optional nominalFramesPerSecond();
-
 void applyLayerPositionsInternal() WTF_REQUIRES_LOCK(m_treeLock);
 void removeAllNodes() WTF_REQUIRES_LOCK(m_treeLock);
 


Modified: branches/safari-612-branch/Source/WebCore/page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.h (286792 => 286793)

--- branches/safari-612-branch/Source/WebCore/page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.h	2021-12-09 19:39:43 UTC (rev 286792)
+++ branches/safari-612-branch/Source/WebCore/page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.h	2021-12-09 19:53:55 UTC (rev 286793)
@@ -110,6 +110,7 @@
 RetainPtr m_horizontalScrollerImp;
 
 std::unique_ptr> m_scrollControllerAnimationTimer;
+bool m_isAnimationTimerInOffsetPhase { false };
 
 bool m_inMomentumPhase { false };
 };


Modified: branches/safari-612-branch/Source/WebCore/page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm (286792 => 286793)

--- branches/safari-612-branch/Source/WebCore/page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm	2021-12-09 19:39:43 UTC (rev 286792)
+++ branches/safari-612-branch/Source/WebCore/page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm	2021-12-09 19:53:55 UTC (rev 286793)
@@ -28,6 +28,7 @@
 
 #if ENABLE(ASYNC_SCROLLING) && PLATFORM(MAC)
 
+#import "AnimationFrameRate.h"
 #import "Logging.h"
 #import "ScrollingStateScrollingNode.h"
 #import "ScrollingTree.h"
@@ -229,11 +230,16 @@
 if (m_scrollControllerAnimationTimer->isActive())
 return;
 
-m_scrollControllerAnimationTimer->startRepeating(1_s / 60.);
+// We offset the timer by a 1/4 frame to avoid it racing with displayDidRefresh callbacks (rdar://86235842).
+auto framesPerSecond = scrollingTree().nominalFramesPerSecond().value_or(FullSpeedFramesPerSecond);
+auto firstInterval = (1_s / framesPerSecond) / 4;
+m_isAnimationTimerInOffsetPhase = true;
+m_scrollControllerAnimationTimer->startRepeating(firstInterval);
 }
 
 void ScrollingTreeScrollingNodeDelegateMac::stopAnimationCallback(ScrollController&)
 {
+m_isAnimationTimerInOffsetPhase = false;
 if 

[webkit-changes] [286792] trunk/Source/WebInspectorUI

2021-12-09 Thread rcaliman
Title: [286792] trunk/Source/WebInspectorUI








Revision 286792
Author rcali...@apple.com
Date 2021-12-09 11:39:43 -0800 (Thu, 09 Dec 2021)


Log Message
Web Inspector: Enable fuzzy matching for CSS completions
https://bugs.webkit.org/show_bug.cgi?id=234092

Reviewed by Patrick Angle.

Flip the flag to enable fuzzy matching when autocompleting CSS properties and values.

* UserInterface/Base/Setting.js:

Modified Paths

trunk/Source/WebInspectorUI/ChangeLog
trunk/Source/WebInspectorUI/UserInterface/Base/Setting.js




Diff

Modified: trunk/Source/WebInspectorUI/ChangeLog (286791 => 286792)

--- trunk/Source/WebInspectorUI/ChangeLog	2021-12-09 19:12:44 UTC (rev 286791)
+++ trunk/Source/WebInspectorUI/ChangeLog	2021-12-09 19:39:43 UTC (rev 286792)
@@ -1,3 +1,14 @@
+2021-12-09  Razvan Caliman  
+
+Web Inspector: Enable fuzzy matching for CSS completions
+https://bugs.webkit.org/show_bug.cgi?id=234092
+
+Reviewed by Patrick Angle.
+
+Flip the flag to enable fuzzy matching when autocompleting CSS properties and values.
+
+* UserInterface/Base/Setting.js:
+
 2021-12-07  Razvan Caliman  
 
 Web Inspector: Support fuzzy matching in CSS completions


Modified: trunk/Source/WebInspectorUI/UserInterface/Base/Setting.js (286791 => 286792)

--- trunk/Source/WebInspectorUI/UserInterface/Base/Setting.js	2021-12-09 19:12:44 UTC (rev 286791)
+++ trunk/Source/WebInspectorUI/UserInterface/Base/Setting.js	2021-12-09 19:39:43 UTC (rev 286792)
@@ -231,7 +231,7 @@
 experimentalEnableStylesJumpToVariableDeclaration: new WI.Setting("experimental-styles-jump-to-variable-declaration", false),
 experimentalCollapseBlackboxedCallFrames: new WI.Setting("experimental-collapse-blackboxed-call-frames", false),
 experimentalAllowInspectingInspector: new WI.Setting("experimental-allow-inspecting-inspector", false),
-experimentalCSSCompletionFuzzyMatching: new WI.Setting("experimental-css-completion-fuzzy-matching", false),
+experimentalCSSCompletionFuzzyMatching: new WI.Setting("experimental-css-completion-fuzzy-matching", true),
 
 // Protocol
 protocolLogAsText: new WI.Setting("protocol-log-as-text", false),






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


[webkit-changes] [286791] trunk/Tools

2021-12-09 Thread ryanhaddad
Title: [286791] trunk/Tools








Revision 286791
Author ryanhad...@apple.com
Date 2021-12-09 11:12:44 -0800 (Thu, 09 Dec 2021)


Log Message
Bring up another iOS GPU Processes tester
https://bugs.webkit.org/show_bug.cgi?id=234016

Rubber-stamped by Alexey Proskuryakov.

* CISupport/build-webkit-org/config.json: Repurpose the Catalina GPU bot for this queue.
* CISupport/build-webkit-org/factories_unittest.py:
(TestExpectedBuildSteps): Update unit tests.

Modified Paths

trunk/Tools/CISupport/build-webkit-org/config.json
trunk/Tools/CISupport/build-webkit-org/factories_unittest.py
trunk/Tools/ChangeLog




Diff

Modified: trunk/Tools/CISupport/build-webkit-org/config.json (286790 => 286791)

--- trunk/Tools/CISupport/build-webkit-org/config.json	2021-12-09 19:07:58 UTC (rev 286790)
+++ trunk/Tools/CISupport/build-webkit-org/config.json	2021-12-09 19:12:44 UTC (rev 286791)
@@ -45,7 +45,6 @@
 { "name": "bot246", "platform": "mac-catalina" },
 { "name": "bot247", "platform": "mac-catalina" },
 { "name": "bot248", "platform": "mac-catalina" },
-{ "name": "bot260", "platform": "mac-catalina" },
 { "name": "bot610", "platform": "mac-catalina" },
 { "name": "bot638", "platform": "mac-catalina" },
 { "name": "bot674", "platform": "mac-catalina" },
@@ -60,6 +59,7 @@
 { "name": "bot684", "platform": "*" },
 
 { "name": "bot210", "platform": "ios-simulator-15" },
+{ "name": "bot260", "platform": "ios-simulator-15" },
 { "name": "bot673", "platform": "ios-15" },
 { "name": "bot614", "platform": "ios-simulator-15" },
 { "name": "bot651", "platform": "ios-simulator-15" },
@@ -273,7 +273,7 @@
 },
 { "name": "Apple-Catalina-Debug-Build", "factory": "BuildFactory", "builddir": "catalina-debug",
   "platform": "mac-catalina", "configuration": "debug", "architectures": ["x86_64"],
-  "triggers": ["catalina-debug-tests-jsc", "catalina-debug-tests-wk1", "catalina-debug-tests-wk2", "catalina-debug-tests-wk2-gpuprocess"],
+  "triggers": ["catalina-debug-tests-jsc", "catalina-debug-tests-wk1", "catalina-debug-tests-wk2"],
   "workernames": ["bot687", "bot688"]
 },
 { "name": "Apple-Catalina-Debug-WK1-Tests", "factory": "TestWebKit1AllButJSCFactory", "builddir": "catalina-debug-tests-wk1",
@@ -286,11 +286,6 @@
   "additionalArguments": ["--no-retry-failures"],
   "workernames": ["bot243", "bot244"]
 },
-{ "name": "Apple-Catalina-Debug-WK2-GPUProcess-Tests", "factory": "TestAllButJSCFactory", "builddir": "catalina-debug-tests-wk2-gpuprocess",
-  "platform": "mac-catalina", "configuration": "debug", "architectures": ["x86_64"],
-  "additionalArguments": ["--no-retry-failures", "--use-gpu-process"],
-  "workernames": ["bot260"]
-},
 { "name": "Apple-Catalina-Release-Build", "factory": "BuildFactory", "builddir": "catalina-release",
   "platform": "mac-catalina", "configuration": "release", "architectures": ["x86_64"],
   "triggers": ["catalina-release-tests-jsc", "catalina-release-perf-tests", "catalina-release-tests-wk1", "catalina-release-tests-wk2"],
@@ -331,7 +326,7 @@
 {
   "name": "Apple-iOS-15-Simulator-Release-Build", "factory": "BuildFactory", "builddir": "ios-simulator-15-release",
   "platform": "ios-simulator-15", "configuration": "release", "architectures": ["x86_64", "arm64"],
-  "triggers": ["ios-simulator-15-release-gpuprocess-arm64-tests-wk2", "ios-simulator-15-release-tests-wk2", "ipados-simulator-15-release-tests-wk2"],
+  "triggers": ["ios-simulator-15-release-gpuprocess-arm64-tests-wk2", "ios-simulator-15-release-gpuprocess-tests-wk2", "ios-simulator-15-release-tests-wk2", "ipados-simulator-15-release-tests-wk2"],
   "workernames": ["bot614", "bot641", "bot682", "bot685"]
 },
 {
@@ -347,6 +342,12 @@
   "workernames": ["bot210"]
 },
 {
+  "name": "Apple-iOS-15-Simulator-Release-GPUProcess-WK2-Tests", "factory": "TestAllButJSCFactory", "builddir": "ios-simulator-15-release-gpuprocess-tests-wk2",
+  "platform": "ios-simulator-15", "configuration": "release", "architectures": ["x86_64", "arm64"], "device_model": "iphone",
+  "additionalArguments": ["--no-retry-failures", "--use-gpu-process", 

[webkit-changes] [286790] trunk/Source/JavaScriptCore

2021-12-09 Thread sbarati
Title: [286790] trunk/Source/_javascript_Core








Revision 286790
Author sbar...@apple.com
Date 2021-12-09 11:07:58 -0800 (Thu, 09 Dec 2021)


Log Message
Add an option to dump the B3 IR for an allowlist of Wasm function indices
https://bugs.webkit.org/show_bug.cgi?id=234028

Reviewed by Tadeu Zagallo.

* b3/B3Common.cpp:
(JSC::B3::shouldDumpIR):
* b3/B3Common.h:
* b3/B3Generate.cpp:
(JSC::B3::generateToAir):
* b3/B3Procedure.cpp:
(JSC::B3::Procedure::dump const):
(JSC::B3::Procedure::setShouldDumpIR):
* b3/B3Procedure.h:
(JSC::B3::Procedure::shouldDumpIR const):
* b3/air/AirGenerate.cpp:
(JSC::B3::Air::prepareForGeneration):
* b3/testb3.h:
(shouldBeVerbose):
(lowerToAirForTesting):
* b3/testb3_6.cpp:
(testInterpreter):
(testMoveConstants):
* b3/testb3_7.cpp:
(testReduceStrengthReassociation):
* runtime/OptionsList.h:
* tools/FunctionAllowlist.cpp:
(JSC::FunctionAllowlist::shouldDumpWasmFunction const):
* tools/FunctionAllowlist.h:
* wasm/WasmB3IRGenerator.cpp:
(JSC::Wasm::shouldDumpIRFor):
(JSC::Wasm::parseAndCompile):
* wasm/WasmOMGForOSREntryPlan.cpp:
(JSC::Wasm::OMGForOSREntryPlan::work):
* wasm/WasmOMGPlan.cpp:
(JSC::Wasm::OMGPlan::work):

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/b3/B3Common.cpp
trunk/Source/_javascript_Core/b3/B3Common.h
trunk/Source/_javascript_Core/b3/B3Generate.cpp
trunk/Source/_javascript_Core/b3/B3Procedure.cpp
trunk/Source/_javascript_Core/b3/B3Procedure.h
trunk/Source/_javascript_Core/b3/air/AirGenerate.cpp
trunk/Source/_javascript_Core/b3/testb3.h
trunk/Source/_javascript_Core/b3/testb3_6.cpp
trunk/Source/_javascript_Core/b3/testb3_7.cpp
trunk/Source/_javascript_Core/runtime/OptionsList.h
trunk/Source/_javascript_Core/tools/FunctionAllowlist.cpp
trunk/Source/_javascript_Core/tools/FunctionAllowlist.h
trunk/Source/_javascript_Core/wasm/WasmB3IRGenerator.cpp
trunk/Source/_javascript_Core/wasm/WasmOMGForOSREntryPlan.cpp
trunk/Source/_javascript_Core/wasm/WasmOMGPlan.cpp




Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (286789 => 286790)

--- trunk/Source/_javascript_Core/ChangeLog	2021-12-09 19:01:10 UTC (rev 286789)
+++ trunk/Source/_javascript_Core/ChangeLog	2021-12-09 19:07:58 UTC (rev 286790)
@@ -1,3 +1,42 @@
+2021-12-09  Saam Barati  
+
+Add an option to dump the B3 IR for an allowlist of Wasm function indices
+https://bugs.webkit.org/show_bug.cgi?id=234028
+
+Reviewed by Tadeu Zagallo.
+
+* b3/B3Common.cpp:
+(JSC::B3::shouldDumpIR):
+* b3/B3Common.h:
+* b3/B3Generate.cpp:
+(JSC::B3::generateToAir):
+* b3/B3Procedure.cpp:
+(JSC::B3::Procedure::dump const):
+(JSC::B3::Procedure::setShouldDumpIR):
+* b3/B3Procedure.h:
+(JSC::B3::Procedure::shouldDumpIR const):
+* b3/air/AirGenerate.cpp:
+(JSC::B3::Air::prepareForGeneration):
+* b3/testb3.h:
+(shouldBeVerbose):
+(lowerToAirForTesting):
+* b3/testb3_6.cpp:
+(testInterpreter):
+(testMoveConstants):
+* b3/testb3_7.cpp:
+(testReduceStrengthReassociation):
+* runtime/OptionsList.h:
+* tools/FunctionAllowlist.cpp:
+(JSC::FunctionAllowlist::shouldDumpWasmFunction const):
+* tools/FunctionAllowlist.h:
+* wasm/WasmB3IRGenerator.cpp:
+(JSC::Wasm::shouldDumpIRFor):
+(JSC::Wasm::parseAndCompile):
+* wasm/WasmOMGForOSREntryPlan.cpp:
+(JSC::Wasm::OMGForOSREntryPlan::work):
+* wasm/WasmOMGPlan.cpp:
+(JSC::Wasm::OMGPlan::work):
+
 2021-12-09  Yusuke Suzuki  
 
 [JSC] Introduce BaselineCallLinkInfo and OptimizingCallLinkInfo to shrink sizeof(BaselineCallLinkInfo)


Modified: trunk/Source/_javascript_Core/b3/B3Common.cpp (286789 => 286790)

--- trunk/Source/_javascript_Core/b3/B3Common.cpp	2021-12-09 19:01:10 UTC (rev 286789)
+++ trunk/Source/_javascript_Core/b3/B3Common.cpp	2021-12-09 19:07:58 UTC (rev 286790)
@@ -36,8 +36,11 @@
 
 const char* const tierName = "b3  ";
 
-bool shouldDumpIR(B3CompilationMode mode)
+bool shouldDumpIR(Procedure& procedure, B3CompilationMode mode)
 {
+if (procedure.shouldDumpIR())
+return true;
+
 #if ENABLE(FTL_JIT)
 return FTL::verboseCompilationEnabled() || FTL::shouldDumpDisassembly() || shouldDumpIRAtEachPhase(mode);
 #else


Modified: trunk/Source/_javascript_Core/b3/B3Common.h (286789 => 286790)

--- trunk/Source/_javascript_Core/b3/B3Common.h	2021-12-09 19:01:10 UTC (rev 286789)
+++ trunk/Source/_javascript_Core/b3/B3Common.h	2021-12-09 19:07:58 UTC (rev 286790)
@@ -34,6 +34,8 @@
 
 namespace JSC { namespace B3 {
 
+class Procedure;
+
 extern const char* const tierName;
 
 enum B3CompilationMode {
@@ -41,7 +43,7 @@
 AirMode
 };
 
-JS_EXPORT_PRIVATE bool shouldDumpIR(B3CompilationMode);
+JS_EXPORT_PRIVATE bool shouldDumpIR(Procedure&, B3CompilationMode);
 bool shouldDumpIRAtEachPhase(B3CompilationMode);
 bool shouldValidateIR();
 bool 

[webkit-changes] [286789] trunk/Source/WebCore

2021-12-09 Thread zalan
Title: [286789] trunk/Source/WebCore








Revision 286789
Author za...@apple.com
Date 2021-12-09 11:01:10 -0800 (Thu, 09 Dec 2021)


Log Message
[LFC][IFC] Add support for ink overflow on bidi inline boxes
https://bugs.webkit.org/show_bug.cgi?id=233968

Reviewed by Antti Koivisto.

* layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp:
(WebCore::Layout::InlineDisplayContentBuilder::appendInlineDisplayBoxAtBidiBoundary):
(WebCore::Layout::InlineDisplayContentBuilder::ensureDisplayBoxForContainer):
(WebCore::Layout::InlineDisplayContentBuilder::adjustVisualGeometryForChildNode):
(WebCore::Layout::InlineDisplayContentBuilder::processBidiContent):
* layout/formattingContexts/inline/InlineDisplayContentBuilder.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp
trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (286788 => 286789)

--- trunk/Source/WebCore/ChangeLog	2021-12-09 18:58:34 UTC (rev 286788)
+++ trunk/Source/WebCore/ChangeLog	2021-12-09 19:01:10 UTC (rev 286789)
@@ -1,5 +1,19 @@
 2021-12-09  Alan Bujtas  
 
+[LFC][IFC] Add support for ink overflow on bidi inline boxes
+https://bugs.webkit.org/show_bug.cgi?id=233968
+
+Reviewed by Antti Koivisto.
+
+* layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp:
+(WebCore::Layout::InlineDisplayContentBuilder::appendInlineDisplayBoxAtBidiBoundary):
+(WebCore::Layout::InlineDisplayContentBuilder::ensureDisplayBoxForContainer):
+(WebCore::Layout::InlineDisplayContentBuilder::adjustVisualGeometryForChildNode):
+(WebCore::Layout::InlineDisplayContentBuilder::processBidiContent):
+* layout/formattingContexts/inline/InlineDisplayContentBuilder.h:
+
+2021-12-09  Alan Bujtas  
+
 [LFC][IFC] Add support for empty bidi inline boxes
 https://bugs.webkit.org/show_bug.cgi?id=233896
 


Modified: trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp (286788 => 286789)

--- trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp	2021-12-09 18:58:34 UTC (rev 286788)
+++ trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp	2021-12-09 19:01:10 UTC (rev 286789)
@@ -128,7 +128,8 @@
 , lineRun.expansion()
 , InlineDisplay::Box::Text { text->start, text->length, content, adjustedContentToRender(), text->needsHyphen }
 , true
-, { } });
+, { }
+});
 }
 
 void InlineDisplayContentBuilder::appendSoftLineBreakDisplayBox(const Line::Run& lineRun, const InlineRect& softLineBreakRunRect, DisplayBoxes& boxes)
@@ -145,7 +146,8 @@
 , softLineBreakRunRect
 , softLineBreakRunRect
 , lineRun.expansion()
-, InlineDisplay::Box::Text { text->start, text->length, downcast(layoutBox).content() } });
+, InlineDisplay::Box::Text { text->start, text->length, downcast(layoutBox).content() }
+});
 }
 
 void InlineDisplayContentBuilder::appendHardLineBreakDisplayBox(const Line::Run& lineRun, const InlineRect& lineBreakBoxRect, DisplayBoxes& boxes)
@@ -159,7 +161,8 @@
 , lineBreakBoxRect
 , lineBreakBoxRect
 , lineRun.expansion()
-, { } });
+, { }
+});
 
 auto& boxGeometry = formattingState().boxGeometry(layoutBox);
 boxGeometry.setLogicalTopLeft(toLayoutPoint(lineBreakBoxRect.topLeft()));
@@ -185,7 +188,8 @@
 , borderBoxRect
 , inkOverflow()
 , lineRun.expansion()
-, { } });
+, { }
+});
 // Note that inline boxes are relative to the line and their top position can be negative.
 // Atomic inline boxes are all set. Their margin/border/content box geometries are already computed. We just have to position them here.
 formattingState().boxGeometry(layoutBox).setLogicalTopLeft(toLayoutPoint(borderBoxRect.topLeft()));
@@ -236,7 +240,8 @@
 , { }
 , { }
 , inlineBox.hasContent()
-, isFirstLastBox(inlineBox) });
+, isFirstLastBox(inlineBox)
+});
 // This inline box showed up first on this line.
 setInlineBoxGeometry(layoutBox, inlineBoxBorderBox, true);
 }
@@ -261,11 +266,26 @@
 , { }
 , { }
 , inlineBox.hasContent()
-, isFirstLastBox(inlineBox) });
+, isFirstLastBox(inlineBox)
+});
 // Middle or end of the inline box. Let's stretch the box as needed.
 setInlineBoxGeometry(layoutBox, inlineBoxBorderBox, false);
 }
 
+void InlineDisplayContentBuilder::appendInlineDisplayBoxAtBidiBoundary(const Box& layoutBox, DisplayBoxes& boxes)
+{
+// Geometries for inline boxes at bidi boundaries are computed at a post-process step.
+boxes.append({ m_lineIndex
+, InlineDisplay::Box::Type::NonRootInlineBox
+, layoutBox
+, 

[webkit-changes] [286788] trunk

2021-12-09 Thread beidson
Title: [286788] trunk








Revision 286788
Author beid...@apple.com
Date 2021-12-09 10:58:34 -0800 (Thu, 09 Dec 2021)


Log Message
Add ability to inject messages into webpushd
https://bugs.webkit.org/show_bug.cgi?id=233988

Reviewed by Alex Christensen.

Source/WebKit:

Covered by API tests.

This patch:
 - Adds WKWebsiteDataStore SPI to fetch pending push messages for the embedding application
 - Gives webpushd code to inject a push message for a given bundle identifier
 - Gives webpushtool the ability to send one of these fake messages
 - Gives webpushtool the ability to reconnect to the next daemon instance after the current connection is dropped
 - Tests the injection and fetching of push messages via TestWebKitAPI

* Configurations/webpushtool.xcconfig:
* WebKit.xcodeproj/project.pbxproj:
* Resources/webpushtool.entitlements:

* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::getPendingPushMessages):
(WebKit::NetworkProcess::processPushMessage):
* NetworkProcess/NetworkProcess.h:
* NetworkProcess/NetworkProcess.messages.in:

* NetworkProcess/Notifications/NetworkNotificationManager.cpp:
(WebKit::NetworkNotificationManager::getPendingPushMessages):
(WebKit::ReplyCaller::callReply):
* NetworkProcess/Notifications/NetworkNotificationManager.h:

* Shared/Cocoa/WebPushMessageCocoa.mm: Copied from Source/WebKit/webpushd/webpushtool/WebPushToolConnection.h.
(WebKit::WebPushMessage::fromDictionary):
(WebKit::WebPushMessage::toDictionary const):

* Shared/PushMessageForTesting.h: Copied from Source/WebKit/Shared/WebPushDaemonConstants.h.
(WebKit::WebPushD::PushMessageForTesting::encode const):
(WebKit::WebPushD::PushMessageForTesting::decode):

* Shared/WebPushDaemonConstants.h:
(WebKit::WebPushD::messageTypeSendsReply):

* Shared/WebPushMessage.h: Copied from Source/WebKit/webpushd/webpushtool/WebPushToolConnection.h.
(WebKit::WebPushMessage::encode const):
(WebKit::WebPushMessage::decode):

* UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
(-[WKWebsiteDataStore _getPendingPushMessages:]):
(-[WKWebsiteDataStore _processPushMessage:completionHandler:]):
(-[WKWebsiteDataStore _processPushMessage:registration:completionHandler:]): Deleted.
* UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h:

* UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::getPendingPushMessages):
(WebKit::NetworkProcessProxy::processPushMessage):
* UIProcess/Network/NetworkProcessProxy.h:

* webpushd/PushClientConnection.h:
* webpushd/PushClientConnection.mm:
(WebPushD::ClientConnection::hostAppHasPushEntitlement):
(WebPushD::ClientConnection::hostAppHasPushInjectEntitlement):
(WebPushD::ClientConnection::hostHasEntitlement):
(WebPushD::ClientConnection::broadcastDebugMessage):

* webpushd/WebPushDaemon.h:
* webpushd/WebPushDaemon.mm:
(WebPushD::MessageInfo::injectPushMessageForTesting::encodeReply):
(WebPushD::MessageInfo::getPendingPushMessages::encodeReply):
(WebPushD::Daemon::decodeAndHandleMessage):
(WebPushD::Daemon::injectPushMessageForTesting):
(WebPushD::Daemon::getPendingPushMessages):

* webpushd/webpushtool/WebPushToolConnection.h:
(WebPushTool::Connection::setPushMessage):

* webpushd/webpushtool/WebPushToolConnection.mm:
(WebPushTool::Connection::startAction):
(WebPushTool::Connection::sendPushMessage):

* webpushd/webpushtool/WebPushToolMain.mm:
(printUsageAndTerminate):
(pushMessageFromArguments):
(main):

Tools:

* TestWebKitAPI/Configurations/TestWebKitAPI-iOS.entitlements:
* TestWebKitAPI/Configurations/TestWebKitAPI-macOS-internal.entitlements:
* TestWebKitAPI/Configurations/TestWebKitAPI-macOS.entitlements:

* TestWebKitAPI/Tests/WebKitCocoa/PushAPI.mm:
(messageDictionary):

* TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm:
(TestWebKitAPI::createMessageDictionary):
(TestWebKitAPI::sendMessageToDaemon):
(TestWebKitAPI::sendMessageToDaemonWaitingForReply):
(TestWebKitAPI::sendConfigurationWithAuditToken):
(TestWebKitAPI::createAndConfigureConnectionToService):
(TestWebKitAPI::encodeString):
(TestWebKitAPI::TEST):
(TestWebKitAPI::function):
* TestWebKitAPI/cocoa/TestWKWebView.h:

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/Configurations/webpushtool.xcconfig
trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp
trunk/Source/WebKit/NetworkProcess/NetworkProcess.h
trunk/Source/WebKit/NetworkProcess/NetworkProcess.messages.in
trunk/Source/WebKit/NetworkProcess/Notifications/NetworkNotificationManager.cpp
trunk/Source/WebKit/NetworkProcess/Notifications/NetworkNotificationManager.h
trunk/Source/WebKit/Resources/webpushtool.entitlements
trunk/Source/WebKit/Shared/WebPushDaemonConstants.h
trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebsiteDataStore.mm
trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h
trunk/Source/WebKit/UIProcess/Network/NetworkProcessProxy.cpp
trunk/Source/WebKit/UIProcess/Network/NetworkProcessProxy.h
trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj
trunk/Source/WebKit/webpushd/PushClientConnection.h

[webkit-changes] [286787] trunk/LayoutTests

2021-12-09 Thread jenner
Title: [286787] trunk/LayoutTests








Revision 286787
Author jen...@apple.com
Date 2021-12-09 10:44:53 -0800 (Thu, 09 Dec 2021)


Log Message
[ iOS EWS ]  2X media/track (layout-tests) are a constant image failure
https://bugs.webkit.org/show_bug.cgi?id=234090

Unreviewed test gardening.

* platform/ios-wk2/TestExpectations:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/platform/ios-wk2/TestExpectations




Diff

Modified: trunk/LayoutTests/ChangeLog (286786 => 286787)

--- trunk/LayoutTests/ChangeLog	2021-12-09 18:33:19 UTC (rev 286786)
+++ trunk/LayoutTests/ChangeLog	2021-12-09 18:44:53 UTC (rev 286787)
@@ -1,3 +1,12 @@
+2021-12-09  Robert Jenner  
+
+[ iOS EWS ]  2X media/track (layout-tests) are a constant image failure
+https://bugs.webkit.org/show_bug.cgi?id=234090
+
+Unreviewed test gardening.
+
+* platform/ios-wk2/TestExpectations:
+
 2021-12-09  J Pascoe  
 
 [WebAuthn] Remove user gesture requirement for using platform authenticator on the web


Modified: trunk/LayoutTests/platform/ios-wk2/TestExpectations (286786 => 286787)

--- trunk/LayoutTests/platform/ios-wk2/TestExpectations	2021-12-09 18:33:19 UTC (rev 286786)
+++ trunk/LayoutTests/platform/ios-wk2/TestExpectations	2021-12-09 18:44:53 UTC (rev 286787)
@@ -2250,3 +2250,6 @@
 
 webkit.org/b/232337 [ Release ] imported/w3c/web-platform-tests/html/cross-origin-opener-policy/reporting/navigation-reporting/reporting-coop-navigated-opener.https.html [ Pass Failure  DumpJSConsoleLogInStdErr ]
 
+# webkit.org/b/234090 The two folloing tests are constant failures on iOS15 and EWS
+media/track/track-webvtt-no-snap-to-lines-overlap.html [ ImageOnlyFailure ]
+media/track/track-webvtt-snap-to-lines-left-right.html [ ImageOnlyFailure ]
\ No newline at end of file






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


[webkit-changes] [286786] trunk/Source/WebCore

2021-12-09 Thread zalan
Title: [286786] trunk/Source/WebCore








Revision 286786
Author za...@apple.com
Date 2021-12-09 10:33:19 -0800 (Thu, 09 Dec 2021)


Log Message
[LFC][IFC] Add support for empty bidi inline boxes
https://bugs.webkit.org/show_bug.cgi?id=233896

Reviewed by Antti Koivisto.

Inline boxes with decoration only should also produce associated display boxes.

* layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp:
(WebCore::Layout::createdDisplayBoxNodeForContainerBoxAndPushToAncestorStack):
(WebCore::Layout::InlineDisplayContentBuilder::ensureDisplayBoxForContainer):
(WebCore::Layout::InlineDisplayContentBuilder::processBidiContent):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp




Diff

Modified: trunk/Source/WebCore/ChangeLog (286785 => 286786)

--- trunk/Source/WebCore/ChangeLog	2021-12-09 17:53:22 UTC (rev 286785)
+++ trunk/Source/WebCore/ChangeLog	2021-12-09 18:33:19 UTC (rev 286786)
@@ -1,3 +1,17 @@
+2021-12-09  Alan Bujtas  
+
+[LFC][IFC] Add support for empty bidi inline boxes
+https://bugs.webkit.org/show_bug.cgi?id=233896
+
+Reviewed by Antti Koivisto.
+
+Inline boxes with decoration only should also produce associated display boxes.
+
+* layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp:
+(WebCore::Layout::createdDisplayBoxNodeForContainerBoxAndPushToAncestorStack):
+(WebCore::Layout::InlineDisplayContentBuilder::ensureDisplayBoxForContainer):
+(WebCore::Layout::InlineDisplayContentBuilder::processBidiContent):
+
 2021-12-09  J Pascoe  
 
 [WebAuthn] Remove user gesture requirement for using platform authenticator on the web


Modified: trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp (286785 => 286786)

--- trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp	2021-12-09 17:53:22 UTC (rev 286785)
+++ trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp	2021-12-09 18:33:19 UTC (rev 286786)
@@ -363,6 +363,14 @@
 ListHashSet m_set;
 };
 
+static inline DisplayBoxNode& createdDisplayBoxNodeForContainerBoxAndPushToAncestorStack(const ContainerBox& containerBox, size_t displayBoxIndex, DisplayBoxNode& parentDisplayBoxNode, AncestorStack& ancestorStack)
+{
+parentDisplayBoxNode.appendChild(displayBoxIndex);
+auto& displayBoxNode = *parentDisplayBoxNode.children.last();
+ancestorStack.push(displayBoxNode, containerBox);
+return displayBoxNode;
+}
+
 DisplayBoxNode& InlineDisplayContentBuilder::ensureDisplayBoxForContainer(const ContainerBox& containerBox, AncestorStack& ancestorStack, DisplayBoxes& boxes)
 {
 ASSERT(containerBox.isInlineBox() ||  == ());
@@ -370,11 +378,7 @@
 return *lowestCommonAncestor;
 auto& enclosingDisplayBoxNodeForContainer = ensureDisplayBoxForContainer(containerBox.parent(), ancestorStack, boxes);
 boxes.append({ m_lineIndex, InlineDisplay::Box::Type::NonRootInlineBox, containerBox, UBIDI_DEFAULT_LTR, { }, { }, { }, { }, true, { } });
-
-enclosingDisplayBoxNodeForContainer.appendChild(boxes.size() - 1);
-auto& displayBoxNodeForContainer = *enclosingDisplayBoxNodeForContainer.children.last();
-ancestorStack.push(displayBoxNodeForContainer, containerBox);
-return displayBoxNodeForContainer;
+return createdDisplayBoxNodeForContainerBoxAndPushToAncestorStack(containerBox, boxes.size() - 1, enclosingDisplayBoxNodeForContainer, ancestorStack);
 }
 
 void InlineDisplayContentBuilder::adjustVisualGeometryForChildNode(const DisplayBoxNode& displayBoxNode, InlineLayoutUnit& contentRightInVisualOrder, InlineLayoutUnit lineBoxLogicalTop, DisplayBoxes& boxes, const LineBox& lineBox)
@@ -454,11 +458,9 @@
 auto& lineRun = runs[visualIndex];
 auto& layoutBox = lineRun.layoutBox();
 
-auto isContentRun = !lineRun.isInlineBoxStart() && !lineRun.isLineSpanningInlineBoxStart() && !lineRun.isInlineBoxEnd() && !lineRun.isWordBreakOpportunity();
-if (!isContentRun) {
-// FIXME: Add support for inline boxes with no content.
+auto needsDisplayBox = !lineRun.isInlineBoxEnd() && !lineRun.isWordBreakOpportunity();
+if (!needsDisplayBox)
 continue;
-}
 
 auto visualRectRelativeToRoot = [&](auto logicallRect) {
 logicallRect.setLeft(contentRightInVisualOrder);
@@ -471,20 +473,36 @@
 auto visualRect = visualRectRelativeToRoot(lineBox.logicalRectForTextRun(lineRun));
 appendTextDisplayBox(lineRun, visualRect, boxes);
 contentRightInVisualOrder += visualRect.width();
-} else if (lineRun.isSoftLineBreak()) {
+parentDisplayBoxNode.appendChild(boxes.size() - 1);
+continue;
+}
+if (lineRun.isSoftLineBreak()) {

[webkit-changes] [286785] trunk

2021-12-09 Thread j_pascoe
Title: [286785] trunk








Revision 286785
Author j_pas...@apple.com
Date 2021-12-09 09:53:22 -0800 (Thu, 09 Dec 2021)


Log Message
[WebAuthn] Remove user gesture requirement for using platform authenticator on the web
https://bugs.webkit.org/show_bug.cgi?id=230893


Reviewed by Brent Fulgham.

Source/WebCore:

Remove web authentication user gesture bypass quirk as it's no longer used.

* page/Quirks.cpp:
(WebCore::Quirks::shouldBypassUserGestureRequirementForWebAuthn const): Deleted.
* page/Quirks.h:

Source/WebKit:

This patch loosens the user gesture requirement around using WebAuthn with respect to user gestures by
removing the Quirks.h allowlist of sites that get a freebie. Instead the new behavior is
all sites get one freebie, then on subsequent attempts they show a non-modal consent dialog.

* UIProcess/API/APIUIClient.h:
(API::UIClient::requestWebAuthenticationNoGesture):
* UIProcess/API/C/WKPage.cpp:
(WKPageSetPageUIClient):
* UIProcess/API/C/WKPageUIClient.h:
* UIProcess/API/Cocoa/WKUIDelegatePrivate.h:
* UIProcess/Cocoa/UIDelegate.h:
* UIProcess/Cocoa/UIDelegate.mm:
(WebKit::UIDelegate::setDelegate):
(WebKit::UIDelegate::UIClient::requestWebAuthenticationNoGesture):
* UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.cpp:
(WebKit::WebAuthenticatorCoordinatorProxy::handleRequest):
* WebProcess/WebAuthentication/WebAuthenticatorCoordinator.cpp:
(WebKit::WebAuthenticatorCoordinator::processingUserGesture):

Tools:

This patch removes the Quirks allowlist of the freebie web authentication use without a gesture and replaces it with one freebie, then a consent sheet.

* TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:
(-[TestWebAuthenticationPanelUIDelegate _webView:requestWebAuthenticationNoGestureForOrigin:completionHandler:]):
Test delegate

LayoutTests:

Modify layout tests to reflect new WebAuthn user gesture console message.

* http/wpt/credential-management/credentialscontainer-store-basics.https-expected.txt:
* http/wpt/webauthn/ctap-hid-failure.https-expected.txt:
* http/wpt/webauthn/ctap-hid-success.https-expected.txt:
* http/wpt/webauthn/ctap-nfc-failure.https-expected.txt:
* http/wpt/webauthn/idl.https-expected.txt:
* http/wpt/webauthn/public-key-credential-create-failure-hid-silent.https-expected.txt:
* http/wpt/webauthn/public-key-credential-create-failure-hid.https-expected.txt:
* http/wpt/webauthn/public-key-credential-create-failure-local-silent.https-expected.txt:
* http/wpt/webauthn/public-key-credential-create-failure-local.https-expected.txt:
* http/wpt/webauthn/public-key-credential-create-failure-nfc.https-expected.txt:
* http/wpt/webauthn/public-key-credential-create-failure-u2f-silent.https-expected.txt:
* http/wpt/webauthn/public-key-credential-create-failure-u2f.https-expected.txt:
* http/wpt/webauthn/public-key-credential-create-failure.https-expected.txt:
* http/wpt/webauthn/public-key-credential-create-success-hid.https-expected.txt:
* http/wpt/webauthn/public-key-credential-create-success-local.https-expected.txt:
* http/wpt/webauthn/public-key-credential-create-success-nfc.https-expected.txt:
* http/wpt/webauthn/public-key-credential-create-success-u2f.https-expected.txt:
* http/wpt/webauthn/public-key-credential-get-failure-hid-silent.https-expected.txt:
* http/wpt/webauthn/public-key-credential-get-failure-hid.https-expected.txt:
* http/wpt/webauthn/public-key-credential-get-failure-local-silent.https-expected.txt:
* http/wpt/webauthn/public-key-credential-get-failure-local.https-expected.txt:
* http/wpt/webauthn/public-key-credential-get-failure-nfc.https-expected.txt:
* http/wpt/webauthn/public-key-credential-get-failure-u2f-silent.https-expected.txt:
* http/wpt/webauthn/public-key-credential-get-failure-u2f.https-expected.txt:
* http/wpt/webauthn/public-key-credential-get-failure.https-expected.txt:
* http/wpt/webauthn/public-key-credential-get-success-hid.https-expected.txt:
* http/wpt/webauthn/public-key-credential-get-success-local.https-expected.txt:
* http/wpt/webauthn/public-key-credential-get-success-nfc.https-expected.txt:
* http/wpt/webauthn/public-key-credential-get-success-u2f.https-expected.txt:

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/LayoutTests/http/wpt/credential-management/credentialscontainer-store-basics.https-expected.txt
trunk/LayoutTests/http/wpt/webauthn/ctap-hid-failure.https-expected.txt
trunk/LayoutTests/http/wpt/webauthn/ctap-hid-success.https-expected.txt
trunk/LayoutTests/http/wpt/webauthn/ctap-nfc-failure.https-expected.txt
trunk/LayoutTests/http/wpt/webauthn/idl.https-expected.txt
trunk/LayoutTests/http/wpt/webauthn/public-key-credential-create-failure-hid-silent.https-expected.txt
trunk/LayoutTests/http/wpt/webauthn/public-key-credential-create-failure-hid.https-expected.txt
trunk/LayoutTests/http/wpt/webauthn/public-key-credential-create-failure-local-silent.https-expected.txt
trunk/LayoutTests/http/wpt/webauthn/public-key-credential-create-failure-local.https-expected.txt

[webkit-changes] [286784] trunk/Source/WebCore

2021-12-09 Thread zalan
Title: [286784] trunk/Source/WebCore








Revision 286784
Author za...@apple.com
Date 2021-12-09 09:26:58 -0800 (Thu, 09 Dec 2021)


Log Message
[LFC][IFC] Refactor bidi inline box boundary handling
https://bugs.webkit.org/show_bug.cgi?id=233880

Reviewed by Antti Koivisto.

This patch remove some code complexity by introducing more suitable data types to handle
content ranges for inline boxes.

1. The final output of the InlineDisplayContentBuilder is a list of display boxes.
  It's a simple "one box right after the other" type of setup with continuous geometry (ie next box starts where
  the previous ends +-horizontal margins) unless the content is embedded in an inline box (e.g. embedded content)
  Inline box type of display boxes enclose all their descendant content.
  Normally when the logical order == visual order (unidirectional content), the
  descendant content ends right before the "inline box end" mark ().
  It makes it easy to compute the right edge/enclosing width for the inline box type of display boxes.
2. However the visual order of the bidi content makes the "let's use the inline box end mark" logic unusable as
  we may see the "inline box end" mark even before we come across any descendant content
  (there are other types of confusions with random ordering).
3. Working with a list when the content comes in a nested flavor may introduce some complexity (e.g. need to keep content ranges around).

This patch introduces a very simple DisplayBoxNode type which keeps track of the display boxes in a tree fashion.
The display boxes are still stored in a list, while this newly introduced DisplayBoxNode tree helps traversing
the nested content.
It helps finding out the insertion point at unexpected bidi boundaries (e.g. when nested content from other inline boxes
show up in a logically unrelated inline box) and it is also very valuable when computing visual geometries for those enclosing display boxes.

* layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp:
(WebCore::Layout::DisplayBoxNode::DisplayBoxNode):
(WebCore::Layout::DisplayBoxNode::appendChild):
(WebCore::Layout::AncestorStack::unwind):
(WebCore::Layout::AncestorStack::push):
(WebCore::Layout::InlineDisplayContentBuilder::ensureDisplayBoxForContainer):
(WebCore::Layout::InlineDisplayContentBuilder::adjustVisualGeometryForChildNode):
(WebCore::Layout::InlineDisplayContentBuilder::insertInlineBoxDisplayBoxForBidiBoundary): Deleted.
(WebCore::Layout::InlineDisplayContentBuilder::adjustInlineBoxDisplayBoxForBidiBoundary): Deleted.
(WebCore::Layout::InlineDisplayContentBuilder::processBidiContent): Deleted.
(WebCore::Layout::InlineDisplayContentBuilder::processOverflownRunsForEllipsis): Deleted.
(WebCore::Layout::InlineDisplayContentBuilder::collectInkOverflowForInlineBoxes): Deleted.
(WebCore::Layout::InlineDisplayContentBuilder::computeIsFirstIsLastBoxForInlineContent): Deleted.
* layout/formattingContexts/inline/InlineDisplayContentBuilder.h:
* layout/formattingContexts/inline/display/InlineDisplayBox.h:
(WebCore::InlineDisplay::Box::setLogicalLeft):
(WebCore::InlineDisplay::Box::setLogicalRight):
(WebCore::InlineDisplay::Box::setLogicalRect):
(WebCore::InlineDisplay::Box::setHasContent):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp
trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.h
trunk/Source/WebCore/layout/formattingContexts/inline/display/InlineDisplayBox.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (286783 => 286784)

--- trunk/Source/WebCore/ChangeLog	2021-12-09 17:22:14 UTC (rev 286783)
+++ trunk/Source/WebCore/ChangeLog	2021-12-09 17:26:58 UTC (rev 286784)
@@ -1,5 +1,53 @@
 2021-12-09  Alan Bujtas  
 
+[LFC][IFC] Refactor bidi inline box boundary handling
+https://bugs.webkit.org/show_bug.cgi?id=233880
+
+Reviewed by Antti Koivisto.
+
+This patch remove some code complexity by introducing more suitable data types to handle
+content ranges for inline boxes.
+
+1. The final output of the InlineDisplayContentBuilder is a list of display boxes.
+  It's a simple "one box right after the other" type of setup with continuous geometry (ie next box starts where
+  the previous ends +-horizontal margins) unless the content is embedded in an inline box (e.g. embedded content)
+  Inline box type of display boxes enclose all their descendant content.
+  Normally when the logical order == visual order (unidirectional content), the
+  descendant content ends right before the "inline box end" mark (). 
+  It makes it easy to compute the right edge/enclosing width for the inline box type of display boxes.
+2. However the visual order of the bidi content makes the "let's use the inline box end mark" logic unusable as
+  we may see the "inline box end" mark even before we come across any 

[webkit-changes] [286783] trunk/Source/WTF

2021-12-09 Thread antti
Title: [286783] trunk/Source/WTF








Revision 286783
Author an...@apple.com
Date 2021-12-09 09:22:14 -0800 (Thu, 09 Dec 2021)


Log Message
Enable :focus-visible pseudo-class by default
https://bugs.webkit.org/show_bug.cgi?id=234019


Reviewed by Brent Fulgham.

This enables :focus-visible pseudo-class for authors.

It also changes :focus-visible behavior in the user agent stylesheet so that

-  (or any element with 'tabindex' attribute that is not focusable otherwise) will not show focus
  indicator when focused via click/tap/script.
-  element will not show focus indicator when focused via click/tap/script.

Both still show focus indicator when focused via keyboard (tab) navigation.

* Scripts/Preferences/WebPreferencesExperimental.yaml:

Modified Paths

trunk/Source/WTF/ChangeLog
trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml




Diff

Modified: trunk/Source/WTF/ChangeLog (286782 => 286783)

--- trunk/Source/WTF/ChangeLog	2021-12-09 17:10:03 UTC (rev 286782)
+++ trunk/Source/WTF/ChangeLog	2021-12-09 17:22:14 UTC (rev 286783)
@@ -1,3 +1,23 @@
+2021-12-09  Antti Koivisto  
+
+Enable :focus-visible pseudo-class by default
+https://bugs.webkit.org/show_bug.cgi?id=234019
+
+
+Reviewed by Brent Fulgham.
+
+This enables :focus-visible pseudo-class for authors.
+
+It also changes :focus-visible behavior in the user agent stylesheet so that
+
+-  (or any element with 'tabindex' attribute that is not focusable otherwise) will not show focus
+  indicator when focused via click/tap/script.
+-  element will not show focus indicator when focused via click/tap/script.
+
+Both still show focus indicator when focused via keyboard (tab) navigation.
+
+* Scripts/Preferences/WebPreferencesExperimental.yaml:
+
 2021-12-09  Myles C. Maxfield   and Don Olmstead  
 
 Move TextCodec files from WebCore/platform/text to WebCore/PAL/text


Modified: trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml (286782 => 286783)

--- trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml	2021-12-09 17:10:03 UTC (rev 286782)
+++ trunk/Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml	2021-12-09 17:22:14 UTC (rev 286783)
@@ -535,11 +535,11 @@
   humanReadableDescription: "Enable the focus-indicated pseudo-class :focus-visible"
   defaultValue:
 WebKitLegacy:
-  default: false
+  default: true
 WebKit:
-  default: false
+  default: true
 WebCore:
-  default: false
+  default: true
 
 # FIXME: This is on by default in WebKit2. Perhaps we should consider turning it on for WebKitLegacy as well.
 GenericCueAPIEnabled:






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


[webkit-changes] [286782] trunk/Source/WebCore

2021-12-09 Thread zalan
Title: [286782] trunk/Source/WebCore








Revision 286782
Author za...@apple.com
Date 2021-12-09 09:10:03 -0800 (Thu, 09 Dec 2021)


Log Message
[LFC][IFC] Make collectInkOverflowForInlineBoxes propagate ink overflow using the display box list
https://bugs.webkit.org/show_bug.cgi?id=233950

Reviewed by Antti Koivisto.

This is in preparation for supporting ink overflow across bidi boundaries.

The current HashMap approach does not work when a layout box could
produce multiple inline box type of display boxes on the same line (at bidi boundaries).
Instead let's propagate ink overflow by traversing the display box list starting
at the end and bubble up the inflated ink overflow rect to the parent inline boxes.

* layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp:
(WebCore::Layout::InlineDisplayContentBuilder::build):
(WebCore::Layout::computeBoxShadowInkOverflow):
(WebCore::Layout::InlineDisplayContentBuilder::appendAtomicInlineLevelDisplayBox):
(WebCore::Layout::InlineDisplayContentBuilder::appendInlineBoxDisplayBox):
(WebCore::Layout::InlineDisplayContentBuilder::appendSpanningInlineBoxDisplayBox):
(WebCore::Layout::InlineDisplayContentBuilder::collectInkOverflowForInlineBoxes):
(WebCore::Layout::addBoxShadowInkOverflow): Deleted.
* layout/formattingContexts/inline/InlineDisplayContentBuilder.h:

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp
trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.h
trunk/Source/WebCore/layout/formattingContexts/inline/InlineRect.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (286781 => 286782)

--- trunk/Source/WebCore/ChangeLog	2021-12-09 16:39:00 UTC (rev 286781)
+++ trunk/Source/WebCore/ChangeLog	2021-12-09 17:10:03 UTC (rev 286782)
@@ -1,3 +1,27 @@
+2021-12-09  Alan Bujtas  
+
+[LFC][IFC] Make collectInkOverflowForInlineBoxes propagate ink overflow using the display box list
+https://bugs.webkit.org/show_bug.cgi?id=233950
+
+Reviewed by Antti Koivisto.
+
+This is in preparation for supporting ink overflow across bidi boundaries.
+
+The current HashMap approach does not work when a layout box could
+produce multiple inline box type of display boxes on the same line (at bidi boundaries).
+Instead let's propagate ink overflow by traversing the display box list starting
+at the end and bubble up the inflated ink overflow rect to the parent inline boxes.
+
+* layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp:
+(WebCore::Layout::InlineDisplayContentBuilder::build):
+(WebCore::Layout::computeBoxShadowInkOverflow):
+(WebCore::Layout::InlineDisplayContentBuilder::appendAtomicInlineLevelDisplayBox):
+(WebCore::Layout::InlineDisplayContentBuilder::appendInlineBoxDisplayBox):
+(WebCore::Layout::InlineDisplayContentBuilder::appendSpanningInlineBoxDisplayBox):
+(WebCore::Layout::InlineDisplayContentBuilder::collectInkOverflowForInlineBoxes):
+(WebCore::Layout::addBoxShadowInkOverflow): Deleted.
+* layout/formattingContexts/inline/InlineDisplayContentBuilder.h:
+
 2021-12-09  Tyler Wilcock  
 
 AX: Use RefPtr instead of raw AXCoreObject* pointers in Accessibility::findMatchingObjects and downstream functions


Modified: trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp (286781 => 286782)

--- trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp	2021-12-09 16:39:00 UTC (rev 286781)
+++ trunk/Source/WebCore/layout/formattingContexts/inline/InlineDisplayContentBuilder.cpp	2021-12-09 17:10:03 UTC (rev 286782)
@@ -74,11 +74,11 @@
 else
 processNonBidiContent(lineContent, lineBox, lineBoxLogicalRect.topLeft(), boxes);
 processOverflownRunsForEllipsis(boxes, lineBoxLogicalRect.right());
-collectInkOverflowForInlineBoxes(lineBox, boxes);
+collectInkOverflowForInlineBoxes(boxes);
 return boxes;
 }
 
-static inline void addBoxShadowInkOverflow(const RenderStyle& style, InlineRect& inkOverflow)
+static inline bool computeBoxShadowInkOverflow(const RenderStyle& style, InlineRect& inkOverflow)
 {
 auto topBoxShadow = LayoutUnit { };
 auto bottomBoxShadow = LayoutUnit { };
@@ -87,7 +87,10 @@
 auto leftBoxShadow = LayoutUnit { };
 auto rightBoxShadow = LayoutUnit { };
 style.getBoxShadowInlineDirectionExtent(leftBoxShadow, rightBoxShadow);
+if (!topBoxShadow && !bottomBoxShadow && !leftBoxShadow && !rightBoxShadow)
+return false;
 inkOverflow.inflate(InlineLayoutUnit { topBoxShadow }, InlineLayoutUnit { rightBoxShadow }, InlineLayoutUnit { bottomBoxShadow }, InlineLayoutUnit { leftBoxShadow });
+return true;
 }
 
 void InlineDisplayContentBuilder::appendTextDisplayBox(const Line::Run& lineRun, const InlineRect& textRunRect, DisplayBoxes& boxes)
@@ -168,34 +171,24 @@
 

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

2021-12-09 Thread cdumez
Title: [286781] trunk/Source/WebKit








Revision 286781
Author cdu...@apple.com
Date 2021-12-09 08:39:00 -0800 (Thu, 09 Dec 2021)


Log Message
Unreviewed fix after r286778 to address WebContent crashes on launch

* WebProcess/com.apple.WebProcess.sb.in:

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in




Diff

Modified: trunk/Source/WebKit/ChangeLog (286780 => 286781)

--- trunk/Source/WebKit/ChangeLog	2021-12-09 15:40:58 UTC (rev 286780)
+++ trunk/Source/WebKit/ChangeLog	2021-12-09 16:39:00 UTC (rev 286781)
@@ -1,3 +1,9 @@
+2021-12-09  Chris Dumez  
+
+Unreviewed fix after r286778 to address WebContent crashes on launch
+
+* WebProcess/com.apple.WebProcess.sb.in:
+
 2021-12-09  Per Arne Vollan  
 
 [macOS][WP] Block access to unused system calls


Modified: trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in (286780 => 286781)

--- trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in	2021-12-09 15:40:58 UTC (rev 286780)
+++ trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in	2021-12-09 16:39:00 UTC (rev 286781)
@@ -2207,6 +2207,7 @@
 (machtrap-number MSC_mach_msg2_trap)
 )
 )
+)
 #endif // HAVE(SANDBOX_MESSAGE_FILTERING)
 
 (if (equal? (param "ENABLE_SANDBOX_MESSAGE_FILTER") "YES")






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


[webkit-changes] [286780] trunk/Source/WebCore

2021-12-09 Thread tyler_w
Title: [286780] trunk/Source/WebCore








Revision 286780
Author tyle...@apple.com
Date 2021-12-09 07:40:58 -0800 (Thu, 09 Dec 2021)


Log Message
AX: Use RefPtr instead of raw AXCoreObject* pointers in Accessibility::findMatchingObjects and downstream functions
https://bugs.webkit.org/show_bug.cgi?id=233888

Reviewed by Chris Fleizach.

Move usages of raw AXCoreObject* pointers to RefPtr in
Accessibility::findMatchingObjects and downstream functions.

This fixes isolated tree mode only crashes for tests:
  - accessibility/mac/search-predicate-element-count.html
  - accessibility/mac/search-predicate-visible-button.html

These crashed because:

  1. The secondary thread starts a search and stores raw pointers on
 its stack.
  2. The main thread performs some operation to queue isolated tree
 changes.
  3. The search continues on the secondary thread, eventually calling
 AXIsolatedObject::children. This in turns calls AXIsolatedTree::pendingChanges.
  4. The object(s) which we held pointers to are destroyed.

* accessibility/AccessibilityObject.cpp:
(WebCore::appendAccessibilityObject):
(WebCore::Accessibility::isRadioButtonInDifferentAdhocGroup):
(WebCore::Accessibility::isAccessibilityObjectSearchMatchAtIndex):
(WebCore::Accessibility::isAccessibilityObjectSearchMatch):
(WebCore::Accessibility::isAccessibilityTextSearchMatch):
(WebCore::Accessibility::objectMatchesSearchCriteriaWithResultLimit):
(WebCore::Accessibility::appendChildrenToArray):
(WebCore::Accessibility::findMatchingObjects):
Use RefPtr instead of raw AXCoreObject* pointers.

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/accessibility/AccessibilityObject.cpp
trunk/Source/WebCore/accessibility/AccessibilityObjectInterface.h




Diff

Modified: trunk/Source/WebCore/ChangeLog (286779 => 286780)

--- trunk/Source/WebCore/ChangeLog	2021-12-09 15:33:03 UTC (rev 286779)
+++ trunk/Source/WebCore/ChangeLog	2021-12-09 15:40:58 UTC (rev 286780)
@@ -1,3 +1,38 @@
+2021-12-09  Tyler Wilcock  
+
+AX: Use RefPtr instead of raw AXCoreObject* pointers in Accessibility::findMatchingObjects and downstream functions
+https://bugs.webkit.org/show_bug.cgi?id=233888
+
+Reviewed by Chris Fleizach.
+
+Move usages of raw AXCoreObject* pointers to RefPtr in
+Accessibility::findMatchingObjects and downstream functions.
+
+This fixes isolated tree mode only crashes for tests:
+  - accessibility/mac/search-predicate-element-count.html
+  - accessibility/mac/search-predicate-visible-button.html
+
+These crashed because:
+
+  1. The secondary thread starts a search and stores raw pointers on
+ its stack.
+  2. The main thread performs some operation to queue isolated tree
+ changes.
+  3. The search continues on the secondary thread, eventually calling
+ AXIsolatedObject::children. This in turns calls AXIsolatedTree::pendingChanges.
+  4. The object(s) which we held pointers to are destroyed.
+
+* accessibility/AccessibilityObject.cpp:
+(WebCore::appendAccessibilityObject):
+(WebCore::Accessibility::isRadioButtonInDifferentAdhocGroup):
+(WebCore::Accessibility::isAccessibilityObjectSearchMatchAtIndex):
+(WebCore::Accessibility::isAccessibilityObjectSearchMatch):
+(WebCore::Accessibility::isAccessibilityTextSearchMatch):
+(WebCore::Accessibility::objectMatchesSearchCriteriaWithResultLimit):
+(WebCore::Accessibility::appendChildrenToArray):
+(WebCore::Accessibility::findMatchingObjects):
+Use RefPtr instead of raw AXCoreObject* pointers.
+
 2021-12-09  Manuel Rego Casasnovas  
 
 [selectors] Match :focus-visible on  elements


Modified: trunk/Source/WebCore/accessibility/AccessibilityObject.cpp (286779 => 286780)

--- trunk/Source/WebCore/accessibility/AccessibilityObject.cpp	2021-12-09 15:33:03 UTC (rev 286779)
+++ trunk/Source/WebCore/accessibility/AccessibilityObject.cpp	2021-12-09 15:40:58 UTC (rev 286780)
@@ -533,7 +533,7 @@
 }) != nullptr;
 }
 
-static void appendAccessibilityObject(AXCoreObject* object, AccessibilityObject::AccessibilityChildrenVector& results)
+static void appendAccessibilityObject(RefPtr object, AccessibilityObject::AccessibilityChildrenVector& results)
 {
 // Find the next descendant of this attachment object so search can continue through frames.
 if (object->isAttachment()) {
@@ -3907,7 +3907,7 @@
 
 // This function determines if the given `axObject` is a radio button part of a different ad-hoc radio group
 // than `referenceObject`, where ad-hoc radio group membership is determined by comparing `name` attributes.
-static bool isRadioButtonInDifferentAdhocGroup(AXCoreObject* axObject, AXCoreObject* referenceObject)
+static bool isRadioButtonInDifferentAdhocGroup(RefPtr axObject, AXCoreObject* referenceObject)
 {
 if (!axObject || !axObject->isRadioButton())
 

[webkit-changes] [286779] trunk/Source/ThirdParty/ANGLE

2021-12-09 Thread dino
Title: [286779] trunk/Source/ThirdParty/ANGLE








Revision 286779
Author d...@apple.com
Date 2021-12-09 07:33:03 -0800 (Thu, 09 Dec 2021)


Log Message
[ANGLE] Code generation happens on each build and produces SCM diffs
https://bugs.webkit.org/show_bug.cgi?id=234025

Reviewed by Kimmo Kinnunen.

Temporarily remove the build phase that generates the
mtl_default_shaders_src_autogen files because they are producing
diffs.

We either need to generate these manually, or fix the Xcode project
to generate them into Derived Sources so they don't appear in our
repository.

* ANGLE.xcodeproj/project.pbxproj:

Modified Paths

trunk/Source/ThirdParty/ANGLE/ANGLE.xcodeproj/project.pbxproj
trunk/Source/ThirdParty/ANGLE/ChangeLog




Diff

Modified: trunk/Source/ThirdParty/ANGLE/ANGLE.xcodeproj/project.pbxproj (286778 => 286779)

--- trunk/Source/ThirdParty/ANGLE/ANGLE.xcodeproj/project.pbxproj	2021-12-09 15:07:32 UTC (rev 286778)
+++ trunk/Source/ThirdParty/ANGLE/ANGLE.xcodeproj/project.pbxproj	2021-12-09 15:33:03 UTC (rev 286779)
@@ -3513,7 +3513,6 @@
 			isa = PBXNativeTarget;
 			buildConfigurationList = FFDA50CB269F845100AE11E2 /* Build configuration list for PBXNativeTarget "ANGLEMetalLib" */;
 			buildPhases = (
-FF194FF827443BDF006A97A3 /* ShellScript */,
 FFDA50C3269F845100AE11E2 /* Sources */,
 			);
 			buildRules = (
@@ -3586,23 +3585,6 @@
 			shellPath = /bin/sh;
 			shellScript = "if [ \"${XCODE_VERSION_ACTUAL}\" -ge \"1140\" -a \"${WK_USE_NEW_BUILD_SYSTEM}\" = \"YES\" ]; then\n# In this configuration, post-processing is performed at the same time as copying in the postprocess-header-rule script, so there's no need for this separate step.\nexit 0\nfi\n\nexec \"$SRCROOT/adjust-angle-include-paths.py\"\n";
 		};
-		FF194FF827443BDF006A97A3 /* ShellScript */ = {
-			isa = PBXShellScriptBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-			);
-			inputFileListPaths = (
-			);
-			inputPaths = (
-			);
-			outputFileListPaths = (
-			);
-			outputPaths = (
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-			shellPath = /bin/sh;
-			shellScript = "python scripts/run_code_generation.py -g \"Metal default shaders\"\nexit 0\n";
-		};
 		FFDA50D5269F895400AE11E2 /* Bake Metal Library to NSData */ = {
 			isa = PBXShellScriptBuildPhase;
 			buildActionMask = 2147483647;


Modified: trunk/Source/ThirdParty/ANGLE/ChangeLog (286778 => 286779)

--- trunk/Source/ThirdParty/ANGLE/ChangeLog	2021-12-09 15:07:32 UTC (rev 286778)
+++ trunk/Source/ThirdParty/ANGLE/ChangeLog	2021-12-09 15:33:03 UTC (rev 286779)
@@ -1,3 +1,20 @@
+2021-12-09  Dean Jackson  
+
+[ANGLE] Code generation happens on each build and produces SCM diffs
+https://bugs.webkit.org/show_bug.cgi?id=234025
+
+Reviewed by Kimmo Kinnunen.
+
+Temporarily remove the build phase that generates the
+mtl_default_shaders_src_autogen files because they are producing
+diffs.
+
+We either need to generate these manually, or fix the Xcode project
+to generate them into Derived Sources so they don't appear in our
+repository.
+
+* ANGLE.xcodeproj/project.pbxproj:
+
 2021-12-08  Kyle Piddington  
 
 Update ANGLE changes.diff with new roll.






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


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

2021-12-09 Thread pvollan
Title: [286778] trunk/Source/WebKit








Revision 286778
Author pvol...@apple.com
Date 2021-12-09 07:07:32 -0800 (Thu, 09 Dec 2021)


Log Message
[macOS][WP] Block access to unused system calls
https://bugs.webkit.org/show_bug.cgi?id=234003

Reviewed by Brent Fulgham.

Based on telemetry, block access to unused system calls in the WebContent process on macOS.

* WebProcess/com.apple.WebProcess.sb.in:

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in




Diff

Modified: trunk/Source/WebKit/ChangeLog (286777 => 286778)

--- trunk/Source/WebKit/ChangeLog	2021-12-09 14:46:27 UTC (rev 286777)
+++ trunk/Source/WebKit/ChangeLog	2021-12-09 15:07:32 UTC (rev 286778)
@@ -1,3 +1,14 @@
+2021-12-09  Per Arne Vollan  
+
+[macOS][WP] Block access to unused system calls
+https://bugs.webkit.org/show_bug.cgi?id=234003
+
+Reviewed by Brent Fulgham.
+
+Based on telemetry, block access to unused system calls in the WebContent process on macOS.
+
+* WebProcess/com.apple.WebProcess.sb.in:
+
 2021-12-09  Commit Queue  
 
 Unreviewed, reverting r286764.


Modified: trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in (286777 => 286778)

--- trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in	2021-12-09 14:46:27 UTC (rev 286777)
+++ trunk/Source/WebKit/WebProcess/com.apple.WebProcess.sb.in	2021-12-09 15:07:32 UTC (rev 286778)
@@ -1896,6 +1896,8 @@
 (syscall-number
 SYS___disable_threadsignal
 SYS___mac_syscall
+SYS___pthread_sigmask
+SYS___semwait_signal
 SYS_access
 SYS_bsdthread_create
 SYS_bsdthread_ctl
@@ -1906,6 +1908,7 @@
 SYS_csops_audittoken
 SYS_csrctl
 SYS_exit
+SYS_faccessat ;; 
 SYS_fcntl
 SYS_fcntl_nocancel
 SYS_fgetxattr
@@ -1938,6 +1941,8 @@
 SYS_kdebug_trace_string ;; Needed for performance sampling, see .
 SYS_kevent_id
 SYS_kevent_qos
+SYS_kqueue_workloop_ctl ;; 
+SYS_listxattr
 SYS_lseek
 SYS_lstat64
 SYS_madvise
@@ -1959,16 +1964,23 @@
 SYS_psynch_cvwait
 SYS_psynch_mutexdrop
 SYS_psynch_mutexwait
+SYS_psynch_rw_unlock
+SYS_psynch_rw_wrlock
 SYS_read
 SYS_read_nocancel
 SYS_readlink
 SYS_rename
+SYS_sendto
+SYS_sigprocmask
 SYS_stat64
 SYS_statfs64
+SYS_socket
 SYS_sysctlbyname
 SYS_thread_selfid
 SYS_ulock_wait
 SYS_ulock_wake
+SYS_umask
+SYS_work_interval_ctl
 SYS_workq_kernreturn
 SYS_write_nocancel
 SYS_writev))
@@ -1975,19 +1987,7 @@
 
 (define (syscall-unix-intel)
 (syscall-number
-SYS___pthread_sigmask
-SYS___semwait_signal
-SYS_faccessat ;; 
-SYS_kqueue_workloop_ctl ;; 
-SYS_listxattr
-SYS_psynch_rw_unlock
-SYS_psynch_rw_wrlock
-SYS_sendto
-SYS_sigaltstack
-SYS_sigprocmask
-SYS_socket
-SYS_umask
-SYS_work_interval_ctl))
+SYS_sigaltstack))
 
 (define (syscall-unix-apple-silicon)
 (syscall-number
@@ -1994,79 +1994,30 @@
 SYS_guarded_open_dprotected_np ;; 
 SYS_mremap_encrypted))
 
-(define (syscalls-possibly-unused)
+(define (syscalls-rarely-used)
 (syscall-number
 SYS___pthread_kill
-SYS___pthread_markcancel
 SYS___semwait_signal_nocancel
-SYS_abort_with_payload
 SYS_change_fdguard_np
 SYS_chmod
-SYS_chmod_extended
 SYS_connect
-SYS_connect_nocancel
-SYS_connectx
-SYS_dup
 SYS_fchmod
-SYS_fgetattrlist ;; 
-SYS_fileport_makeport
-SYS_fstat64_extended ;; 
 SYS_fsync
 SYS_getegid
-SYS_getpeername
 SYS_getpriority ;; rdar://81727094. Required for CoreAudio AudioOutputUnitStart call. Remove when GPU process is enabled by default.
-SYS_getsockopt
-SYS_gettid ;; Needed for base system, see 
 SYS_guarded_close_np
 SYS_guarded_open_np
 SYS_guarded_pwrite_np
-SYS_guarded_write_np
 SYS_kdebug_typefilter
-SYS_kevent
-SYS_kqueue ;; 
-SYS_lstat64_extended
-SYS_lstat_extended
-SYS_memorystatus_control ;; Needed for memory measurement infrastructure, see 
-SYS_mkdirat
 SYS_mlock
 SYS_munlock
 SYS_necp_client_action
 SYS_necp_open
-SYS_open_dprotected_np ;; 
 SYS_openat_nocancel
-SYS_pipe
 SYS_proc_rlimit_control
-SYS_process_policy
-SYS_psynch_rw_rdlock ;; 
-SYS_pwrite
-SYS_quotactl ;; 
-SYS_recvfrom
-SYS_recvfrom_nocancel
-SYS_rmdir
-SYS_select
-SYS_select_nocancel
-SYS_sem_post
-SYS_sem_wait
-

[webkit-changes] [286777] trunk

2021-12-09 Thread commit-queue
Title: [286777] trunk








Revision 286777
Author commit-qu...@webkit.org
Date 2021-12-09 06:46:27 -0800 (Thu, 09 Dec 2021)


Log Message
Unreviewed, reverting r286764.
https://bugs.webkit.org/show_bug.cgi?id=234081

broke the build

Reverted changeset:

"Add ability to inject messages into webpushd"
https://bugs.webkit.org/show_bug.cgi?id=233988
https://commits.webkit.org/r286764

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/Configurations/webpushtool.xcconfig
trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp
trunk/Source/WebKit/NetworkProcess/NetworkProcess.h
trunk/Source/WebKit/NetworkProcess/NetworkProcess.messages.in
trunk/Source/WebKit/NetworkProcess/Notifications/NetworkNotificationManager.cpp
trunk/Source/WebKit/NetworkProcess/Notifications/NetworkNotificationManager.h
trunk/Source/WebKit/Resources/webpushtool.entitlements
trunk/Source/WebKit/Shared/WebPushDaemonConstants.h
trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebsiteDataStore.mm
trunk/Source/WebKit/UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h
trunk/Source/WebKit/UIProcess/Network/NetworkProcessProxy.cpp
trunk/Source/WebKit/UIProcess/Network/NetworkProcessProxy.h
trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj
trunk/Source/WebKit/webpushd/PushClientConnection.h
trunk/Source/WebKit/webpushd/PushClientConnection.mm
trunk/Source/WebKit/webpushd/WebPushDaemon.h
trunk/Source/WebKit/webpushd/WebPushDaemon.mm
trunk/Source/WebKit/webpushd/webpushtool/WebPushToolConnection.h
trunk/Source/WebKit/webpushd/webpushtool/WebPushToolConnection.mm
trunk/Source/WebKit/webpushd/webpushtool/WebPushToolMain.mm
trunk/Tools/ChangeLog
trunk/Tools/TestWebKitAPI/Configurations/TestWebKitAPI-iOS.entitlements
trunk/Tools/TestWebKitAPI/Configurations/TestWebKitAPI-macOS-internal.entitlements
trunk/Tools/TestWebKitAPI/Configurations/TestWebKitAPI-macOS.entitlements
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/PushAPI.mm
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm
trunk/Tools/TestWebKitAPI/cocoa/TestWKWebView.h


Removed Paths

trunk/Source/WebKit/Shared/Cocoa/WebPushMessageCocoa.mm
trunk/Source/WebKit/Shared/PushMessageForTesting.h
trunk/Source/WebKit/Shared/WebPushMessage.h




Diff

Modified: trunk/Source/WebKit/ChangeLog (286776 => 286777)

--- trunk/Source/WebKit/ChangeLog	2021-12-09 14:03:45 UTC (rev 286776)
+++ trunk/Source/WebKit/ChangeLog	2021-12-09 14:46:27 UTC (rev 286777)
@@ -1,3 +1,16 @@
+2021-12-09  Commit Queue  
+
+Unreviewed, reverting r286764.
+https://bugs.webkit.org/show_bug.cgi?id=234081
+
+broke the build
+
+Reverted changeset:
+
+"Add ability to inject messages into webpushd"
+https://bugs.webkit.org/show_bug.cgi?id=233988
+https://commits.webkit.org/r286764
+
 2021-12-09  Youenn Fablet  
 
 Copy ServiceWorkerNavigationPreloader error when failing its ServiceWorkerFetchTask


Modified: trunk/Source/WebKit/Configurations/webpushtool.xcconfig (286776 => 286777)

--- trunk/Source/WebKit/Configurations/webpushtool.xcconfig	2021-12-09 14:03:45 UTC (rev 286776)
+++ trunk/Source/WebKit/Configurations/webpushtool.xcconfig	2021-12-09 14:46:27 UTC (rev 286777)
@@ -29,7 +29,7 @@
 EXCLUDED_SOURCE_FILE_NAMES[sdk=appletv*] = *;
 EXCLUDED_SOURCE_FILE_NAMES[sdk=watch*] = *;
 
-OTHER_LDFLAGS = -framework WebKit -framework _javascript_Core
+OTHER_LDFLAGS = -l WTF -framework Foundation -framework CoreFoundation;
 LIBRARY_SEARCH_PATHS = $(BUILT_PRODUCTS_DIR);
 
 CODE_SIGN_ENTITLEMENTS = Resources/webpushtool.entitlements;


Modified: trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp (286776 => 286777)

--- trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp	2021-12-09 14:03:45 UTC (rev 286776)
+++ trunk/Source/WebKit/NetworkProcess/NetworkProcess.cpp	2021-12-09 14:46:27 UTC (rev 286777)
@@ -58,7 +58,6 @@
 #include "WebCookieManager.h"
 #include "WebPageProxyMessages.h"
 #include "WebProcessPoolMessages.h"
-#include "WebPushMessage.h"
 #include "WebResourceLoadStatisticsStore.h"
 #include "WebSWOriginStore.h"
 #include "WebSWServerConnection.h"
@@ -2556,21 +2555,13 @@
 SandboxExtension::consumePermanently(handle);
 }
 
-void NetworkProcess::getPendingPushMessages(PAL::SessionID sessionID, CompletionHandler&)>&& callback)
+void NetworkProcess::processPushMessage(PAL::SessionID sessionID, const std::optional& ipcData, URL&& registrationURL, CompletionHandler&& callback)
 {
-#if ENABLE(BUILT_IN_NOTIFICATIONS)
-if (auto* session = networkSession(sessionID)) {
-session->notificationManager().getPendingPushMessages(WTFMove(callback));
-return;
-}
-#endif
-callback({ });
+std::optional> data;
+if (ipcData)
+data = "" { ipcData->data(), ipcData->size() };
+swServerForSession(sessionID).processPushMessage(WTFMove(data), WTFMove(registrationURL), WTFMove(callback));
 }
-
-void NetworkProcess::processPushMessage(PAL::SessionID sessionID, WebPushMessage&& pushMessage, CompletionHandler&& callback)
-{
-

[webkit-changes] [286776] trunk

2021-12-09 Thread rego
Title: [286776] trunk








Revision 286776
Author r...@igalia.com
Date 2021-12-09 06:03:45 -0800 (Thu, 09 Dec 2021)


Log Message
[selectors] Match :focus-visible on  elements
https://bugs.webkit.org/show_bug.cgi?id=233924

Reviewed by Antti Koivisto.

Source/WebCore:

Test: fast/forms/select-listbox-focusring.html

* dom/Element.cpp:
(WebCore::shouldAlwaysHaveFocusVisibleWhenFocused):

LayoutTests:

* fast/forms/select-listbox-focusring-expected.html: Added.
* fast/forms/select-listbox-focusring.html: Added.

Modified Paths

trunk/LayoutTests/ChangeLog
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/dom/Element.cpp


Added Paths

trunk/LayoutTests/fast/forms/select-listbox-focusring-expected.html
trunk/LayoutTests/fast/forms/select-listbox-focusring.html




Diff

Modified: trunk/LayoutTests/ChangeLog (286775 => 286776)

--- trunk/LayoutTests/ChangeLog	2021-12-09 13:14:30 UTC (rev 286775)
+++ trunk/LayoutTests/ChangeLog	2021-12-09 14:03:45 UTC (rev 286776)
@@ -1,3 +1,13 @@
+2021-12-09  Manuel Rego Casasnovas  
+
+[selectors] Match :focus-visible on  elements
+https://bugs.webkit.org/show_bug.cgi?id=233924
+
+Reviewed by Antti Koivisto.
+
+* fast/forms/select-listbox-focusring-expected.html: Added.
+* fast/forms/select-listbox-focusring.html: Added.
+
 2021-12-08  Patrick Griffis  
 
 CSP: Skip whitespace at beginning of policy header


Added: trunk/LayoutTests/fast/forms/select-listbox-focusring-expected.html (0 => 286776)

--- trunk/LayoutTests/fast/forms/select-listbox-focusring-expected.html	(rev 0)
+++ trunk/LayoutTests/fast/forms/select-listbox-focusring-expected.html	2021-12-09 14:03:45 UTC (rev 286776)
@@ -0,0 +1,22 @@
+
+This test checks that focusing a SELECT element via mouse click, after focusing a previous element via mouse click, the SELECT element shows a focus ring.
+
+
+
+a
+b
+
+
+
+function clickElement(element) {
+if (window.eventSender) {
+eventSender.mouseMoveTo(element.offsetLeft + 5, element.offsetTop + 5);
+eventSender.mouseDown();
+eventSender.mouseUp();
+else {
+instructions.innerHTML = "Click on the element " + element.tagName;
+}
+}
+
+clickElement(select);
+


Added: trunk/LayoutTests/fast/forms/select-listbox-focusring.html (0 => 286776)

--- trunk/LayoutTests/fast/forms/select-listbox-focusring.html	(rev 0)
+++ trunk/LayoutTests/fast/forms/select-listbox-focusring.html	2021-12-09 14:03:45 UTC (rev 286776)
@@ -0,0 +1,25 @@
+
+This test checks that focusing a SELECT element via mouse click, after focusing a previous element via mouse click, the SELECT element shows a focus ring.
+
+
+
+a
+b
+
+
+
+function clickElement(element) {
+if (window.eventSender) {
+eventSender.mouseMoveTo(element.offsetLeft + 5, element.offsetTop + 5);
+eventSender.mouseDown();
+eventSender.mouseUp();
+else {
+instructions.innerHTML = "Click on the element " + element.tagName;
+}
+}
+
+target.addEventListener("focus", () => {
+clickElement(select);
+});
+clickElement(target);
+


Modified: trunk/Source/WebCore/ChangeLog (286775 => 286776)

--- trunk/Source/WebCore/ChangeLog	2021-12-09 13:14:30 UTC (rev 286775)
+++ trunk/Source/WebCore/ChangeLog	2021-12-09 14:03:45 UTC (rev 286776)
@@ -1,3 +1,15 @@
+2021-12-09  Manuel Rego Casasnovas  
+
+[selectors] Match :focus-visible on  elements
+https://bugs.webkit.org/show_bug.cgi?id=233924
+
+Reviewed by Antti Koivisto.
+
+Test: fast/forms/select-listbox-focusring.html
+
+* dom/Element.cpp:
+(WebCore::shouldAlwaysHaveFocusVisibleWhenFocused):
+
 2021-12-09  Antti Koivisto  
 
 [selectors] Use :focus-visible in the user agent style sheet


Modified: trunk/Source/WebCore/dom/Element.cpp (286775 => 286776)

--- trunk/Source/WebCore/dom/Element.cpp	2021-12-09 13:14:30 UTC (rev 286775)
+++ trunk/Source/WebCore/dom/Element.cpp	2021-12-09 14:03:45 UTC (rev 286776)
@@ -807,7 +807,7 @@
 
 static bool shouldAlwaysHaveFocusVisibleWhenFocused(const Element& element)
 {
-return element.isTextField() || element.isContentEditable();
+return element.isTextField() || element.isContentEditable() || is(element);
 }
 
 void Element::setFocus(bool flag, FocusVisibility visibility)






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


[webkit-changes] [286775] trunk

2021-12-09 Thread antti
Title: [286775] trunk








Revision 286775
Author an...@apple.com
Date 2021-12-09 05:14:30 -0800 (Thu, 09 Dec 2021)


Log Message
[selectors] Use :focus-visible in the user agent style sheet
https://bugs.webkit.org/show_bug.cgi?id=221925


Reviewed by Manuel Rego Casasnovas.

LayoutTests/imported/w3c:

* web-platform-tests/css/selectors/focus-visible-018-2-expected.txt:
* web-platform-tests/css/selectors/focus-visible-018-expected.txt:

Source/WebCore:

Replace :-internal-direct-focus with :focus-visible for the default focus outline styling in the user agent style sheet.

When enabled, this will change focus drawing behavior in two cases:

-  (or any element with 'tabindex' attribute that is not focusable otherwise) will not show focus
  indicator when focused via click/tap/script.
-  will not show focus indicator when focused via click/tap/script.

Both still show focus indicator when focused via keyboard (tab) navigation.

With the feature disabled UA sheet :focus-visible behaves like :-internal-direct-focus.

This patch does not enable the feature yet.

* css/SelectorCheckerTestFunctions.h:
(WebCore::matchesFocusVisiblePseudoClass):

Check the feature flag. If it is not enabled :focus-visible matches like :-internal-direct-focus.

* css/html.css:
(:focus-visible):
(:-internal-direct-focus): Deleted.

Replace :-internal-direct-focus.

* css/parser/CSSParserContext.cpp:
(WebCore::CSSParserContext::CSSParserContext):

Always allow :focus-visible when parsing UA sheet.

Modified Paths

trunk/LayoutTests/imported/w3c/ChangeLog
trunk/LayoutTests/imported/w3c/web-platform-tests/css/selectors/focus-visible-018-2-expected.txt
trunk/LayoutTests/imported/w3c/web-platform-tests/css/selectors/focus-visible-018-expected.txt
trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/css/SelectorCheckerTestFunctions.h
trunk/Source/WebCore/css/html.css
trunk/Source/WebCore/css/parser/CSSParserContext.cpp




Diff

Modified: trunk/LayoutTests/imported/w3c/ChangeLog (286774 => 286775)

--- trunk/LayoutTests/imported/w3c/ChangeLog	2021-12-09 11:42:39 UTC (rev 286774)
+++ trunk/LayoutTests/imported/w3c/ChangeLog	2021-12-09 13:14:30 UTC (rev 286775)
@@ -1,3 +1,14 @@
+2021-12-09  Antti Koivisto  
+
+[selectors] Use :focus-visible in the user agent style sheet
+https://bugs.webkit.org/show_bug.cgi?id=221925
+
+
+Reviewed by Manuel Rego Casasnovas.
+
+* web-platform-tests/css/selectors/focus-visible-018-2-expected.txt:
+* web-platform-tests/css/selectors/focus-visible-018-expected.txt:
+
 2021-12-08  Patrick Griffis  
 
 CSP: Skip whitespace at beginning of policy header


Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/selectors/focus-visible-018-2-expected.txt (286774 => 286775)

--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/selectors/focus-visible-018-2-expected.txt	2021-12-09 11:42:39 UTC (rev 286774)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/selectors/focus-visible-018-2-expected.txt	2021-12-09 13:14:30 UTC (rev 286775)
@@ -33,41 +33,41 @@
 u
 
 PASS ":focus-visible" should be a valid selector
-FAIL Mouse focus does not show a focus ring by default in element ABBR assert_equals: outline-style for ABBR should be none expected "none" but got "auto"
-FAIL Mouse focus does not show a focus ring by default in element ADDRESS assert_equals: outline-style for ADDRESS should be none expected "none" but got "auto"
-FAIL Mouse focus does not show a focus ring by default in element BDI assert_equals: outline-style for BDI should be none expected "none" but got "auto"
-FAIL Mouse focus does not show a focus ring by default in element BLOCKQUOTE assert_equals: outline-style for BLOCKQUOTE should be none expected "none" but got "auto"
-FAIL Mouse focus does not show a focus ring by default in element CODE assert_equals: outline-style for CODE should be none expected "none" but got "auto"
-FAIL Mouse focus does not show a focus ring by default in element DD assert_equals: outline-style for DD should be none expected "none" but got "auto"
-FAIL Mouse focus does not show a focus ring by default in element SUMMARY assert_equals: outline-style for SUMMARY should be none expected "none" but got "auto"
+PASS Mouse focus does not show a focus ring by default in element ABBR
+PASS Mouse focus does not show a focus ring by default in element ADDRESS
+PASS Mouse focus does not show a focus ring by default in element BDI
+PASS Mouse focus does not show a focus ring by default in element BLOCKQUOTE
+PASS Mouse focus does not show a focus ring by default in element CODE
+PASS Mouse focus does not show a focus ring by default in element DD
+PASS Mouse focus does not show a focus ring by default in element SUMMARY
 PASS Mouse focus does not show a focus ring by default in element DETAILS
-FAIL Mouse focus does not show a focus ring by default in element DIV assert_equals: outline-style for DIV should be none expected "none" but got "auto"
-FAIL Mouse focus 

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

2021-12-09 Thread youenn
Title: [286774] trunk/Source/WebKit








Revision 286774
Author you...@apple.com
Date 2021-12-09 03:42:39 -0800 (Thu, 09 Dec 2021)


Log Message
Copy ServiceWorkerNavigationPreloader error when failing its ServiceWorkerFetchTask
https://bugs.webkit.org/show_bug.cgi?id=234002

Reviewed by Chris Dumez.

Covered by existing tests.

* NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp:
When failing a ServiceWorkerNavigationPreloader, we might delete it, so it is not safe to manage a reference to its error.
Instead copy the error.

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp




Diff

Modified: trunk/Source/WebKit/ChangeLog (286773 => 286774)

--- trunk/Source/WebKit/ChangeLog	2021-12-09 11:23:27 UTC (rev 286773)
+++ trunk/Source/WebKit/ChangeLog	2021-12-09 11:42:39 UTC (rev 286774)
@@ -1,3 +1,16 @@
+2021-12-09  Youenn Fablet  
+
+Copy ServiceWorkerNavigationPreloader error when failing its ServiceWorkerFetchTask
+https://bugs.webkit.org/show_bug.cgi?id=234002
+
+Reviewed by Chris Dumez.
+
+Covered by existing tests.
+
+* NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp:
+When failing a ServiceWorkerNavigationPreloader, we might delete it, so it is not safe to manage a reference to its error.
+Instead copy the error.
+
 2021-12-09  Myles C. Maxfield   and Don Olmstead  
 
 Move TextCodec files from WebCore/platform/text to WebCore/PAL/text


Modified: trunk/Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp (286773 => 286774)

--- trunk/Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp	2021-12-09 11:23:27 UTC (rev 286773)
+++ trunk/Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp	2021-12-09 11:42:39 UTC (rev 286774)
@@ -364,7 +364,8 @@
 return;
 
 if (!m_preloader->error().isNull()) {
-didFail(m_preloader->error());
+// Let's copy the error as calling didFail might destroy m_preloader.
+didFail(ResourceError { m_preloader->error() });
 return;
 }
 
@@ -388,7 +389,8 @@
 if (!weakThis)
 return;
 if (!m_preloader->error().isNull()) {
-didFail(m_preloader->error());
+// Let's copy the error as calling didFail might destroy m_preloader.
+didFail(ResourceError { m_preloader->error() });
 return;
 }
 if (!chunk) {






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


[webkit-changes] [286773] trunk/Source/bmalloc

2021-12-09 Thread commit-queue
Title: [286773] trunk/Source/bmalloc








Revision 286773
Author commit-qu...@webkit.org
Date 2021-12-09 03:23:27 -0800 (Thu, 09 Dec 2021)


Log Message
[libpas] Fix up missing header includes and build guards in unit tests
https://bugs.webkit.org/show_bug.cgi?id=234007

Patch by Zan Dobersek  on 2021-12-09
Reviewed by Yusuke Suzuki.

Add missing header inclusions in different libpas unit test sources
to avoid build problems.

In IsoHeapChaosTests.cpp, Mach-specific thread-related header inclusion
and usage is put inside PAS_OS(DARWIN) build guards. On Linux, the
enumerator sub-tests that utilize this thread suspension and resuming
functionality are disabled.

* libpas/src/test/ExpendableMemoryTests.cpp:
* libpas/src/test/IsoHeapChaosTests.cpp:
(std::testAllocationChaos):
* libpas/src/test/IsoHeapPageSharingTests.cpp:
* libpas/src/test/IsoHeapPartialAndBaselineTests.cpp:
* libpas/src/test/RaceTests.cpp:
* libpas/src/test/TestHarness.cpp:
* libpas/src/test/ThingyAndUtilityHeapAllocationTests.cpp:

Modified Paths

trunk/Source/bmalloc/ChangeLog
trunk/Source/bmalloc/libpas/src/test/ExpendableMemoryTests.cpp
trunk/Source/bmalloc/libpas/src/test/IsoHeapChaosTests.cpp
trunk/Source/bmalloc/libpas/src/test/IsoHeapPageSharingTests.cpp
trunk/Source/bmalloc/libpas/src/test/IsoHeapPartialAndBaselineTests.cpp
trunk/Source/bmalloc/libpas/src/test/RaceTests.cpp
trunk/Source/bmalloc/libpas/src/test/TestHarness.cpp
trunk/Source/bmalloc/libpas/src/test/ThingyAndUtilityHeapAllocationTests.cpp




Diff

Modified: trunk/Source/bmalloc/ChangeLog (286772 => 286773)

--- trunk/Source/bmalloc/ChangeLog	2021-12-09 10:34:36 UTC (rev 286772)
+++ trunk/Source/bmalloc/ChangeLog	2021-12-09 11:23:27 UTC (rev 286773)
@@ -1,3 +1,27 @@
+2021-12-09  Zan Dobersek  
+
+[libpas] Fix up missing header includes and build guards in unit tests
+https://bugs.webkit.org/show_bug.cgi?id=234007
+
+Reviewed by Yusuke Suzuki.
+
+Add missing header inclusions in different libpas unit test sources
+to avoid build problems.
+
+In IsoHeapChaosTests.cpp, Mach-specific thread-related header inclusion
+and usage is put inside PAS_OS(DARWIN) build guards. On Linux, the
+enumerator sub-tests that utilize this thread suspension and resuming
+functionality are disabled.
+
+* libpas/src/test/ExpendableMemoryTests.cpp:
+* libpas/src/test/IsoHeapChaosTests.cpp:
+(std::testAllocationChaos):
+* libpas/src/test/IsoHeapPageSharingTests.cpp:
+* libpas/src/test/IsoHeapPartialAndBaselineTests.cpp:
+* libpas/src/test/RaceTests.cpp:
+* libpas/src/test/TestHarness.cpp:
+* libpas/src/test/ThingyAndUtilityHeapAllocationTests.cpp:
+
 2021-12-08  Zan Dobersek  
 
 [libpas] Guard Darwin-specific malloc zone usage in mbmalloc sources


Modified: trunk/Source/bmalloc/libpas/src/test/ExpendableMemoryTests.cpp (286772 => 286773)

--- trunk/Source/bmalloc/libpas/src/test/ExpendableMemoryTests.cpp	2021-12-09 10:34:36 UTC (rev 286772)
+++ trunk/Source/bmalloc/libpas/src/test/ExpendableMemoryTests.cpp	2021-12-09 11:23:27 UTC (rev 286773)
@@ -28,6 +28,8 @@
 #if PAS_ENABLE_BMALLOC
 
 #include "bmalloc_heap.h"
+#include 
+#include 
 #include "pas_compact_expendable_memory.h"
 #include "pas_large_expendable_memory.h"
 #include "pas_segregated_heap.h"


Modified: trunk/Source/bmalloc/libpas/src/test/IsoHeapChaosTests.cpp (286772 => 286773)

--- trunk/Source/bmalloc/libpas/src/test/IsoHeapChaosTests.cpp	2021-12-09 10:34:36 UTC (rev 286772)
+++ trunk/Source/bmalloc/libpas/src/test/IsoHeapChaosTests.cpp	2021-12-09 11:23:27 UTC (rev 286773)
@@ -40,10 +40,10 @@
 #include "iso_test_heap_config.h"
 #include "jit_heap.h"
 #include "jit_heap_config.h"
-#include 
 #include 
 #include "minalign32_heap.h"
 #include "minalign32_heap_config.h"
+#include 
 #include "pagesize64k_heap.h"
 #include "pagesize64k_heap_config.h"
 #include "pas_all_heaps.h"
@@ -63,6 +63,10 @@
 #include 
 #include 
 
+#if PAS_OS(DARWIN)
+#include 
+#endif
+
 using namespace std;
 
 namespace {
@@ -610,10 +614,12 @@
 }
 }
 
+#if PAS_OS(DARWIN)
 for (pthread_t thread : runningThreads) {
 kern_return_t result = thread_suspend(pthread_mach_thread_np(thread));
 PAS_ASSERT(result == KERN_SUCCESS);
 }
+#endif
 
 pageRanges.clear();
 readerCache.clear();
@@ -806,10 +812,12 @@
 if (!(numEnumerations % 50))
 cout << "Did " << numEnumerations << " enumerations.\n";
 
+#if PAS_OS(DARWIN)
 for (pthread_t thread : runningThreads) {
 kern_return_t result = thread_resume(pthread_mach_thread_np(thread));
 PAS_ASSERT(result == KERN_SUCCESS);
 }
+#endif
 
 lock.unlock();
 };
@@ -927,6 +935,12 @@
 
 void addTheTests(unsigned multiplier, bool testEnumerator)
 {
+#if 

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

2021-12-09 Thread carlosgc
Title: [286771] trunk/Source/WebKit








Revision 286771
Author carlo...@webkit.org
Date 2021-12-09 02:33:16 -0800 (Thu, 09 Dec 2021)


Log Message
Unreviewed. Fix GTK build.

WebKitBuild/Release/WTF/Headers/wtf/persistence/PersistentCoder.h:40:11: error: ‘const class WTF::String’ has no member named ‘encode’
   40 | t.encode(encoder);
  | ~~^~

* NetworkProcess/storage/NetworkStorageManager.cpp: Include wtf/persistence/PersistentCoders.h

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/NetworkProcess/storage/NetworkStorageManager.cpp




Diff

Modified: trunk/Source/WebKit/ChangeLog (286770 => 286771)

--- trunk/Source/WebKit/ChangeLog	2021-12-09 10:17:26 UTC (rev 286770)
+++ trunk/Source/WebKit/ChangeLog	2021-12-09 10:33:16 UTC (rev 286771)
@@ -1,3 +1,14 @@
+2021-12-09  Carlos Garcia Campos  
+
+Unreviewed. Fix GTK build.
+
+WebKitBuild/Release/WTF/Headers/wtf/persistence/PersistentCoder.h:40:11: error: ‘const class WTF::String’ has no member named ‘encode’
+   40 | t.encode(encoder);
+  | ~~^~
+
+
+* NetworkProcess/storage/NetworkStorageManager.cpp: Include wtf/persistence/PersistentCoders.h
+
 2021-12-09  Myles C. Maxfield  
 
 [WebGPU] [MacCatalyst] Fix WebGPU Mac Catalyst build in Apple's internal build system


Modified: trunk/Source/WebKit/NetworkProcess/storage/NetworkStorageManager.cpp (286770 => 286771)

--- trunk/Source/WebKit/NetworkProcess/storage/NetworkStorageManager.cpp	2021-12-09 10:17:26 UTC (rev 286770)
+++ trunk/Source/WebKit/NetworkProcess/storage/NetworkStorageManager.cpp	2021-12-09 10:33:16 UTC (rev 286771)
@@ -34,8 +34,7 @@
 #include "WebsiteDataType.h"
 #include 
 #include 
-#include 
-#include 
+#include 
 #include 
 
 namespace WebKit {






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


[webkit-changes] [286770] trunk/Source

2021-12-09 Thread mmaxfield
Title: [286770] trunk/Source








Revision 286770
Author mmaxfi...@apple.com
Date 2021-12-09 02:17:26 -0800 (Thu, 09 Dec 2021)


Log Message
[WebGPU] [MacCatalyst] Fix WebGPU Mac Catalyst build in Apple's internal build system
https://bugs.webkit.org/show_bug.cgi?id=234072

Unreviewed.

Source/WebKit:

No new tests because there is no behavior change.

* Configurations/BaseTarget.xcconfig:

Source/WebKitLegacy/mac:

* Configurations/WebKitLegacy.xcconfig:

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/Configurations/BaseTarget.xcconfig
trunk/Source/WebKitLegacy/mac/ChangeLog
trunk/Source/WebKitLegacy/mac/Configurations/WebKitLegacy.xcconfig




Diff

Modified: trunk/Source/WebKit/ChangeLog (286769 => 286770)

--- trunk/Source/WebKit/ChangeLog	2021-12-09 08:47:07 UTC (rev 286769)
+++ trunk/Source/WebKit/ChangeLog	2021-12-09 10:17:26 UTC (rev 286770)
@@ -1,5 +1,16 @@
 2021-12-09  Myles C. Maxfield  
 
+[WebGPU] [MacCatalyst] Fix WebGPU Mac Catalyst build in Apple's internal build system
+https://bugs.webkit.org/show_bug.cgi?id=234072
+
+Unreviewed.
+
+No new tests because there is no behavior change.
+
+* Configurations/BaseTarget.xcconfig:
+
+2021-12-09  Myles C. Maxfield  
+
 [WebGPU] Fix WebGPU build in Apple's internal build system
 https://bugs.webkit.org/show_bug.cgi?id=234070
 


Modified: trunk/Source/WebKit/Configurations/BaseTarget.xcconfig (286769 => 286770)

--- trunk/Source/WebKit/Configurations/BaseTarget.xcconfig	2021-12-09 08:47:07 UTC (rev 286769)
+++ trunk/Source/WebKit/Configurations/BaseTarget.xcconfig	2021-12-09 10:17:26 UTC (rev 286770)
@@ -46,7 +46,7 @@
 GCC_PREPROCESSOR_DEFINITIONS = $(DEBUG_DEFINES) $(WK_ENABLE_EXPERIMENTAL_FEATURES) $(WK_CORE_PREDICTION_DEFINES) $(WK_FORMATREADERBUNDLE_CODESIGNING_DEFINES) $(inherited) FRAMEWORK_NAME=WebKit;
 WEBKITADDITIONS_HEADER_SEARCH_PATHS = $(BUILT_PRODUCTS_DIR)/usr/local/include/WebKitAdditions $(SDKROOT)/usr/local/include/WebKitAdditions;
 LIBWEBRTC_HEADER_SEARCH_PATHS = $(BUILT_PRODUCTS_DIR)/usr/local/include/webrtc $(SDKROOT)/usr/local/include/webrtc;
-WEBGPU_HEADER_SEARCH_PATHS = $(BUILT_PRODUCTS_DIR)/usr/local/include/pal/graphics/WebGPU $(SDKROOT)/usr/local/include/pal/graphics/WebGPU;
+WEBGPU_HEADER_SEARCH_PATHS = $(BUILT_PRODUCTS_DIR)/usr/local/include/pal/graphics/WebGPU $(SDKROOT)$(WK_ALTERNATE_FRAMEWORKS_DIR)/usr/local/include/pal/graphics/WebGPU;
 
 ALTERNATE_HEADER_SEARCH_PATHS = $(ALTERNATE_HEADER_SEARCH_PATHS_$(SDK_VARIANT));
 ALTERNATE_HEADER_SEARCH_PATHS_iosmac = $(BUILT_PRODUCTS_DIR)$(WK_ALTERNATE_FRAMEWORKS_DIR)/usr/local/include


Modified: trunk/Source/WebKitLegacy/mac/ChangeLog (286769 => 286770)

--- trunk/Source/WebKitLegacy/mac/ChangeLog	2021-12-09 08:47:07 UTC (rev 286769)
+++ trunk/Source/WebKitLegacy/mac/ChangeLog	2021-12-09 10:17:26 UTC (rev 286770)
@@ -1,5 +1,14 @@
 2021-12-09  Myles C. Maxfield  
 
+[WebGPU] [MacCatalyst] Fix WebGPU Mac Catalyst build in Apple's internal build system
+https://bugs.webkit.org/show_bug.cgi?id=234072
+
+Unreviewed.
+
+* Configurations/WebKitLegacy.xcconfig:
+
+2021-12-09  Myles C. Maxfield  
+
 [WebGPU] Fix WebGPU build in Apple's internal build system
 https://bugs.webkit.org/show_bug.cgi?id=234070
 


Modified: trunk/Source/WebKitLegacy/mac/Configurations/WebKitLegacy.xcconfig (286769 => 286770)

--- trunk/Source/WebKitLegacy/mac/Configurations/WebKitLegacy.xcconfig	2021-12-09 08:47:07 UTC (rev 286769)
+++ trunk/Source/WebKitLegacy/mac/Configurations/WebKitLegacy.xcconfig	2021-12-09 10:17:26 UTC (rev 286770)
@@ -57,7 +57,7 @@
 
 WEBKITADDITIONS_HEADER_SEARCH_PATHS = $(BUILT_PRODUCTS_DIR)/usr/local/include/WebKitAdditions $(SDKROOT)/usr/local/include/WebKitAdditions;
 LIBWEBRTC_HEADER_SEARCH_PATHS = $(BUILT_PRODUCTS_DIR)/usr/local/include/webrtc $(SDKROOT)/usr/local/include/webrtc;
-WEBGPU_HEADER_SEARCH_PATHS = $(BUILT_PRODUCTS_DIR)/usr/local/include/pal/graphics/WebGPU $(SDKROOT)/usr/local/include/pal/graphics/WebGPU;
+WEBGPU_HEADER_SEARCH_PATHS = $(BUILT_PRODUCTS_DIR)/usr/local/include/pal/graphics/WebGPU $(SDKROOT)$(WK_ALTERNATE_FRAMEWORKS_DIR)/usr/local/include/pal/graphics/WebGPU;
 
 HEADER_SEARCH_PATHS = "$(WEBCORE_PRIVATE_HEADERS_DIR)/ForwardingHeaders" "$(BUILT_PRODUCTS_DIR)/DerivedSources/WebKitLegacy" "$(BUILT_PRODUCTS_DIR)/usr/local/include" $(WEBGPU_HEADER_SEARCH_PATHS) $(WEBKITADDITIONS_HEADER_SEARCH_PATHS) $(LIBWEBRTC_HEADER_SEARCH_PATHS) $(HEADER_SEARCH_PATHS) $(SRCROOT);
 INFOPLIST_FILE = mac/Info.plist;






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


[webkit-changes] [286769] trunk/Source/JavaScriptCore

2021-12-09 Thread ysuzuki
Title: [286769] trunk/Source/_javascript_Core








Revision 286769
Author ysuz...@apple.com
Date 2021-12-09 00:47:07 -0800 (Thu, 09 Dec 2021)


Log Message
[JSC] Introduce BaselineCallLinkInfo and OptimizingCallLinkInfo to shrink sizeof(BaselineCallLinkInfo)
https://bugs.webkit.org/show_bug.cgi?id=233985

Reviewed by Mark Lam.

This patch introduces BaselineCallLinkInfo and OptimizingCallLinkInfo to shrink sizeof(BaselineCallLinkInfo).
BaselineCallLinkInfo is included in metadata, and allocated for LLInt and Baseline. So shrinking it can make
metadata small for LLInt and Baseline, which exists for all live functions.

We also reorder OpIteratorOpen::Metadata and OpIteratorNext::Metadata to shrink sizes.

sizeof(BaselineCallLinkInfo) becomes 88, while the old sizeof(CallLinkInfo) was 120.

* bytecode/AccessCase.cpp:
(JSC::AccessCase::generateImpl):
* bytecode/BytecodeList.rb:
* bytecode/CallLinkInfo.cpp:
(JSC::CallLinkInfo::setMonomorphicCallee):
(JSC::CallLinkInfo::emitFastPathImpl):
(JSC::OptimizingCallLinkInfo::emitFastPath):
(JSC::OptimizingCallLinkInfo::emitTailCallFastPath):
(JSC::OptimizingCallLinkInfo::emitSlowPath):
(JSC::CallLinkInfo::emitDataICSlowPath):
(JSC::OptimizingCallLinkInfo::slowPathStart):
(JSC::OptimizingCallLinkInfo::fastPathStart):
(JSC::OptimizingCallLinkInfo::emitDirectFastPath):
(JSC::OptimizingCallLinkInfo::emitDirectTailCallFastPath):
(JSC::OptimizingCallLinkInfo::initializeDirectCall):
(JSC::OptimizingCallLinkInfo::setDirectCallTarget):
(JSC::BaselineCallLinkInfo::initialize):
(JSC::CallLinkInfo::slowPathStart): Deleted.
(JSC::CallLinkInfo::fastPathStart): Deleted.
(JSC::CallLinkInfo::emitFastPath): Deleted.
(JSC::CallLinkInfo::emitTailCallFastPath): Deleted.
(JSC::CallLinkInfo::emitSlowPath): Deleted.
(JSC::CallLinkInfo::initializeDataIC): Deleted.
(JSC::CallLinkInfo::emitDirectFastPath): Deleted.
(JSC::CallLinkInfo::emitDirectTailCallFastPath): Deleted.
(JSC::CallLinkInfo::initializeDirectCall): Deleted.
(JSC::CallLinkInfo::setDirectCallTarget): Deleted.
* bytecode/CallLinkInfo.h:
(JSC::CallLinkInfo::type const):
(JSC::CallLinkInfo::CallLinkInfo):
(JSC::CallLinkInfo::calleeGPR const):
(JSC::CallLinkInfo::callLinkInfoGPR const):
(JSC::CallLinkInfo::setCallLinkInfoGPR):
(JSC::CallLinkInfo::setUpCall): Deleted.
(JSC::CallLinkInfo::setCodeLocations): Deleted.
(JSC::CallLinkInfo::calleeGPR): Deleted.
* bytecode/CallLinkStatus.cpp:
(JSC::CallLinkStatus::computeFor):
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::finishCreation):
(JSC::CodeBlock::setupWithUnlinkedBaselineCode):
(JSC::CodeBlock::finalizeUnconditionally):
(JSC::CodeBlock::getICStatusMap):
(JSC::CodeBlock::jettison):
* bytecode/GetterSetterAccessCase.h:
* bytecode/PolymorphicAccess.h:
* bytecode/Repatch.cpp:
(JSC::revertCall):
(JSC::linkDirectCall):
* bytecode/Repatch.h:
* dfg/DFGCommonData.h:
(JSC::DFG::CommonData::addCallLinkInfo):
* dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::link):
* dfg/DFGJITCompiler.h:
(JSC::DFG::JITCompiler::addJSCall):
(JSC::DFG::JITCompiler::addJSDirectCall):
(JSC::DFG::JITCompiler::JSCallRecord::JSCallRecord):
(JSC::DFG::JITCompiler::JSDirectCallRecord::JSDirectCallRecord):
* dfg/DFGOperations.cpp:
(JSC::DFG::JSC_DEFINE_JIT_OPERATION):
* dfg/DFGOperations.h:
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::emitCall):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::emitCall):
* ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq):
* jit/CallFrameShuffleData.cpp:
(JSC::CallFrameShuffleData::createForBaselineOrLLIntTailCall):
* jit/GCAwareJITStubRoutine.cpp:
(JSC::MarkingGCAwareJITStubRoutine::MarkingGCAwareJITStubRoutine):
(JSC::GCAwareJITStubRoutineWithExceptionHandler::GCAwareJITStubRoutineWithExceptionHandler):
(JSC::createICJITStubRoutine):
* jit/GCAwareJITStubRoutine.h:
* jit/JITCall.cpp:
(JSC::JIT::compileCallEvalSlowCase):
(JSC::JIT::compileTailCall):
(JSC::JIT::compileOpCall):
(): Deleted.
* wasm/js/JSWebAssemblyCodeBlock.h:
* wasm/js/WasmToJS.cpp:
(JSC::Wasm::wasmToJS):
* wasm/js/WasmToJS.h:

Modified Paths

trunk/Source/_javascript_Core/ChangeLog
trunk/Source/_javascript_Core/bytecode/AccessCase.cpp
trunk/Source/_javascript_Core/bytecode/BytecodeList.rb
trunk/Source/_javascript_Core/bytecode/CallLinkInfo.cpp
trunk/Source/_javascript_Core/bytecode/CallLinkInfo.h
trunk/Source/_javascript_Core/bytecode/CallLinkStatus.cpp
trunk/Source/_javascript_Core/bytecode/CodeBlock.cpp
trunk/Source/_javascript_Core/bytecode/GetterSetterAccessCase.h
trunk/Source/_javascript_Core/bytecode/PolymorphicAccess.h
trunk/Source/_javascript_Core/bytecode/Repatch.cpp
trunk/Source/_javascript_Core/bytecode/Repatch.h
trunk/Source/_javascript_Core/dfg/DFGCommonData.h
trunk/Source/_javascript_Core/dfg/DFGJITCompiler.cpp
trunk/Source/_javascript_Core/dfg/DFGJITCompiler.h
trunk/Source/_javascript_Core/dfg/DFGOperations.cpp
trunk/Source/_javascript_Core/dfg/DFGOperations.h
trunk/Source/_javascript_Core/dfg/DFGSpeculativeJIT32_64.cpp

[webkit-changes] [286768] trunk/Source

2021-12-09 Thread mmaxfield
Title: [286768] trunk/Source








Revision 286768
Author mmaxfi...@apple.com
Date 2021-12-09 00:37:59 -0800 (Thu, 09 Dec 2021)


Log Message
[WebGPU] Fix WebGPU build in Apple's internal build system
https://bugs.webkit.org/show_bug.cgi?id=234070

Unreviewed.

The PAL headers get put in a different place.

Source/WebKit:

No new tests because there is no behavior change.

* Configurations/BaseTarget.xcconfig:

Source/WebKitLegacy/mac:

* Configurations/WebKitLegacy.xcconfig:

Modified Paths

trunk/Source/WebKit/ChangeLog
trunk/Source/WebKit/Configurations/BaseTarget.xcconfig
trunk/Source/WebKitLegacy/mac/ChangeLog
trunk/Source/WebKitLegacy/mac/Configurations/WebKitLegacy.xcconfig




Diff

Modified: trunk/Source/WebKit/ChangeLog (286767 => 286768)

--- trunk/Source/WebKit/ChangeLog	2021-12-09 08:26:34 UTC (rev 286767)
+++ trunk/Source/WebKit/ChangeLog	2021-12-09 08:37:59 UTC (rev 286768)
@@ -1,3 +1,16 @@
+2021-12-09  Myles C. Maxfield  
+
+[WebGPU] Fix WebGPU build in Apple's internal build system
+https://bugs.webkit.org/show_bug.cgi?id=234070
+
+Unreviewed.
+
+The PAL headers get put in a different place.
+
+No new tests because there is no behavior change.
+
+* Configurations/BaseTarget.xcconfig:
+
 2021-12-09  Carlos Garcia Campos  
 
 [GTK][a11y] Ensure atspi wrappers have root set at construction time


Modified: trunk/Source/WebKit/Configurations/BaseTarget.xcconfig (286767 => 286768)

--- trunk/Source/WebKit/Configurations/BaseTarget.xcconfig	2021-12-09 08:26:34 UTC (rev 286767)
+++ trunk/Source/WebKit/Configurations/BaseTarget.xcconfig	2021-12-09 08:37:59 UTC (rev 286768)
@@ -46,11 +46,12 @@
 GCC_PREPROCESSOR_DEFINITIONS = $(DEBUG_DEFINES) $(WK_ENABLE_EXPERIMENTAL_FEATURES) $(WK_CORE_PREDICTION_DEFINES) $(WK_FORMATREADERBUNDLE_CODESIGNING_DEFINES) $(inherited) FRAMEWORK_NAME=WebKit;
 WEBKITADDITIONS_HEADER_SEARCH_PATHS = $(BUILT_PRODUCTS_DIR)/usr/local/include/WebKitAdditions $(SDKROOT)/usr/local/include/WebKitAdditions;
 LIBWEBRTC_HEADER_SEARCH_PATHS = $(BUILT_PRODUCTS_DIR)/usr/local/include/webrtc $(SDKROOT)/usr/local/include/webrtc;
+WEBGPU_HEADER_SEARCH_PATHS = $(BUILT_PRODUCTS_DIR)/usr/local/include/pal/graphics/WebGPU $(SDKROOT)/usr/local/include/pal/graphics/WebGPU;
 
 ALTERNATE_HEADER_SEARCH_PATHS = $(ALTERNATE_HEADER_SEARCH_PATHS_$(SDK_VARIANT));
 ALTERNATE_HEADER_SEARCH_PATHS_iosmac = $(BUILT_PRODUCTS_DIR)$(WK_ALTERNATE_FRAMEWORKS_DIR)/usr/local/include
 
-HEADER_SEARCH_PATHS = $(ALTERNATE_HEADER_SEARCH_PATHS) $(BUILT_PRODUCTS_DIR)/usr/local/include "$(WEBCORE_PRIVATE_HEADERS_DIR)/ForwardingHeaders" $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit "$(BUILT_PRODUCTS_DIR)/usr/local/include/pal/graphics/WebGPU" $(WEBKITADDITIONS_HEADER_SEARCH_PATHS) $(LIBWEBRTC_HEADER_SEARCH_PATHS) $(SRCROOT) $(HEADER_SEARCH_PATHS);
+HEADER_SEARCH_PATHS = $(ALTERNATE_HEADER_SEARCH_PATHS) $(BUILT_PRODUCTS_DIR)/usr/local/include "$(WEBCORE_PRIVATE_HEADERS_DIR)/ForwardingHeaders" $(BUILT_PRODUCTS_DIR)/DerivedSources/WebKit $(WEBGPU_HEADER_SEARCH_PATHS) $(WEBKITADDITIONS_HEADER_SEARCH_PATHS) $(LIBWEBRTC_HEADER_SEARCH_PATHS) $(SRCROOT) $(HEADER_SEARCH_PATHS);
 
 OTHER_CFLAGS = $(inherited) -iframework $(SDKROOT)$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks;
 OTHER_CPLUSPLUSFLAGS = $(OTHER_CFLAGS) -isystem $(SDKROOT)/System/Library/Frameworks/System.framework/PrivateHeaders;


Modified: trunk/Source/WebKitLegacy/mac/ChangeLog (286767 => 286768)

--- trunk/Source/WebKitLegacy/mac/ChangeLog	2021-12-09 08:26:34 UTC (rev 286767)
+++ trunk/Source/WebKitLegacy/mac/ChangeLog	2021-12-09 08:37:59 UTC (rev 286768)
@@ -1,3 +1,14 @@
+2021-12-09  Myles C. Maxfield  
+
+[WebGPU] Fix WebGPU build in Apple's internal build system
+https://bugs.webkit.org/show_bug.cgi?id=234070
+
+Unreviewed.
+
+The PAL headers get put in a different place.
+
+* Configurations/WebKitLegacy.xcconfig:
+
 2021-12-08  Truitt Savell  
 
 Unreviewed, reverting r286632.


Modified: trunk/Source/WebKitLegacy/mac/Configurations/WebKitLegacy.xcconfig (286767 => 286768)

--- trunk/Source/WebKitLegacy/mac/Configurations/WebKitLegacy.xcconfig	2021-12-09 08:26:34 UTC (rev 286767)
+++ trunk/Source/WebKitLegacy/mac/Configurations/WebKitLegacy.xcconfig	2021-12-09 08:37:59 UTC (rev 286768)
@@ -57,8 +57,9 @@
 
 WEBKITADDITIONS_HEADER_SEARCH_PATHS = $(BUILT_PRODUCTS_DIR)/usr/local/include/WebKitAdditions $(SDKROOT)/usr/local/include/WebKitAdditions;
 LIBWEBRTC_HEADER_SEARCH_PATHS = $(BUILT_PRODUCTS_DIR)/usr/local/include/webrtc $(SDKROOT)/usr/local/include/webrtc;
+WEBGPU_HEADER_SEARCH_PATHS = $(BUILT_PRODUCTS_DIR)/usr/local/include/pal/graphics/WebGPU $(SDKROOT)/usr/local/include/pal/graphics/WebGPU;
 
-HEADER_SEARCH_PATHS = "$(WEBCORE_PRIVATE_HEADERS_DIR)/ForwardingHeaders" "$(BUILT_PRODUCTS_DIR)/DerivedSources/WebKitLegacy" "$(BUILT_PRODUCTS_DIR)/usr/local/include" "$(BUILT_PRODUCTS_DIR)/usr/local/include/pal/graphics/WebGPU" $(WEBKITADDITIONS_HEADER_SEARCH_PATHS) 

[webkit-changes] [286767] trunk

2021-12-09 Thread carlosgc
Title: [286767] trunk








Revision 286767
Author carlo...@webkit.org
Date 2021-12-09 00:26:34 -0800 (Thu, 09 Dec 2021)


Log Message
[GTK][a11y] Ensure atspi wrappers have root set at construction time
https://bugs.webkit.org/show_bug.cgi?id=233804

Reviewed by Joanmarie Diggs.

Source/WebCore:

Pass the AccessibilityRootAtspi as a parameter to AccessibilityObjectAtspi constructor and store it as a
reference. A pointer to the AccessibilityRootAtspi object is now set in Page so that it can be accessed from the
AXObjectCache. Also remove setRoot() and use m_root directly instead of root() accessor.

* accessibility/atspi/AXObjectCacheAtspi.cpp:
(WebCore::AXObjectCache::attachWrapper): Get the AccessibilityRootAtspi from the page and pass it to the wrapper
constructor. Also set the parent of the dom root element wrapper to the atspi root element.
* accessibility/atspi/AccessibilityAtspi.cpp:
(WebCore::AccessibilityAtspi::childrenChanged):
* accessibility/atspi/AccessibilityObjectAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::create):
(WebCore::AccessibilityObjectAtspi::AccessibilityObjectAtspi):
(WebCore::AccessibilityObjectAtspi::cacheDestroyed):
(WebCore::AccessibilityObjectAtspi::elementDestroyed):
(WebCore::AccessibilityObjectAtspi::path):
(WebCore::AccessibilityObjectAtspi::reference):
(WebCore::AccessibilityObjectAtspi::hyperlinkReference):
(WebCore::AccessibilityObjectAtspi::parentReference const):
(WebCore::AccessibilityObjectAtspi::childAt const):
(WebCore::AccessibilityObjectAtspi::wrapperVector const):
(WebCore::AccessibilityObjectAtspi::buildRelationSet const):
(WebCore::AccessibilityObjectAtspi::serialize const):
(WebCore::AccessibilityObjectAtspi::childAdded):
(WebCore::AccessibilityObjectAtspi::childRemoved):
(WebCore::AccessibilityObjectAtspi::stateChanged):
(WebCore::AccessibilityObjectAtspi::setRoot): Deleted.
(WebCore::AccessibilityObjectAtspi::root const): Deleted.
* accessibility/atspi/AccessibilityObjectAtspi.h:
* accessibility/atspi/AccessibilityObjectComponentAtspi.cpp:
* accessibility/atspi/AccessibilityObjectHyperlinkAtspi.cpp:
* accessibility/atspi/AccessibilityObjectHypertextAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::hyperlink const):
* accessibility/atspi/AccessibilityObjectSelectionAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::selectedChild const):
(WebCore::AccessibilityObjectAtspi::selectionChanged):
* accessibility/atspi/AccessibilityObjectTableAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::cell const):
(WebCore::AccessibilityObjectAtspi::tableCaption const):
(WebCore::AccessibilityObjectAtspi::rowHeader const):
(WebCore::AccessibilityObjectAtspi::columnHeader const):
* accessibility/atspi/AccessibilityObjectTableCellAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::cellRowHeaders const):
(WebCore::AccessibilityObjectAtspi::cellColumnHeaders const):
* accessibility/atspi/AccessibilityObjectTextAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::textInserted):
(WebCore::AccessibilityObjectAtspi::textDeleted):
(WebCore::AccessibilityObjectAtspi::selectionChanged):
(WebCore::AccessibilityObjectAtspi::textAttributesChanged):
* accessibility/atspi/AccessibilityObjectValueAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::valueChanged):
* accessibility/atspi/AccessibilityRootAtspi.cpp:
(WebCore::AccessibilityRootAtspi::registerObject):
(WebCore::AccessibilityRootAtspi::unregisterObject):
(WebCore::AccessibilityRootAtspi::child const):
(WebCore::AccessibilityRootAtspi::focusedObject const): Deleted.
* accessibility/atspi/AccessibilityRootAtspi.h:
* page/Page.h:
(WebCore::Page::accessibilityRootObject const):
(WebCore::Page::setAccessibilityRootObject):

Source/WebKit:

* WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
(WKAccessibilityRootObject): Remove ATSPI specific code.
(WKAccessibilityFocusedObject): Ditto.
* WebProcess/WebPage/WebPage.h:
(WebKit::WebPage::accessibilityRootObject const): Deleted.

Tools:

* WebKitTestRunner/InjectedBundle/atspi/AccessibilityControllerAtspi.cpp:
(WTR::AccessibilityController::axRunLoop):

Modified Paths

trunk/Source/WebCore/ChangeLog
trunk/Source/WebCore/accessibility/atspi/AXObjectCacheAtspi.cpp
trunk/Source/WebCore/accessibility/atspi/AccessibilityAtspi.cpp
trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.cpp
trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.h
trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectComponentAtspi.cpp
trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectHyperlinkAtspi.cpp
trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectHypertextAtspi.cpp
trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectSelectionAtspi.cpp
trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectTableAtspi.cpp
trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectTableCellAtspi.cpp
trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectTextAtspi.cpp
trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectValueAtspi.cpp