Title: [293133] branches/safari-613-branch

Diff

Modified: branches/safari-613-branch/LayoutTests/ChangeLog (293132 => 293133)


--- branches/safari-613-branch/LayoutTests/ChangeLog	2022-04-21 00:30:33 UTC (rev 293132)
+++ branches/safari-613-branch/LayoutTests/ChangeLog	2022-04-21 00:45:59 UTC (rev 293133)
@@ -1,73 +1,5 @@
 2022-04-19  Alan Coon  <[email protected]>
 
-        Cherry-pick r292274. rdar://problem/80544133
-
-    [Cocoa] Automatically relayout the page when new fonts are installed
-    https://bugs.webkit.org/show_bug.cgi?id=238483
-    <rdar://problem/80544133>
-    
-    Reviewed by Chris Dumez.
-    
-    Source/WebCore:
-    
-    This patch simply calls setNeedsRecalcStyleInAllFrames on every Page when we receive a
-    kCTFontManagerRegisteredFontsChangedNotification.
-    
-    FontCache::invalidateAllFontCaches() can't do this directly because it's in platform/ and
-    therefore isn't allowed to know what Pages are. Instead, this patch takes a process-global
-    callback and calls that instead. This callback is set at initialization time.
-    
-    Test: fast/text/install-font-style-recalc.html
-    
-    * page/Page.cpp:
-    (WebCore::m_contentSecurityPolicyModeForExtension):
-    (WebCore::Page::firstTimeInitialization):
-    * page/Page.h:
-    * platform/graphics/FontCache.cpp:
-    (WebCore::Function<void):
-    (WebCore::FontCache::registerFontCacheInvalidationCallback):
-    (WebCore::FontCache::invalidateAllFontCaches):
-    * platform/graphics/FontCache.h:
-    
-    Tools:
-    
-    Make TestRunner::dumpResourceLoadStatistics() clear any currently-recorded statistics.
-    This avoids the problem where spurious layouts during the time when the page has been created but
-    before the test has begun record irrelevant statistics.
-    
-    * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
-    (WTR::InjectedBundle::beginTesting):
-    (WTR::InjectedBundle::clearResourceLoadStatistics):
-    * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
-    * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
-    (WTR::TestRunner::dumpResourceLoadStatistics):
-    
-    LayoutTests:
-    
-    * TestExpectations:
-    * fast/text/install-font-style-recalc-expected.txt: Added.
-    * fast/text/install-font-style-recalc.html: Added.
-    * platform/ios-wk2/TestExpectations:
-    * platform/mac-wk2/TestExpectations:
-    
-    git-svn-id: https://svn.webkit.org/repository/webkit/trunk@292274 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
-    2022-04-02  Myles C. Maxfield  <[email protected]>
-
-            [Cocoa] Automatically relayout the page when new fonts are installed
-            https://bugs.webkit.org/show_bug.cgi?id=238483
-            <rdar://problem/80544133>
-
-            Reviewed by Chris Dumez.
-
-            * TestExpectations:
-            * fast/text/install-font-style-recalc-expected.txt: Added.
-            * fast/text/install-font-style-recalc.html: Added.
-            * platform/ios-wk2/TestExpectations:
-            * platform/mac-wk2/TestExpectations:
-
-2022-04-19  Alan Coon  <[email protected]>
-
         Cherry-pick r292079. rdar://problem/88512506
 
     Don't mutate children during RenderGrid::computeIntrinsicLogicalWidths unless we're about to re-layout.

Modified: branches/safari-613-branch/LayoutTests/TestExpectations (293132 => 293133)


--- branches/safari-613-branch/LayoutTests/TestExpectations	2022-04-21 00:30:33 UTC (rev 293132)
+++ branches/safari-613-branch/LayoutTests/TestExpectations	2022-04-21 00:45:59 UTC (rev 293133)
@@ -5206,6 +5206,3 @@
 security/contentSecurityPolicy/plugins-types-blocks-youtube-plugin-replacement-without-mime-type.html [ Skip ]
 security/contentSecurityPolicy/plugins-types-blocks-youtube-plugin-replacement.html [ Skip ]
 userscripts/user-script-plugin-document.html [ Skip ]
-
-# Only some ports automatically relayout if a font is installed while the page is open
-fast/text/install-font-style-recalc.html [ Failure ]

Deleted: branches/safari-613-branch/LayoutTests/fast/text/install-font-style-recalc-expected.txt (293132 => 293133)


