Changeset 233794 in webkit
- Timestamp:
- Jul 12, 2018, 11:22:33 PM (8 years ago)
- Location:
- trunk
- Files:
-
- 9 edited
- 1 copied
-
Source/WebCore/ChangeLog (modified) (1 diff)
-
Source/WebCore/dom/Document.cpp (modified) (1 diff)
-
Source/WebCore/dom/Document.h (modified) (2 diffs)
-
Source/WebCore/dom/Element.cpp (modified) (2 diffs)
-
Source/WebCore/page/FrameView.cpp (modified) (3 diffs)
-
Tools/ChangeLog (modified) (1 diff)
-
Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj (modified) (4 diffs)
-
Tools/TestWebKitAPI/Tests/WebKitCocoa/significant-text-milestone-article.html (copied) (copied from trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/significant-text-milestone.html ) (1 diff)
-
Tools/TestWebKitAPI/Tests/WebKitCocoa/significant-text-milestone.html (modified) (1 diff)
-
Tools/TestWebKitAPI/Tests/ios/RenderingProgressTests.mm (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r233793 r233794 1 2018-07-12 Wenson Hsieh <wenson_hsieh@apple.com> 2 3 Make it easier to hit the significant rendered text layout milestone on pages with main article elements 4 https://bugs.webkit.org/show_bug.cgi?id=187578 5 <rdar://problem/42104637> 6 7 Reviewed by Ryosuke Niwa. 8 9 Our current heuristics for triggering the significant rendered text layout milestone are very conservative, with 10 the intention of avoiding false positives. In practice, we can relax some of these constraints when we've 11 detected the presence of a main article element on the page. (e.g. in New York Times articles). See per-method 12 changes below for more detail. 13 14 Test: RenderingProgressTests.DidRenderSignificantAmountOfText 15 16 * dom/Document.cpp: 17 (WebCore::Document::registerArticleElement): 18 (WebCore::Document::unregisterArticleElement): 19 (WebCore::Document::updateMainArticleElementAfterLayout): 20 21 As a post layout task, update the main article element by looping through the articles (up to a maximum limit of 22 10) in search of an article element that is several times larger than the second largest article element. 23 24 * dom/Document.h: 25 26 Store a set containing the article elements in the document, as well as the current main article on the page. 27 28 (WebCore::Document::hasMainArticleElement const): 29 * html/Element.cpp: 30 (WebCore::Element::insertedIntoAncestor): 31 (WebCore::Element::removedFromAncestor): 32 33 Keep track of the article elements that exist in the document whenever elements with the article tag are added 34 to or removed from the document. 35 36 * page/FrameView.cpp: 37 38 Add new minimum thresholds for firing the significant rendered text milestone when there exists a main article. 39 40 (WebCore::FrameView::performPostLayoutTasks): 41 (WebCore::FrameView::updateSignificantRenderedTextMilestoneIfNeeded): 42 43 Take the main article element into consideration when determining whether to fire the significant text 44 layout milestone. 45 1 46 2018-07-12 Daniel Bates <dabates@apple.com> 2 47 -
trunk/Source/WebCore/dom/Document.cpp
r233611 r233794 7698 7698 } 7699 7699 7700 void Document::registerArticleElement(Element& article) 7701 { 7702 m_articleElements.add(&article); 7703 } 7704 7705 void Document::unregisterArticleElement(Element& article) 7706 { 7707 m_articleElements.remove(&article); 7708 if (m_mainArticleElement == &article) 7709 m_mainArticleElement = nullptr; 7710 } 7711 7712 void Document::updateMainArticleElementAfterLayout() 7713 { 7714 // If there are too many article elements on the page, don't consider any one of them to be "main content". 7715 const unsigned maxNumberOfArticlesBeforeIgnoringMainContentArticle = 10; 7716 7717 // We consider an article to be main content if it is either: 7718 // 1. The only article element in the document. 7719 // 2. Much taller than the next tallest article, and also much larger than the viewport. 7720 const float minimumSecondTallestArticleHeightFactor = 4; 7721 const float minimumViewportAreaFactor = 5; 7722 7723 m_mainArticleElement = nullptr; 7724 7725 auto numberOfArticles = m_articleElements.size(); 7726 if (!numberOfArticles || numberOfArticles > maxNumberOfArticlesBeforeIgnoringMainContentArticle) 7727 return; 7728 7729 Element* tallestArticle = nullptr; 7730 float tallestArticleHeight = 0; 7731 float tallestArticleWidth = 0; 7732 float secondTallestArticleHeight = 0; 7733 7734 for (auto* article : m_articleElements) { 7735 auto* box = article->renderBox(); 7736 float height = box ? box->height().toFloat() : 0; 7737 if (height >= tallestArticleHeight) { 7738 secondTallestArticleHeight = tallestArticleHeight; 7739 tallestArticleHeight = height; 7740 tallestArticleWidth = box ? box->width().toFloat() : 0; 7741 tallestArticle = article; 7742 } else if (height >= secondTallestArticleHeight) 7743 secondTallestArticleHeight = height; 7744 } 7745 7746 if (numberOfArticles == 1) { 7747 m_mainArticleElement = tallestArticle; 7748 return; 7749 } 7750 7751 if (tallestArticleHeight < minimumSecondTallestArticleHeightFactor * secondTallestArticleHeight) 7752 return; 7753 7754 if (!view()) 7755 return; 7756 7757 auto viewportSize = view()->layoutViewportRect().size(); 7758 if (tallestArticleWidth * tallestArticleHeight < minimumViewportAreaFactor * (viewportSize.width() * viewportSize.height()).toFloat()) 7759 return; 7760 7761 m_mainArticleElement = tallestArticle; 7762 } 7763 7700 7764 #if HAVE(CFNETWORK_STORAGE_PARTITIONING) 7701 7765 bool Document::hasFrameSpecificStorageAccess() const -
trunk/Source/WebCore/dom/Document.h
r233611 r233794 1447 1447 void consumeTemporaryTimeUserGesture(); 1448 1448 1449 void registerArticleElement(Element&); 1450 void unregisterArticleElement(Element&); 1451 void updateMainArticleElementAfterLayout(); 1452 bool hasMainArticleElement() const { return !!m_mainArticleElement; } 1453 1449 1454 protected: 1450 1455 enum ConstructionFlags { Synthesized = 1, NonRenderedPlaceholder = 1 << 1 }; … … 1687 1692 HashSet<Element*> m_captionPreferencesChangedElements; 1688 1693 #endif 1694 1695 Element* m_mainArticleElement { nullptr }; 1696 HashSet<Element*> m_articleElements; 1689 1697 1690 1698 #if ENABLE(MEDIA_CONTROLS_SCRIPT) -
trunk/Source/WebCore/dom/Element.cpp
r233545 r233794 1754 1754 } 1755 1755 1756 if (UNLIKELY(hasTagName(articleTag) && newDocument)) 1757 newDocument->registerArticleElement(*this); 1758 1756 1759 return InsertedIntoAncestorResult::Done; 1757 1760 } … … 1801 1804 if (oldDocument->cssTarget() == this) 1802 1805 oldDocument->setCSSTarget(nullptr); 1806 if (UNLIKELY(hasTagName(articleTag))) 1807 oldDocument->unregisterArticleElement(*this); 1803 1808 } 1804 1809 -
trunk/Source/WebCore/page/FrameView.cpp
r233623 r233794 130 130 static const unsigned maxUpdateEmbeddedObjectsIterations = 2; 131 131 132 static constexpr unsigned significantRenderedTextCharacterThreshold = 3000; 133 static constexpr float significantRenderedTextMeanLength = 50; 132 static constexpr unsigned defaultSignificantRenderedTextCharacterThreshold = 3000; 133 static constexpr float defaultSignificantRenderedTextMeanLength = 50; 134 static constexpr unsigned mainArticleSignificantRenderedTextCharacterThreshold = 1500; 135 static constexpr float mainArticleSignificantRenderedTextMeanLength = 25; 134 136 135 137 static RenderLayer::UpdateLayerPositionsFlags updateLayerPositionFlags(RenderLayer* layer, bool isRelayoutingSubtree, bool didFullRepaint) … … 3220 3222 LOG(Layout, "FrameView %p performPostLayoutTasks", this); 3221 3223 3224 frame().document()->updateMainArticleElementAfterLayout(); 3222 3225 frame().selection().updateAppearanceAfterLayout(); 3223 3226 … … 4359 4362 return; 4360 4363 4361 if (m_visuallyNonEmptyCharacterCount < significantRenderedTextCharacterThreshold) 4362 return; 4363 4364 if (!m_renderTextCountForVisuallyNonEmptyCharacters || m_visuallyNonEmptyCharacterCount / static_cast<float>(m_renderTextCountForVisuallyNonEmptyCharacters) < significantRenderedTextMeanLength) 4364 auto characterThreshold = document->hasMainArticleElement() ? mainArticleSignificantRenderedTextCharacterThreshold : defaultSignificantRenderedTextCharacterThreshold; 4365 auto meanLength = document->hasMainArticleElement() ? mainArticleSignificantRenderedTextMeanLength : defaultSignificantRenderedTextMeanLength; 4366 4367 if (m_visuallyNonEmptyCharacterCount < characterThreshold) 4368 return; 4369 4370 if (!m_renderTextCountForVisuallyNonEmptyCharacters || m_visuallyNonEmptyCharacterCount / static_cast<float>(m_renderTextCountForVisuallyNonEmptyCharacters) < meanLength) 4365 4371 return; 4366 4372 -
trunk/Tools/ChangeLog
r233791 r233794 1 2018-07-12 Wenson Hsieh <wenson_hsieh@apple.com> 2 3 Make it easier to hit the significant rendered text layout milestone on pages with main article elements 4 https://bugs.webkit.org/show_bug.cgi?id=187578 5 <rdar://problem/42104637> 6 7 Reviewed by Ryosuke Niwa. 8 9 Tweak an existing layout test to additionally check that the significant text layout milestone is fired on a 10 page with an article element that is clearly the "main" content on the page (i.e. much taller than all other 11 articles). 12 13 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: 14 * TestWebKitAPI/Tests/WebKitCocoa/significant-text-milestone-article.html: Copied from Tools/TestWebKitAPI/Tests/WebKitCocoa/significant-text-milestone.html. 15 * TestWebKitAPI/Tests/WebKitCocoa/significant-text-milestone.html: 16 * TestWebKitAPI/Tests/ios/RenderingProgressTests.mm: 17 (TEST): 18 1 19 2018-07-12 Fujii Hironori <Hironori.Fujii@sony.com> 2 20 -
trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj
r233777 r233794 819 819 F4D65DA81F5E4704009D8C27 /* selected-text-image-link-and-editable.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F4D65DA71F5E46C0009D8C27 /* selected-text-image-link-and-editable.html */; }; 820 820 F4DEF6ED1E9B4DB60048EF61 /* image-in-link-and-input.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F4DEF6EC1E9B4D950048EF61 /* image-in-link-and-input.html */; }; 821 F4E3D80820F70BB9007B58C5 /* significant-text-milestone-article.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F4E3D80720F708E4007B58C5 /* significant-text-milestone-article.html */; }; 821 822 F4F137921D9B683E002BEC57 /* large-video-test-now-playing.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F4F137911D9B6832002BEC57 /* large-video-test-now-playing.html */; }; 822 823 F4F405BC1D4C0D1C007A9707 /* full-size-autoplaying-video-with-audio.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = F4F405BA1D4C0CF8007A9707 /* full-size-autoplaying-video-with-audio.html */; }; … … 1116 1117 52B8CF9815868D9100281053 /* SetDocumentURI.html in Copy Resources */, 1117 1118 CEBABD491B71687C0051210A /* should-open-external-schemes.html in Copy Resources */, 1119 F4E3D80820F70BB9007B58C5 /* significant-text-milestone-article.html in Copy Resources */, 1118 1120 F4FC077720F013B600CA043C /* significant-text-milestone.html in Copy Resources */, 1119 1121 C9B4AD2A1ECA6EBE00F5FEA0 /* silence-long.m4a in Copy Resources */, … … 2021 2023 F4D65DA71F5E46C0009D8C27 /* selected-text-image-link-and-editable.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "selected-text-image-link-and-editable.html"; sourceTree = "<group>"; }; 2022 2024 F4DEF6EC1E9B4D950048EF61 /* image-in-link-and-input.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "image-in-link-and-input.html"; sourceTree = "<group>"; }; 2025 F4E3D80720F708E4007B58C5 /* significant-text-milestone-article.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "significant-text-milestone-article.html"; sourceTree = "<group>"; }; 2023 2026 F4F137911D9B6832002BEC57 /* large-video-test-now-playing.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "large-video-test-now-playing.html"; sourceTree = "<group>"; }; 2024 2027 F4F405BA1D4C0CF8007A9707 /* full-size-autoplaying-video-with-audio.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "full-size-autoplaying-video-with-audio.html"; sourceTree = "<group>"; }; … … 2636 2639 F46849BF1EEF5EDC00B937FE /* rich-and-plain-text.html */, 2637 2640 F4D65DA71F5E46C0009D8C27 /* selected-text-image-link-and-editable.html */, 2641 F4E3D80720F708E4007B58C5 /* significant-text-milestone-article.html */, 2638 2642 F4FC077620F0108100CA043C /* significant-text-milestone.html */, 2639 2643 C9B4AD291ECA6EA500F5FEA0 /* silence-long.m4a */, -
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/significant-text-milestone-article.html
r233793 r233794 11 11 <time itemprop="pubdate" datetime="2018-07-06">July 6, 2018</time> 12 12 <p>Lorem ipsum dolor sit amet, <a href="https://webkit.org">consectetur adipiscing elit</a>, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. <a href="https://webkit.org">Tempor id eu nisl nunc mi ipsum faucibus vitae.</a> Sed tempus urna et pharetra pharetra massa massa. Vitae tortor condimentum lacinia quis vel eros donec ac. <a href="https://webkit.org">Ullamcorper velit sed ullamcorper morbi</a> tincidunt ornare massa eget. Sit amet cursus sit amet dictum. Id eu nisl nunc mi ipsum faucibus vitae aliquet nec. Suscipit tellus mauris a diam maecenas sed. Consequat nisl vel pretium lectus quam id leo. <a href="https://webkit.org">Netus et malesuada fames ac turpis egestas integer.</a> Quam lacus suspendisse faucibus interdum posuere lorem ipsum. Sem integer vitae justo eget magna fermentum iaculis. A condimentum vitae sapien pellentesque habitant morbi tristique. Varius duis at consectetur lorem. Ipsum faucibus vitae aliquet nec ullamcorper sit.</p> 13 <blockquote><p>Sed faucibus <a href="https://webkit.org">turpis in eu mi bibendum</a>. Donec enim diam vulputate ut pharetra sit amet aliquam. <img src="apple.gif"></img> Consequat id porta nibh venenatis cras sed felis eget velit. At lectus urna duis convallis convallis tellus id interdum velit. Id consectetur purus ut faucibus pulvinar elementum integer enim. Ipsum dolor sit amet consectetur adipiscing elit ut aliquam. At tellus at urna condimentum mattis. Faucibus pulvinar elementum integer enim. At elementum eu facilisis sed odio morbi. Fames ac turpis egestas integer eget aliquet. Consequat interdum varius sit amet mattis vulputate enim nulla. Lectus sit amet est placerat in egestas. Dolor sit amet consectetur adipiscing elit pellentesque habitant morbi. Urna et pharetra pharetra massa massa ultricies mi.</p></blockquote> 13 14 <p>Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. <a href="https://webkit.org">Quam lacus suspendisse</a> faucibus interdum posuere lorem. Sagittis vitae et leo duis ut diam. Turpis massa sed elementum tempus. Aliquam sem fringilla ut morbi. <a href="https://webkit.org">Fringilla est ullamcorper</a> eget nulla facilisi etiam dignissim. Id velit ut tortor pretium. Bibendum at varius vel pharetra vel turpis nunc. Sit amet aliquam id diam maecenas. Lobortis feugiat vivamus at augue <a href="https://webkit.org">eget arcu dictum</a> varius duis. Libero justo laoreet sit amet. Egestas tellus rutrum tellus pellentesque eu tincidunt tortor aliquam.</p> 14 <blockquote><p>Sed faucibus <a href="https://webkit.org">turpis in eu mi bibendum</a>. Donec enim diam vulputate ut pharetra sit amet aliquam. <img src="apple.gif"></img> Consequat id porta nibh venenatis cras sed felis eget velit. At lectus urna duis convallis convallis tellus id interdum velit. Id consectetur purus ut faucibus pulvinar elementum integer enim. Ipsum dolor sit amet consectetur adipiscing elit ut aliquam. At tellus at urna condimentum mattis. Faucibus pulvinar elementum integer enim. At elementum eu facilisis sed odio morbi. Fames ac turpis egestas integer eget aliquet. Consequat interdum varius sit amet mattis vulputate enim nulla. Lectus sit amet est placerat in egestas. Dolor sit amet consectetur adipiscing elit pellentesque habitant morbi. Urna et pharetra pharetra massa massa ultricies mi. Sagittis eu volutpat odio facilisis mauris sit amet massa. Nec ullamcorper sit amet risus. Quis enim lobortis scelerisque fermentum dui faucibus in ornare. In metus vulputate eu scelerisque felis.</p></blockquote>15 <p>Non sodales neque sodales ut etiam sit amet nisl purus. Lacus luctus accumsan tortor posuere ac ut. Pulvinar neque laoreet suspendisse interdum consectetur libero id. Porta non pulvinar neque laoreet suspendisse interdum consectetur libero. Mattis molestie a iaculis at. Sit amet consectetur adipiscing elit duis tristique sollicitudin. Posuere morbi leo urna molestie at elementum eu facilisis sed. Id volutpat lacus laoreet non. Tempus iaculis urna id volutpat lacus laoreet. Ullamcorper velit sed ullamcorper morbi tincidunt ornare.</p>16 <p>Sit amet massa vitae tortor condimentum lacinia quis. <img src="apple.gif"></img> Vitae turpis massa sed elementum tempus egestas. Faucibus in ornare quam viverra orci <a href="https://webkit.org">sagittis</a> eu. Scelerisque fermentum dui faucibus in ornare quam viverra orci sagittis. In egestas erat imperdiet sed euismod nisi porta lorem. Varius vel pharetra vel turpis. Nec ullamcorper sit amet risus nullam eget felis eget nunc. Dignissim diam quis enim lobortis scelerisque fermentum dui faucibus in. Sagittis eu volutpat odio facilisis mauris sit amet. Ipsum a arcu cursus vitae congue mauris rhoncus aenean vel. Ornare lectus sit amet est placerat in. Malesuada pellentesque elit eget gravida cum sociis natoque penatibus et. Vitae purus faucibus ornare suspendisse sed nisi lacus sed viverra.</p>17 <p>Cursus vitae congue mauris rhoncus aenean vel elit. Donec ac odio tempor orci dapibus. Cursus in hac habitasse platea dictumst quisque. Mi sit amet mauris commodo quis. Morbi enim nunc faucibus a. Duis convallis convallis tellus id. <a href="https://webkit.org">Rutrum quisque non tellus</a> orci ac auctor augue mauris augue. A condimentum vitae sapien pellentesque habitant morbi. Ornare arcu odio ut sem nulla pharetra diam sit. Placerat in egestas erat imperdiet sed euismod nisi porta. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et netus et. <a href="https://webkit.org">Ut diam quam nulla</a> porttitor massa id neque aliquam vestibulum. Pellentesque eu tincidunt tortor aliquam nulla facilisi cras fermentum odio. Libero justo laoreet sit amet. Aliquam malesuada bibendum arcu vitae elementum curabitur vitae nunc.</p>18 15 </article> 16 <article>A small article</article> 17 <article>A small article</article> 19 18 </body> 20 19 </html> -
trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/significant-text-milestone.html
r233623 r233794 5 5 </head> 6 6 <body> 7 <article> 8 <h1 itemprop="title">A long sample article</h1> 9 <h2 itemprop="subheading">Containing lots of placeholder text</h2> 10 <h3 itemprop="author">Johnny Appleseed</h3> 11 <time itemprop="pubdate" datetime="2018-07-06">July 6, 2018</time> 12 <p>Lorem ipsum dolor sit amet, <a href="https://webkit.org">consectetur adipiscing elit</a>, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. <a href="https://webkit.org">Tempor id eu nisl nunc mi ipsum faucibus vitae.</a> Sed tempus urna et pharetra pharetra massa massa. Vitae tortor condimentum lacinia quis vel eros donec ac. <a href="https://webkit.org">Ullamcorper velit sed ullamcorper morbi</a> tincidunt ornare massa eget. Sit amet cursus sit amet dictum. Id eu nisl nunc mi ipsum faucibus vitae aliquet nec. Suscipit tellus mauris a diam maecenas sed. Consequat nisl vel pretium lectus quam id leo. <a href="https://webkit.org">Netus et malesuada fames ac turpis egestas integer.</a> Quam lacus suspendisse faucibus interdum posuere lorem ipsum. Sem integer vitae justo eget magna fermentum iaculis. A condimentum vitae sapien pellentesque habitant morbi tristique. Varius duis at consectetur lorem. Ipsum faucibus vitae aliquet nec ullamcorper sit.</p> 13 <p>Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. <a href="https://webkit.org">Quam lacus suspendisse</a> faucibus interdum posuere lorem. Sagittis vitae et leo duis ut diam. Turpis massa sed elementum tempus. Aliquam sem fringilla ut morbi. <a href="https://webkit.org">Fringilla est ullamcorper</a> eget nulla facilisi etiam dignissim. Id velit ut tortor pretium. Bibendum at varius vel pharetra vel turpis nunc. Sit amet aliquam id diam maecenas. Lobortis feugiat vivamus at augue <a href="https://webkit.org">eget arcu dictum</a> varius duis. Libero justo laoreet sit amet. Egestas tellus rutrum tellus pellentesque eu tincidunt tortor aliquam.</p> 14 <blockquote><p>Sed faucibus <a href="https://webkit.org">turpis in eu mi bibendum</a>. Donec enim diam vulputate ut pharetra sit amet aliquam. <img src="apple.gif"></img> Consequat id porta nibh venenatis cras sed felis eget velit. At lectus urna duis convallis convallis tellus id interdum velit. Id consectetur purus ut faucibus pulvinar elementum integer enim. Ipsum dolor sit amet consectetur adipiscing elit ut aliquam. At tellus at urna condimentum mattis. Faucibus pulvinar elementum integer enim. At elementum eu facilisis sed odio morbi. Fames ac turpis egestas integer eget aliquet. Consequat interdum varius sit amet mattis vulputate enim nulla. Lectus sit amet est placerat in egestas. Dolor sit amet consectetur adipiscing elit pellentesque habitant morbi. Urna et pharetra pharetra massa massa ultricies mi. Sagittis eu volutpat odio facilisis mauris sit amet massa. Nec ullamcorper sit amet risus. Quis enim lobortis scelerisque fermentum dui faucibus in ornare. In metus vulputate eu scelerisque felis.</p></blockquote> 15 <p>Non sodales neque sodales ut etiam sit amet nisl purus. Lacus luctus accumsan tortor posuere ac ut. Pulvinar neque laoreet suspendisse interdum consectetur libero id. Porta non pulvinar neque laoreet suspendisse interdum consectetur libero. Mattis molestie a iaculis at. Sit amet consectetur adipiscing elit duis tristique sollicitudin. Posuere morbi leo urna molestie at elementum eu facilisis sed. Id volutpat lacus laoreet non. Tempus iaculis urna id volutpat lacus laoreet. Ullamcorper velit sed ullamcorper morbi tincidunt ornare.</p> 16 <p>Sit amet massa vitae tortor condimentum lacinia quis. <img src="apple.gif"></img> Vitae turpis massa sed elementum tempus egestas. Faucibus in ornare quam viverra orci <a href="https://webkit.org">sagittis</a> eu. Scelerisque fermentum dui faucibus in ornare quam viverra orci sagittis. In egestas erat imperdiet sed euismod nisi porta lorem. Varius vel pharetra vel turpis. Nec ullamcorper sit amet risus nullam eget felis eget nunc. Dignissim diam quis enim lobortis scelerisque fermentum dui faucibus in. Sagittis eu volutpat odio facilisis mauris sit amet. Ipsum a arcu cursus vitae congue mauris rhoncus aenean vel. Ornare lectus sit amet est placerat in. Malesuada pellentesque elit eget gravida cum sociis natoque penatibus et. Vitae purus faucibus ornare suspendisse sed nisi lacus sed viverra.</p> 17 <p>Cursus vitae congue mauris rhoncus aenean vel elit. Donec ac odio tempor orci dapibus. Cursus in hac habitasse platea dictumst quisque. Mi sit amet mauris commodo quis. Morbi enim nunc faucibus a. Duis convallis convallis tellus id. <a href="https://webkit.org">Rutrum quisque non tellus</a> orci ac auctor augue mauris augue. A condimentum vitae sapien pellentesque habitant morbi. Ornare arcu odio ut sem nulla pharetra diam sit. Placerat in egestas erat imperdiet sed euismod nisi porta. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et netus et. <a href="https://webkit.org">Ut diam quam nulla</a> porttitor massa id neque aliquam vestibulum. Pellentesque eu tincidunt tortor aliquam nulla facilisi cras fermentum odio. Libero justo laoreet sit amet. Aliquam malesuada bibendum arcu vitae elementum curabitur vitae nunc.</p> 18 </article> 7 <h1 itemprop="title">A long sample article</h1> 8 <h2 itemprop="subheading">Containing lots of placeholder text</h2> 9 <h3 itemprop="author">Johnny Appleseed</h3> 10 <time itemprop="pubdate" datetime="2018-07-06">July 6, 2018</time> 11 <p>Lorem ipsum dolor sit amet, <a href="https://webkit.org">consectetur adipiscing elit</a>, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. <a href="https://webkit.org">Tempor id eu nisl nunc mi ipsum faucibus vitae.</a> Sed tempus urna et pharetra pharetra massa massa. Vitae tortor condimentum lacinia quis vel eros donec ac. <a href="https://webkit.org">Ullamcorper velit sed ullamcorper morbi</a> tincidunt ornare massa eget. Sit amet cursus sit amet dictum. Id eu nisl nunc mi ipsum faucibus vitae aliquet nec. Suscipit tellus mauris a diam maecenas sed. Consequat nisl vel pretium lectus quam id leo. <a href="https://webkit.org">Netus et malesuada fames ac turpis egestas integer.</a> Quam lacus suspendisse faucibus interdum posuere lorem ipsum. Sem integer vitae justo eget magna fermentum iaculis. A condimentum vitae sapien pellentesque habitant morbi tristique. Varius duis at consectetur lorem. Ipsum faucibus vitae aliquet nec ullamcorper sit.</p> 12 <p>Sed lectus vestibulum mattis ullamcorper velit sed ullamcorper. <a href="https://webkit.org">Quam lacus suspendisse</a> faucibus interdum posuere lorem. Sagittis vitae et leo duis ut diam. Turpis massa sed elementum tempus. Aliquam sem fringilla ut morbi. <a href="https://webkit.org">Fringilla est ullamcorper</a> eget nulla facilisi etiam dignissim. Id velit ut tortor pretium. Bibendum at varius vel pharetra vel turpis nunc. Sit amet aliquam id diam maecenas. Lobortis feugiat vivamus at augue <a href="https://webkit.org">eget arcu dictum</a> varius duis. Libero justo laoreet sit amet. Egestas tellus rutrum tellus pellentesque eu tincidunt tortor aliquam.</p> 13 <blockquote><p>Sed faucibus <a href="https://webkit.org">turpis in eu mi bibendum</a>. Donec enim diam vulputate ut pharetra sit amet aliquam. <img src="apple.gif"></img> Consequat id porta nibh venenatis cras sed felis eget velit. At lectus urna duis convallis convallis tellus id interdum velit. Id consectetur purus ut faucibus pulvinar elementum integer enim. Ipsum dolor sit amet consectetur adipiscing elit ut aliquam. At tellus at urna condimentum mattis. Faucibus pulvinar elementum integer enim. At elementum eu facilisis sed odio morbi. Fames ac turpis egestas integer eget aliquet. Consequat interdum varius sit amet mattis vulputate enim nulla. Lectus sit amet est placerat in egestas. Dolor sit amet consectetur adipiscing elit pellentesque habitant morbi. Urna et pharetra pharetra massa massa ultricies mi. Sagittis eu volutpat odio facilisis mauris sit amet massa. Nec ullamcorper sit amet risus. Quis enim lobortis scelerisque fermentum dui faucibus in ornare. In metus vulputate eu scelerisque felis.</p></blockquote> 14 <p>Non sodales neque sodales ut etiam sit amet nisl purus. Lacus luctus accumsan tortor posuere ac ut. Pulvinar neque laoreet suspendisse interdum consectetur libero id. Porta non pulvinar neque laoreet suspendisse interdum consectetur libero. Mattis molestie a iaculis at. Sit amet consectetur adipiscing elit duis tristique sollicitudin. Posuere morbi leo urna molestie at elementum eu facilisis sed. Id volutpat lacus laoreet non. Tempus iaculis urna id volutpat lacus laoreet. Ullamcorper velit sed ullamcorper morbi tincidunt ornare.</p> 15 <p>Sit amet massa vitae tortor condimentum lacinia quis. <img src="apple.gif"></img> Vitae turpis massa sed elementum tempus egestas. Faucibus in ornare quam viverra orci <a href="https://webkit.org">sagittis</a> eu. Scelerisque fermentum dui faucibus in ornare quam viverra orci sagittis. In egestas erat imperdiet sed euismod nisi porta lorem. Varius vel pharetra vel turpis. Nec ullamcorper sit amet risus nullam eget felis eget nunc. Dignissim diam quis enim lobortis scelerisque fermentum dui faucibus in. Sagittis eu volutpat odio facilisis mauris sit amet. Ipsum a arcu cursus vitae congue mauris rhoncus aenean vel. Ornare lectus sit amet est placerat in. Malesuada pellentesque elit eget gravida cum sociis natoque penatibus et. Vitae purus faucibus ornare suspendisse sed nisi lacus sed viverra.</p> 16 <p>Cursus vitae congue mauris rhoncus aenean vel elit. Donec ac odio tempor orci dapibus. Cursus in hac habitasse platea dictumst quisque. Mi sit amet mauris commodo quis. Morbi enim nunc faucibus a. Duis convallis convallis tellus id. <a href="https://webkit.org">Rutrum quisque non tellus</a> orci ac auctor augue mauris augue. A condimentum vitae sapien pellentesque habitant morbi. Ornare arcu odio ut sem nulla pharetra diam sit. Placerat in egestas erat imperdiet sed euismod nisi porta. Pellentesque pulvinar pellentesque habitant morbi tristique senectus et netus et. <a href="https://webkit.org">Ut diam quam nulla</a> porttitor massa id neque aliquam vestibulum. Pellentesque eu tincidunt tortor aliquam nulla facilisi cras fermentum odio. Libero justo laoreet sit amet. Aliquam malesuada bibendum arcu vitae elementum curabitur vitae nunc.</p> 19 17 </body> 20 18 </html> -
trunk/Tools/TestWebKitAPI/Tests/ios/RenderingProgressTests.mm
r233623 r233794 66 66 [webView loadTestPageNamed:@"significant-text-milestone"]; 67 67 TestWebKitAPI::Util::run(&observedSignificantRenderedText); 68 69 observedSignificantRenderedText = false; 70 [webView loadTestPageNamed:@"significant-text-milestone-article"]; 71 TestWebKitAPI::Util::run(&observedSignificantRenderedText); 68 72 } 69 73
Note:
See TracChangeset
for help on using the changeset viewer.