--- branches/safari-613-branch/LayoutTests/fast/text/install-font-style-recalc-expected.txt	2022-04-21 00:30:33 UTC (rev 293132)
+++ branches/safari-613-branch/LayoutTests/fast/text/install-font-style-recalc-expected.txt	2022-04-21 00:45:59 UTC (rev 293133)
@@ -1,11 +0,0 @@
-This test makes sure that installing a font causes a style recalc. The test only runs in DumpRenderTree/WebKitTestRunner. It passes if the text above is rendered as black boxes (aka in Ahem).
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-
-PASS target.offsetWidth became 200
-PASS The font was used.
-PASS successfullyParsed is true
-
-TEST COMPLETE
-rrrr

Deleted: branches/safari-613-branch/LayoutTests/fast/text/install-font-style-recalc.html (293132 => 293133)


--- branches/safari-613-branch/LayoutTests/fast/text/install-font-style-recalc.html	2022-04-21 00:30:33 UTC (rev 293132)
+++ branches/safari-613-branch/LayoutTests/fast/text/install-font-style-recalc.html	2022-04-21 00:45:59 UTC (rev 293133)
@@ -1,21 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<script src=""
-</head>
-<body>
-<span id="target" style="font: 50px 'Helvetica2';">rrrr</span>
-<script>
-description("This test makes sure that installing a font causes a style recalc. The test only runs in DumpRenderTree/WebKitTestRunner. It passes if the text above is rendered as black boxes (aka in Ahem).");
-window.jsTestIsAsync = true;
-let target = document.getElementById("target");
-target.offsetWidth; // Force a font lookup
-if (window.testRunner)
-    testRunner.installFakeHelvetica("Helvetica2-400");
-shouldBecomeEqual("target.offsetWidth", "200", function() {
-    testPassed("The font was used.");
-    finishJSTest();
-});
-</script>
-</body>
-</html>

Modified: branches/safari-613-branch/LayoutTests/platform/ios-wk2/TestExpectations (293132 => 293133)


--- branches/safari-613-branch/LayoutTests/platform/ios-wk2/TestExpectations	2022-04-21 00:30:33 UTC (rev 293132)
+++ branches/safari-613-branch/LayoutTests/platform/ios-wk2/TestExpectations	2022-04-21 00:45:59 UTC (rev 293133)
@@ -2211,5 +2211,3 @@
 # See webkit.org/b/233498 for context on this pointerevents tests
 imported/w3c/web-platform-tests/pointerevents [ Skip ]
 pointerevents/mouse [ Failure ]
-
-fast/text/install-font-style-recalc.html [ Pass ]

Modified: branches/safari-613-branch/LayoutTests/platform/mac-wk2/TestExpectations (293132 => 293133)


--- branches/safari-613-branch/LayoutTests/platform/mac-wk2/TestExpectations	2022-04-21 00:30:33 UTC (rev 293132)
+++ branches/safari-613-branch/LayoutTests/platform/mac-wk2/TestExpectations	2022-04-21 00:45:59 UTC (rev 293133)
@@ -1675,5 +1675,3 @@
 
 # rdar://86037417 WindowServer returned not alive with context:,unresponsive work processor(s)
 [ Monterey+ ] http/tests/model/model-document.html [ Skip ]
-
-fast/text/install-font-style-recalc.html [ Pass ]

Modified: branches/safari-613-branch/Source/WebCore/ChangeLog (293132 => 293133)


--- branches/safari-613-branch/Source/WebCore/ChangeLog	2022-04-21 00:30:33 UTC (rev 293132)
+++ branches/safari-613-branch/Source/WebCore/ChangeLog	2022-04-21 00:45:59 UTC (rev 293133)
@@ -235,87 +235,6 @@
 
 2022-04-19  Alan Coon  <[email protected]>
 
-        Cherry-pick r292274. rdar://problem/80544133
-
-    [Cocoa] Automatically relayout the page when new fonts are installed
-    https://bugs.webkit.org/show_bug.cgi?id=238483
-    <rdar://problem/80544133>
-    
-    Reviewed by Chris Dumez.
-    
-    Source/WebCore:
-    
-    This patch simply calls setNeedsRecalcStyleInAllFrames on every Page when we receive a
-    kCTFontManagerRegisteredFontsChangedNotification.
-    
-    FontCache::invalidateAllFontCaches() can't do this directly because it's in platform/ and
-    therefore isn't allowed to know what Pages are. Instead, this patch takes a process-global
-    callback and calls that instead. This callback is set at initialization time.
-    
-    Test: fast/text/install-font-style-recalc.html
-    
-    * page/Page.cpp:
-    (WebCore::m_contentSecurityPolicyModeForExtension):
-    (WebCore::Page::firstTimeInitialization):
-    * page/Page.h:
-    * platform/graphics/FontCache.cpp:
-    (WebCore::Function<void):
-    (WebCore::FontCache::registerFontCacheInvalidationCallback):
-    (WebCore::FontCache::invalidateAllFontCaches):
-    * platform/graphics/FontCache.h:
-    
-    Tools:
-    
-    Make TestRunner::dumpResourceLoadStatistics() clear any currently-recorded statistics.
-    This avoids the problem where spurious layouts during the time when the page has been created but
-    before the test has begun record irrelevant statistics.
-    
-    * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
-    (WTR::InjectedBundle::beginTesting):
-    (WTR::InjectedBundle::clearResourceLoadStatistics):
-    * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
-    * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
-    (WTR::TestRunner::dumpResourceLoadStatistics):
-    
-    LayoutTests:
-    
-    * TestExpectations:
-    * fast/text/install-font-style-recalc-expected.txt: Added.
-    * fast/text/install-font-style-recalc.html: Added.
-    * platform/ios-wk2/TestExpectations:
-    * platform/mac-wk2/TestExpectations:
-    
-    git-svn-id: https://svn.webkit.org/repository/webkit/trunk@292274 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
-    2022-04-02  Myles C. Maxfield  <[email protected]>
-
-            [Cocoa] Automatically relayout the page when new fonts are installed
-            https://bugs.webkit.org/show_bug.cgi?id=238483
-            <rdar://problem/80544133>
-
-            Reviewed by Chris Dumez.
-
-            This patch simply calls setNeedsRecalcStyleInAllFrames on every Page when we receive a
-            kCTFontManagerRegisteredFontsChangedNotification.
-
-            FontCache::invalidateAllFontCaches() can't do this directly because it's in platform/ and
-            therefore isn't allowed to know what Pages are. Instead, this patch takes a process-global
-            callback and calls that instead. This callback is set at initialization time.
-
-            Test: fast/text/install-font-style-recalc.html
-
-            * page/Page.cpp:
-            (WebCore::m_contentSecurityPolicyModeForExtension):
-            (WebCore::Page::firstTimeInitialization):
-            * page/Page.h:
-            * platform/graphics/FontCache.cpp:
-            (WebCore::Function<void):
-            (WebCore::FontCache::registerFontCacheInvalidationCallback):
-            (WebCore::FontCache::invalidateAllFontCaches):
-            * platform/graphics/FontCache.h:
-
-2022-04-19  Alan Coon  <[email protected]>
-
         Cherry-pick r292079. rdar://problem/88512506
 
     Don't mutate children during RenderGrid::computeIntrinsicLogicalWidths unless we're about to re-layout.

Modified: branches/safari-613-branch/Source/WebCore/page/Page.cpp (293132 => 293133)


--- branches/safari-613-branch/Source/WebCore/page/Page.cpp	2022-04-21 00:30:33 UTC (rev 293132)
+++ branches/safari-613-branch/Source/WebCore/page/Page.cpp	2022-04-21 00:45:59 UTC (rev 293133)
@@ -349,10 +349,10 @@
     m_userContentProvider->addPage(*this);
     m_visitedLinkStore->addPage(*this);
 
-    static bool firstTimeInitializationRan = false;
-    if (!firstTimeInitializationRan) {
-        firstTimeInitialization();
-        firstTimeInitializationRan = true;
+    static bool addedListener;
+    if (!addedListener) {
+        platformStrategies()->loaderStrategy()->addOnlineStateChangeListener(&networkStateChanged);
+        addedListener = true;
     }
 
     ASSERT(!allPages().contains(this));
@@ -426,17 +426,6 @@
     m_visitedLinkStore->removePage(*this);
 }
 
-void Page::firstTimeInitialization()
-{
-    platformStrategies()->loaderStrategy()->addOnlineStateChangeListener(&networkStateChanged);
-
-    FontCache::registerFontCacheInvalidationCallback([] {
-        forEachPage([](auto& page) {
-            page.setNeedsRecalcStyleInAllFrames();
-        });
-    });
-}
-
 void Page::clearPreviousItemFromAllPages(HistoryItem* item)
 {
     for (auto* page : allPages()) {

Modified: branches/safari-613-branch/Source/WebCore/page/Page.h (293132 => 293133)


--- branches/safari-613-branch/Source/WebCore/page/Page.h	2022-04-21 00:30:33 UTC (rev 293132)
+++ branches/safari-613-branch/Source/WebCore/page/Page.h	2022-04-21 00:45:59 UTC (rev 293133)
@@ -939,8 +939,6 @@
     };
     void logNavigation(const Navigation&);
 
-    static void firstTimeInitialization();
-
     WEBCORE_EXPORT void initGroup();
 
     void setIsInWindowInternal(bool);

Modified: branches/safari-613-branch/Source/WebCore/platform/graphics/FontCache.cpp (293132 => 293133)


--- branches/safari-613-branch/Source/WebCore/platform/graphics/FontCache.cpp	2022-04-21 00:30:33 UTC (rev 293132)
+++ branches/safari-613-branch/Source/WebCore/platform/graphics/FontCache.cpp	2022-04-21 00:45:59 UTC (rev 293133)
@@ -489,17 +489,6 @@
     purgeInactiveFontData();
 }
 
-static Function<void()>& fontCacheInvalidationCallback()
-{
-    static NeverDestroyed<Function<void()>> callback;
-    return callback.get();
-}
-
-void FontCache::registerFontCacheInvalidationCallback(Function<void()>&& callback)
-{
-    fontCacheInvalidationCallback() = WTFMove(callback);
-}
-
 void FontCache::invalidateAllFontCaches()
 {
     ASSERT(isMainThread());
@@ -506,9 +495,6 @@
 
     // FIXME: Invalidate FontCaches in workers too.
     FontCache::forCurrentThread().invalidate();
-
-    if (fontCacheInvalidationCallback())
-        fontCacheInvalidationCallback()();
 }
 
 #if !PLATFORM(COCOA)

Modified: branches/safari-613-branch/Source/WebCore/platform/graphics/FontCache.h (293132 => 293133)


--- branches/safari-613-branch/Source/WebCore/platform/graphics/FontCache.h	2022-04-21 00:30:33 UTC (rev 293132)
+++ branches/safari-613-branch/Source/WebCore/platform/graphics/FontCache.h	2022-04-21 00:45:59 UTC (rev 293133)
@@ -322,7 +322,6 @@
 
     unsigned short generation() const { return m_generation; }
     WEBCORE_EXPORT void invalidate();
-    static void registerFontCacheInvalidationCallback(Function<void()>&&);
     WEBCORE_EXPORT static void invalidateAllFontCaches();
 
     WEBCORE_EXPORT size_t fontCount();

Modified: branches/safari-613-branch/Tools/ChangeLog (293132 => 293133)


--- branches/safari-613-branch/Tools/ChangeLog	2022-04-21 00:30:33 UTC (rev 293132)
+++ branches/safari-613-branch/Tools/ChangeLog	2022-04-21 00:45:59 UTC (rev 293133)
@@ -1,78 +1,5 @@
 2022-04-19  Alan Coon  <[email protected]>
 
-        Cherry-pick r292274. rdar://problem/80544133
-
-    [Cocoa] Automatically relayout the page when new fonts are installed
-    https://bugs.webkit.org/show_bug.cgi?id=238483
-    <rdar://problem/80544133>
-    
-    Reviewed by Chris Dumez.
-    
-    Source/WebCore:
-    
-    This patch simply calls setNeedsRecalcStyleInAllFrames on every Page when we receive a
-    kCTFontManagerRegisteredFontsChangedNotification.
-    
-    FontCache::invalidateAllFontCaches() can't do this directly because it's in platform/ and
-    therefore isn't allowed to know what Pages are. Instead, this patch takes a process-global
-    callback and calls that instead. This callback is set at initialization time.
-    
-    Test: fast/text/install-font-style-recalc.html
-    
-    * page/Page.cpp:
-    (WebCore::m_contentSecurityPolicyModeForExtension):
-    (WebCore::Page::firstTimeInitialization):
-    * page/Page.h:
-    * platform/graphics/FontCache.cpp:
-    (WebCore::Function<void):
-    (WebCore::FontCache::registerFontCacheInvalidationCallback):
-    (WebCore::FontCache::invalidateAllFontCaches):
-    * platform/graphics/FontCache.h:
-    
-    Tools:
-    
-    Make TestRunner::dumpResourceLoadStatistics() clear any currently-recorded statistics.
-    This avoids the problem where spurious layouts during the time when the page has been created but
-    before the test has begun record irrelevant statistics.
-    
-    * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
-    (WTR::InjectedBundle::beginTesting):
-    (WTR::InjectedBundle::clearResourceLoadStatistics):
-    * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
-    * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
-    (WTR::TestRunner::dumpResourceLoadStatistics):
-    
-    LayoutTests:
-    
-    * TestExpectations:
-    * fast/text/install-font-style-recalc-expected.txt: Added.
-    * fast/text/install-font-style-recalc.html: Added.
-    * platform/ios-wk2/TestExpectations:
-    * platform/mac-wk2/TestExpectations:
-    
-    git-svn-id: https://svn.webkit.org/repository/webkit/trunk@292274 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
-    2022-04-02  Myles C. Maxfield  <[email protected]>
-
-            [Cocoa] Automatically relayout the page when new fonts are installed
-            https://bugs.webkit.org/show_bug.cgi?id=238483
-            <rdar://problem/80544133>
-
-            Reviewed by Chris Dumez.
-
-            Make TestRunner::dumpResourceLoadStatistics() clear any currently-recorded statistics.
-            This avoids the problem where spurious layouts during the time when the page has been created but
-            before the test has begun record irrelevant statistics.
-
-            * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
-            (WTR::InjectedBundle::beginTesting):
-            (WTR::InjectedBundle::clearResourceLoadStatistics):
-            * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
-            * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
-            (WTR::TestRunner::dumpResourceLoadStatistics):
-
-2022-04-19  Alan Coon  <[email protected]>
-
         Cherry-pick r292680. rdar://problem/91323230
 
     The Youtube plugin replacement should only work for actual Youtube URLs

Modified: branches/safari-613-branch/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.cpp (293132 => 293133)


--- branches/safari-613-branch/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.cpp	2022-04-21 00:30:33 UTC (rev 293132)
+++ branches/safari-613-branch/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.cpp	2022-04-21 00:45:59 UTC (rev 293133)
@@ -543,7 +543,7 @@
     WKBundleClearAllDatabases(m_bundle.get());
     WKBundlePageClearApplicationCache(page()->page());
     WKBundleResetOriginAccessAllowLists(m_bundle.get());
-    clearResourceLoadStatistics();
+    WKBundleClearResourceLoadStatistics(m_bundle.get());
 
     // [WK2] REGRESSION(r128623): It made layout tests extremely slow
     // https://bugs.webkit.org/show_bug.cgi?id=96862
@@ -576,11 +576,6 @@
     m_state = Idle;
 }
 
-void InjectedBundle::clearResourceLoadStatistics()
-{
-    WKBundleClearResourceLoadStatistics(m_bundle.get());
-}
-
 void InjectedBundle::dumpBackForwardListsForAllPages(StringBuilder& stringBuilder)
 {
     size_t size = m_pages.size();

Modified: branches/safari-613-branch/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.h (293132 => 293133)


--- branches/safari-613-branch/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.h	2022-04-21 00:30:33 UTC (rev 293132)
+++ branches/safari-613-branch/Tools/WebKitTestRunner/InjectedBundle/InjectedBundle.h	2022-04-21 00:45:59 UTC (rev 293133)
@@ -148,8 +148,6 @@
     void increaseUserScriptInjectedCount() { ++m_userScriptInjectedCount; }
     size_t userScriptInjectedCount() const { return m_userScriptInjectedCount; }
 
-    void clearResourceLoadStatistics();
-
 private:
     InjectedBundle() = default;
     ~InjectedBundle();

Modified: branches/safari-613-branch/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp (293132 => 293133)


--- branches/safari-613-branch/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp	2022-04-21 00:30:33 UTC (rev 293132)
+++ branches/safari-613-branch/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp	2022-04-21 00:45:59 UTC (rev 293133)
@@ -1333,7 +1333,6 @@
     
 void TestRunner::dumpResourceLoadStatistics()
 {
-    InjectedBundle::singleton().clearResourceLoadStatistics();
     postSynchronousPageMessage("dumpResourceLoadStatistics");
 }
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to